:root{--portal-notice-height:38px}
.portal-notice{box-sizing:border-box;height:var(--portal-notice-height);background:#1f2328;color:#f0f6fc;border-bottom:1px solid #444c56;font:400 14px/38px system-ui,sans-serif;overflow:hidden;white-space:nowrap;text-align:left}
#portalNotice{position:fixed;inset:0 0 auto;z-index:10000}
.portal-notice-text{display:inline-block;min-width:100%;padding-left:100%;animation:portal-notice-scroll 35s linear infinite}
.portal-notice:hover .portal-notice-text{animation-play-state:paused}
body.has-portal-notice{padding-top:var(--portal-notice-height)}
body.has-portal-notice #auth{min-height:calc(100dvh - var(--portal-notice-height))}
body.has-portal-notice .shell:has(#messages.active),body.has-portal-notice.audit-view-active .shell,body.has-portal-notice.audit-view-active .workspace{height:calc(100dvh - var(--portal-notice-height))}
body.has-portal-notice .shell>aside{top:var(--portal-notice-height)}
.notice-editor textarea{box-sizing:border-box;width:100%;min-height:100px;resize:vertical}
.notice-editor .notice-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.notice-preview{margin:20px 0;border-radius:6px}
.terms-page{max-width:820px;margin:0 auto;padding:40px 24px 80px;color:#243349;line-height:1.9}
.terms-page h1{font-size:30px;color:#16407f}.terms-page h2{font-size:20px;margin-top:30px}.terms-page a{color:#1c509f}.terms-page .terms-summary{padding:20px;border:1px solid #d9e2ee;border-radius:12px;background:#f4f7fc}
.terms-link{display:inline-block;margin-top:12px}
.auth-card .terms-link,.topbar .terms-link{color:#1c509f;text-decoration:underline;text-underline-offset:3px}
.sidebar .terms-link,.auth-front .terms-link,.auth-art .terms-link{color:#f0f6fc;text-decoration:underline;text-underline-offset:3px}
.topbar .terms-link{margin:0 14px 0 0;font-size:14px;white-space:nowrap}
@keyframes portal-notice-scroll{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){.portal-notice-text{animation:none;padding:0 16px;min-width:0;max-width:100%;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;vertical-align:top}}
