body.announcement-open{overflow:hidden}
.announcement-modal{inset:0;margin:auto;padding:0;width:calc(100% - 40px);max-width:340px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);border:0;border-radius:10px;background:rgba(255,255,255,.76);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--ink);box-shadow:none;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:650 20px/1.45 var(--sans);margin:20px 20px 10px;letter-spacing:0;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(25,25,30,.76)}
: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}}
