.announcements-admin [hidden] { display:none !important; }
.announcements-heading,.announcements-actions { display:flex; align-items:center; flex-wrap:wrap; gap:.65rem; }
.announcements-heading { justify-content:space-between; }
.announcements-heading h2,.announcements-heading h3 { margin:0; }
.announcements-admin h3 { font-size:1rem; color:var(--gold,#f0cf82); margin:0 0 .8rem; }
.announcements-admin h3 small { color:var(--muted); font-size:.8rem; font-weight:normal; margin-left:.45rem; }
.announcements-latest { padding:1rem; margin:1rem 0; border:1px solid var(--line-strong,#675130); border-radius:6px; background:var(--surface-low,#18130e); }
.announcements-latest > p { margin-top:0; }
#announcements-transcribe[aria-pressed="true"] { border-color:var(--gold,#f0cf82); color:var(--gold,#f0cf82); box-shadow:0 0 0 1px var(--gold,#f0cf82); }
.announcements-admin button:focus-visible,.announcements-admin summary:focus-visible { outline:2px solid var(--focus); outline-offset:3px; }
#announcements-updates-list { max-height:16rem; overflow:auto; }
.announcements-admin h3 span { display:inline-flex; align-items:center; justify-content:center; width:1.55rem; height:1.55rem; font-size:.8rem; border:1px solid var(--line-strong); border-radius:50%; margin-right:.4rem; color:var(--muted); }
.announcements-admin label { display:block; font-size:.85rem; color:var(--muted); margin:.75rem 0 .35rem; }
.announcements-admin input,.announcements-admin textarea,.announcements-admin select { box-sizing:border-box; width:100%; background:var(--field,#140f0b); color:var(--text,#f3ecdf); border:1px solid var(--line-strong,#675130); border-radius:5px; padding:.7rem .8rem; font:inherit; font-size:.88rem; }
#announcements-channel { color:var(--gold); font-variant-numeric:tabular-nums; }
.announcements-destination { margin-top:1rem; }
.announcements-destination-row { display:flex; gap:.65rem; align-items:center; flex-wrap:wrap; }
.announcements-destination-row input { flex:1 1 240px; width:auto; }
.announcements-destination-row .btn { min-height:42px; }
.announcements-admin textarea { min-height:6rem; resize:vertical; line-height:1.55; }
.announcements-admin input:focus-visible,.announcements-admin textarea:focus-visible,.announcements-admin select:focus-visible { outline:2px solid var(--focus); outline-offset:2px; }
.announcements-admin .sr-only { position:absolute; width:1px; height:1px; margin:-1px; padding:0; border:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
.announcements-actions { margin-top:.75rem; }
.announcements-actions .btn { white-space:normal; text-align:center; min-height:40px; }
.announcements-admin .btn:disabled { opacity:.55; cursor:default; }
.announcements-fields { display:grid; grid-template-columns:minmax(160px,.6fr) minmax(220px,1.4fr); gap:1rem; }
.announcements-fields label { margin:0; }
.announcements-fields input,.announcements-fields select { margin-top:.35rem; }
.announcements-connection { border:1px solid var(--line); border-radius:6px; padding:.8rem 1rem; margin:1rem 0; }
.announcements-connection summary,.announcements-preview summary { cursor:pointer; color:var(--gold); font-size:.88rem; }
.announcements-connection summary span { color:var(--muted); font-size:.8rem; margin-left:.3rem; }
.announcements-step { margin-top:1.3rem; border-top:1px solid var(--line); padding-top:1.2rem; }
.announcements-step .announcements-heading { margin-bottom:.8rem; }
.announcements-preview { background:var(--surface-low,#18130e); padding:.8rem 1rem; border:1px solid var(--line); border-radius:5px; margin-top:.7rem; }
.announcements-preview p { white-space:pre-wrap; overflow-wrap:anywhere; color:var(--text); line-height:1.6; font-size:.9rem; }
.announcements-feedback { min-height:1.5rem; font-size:.9rem; color:var(--gold); overflow-wrap:anywhere; }
.announcements-feedback[data-error="true"] { color:var(--error-text,#ffd0d4); }
#announcements-count { font-variant-numeric:tabular-nums; }
#announcements-delivery { color:var(--gold); overflow-wrap:anywhere; }
.announcements-history-list { max-height:24rem; overflow:auto; overscroll-behavior:contain; }
.announcements-history-entry { padding:1rem 0; border-top:1px solid var(--line); }
.announcements-history-meta { color:var(--gold); font-size:.8rem; margin:0 0 .5rem; }
.announcements-history-content { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.6; font-size:.9rem; margin:0; }
.announcements-history .announcements-preview textarea { margin-top:.75rem; }
@media(max-width:620px) { .announcements-fields { grid-template-columns:1fr; gap:.75rem; } .announcements-connection { padding:.75rem; } .announcements-heading { align-items:flex-start; } .announcements-admin .announcements-actions .btn { flex:1 1 auto; } }
