dialog.announcement-panel{width:min(850px,calc(100vw - 24px));max-height:calc(100dvh - 24px)}
.announcement-panel .panel-head a{color:#f4e3b3;text-decoration:none;font-size:13px}
.announcement-panel .panel-head{padding:16px 24px}.announcement-panel #panelBody{padding:0 20px 18px}
.announcement-tabs{display:flex;gap:4px;padding:0 0 12px;flex-wrap:wrap}.announcement-tabs button{flex:1;padding:9px 7px;background:transparent;color:#50605b;box-shadow:none;border:1px solid transparent;white-space:nowrap;font-size:13px}.announcement-tabs button[aria-current=page]{background:#344f50;color:#fff1ca;border-color:#637879}
.announcement-story{overflow:hidden;border:1px solid #b8a67a;border-radius:4px;background:#f6eedb}.announcement-poster{display:block;width:100%;height:clamp(170px,39vh,350px);object-fit:cover;object-position:center 52%}
.announcement-copy{padding:19px 24px 22px}.announcement-number{font-size:11px;letter-spacing:2px;color:#8a7245}.announcement-copy h3{font-size:clamp(20px,3vw,28px);margin:9px 0;color:#294c50;line-height:1.4}.announcement-copy p{margin:0;color:#58615b;font-size:15px;line-height:1.8}
.announcement-keys{display:flex;gap:14px;flex-wrap:wrap;margin-top:14px}.announcement-keys span{font-size:12px;color:#53625d;display:flex;align-items:center;gap:5px}.announcement-keys kbd{background:#e4d6b6;border:1px solid #c6b083;border-bottom-width:3px;border-radius:3px;padding:4px 7px;color:#344b4f}
.announcement-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.announcement-footer label{font-size:12px;color:#6b7166;display:flex;gap:6px;align-items:center}.announcement-footer input{width:16px;height:16px;accent-color:#365a56}.announcement-footer button{padding:9px 14px}
#dock{max-width:calc(100vw - 20px)}#dock nav{max-width:100%;flex-wrap:wrap;justify-content:center}#dock nav button{padding-left:14px;padding-right:14px}
@media(max-width:550px){.announcement-panel #panelBody{padding:0 10px 12px}.announcement-panel .panel-head{padding:12px 14px}.announcement-tabs button{font-size:11px;padding:8px 3px}.announcement-copy{padding:14px}.announcement-copy p{font-size:13px}.announcement-footer{flex-wrap:wrap}.announcement-footer>div{margin-left:auto}.announcement-keys{gap:8px}}

/* Current gameplay posters keep their full 3:2 composition. */
dialog.announcement-panel,dialog#panel.announcement-panel{width:min(1000px,96vw);max-height:94dvh}
.announcement-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;padding-top:12px}
.announcement-tabs button{min-width:0}
.announcement-image-link{display:block;background:#e8dcc1}
.announcement-poster{width:100%;height:auto;object-fit:contain;object-position:center;aspect-ratio:3/2}
.announcement-copy{padding:14px 22px 18px}
.announcement-copy h3{font-size:22px;margin:6px 0}
.announcement-copy p{font-size:14px;line-height:1.7}
.announcement-art-note{display:block;margin-top:8px;color:#8b7b5b;font-size:11px}
.announcement-footer{flex-wrap:wrap;align-items:center}
.announcement-footer>div{margin-left:auto;white-space:nowrap}
@media(max-width:550px){.announcement-tabs{gap:3px}.announcement-copy{padding:12px}.announcement-copy h3{font-size:18px}.announcement-footer label{font-size:11px}}

