.site-announcement{background:#f7faf8;border-bottom:1px solid #d8e6df;color:#103f39}.announcement-bar{display:flex;align-items:center;gap:18px;min-height:52px;padding-top:9px;padding-bottom:9px}.announcement-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;white-space:nowrap;color:#0b5c52}.announcement-latest{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px;color:#193f4b}.announcement-date,.announcement-list time{font-size:13px;white-space:nowrap;font-variant-numeric:tabular-nums;color:#5f787d}.announcement-more{white-space:nowrap;font-size:14px;font-weight:600;color:#0b5c52;min-height:32px;display:flex;align-items:center;gap:6px}.announcement-dialog{border:1px solid #d8e6df;border-radius:16px;max-width:900px;width:calc(100% - 32px);max-height:80dvh;padding:0;color:#153f4b;box-shadow:0 28px 90px #103f3933;background:#fff}.announcement-dialog::backdrop{background:#072d3559}.announcement-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;position:sticky;top:0;padding:20px 28px;background:white;border-bottom:1px solid #e3ece8}.announcement-dialog-head h2{margin:0;font-size:24px}.announcement-close{border:0;background:#f1f7f5;color:#31544e;border-radius:50%;width:40px;height:40px;font-size:28px;cursor:pointer}.announcement-list{list-style:none;padding:0 28px;margin:0}.announcement-list li{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:24px 0;border-bottom:1px solid #e3ece8}.announcement-list a{color:#153f4b;line-height:1.7;font-weight:600;overflow-wrap:anywhere}.announcement-list a:hover,.announcement-latest:hover{text-decoration:underline;text-underline-offset:4px}.announcement-list p{margin:8px 0 0;color:#54717b;line-height:1.8}.announcement-dialog-foot{padding:20px 28px}.announcement-archive{padding:0}.announcement-archive a{font-size:20px}.announcement-dialog :focus-visible,.site-announcement a:focus-visible{outline:3px solid #639329;outline-offset:4px}
@media(max-width:640px){.announcement-bar{display:grid;grid-template-columns:1fr auto;gap:6px 12px;padding-top:12px;padding-bottom:12px}.announcement-label{grid-column:1;grid-row:1;font-size:13px}.announcement-more{grid-column:2;grid-row:1;font-size:13px}.announcement-latest{grid-column:1/-1;grid-row:2;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.65;font-size:14px}.announcement-date{display:none}.announcement-dialog-head{padding:16px 20px}.announcement-dialog-head h2{font-size:20px}.announcement-list{padding:0 20px}.announcement-list li{display:block;padding:18px 0}.announcement-list time{display:block;margin-top:8px}.announcement-archive{padding:0}}

/* All published notices use the same archive and one stable-height reading slot. */
.announcement-bar{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:20px;min-height:64px;padding-block:8px}
.announcement-viewport{min-width:0;height:44px;display:grid;align-items:center;overflow:hidden}
.announcement-item{display:flex;align-items:center;gap:20px;min-width:0;width:100%;height:44px;animation:announcement-enter .28s ease-out}
.announcement-item[hidden],.announcement-controls[hidden]{display:none}
.announcement-controls{display:flex;align-items:center;gap:4px}.announcement-controls button{display:grid;place-items:center;width:40px;height:40px;border:1px solid transparent;border-radius:8px;color:#176a64;background:transparent;font-size:21px;line-height:1;cursor:pointer}.announcement-controls button:hover{background:#e8f3ef}.announcement-count{font-size:11px;color:#62767e;font-variant-numeric:tabular-nums;margin-right:5px;white-space:nowrap}
.site-announcement .announcement-more{min-height:44px;border-left:1px solid #d8e6df;padding-left:20px}
.site-announcement button:focus-visible{outline:3px solid #176a64;outline-offset:2px}
@keyframes announcement-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.announcement-bar{gap:12px}.announcement-date{display:none}.site-announcement .announcement-more{padding-left:12px}}
@media(max-width:640px){.announcement-bar{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;padding-block:10px}.announcement-label{grid-column:1;grid-row:1;white-space:normal;font-size:12px;gap:6px}.announcement-controls{grid-column:2;grid-row:1;gap:0}.announcement-controls button{width:44px;height:44px}.announcement-count{display:none}.site-announcement .announcement-more{grid-column:3;grid-row:1;font-size:12px;padding-left:8px}.announcement-viewport{grid-column:1/-1;grid-row:2;height:3.3em;margin-bottom:4px}.announcement-item{height:3.3em;line-height:1.65}.announcement-item .announcement-latest{font-size:14px;line-height:1.65;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.announcement-item .announcement-date{display:none}}
@media(prefers-reduced-motion:reduce){.announcement-item{animation:none}}
@media(max-width:360px){.announcement-bar{grid-template-columns:minmax(0,1fr) auto}.announcement-label{grid-column:1/-1;grid-row:1}.announcement-controls{grid-column:1;grid-row:3;justify-self:start}.site-announcement .announcement-more{grid-column:2;grid-row:3;border-left:0;padding-left:0}.announcement-viewport{grid-row:2}}
