.public-notice-badge{position:absolute;right:2px;top:-3px;border-radius:12px;background:#e84d64;color:white;font:10px Arial;padding:2px 5px;min-width:16px}.public-notice-center,.public-notice-detail{color-scheme:light;background:#fff;color:#263b52;border:1px solid #dce4ee;border-radius:12px;padding:0;width:min(600px,94vw);max-width:600px;max-height:88dvh;box-shadow:0 20px 80px #0004;overflow:auto;font-family:Arial,system-ui}.public-notice-center::backdrop,.public-notice-detail::backdrop{background:#09132188;backdrop-filter:blur(4px)}.public-notice-center header,.public-notice-detail header{display:flex;align-items:center;gap:14px;padding:20px 22px;border-bottom:1px solid #edf0f5}.public-notice-center h2,.public-notice-detail h2{margin:0;flex:1;font-size:19px;line-height:1.5}.notice-close{color:#7c8da2;background:#f1f5fa;border-radius:50%;width:30px;height:30px;border:0;cursor:pointer;font-size:14px;flex-shrink:0}.public-notice-center select{padding:7px;border:1px solid #dbe4ef;color:#556d89;background:white;border-radius:5px;font-size:11px}.notice-center-actions{display:flex;justify-content:space-between;align-items:center;padding:13px 20px;background:#f8faff;gap:12px}.notice-center-actions button{color:#397bc5;font-size:11px;border:0;background:none;cursor:pointer}.notice-center-actions span{font-size:10px;color:#99a8bb}.public-notice-row{display:flex;align-items:center;border-bottom:1px solid #eef2f7;padding:0 18px;gap:14px}.public-notice-row.unread{background:#eff6ff}.public-notice-row>button:first-child{text-align:left;flex:1;padding:20px 2px;border:0;background:none;color:#4c6381;cursor:pointer}.public-notice-row b{font-size:13px;line-height:1.7;display:block;font-weight:500}.public-notice-row small{font-size:10px;color:#9baabe;margin-top:8px;display:block}.notice-remove{border:0;background:none;color:#bd7f8d;font-size:11px;cursor:pointer}.public-notice-empty{padding:40px 20px;text-align:center;color:#9baabe;font-size:13px}.public-notice-document{padding:22px;line-height:1.8;font-size:15px;color:#344a64;overflow-wrap:anywhere}.public-notice-document p{margin:0 0 12px;color:inherit}.public-notice-document img,.public-notice-image{max-width:100%;height:auto;display:block;margin:auto}.public-notice-document a{color:#2679c7;text-decoration:underline}.public-notice-detail footer{display:flex;justify-content:flex-end;gap:10px;padding:0 22px 22px;margin:0;border:0}.public-notice-detail footer button,.public-notice-detail footer a{background:#1677ff;color:white;border:0;border-radius:6px;padding:11px 20px;cursor:pointer;font-size:12px;text-decoration:none}.notice-banner-slider{margin:12px 12px 0;border-radius:10px;overflow:hidden;border:1px solid #756134;background:#201b11}.notice-banner-main{display:block;width:100%;border:0;background:linear-gradient(130deg,#241c0f,#5c4321);color:#f5dfa0;padding:0;text-align:left;cursor:pointer}.notice-banner-main img{display:block;width:100%;max-height:290px;object-fit:cover}.notice-banner-main strong{display:block;font:bold 27px Arial;padding:28px 22px 12px}.notice-banner-main p{font-size:12px;line-height:1.8;padding:0 22px 20px;color:#dfd2ad}.notice-banner-dots{display:flex;justify-content:center;gap:6px;background:#161410;padding:7px}.notice-banner-dots button{padding:2px 4px;color:#76684d;font-size:10px;background:none;border:0}.notice-banner-dots button.active{color:#e3c67a}.ticker{overflow:hidden}.ticker .notice-marquee{display:block;cursor:pointer;white-space:nowrap;overflow:visible;animation:notice-marquee 24s linear infinite}.notice-loading-art{text-align:center;max-width:560px;margin:auto;padding:10px}.notice-loading-art img{max-width:100%;max-height:60vh;object-fit:contain}@keyframes notice-marquee{from{transform:translateX(10%)}to{transform:translateX(-80%)}}@media(prefers-reduced-motion:reduce){.ticker .notice-marquee{animation:none;overflow:hidden;text-overflow:ellipsis}}@media(max-width:500px){.public-notice-center header,.public-notice-detail header{padding:17px}.public-notice-detail h2{font-size:17px}.public-notice-document{padding:18px}.notice-center-actions{padding:12px}.notice-center-actions span{display:none}}

/* Keep the moving text inside its own viewport; bell and inbox stay still. */
.ticker>.ticker-viewport{display:block;position:relative;min-width:0;flex:1;overflow:hidden!important;text-overflow:clip;white-space:nowrap}
.ticker .ticker-track{display:block;width:max-content;max-width:none;white-space:nowrap;overflow:visible;text-overflow:clip;animation:ticker-scroll var(--ticker-duration,24s) linear infinite;will-change:transform}
@keyframes ticker-scroll{from{transform:translateX(var(--ticker-start,400px))}to{transform:translateX(-100%)}}
@media(hover:hover){.ticker-viewport:hover .ticker-track{animation-play-state:paused}}
@media(prefers-reduced-motion:reduce){.ticker .ticker-track{animation:none;transform:none}.ticker>.ticker-viewport{overflow-x:auto!important}}
.ticker .ticker-track p{display:inline;margin:0;padding:0;color:inherit;line-height:inherit}.ticker .ticker-track p+p:before{content:'　·　';color:#c5ac6a}.ticker .ticker-track p span,.ticker .ticker-track p a{display:inline;white-space:pre!important;font-size:inherit!important;overflow:visible}.ticker .ticker-track a{color:inherit;text-decoration:underline}

/* Flatten pasted paragraphs/newlines into one fixed-height running line. */
body .ticker>.ticker-viewport{height:22px;line-height:22px;min-height:22px;max-height:22px;align-self:center;white-space:nowrap!important}
body .ticker .ticker-track{display:flex!important;align-items:center;height:22px;line-height:22px;white-space:nowrap!important}
body .ticker .ticker-track *{display:inline!important;white-space:nowrap!important;line-height:22px!important;font-size:inherit!important;flex-shrink:0}
