.public-notices { padding:36px 0; background:#f5f5f5; }
.public-notices h2 { margin:0 0 20px; color:#18181b; font-size:1.5em; }
.public-notice { padding:20px 0; border-top:1px solid #e4e4e7; }
.public-notice h3 { margin:0 0 10px; color:#18181b; font-size:1.15em; line-height:1.4; overflow-wrap:anywhere; }
.public-notice-text { margin:0; line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; }
.public-notice-dialog { box-sizing:border-box; width:min(720px,calc(100% - 32px)); max-width:calc(100% - 32px); max-height:calc(100dvh - 32px); margin:auto; padding:0; overflow:auto; border:1px solid #e4e4e7; border-radius:8px; background:#fff; color:#18181b; box-shadow:0 20px 70px rgba(0,0,0,.28); }
.public-notice-dialog::backdrop { background:rgba(10,12,18,.65); backdrop-filter:blur(4px); }
.public-notice-dialog-header { position:sticky; top:0; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px clamp(18px,4vw,30px); background:#fff; border-bottom:1px solid #e4e4e7; }
.public-notice-dialog-header h2 { margin:0; font-size:1.35em; color:#18181b; }
.public-notice-close { display:flex; flex:0 0 40px; align-items:center; justify-content:center; width:40px; height:40px; padding:0; border:0; background:transparent; color:#18181b; font:inherit; font-size:1.8em; cursor:pointer; }
.public-notice-close:hover { color:#2563eb; }
.public-notice-close:focus:not(:focus-visible), .public-notice-close.is-initial-focus:focus { outline:none; }
.public-notice-dialog-body { padding:0 clamp(18px,4vw,30px); }
.public-notice-dialog-body .public-notice:first-child { border-top:0; }
.public-notice-dialog-footer { display:flex; justify-content:flex-end; padding:16px clamp(18px,4vw,30px) 24px; }
body:has(.public-notice-dialog[open]) { overflow:hidden; }
.duna-library-logo{display:inline-block}.duna-library-logo>img{height:auto;object-fit:contain}.duna-library-logo>.duna-logo-fallback{display:none}.duna-library-logo.is-broken>[data-image-fallback]{display:none}.duna-library-logo.is-broken>.duna-logo-fallback{display:block}