body.announcement-open{overflow:hidden}
.announcement-modal{inset:0;margin:auto;padding:0;width:calc(100% - 40px);max-width:360px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);border:0;border-radius:5px;background:rgba(251,247,242,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--ink);box-shadow:0 12px 48px #3226201a;overflow:hidden}
.announcement-modal[open]{display:flex;flex-direction:column;animation:announcement-enter .18s ease-out}
.announcement-modal::backdrop{background:rgba(20,20,26,.16)}
#announcement-title{font:600 24px/1.45 var(--serif);margin:24px 22px 14px;letter-spacing:1px;overflow-wrap:anywhere;max-height:30vh;max-height:30dvh;overflow:auto;flex-shrink:0}
#announcement-title:focus{outline:none}
.announcement-body{padding:0 20px 12px;min-height:0;overflow:auto;overscroll-behavior:contain;flex:1}
#announcement-content{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;line-height:1.8;color:var(--ink)}
.announcement-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 20px 18px;border:0;background:none;flex-shrink:0}
.announcement-dismiss{display:flex;align-items:center;gap:7px;min-height:40px;font-size:12px;color:var(--ink);cursor:pointer;white-space:nowrap}
.announcement-dismiss input{appearance:auto;width:17px;height:17px;margin:0;accent-color:var(--green);cursor:pointer;flex-shrink:0}
.announcement-dismiss input:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.announcement-footer>.button{min-width:70px;min-height:40px;padding:8px 16px;font-size:13px;letter-spacing:0;border:0}
:root[data-site-theme=dark] .announcement-modal{background:rgba(33,29,30,.92)}
:root[data-site-theme=dark] .announcement-modal::backdrop{background:rgba(5,5,9,.26)}
@keyframes announcement-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){.announcement-modal[open]{animation:none}}
