/* D30: readable sound cards and compact responsive administration. */
.d30-notify-summary,.d30-events-section,.d30-personal-sounds{margin-bottom:12px}
.d30-events-section>h3,.d30-personal-sounds>h3,.d30-notify-summary>h3{text-align:center}
.d30-event-list{display:grid;gap:9px;margin:10px 0}
.d30-event-card{width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 22px;grid-template-rows:auto auto;align-items:center;column-gap:8px;padding:11px 13px;border:1px solid var(--border-soft);border-radius:13px;background:var(--panel-3);color:var(--text);text-align:center;box-shadow:inset 0 1px rgba(255,255,255,.035)}
.d30-event-card:hover,.d30-event-card:focus-visible{border-color:var(--gold);background:var(--gold-bg);outline:none}
.d30-event-card strong,.d30-event-card small{grid-column:1;display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center}
.d30-event-card strong{font-size:.92rem;color:var(--text)}
.d30-event-card small{margin-top:4px;font-size:.78rem;color:var(--muted)}
.d30-event-card>span{grid-column:2;grid-row:1/3;align-self:center;color:var(--gold-hi);font-size:1.3rem}
.d30-sound-event-screen>.field-hint{text-align:center;margin-bottom:12px}
.d30-sound-event-screen .sound-option{border:1px solid var(--border-soft);border-radius:12px;margin:7px 0;overflow:hidden}
.d30-sound-event-screen .sound-option+.sound-option{margin-top:8px}

#d30ChatMuteBtn.muted{color:#efb76b;background:rgba(178,116,47,.13)}
#d30ChatMuteBtn svg,.d30-list-sound svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.d30-mute-status{display:inline-block!important;width:max-content;margin-top:2px;padding:1px 7px;border:1px solid rgba(211,157,77,.45);border-radius:10px;color:#e8bb72!important;font-size:.66rem!important;line-height:1.35}
.d30-mute-status.hidden{display:none!important}
.d30-list-sound{width:23px;height:23px;display:grid;place-items:center;color:#b8aa95}
.d30-list-sound.muted{color:#e3a45f}
.d30-list-sound svg{width:18px;height:18px}
.chat-meta .d30-list-sound{margin-top:auto}

/* The sticky desktop tab bar covered the first controls in long Broadcasts. */
.workspace .admin-nav{position:static!important;top:auto!important;z-index:auto!important;margin:0 0 4px!important;padding:0 0 7px!important;background:transparent!important;border-bottom:0!important}
.d30-group-tools{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:2px}
.d30-group-title{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.d30-hidden-group{border-style:dashed;opacity:.82}
.d30-hidden-badge,.d30-required-badge{display:inline-flex;align-items:center;min-height:21px;padding:2px 7px;border-radius:10px;font-size:.68rem;font-weight:700;line-height:1}
.d30-hidden-badge{background:rgba(149,144,135,.14);border:1px solid rgba(173,166,154,.34);color:var(--muted)}
.d30-required-badge{background:rgba(198,145,61,.14);border:1px solid rgba(213,165,87,.4);color:var(--gold-hi)}
.d30-icon-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:10px;margin:12px 0}
.d30-icon-card{min-width:0;display:grid;grid-template-rows:96px auto auto auto;gap:6px;padding:9px;border:1px solid var(--border-soft);border-radius:13px;background:var(--panel-3)}
.d30-icon-card img{width:100%;height:96px;object-fit:cover;border-radius:9px;background:#111}
.d30-icon-card strong,.d30-icon-card small{overflow:hidden;text-overflow:ellipsis}
.d30-icon-card strong{font-size:.82rem;white-space:nowrap;color:var(--text)}
.d30-icon-card small{min-height:2.5em;color:var(--muted);font-size:.7rem;line-height:1.25}
.d30-icon-card .mini-action{width:100%;margin:0}
.d30-protected{align-self:end;text-align:center;color:var(--muted);font-size:.7rem;padding:7px}
.d30-icon-choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:9px;margin:11px 0}
.d30-icon-choice{position:relative;min-width:0;display:grid;gap:5px;padding:8px;border:1px solid var(--border-soft);border-radius:12px;background:var(--panel-3);cursor:pointer;text-align:center}
.d30-icon-choice.active,.d30-icon-choice:has(input:checked){border-color:var(--gold);box-shadow:inset 0 0 0 1px rgba(210,164,86,.22)}
.d30-icon-choice img{width:100%;height:82px;object-fit:cover;border-radius:8px;background:#111}
.d30-icon-choice input{position:absolute;right:8px;top:8px;width:auto}
.d30-icon-choice span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.73rem;color:var(--text)}
.d30-inline-upload{display:grid;gap:7px;margin-top:13px;padding-top:12px;border-top:1px solid var(--border-soft)}
.d30-visibility-card{margin:12px 0}
.d30-vehicle-fields{display:grid;gap:7px;margin:12px 0;padding:12px;border:1px solid var(--border-soft);border-radius:13px;background:var(--panel-3)}
.d30-vehicle-fields.hidden{display:none}
.d30-auto-card p{line-height:1.45}

body.light .d30-event-card,body.light .d30-icon-card,body.light .d30-icon-choice,body.light .d30-vehicle-fields{background:#fffaf1;border-color:#d8c6a6}
body.light .d30-event-card strong,body.light .d30-icon-card strong,body.light .d30-icon-choice span{color:#30271d}
body.light .d30-event-card small,body.light .d30-icon-card small{color:#776e61}

@media(max-width:800px){
  .d30-event-card{padding:11px 10px;grid-template-columns:minmax(0,1fr) 18px}
  .d30-event-card strong{font-size:.88rem}
  .d30-event-card small{font-size:.74rem}
  .chat-actions{gap:0}
  #d30ChatMuteBtn{width:38px;height:38px}
  .d30-group-tools{display:grid;grid-template-columns:1fr 1fr}
  .d30-group-tools button{white-space:normal;min-height:46px}
  .d30-icon-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .d30-icon-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .d30-icon-card{grid-template-rows:84px auto auto auto}
  .d30-icon-card img{height:84px}
  .chat-admin-actions{display:grid;grid-template-columns:1fr 1fr}
  .chat-admin-actions .primary:last-child{grid-column:1/-1}
}

@media(max-width:390px){
  .d30-event-card strong{font-size:.82rem}
  .d30-event-card small{font-size:.7rem}
  .d30-group-tools,.chat-admin-actions{grid-template-columns:1fr}
  .chat-admin-actions .primary:last-child{grid-column:auto}
  .d30-icon-grid,.d30-icon-choice-grid{grid-template-columns:1fr 1fr}
}
