#userNotificationBtn { position:relative; min-width:30px; height:28px; padding:4px 7px; }
#userNotificationBtn[hidden] { display:none!important; }
#userNotificationBtn svg { width:18px; height:18px; }
#userNotificationBtn.has-unread::after { content:''; position:absolute; top:2px; right:3px; width:7px; height:7px; border-radius:50%; background:#ef4444; box-shadow:0 0 0 2px var(--panel,#fff); }
#authAccountBtn.is-restoring .header-action-icon { display:none; }
#authAccountBtn.is-restoring::before { content:''; width:13px; height:13px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:auth-restoring-spin .8s linear infinite; }
@keyframes auth-restoring-spin { to { transform:rotate(360deg); } }
.user-notice-dialog { box-sizing:border-box; width:min(480px,calc(100vw - 32px)); max-height:80dvh; margin:auto; padding:28px; border:1px solid #e5e8f2; border-radius:12px; background:#fff; color:#192237; font-size:14px; box-shadow:0 32px 96px #14203933,0 4px 16px #1420390d; overflow:auto; overscroll-behavior:contain; }
.user-notice-dialog::backdrop { background:#17203370; backdrop-filter:blur(5px); }
.user-notice-dropdown { box-sizing:border-box; position:fixed; inset:auto; margin:0; padding:12px; border:1px solid #d6deed; border-radius:12px; background:#fff; color:#192237; font-size:13px; line-height:1.5; box-shadow:0 10px 30px #14203920; overflow:auto; overscroll-behavior:contain; }
.user-notice-dropdown::backdrop { background:transparent; }
.user-notice-dropdown button { cursor:pointer; border:1px solid #d6deed; border-radius:10px; background:#f5f7fc; color:inherit; padding:10px 14px; font:inherit; }
.user-notice-dropdown .user-notice-close { display:grid; place-items:center; width:28px; height:28px; padding:0; border:0; background:transparent; border-radius:6px; color:#7b879b; font-size:21px; line-height:1; }
.user-notice-dropdown .user-notice-close:hover { background:#f0f3f8; color:#192237; }
.user-notice-dropdown .user-notice-item { display:grid; grid-template-columns:minmax(0,1fr) auto; width:100%; text-align:left; column-gap:10px; row-gap:4px; margin:2px 0; padding:10px 8px; border:0; border-radius:8px; background:#fff; overflow-wrap:anywhere; }
.user-notice-dropdown .user-notice-item:hover { background:#f5f7fb; }
.user-notice-dropdown .user-notice-item strong { font-size:13px; font-weight:600; line-height:1.5; }
.user-notice-dropdown .user-notice-item span { grid-column:1 / -1; font-size:12px; line-height:1.6; }
.user-notice-dropdown time { display:block; grid-column:2; grid-row:1; align-self:center; font-size:11px; white-space:nowrap; color:#929eb1; }
.user-notice-dropdown .user-notice-head { gap:8px; margin:0 0 6px; padding:0 2px 8px; border-bottom:1px solid #edf0f5; }
.user-notice-dropdown .user-notice-head h2 { margin:0; font-size:14px; line-height:1.5; font-weight:600; }
.user-notice-dropdown .user-notice-body { margin:0; padding:18px 8px; font-size:13px; line-height:1.5; color:#8995a8; }
.user-notice-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:16px; }
.user-notice-head h2 { margin:0; font-size:20px; }
.user-notice-dialog button { cursor:pointer; border:1px solid #d6deed; border-radius:10px; background:#f5f7fc; color:inherit; padding:10px 14px; font:inherit; }
.user-notice-dialog .user-notice-head { justify-content:space-between; gap:14px; margin-bottom:22px; }
.user-notice-dialog .user-notice-head h2 { font-size:16px; font-weight:700; line-height:1.45; letter-spacing:-.02em; overflow-wrap:anywhere; }
.user-notice-dialog .user-notice-close { position:relative; display:grid; place-items:center; width:28px; height:28px; padding:0; border:0; border-radius:0; background:transparent; color:#7b8197; font-size:0; flex-shrink:0; transition:background .15s,color .15s,border-color .15s; }
.user-notice-dialog .user-notice-close::before,.user-notice-dialog .user-notice-close::after { content:''; position:absolute; width:18px; height:1.6px; border-radius:2px; background:currentColor; transform:rotate(45deg); }
.user-notice-dialog .user-notice-close::after { transform:rotate(-45deg); }
.user-notice-dialog .user-notice-close:hover { background:transparent; color:#192237; }
.user-notice-dialog button:focus-visible,.user-notice-dialog a:focus-visible { outline:3px solid #b5abff; outline-offset:3px; }
.user-notice-content { min-height:0; padding:14px 24px 24px; overflow:auto; overscroll-behavior:contain; }
.user-notice-dialog .user-notice-content .user-notice-body { margin:10px 0 0; font-size:14px; line-height:1.85; color:#39435a; }
.user-notice-pagination { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0; padding:12px 24px; }
.user-notice-dialog .user-notice-nav { display:inline-flex; align-items:center; gap:8px; padding:6px 8px; border:0; border-radius:6px; background:transparent; color:#6d7b94; font-size:13px; transition:background .15s; }
.user-notice-nav::before { content:''; width:6px; height:6px; border-left:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); }
.user-notice-nav.next::before { order:1; transform:rotate(225deg); }
.user-notice-dialog .user-notice-nav:hover:not(:disabled) { background:#f0f3f8; }
.user-notice-dialog .user-notice-nav:disabled { opacity:.4; cursor:default; }
.user-notice-count { color:#939ab0; font-size:12px; font-variant-numeric:tabular-nums; }
.user-notice-body { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.7; margin:16px 0; }
.user-notice-dialog h3 { overflow-wrap:anywhere; }
.user-notice-dialog time { display:block; font-size:12px; color:#6d7b94; }
.user-notice-dialog .user-notice-item { display:grid; width:100%; text-align:left; gap:7px; margin:8px 0; background:#fff; overflow-wrap:anywhere; }
.user-notice-item span { color:#6d7b94; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.user-notice-item.unread strong::before { content:'●'; color:#ef4444; margin-right:8px; font-size:10px; }
.user-notice-mute { display:flex; gap:8px; align-items:center; margin:16px 0; font-size:14px; }
.user-notice-dialog .user-notice-primary { width:100%; background:#6658eb; color:#fff; border-color:transparent; }
.user-notice-error { color:#c53030; font-size:13px; }
.user-notice-error:empty { display:none; }
.user-notice-link { display:block; margin:16px 0; color:#5d50d6; }
@media(prefers-reduced-motion:reduce){#authAccountBtn.is-restoring::before{animation-duration:2s}}
@media(max-width:480px){.user-notice-dialog{padding:20px}.user-notice-dialog.is-detail{padding:0}.user-notice-dialog.is-detail .user-notice-head{padding:16px 20px}.user-notice-content{padding:12px 20px 20px}.user-notice-actions{padding:14px 20px}}
@media(prefers-reduced-motion:reduce){.user-notice-dialog button{transition:none}}

.user-notice-dialog.is-detail { width:min(420px,calc(100vw - 32px),60dvh); max-width:none; --notice-max-height:min(560px,calc((100vw - 32px) * 1.333333),80dvh); height:fit-content; min-height:min(var(--notice-min-height,420px),var(--notice-max-height)); max-height:var(--notice-max-height); padding:0; overflow:hidden; }
.user-notice-dialog.is-detail[open] { display:flex; flex-direction:column; }
.user-notice-dialog.is-detail .user-notice-head { flex-shrink:0; margin:0; padding:18px 24px; border-bottom:1px solid #d6deed; }
.user-notice-dialog.is-detail .user-notice-head h2 { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.user-notice-dialog.is-detail .user-notice-content { flex:1 1 auto; }
.user-notice-dialog.is-detail .user-notice-pagination { flex-shrink:0; }
.user-notice-actions { display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px; flex-shrink:0; padding:16px 20px; border-top:1px solid #d6deed; }
.user-notice-dialog .user-notice-actions button { height:38px; padding:0 12px; border:1px solid #d4dbe7; border-radius:8px; background:#eef2f9; font-size:14px; font-weight:600; }
.user-notice-dialog .user-notice-actions button:hover { background:#e3e9f3; border-color:#bdc8d9; }

.user-notice-title-icon { width:18px; height:18px; flex-shrink:0; color:inherit; }
.user-notice-dialog.is-detail .user-notice-head { justify-content:flex-start; gap:10px; }
.user-notice-dialog.is-detail .user-notice-head h2 { flex:1; min-width:0; }
.user-notice-actions .user-notice-pagination { margin-right:auto; padding:0; gap:6px; }
.user-notice-dialog .user-notice-actions .user-notice-nav { padding:0 8px; font-size:12px; font-weight:500; }
.user-notice-dialog .user-notice-actions .user-notice-nav:disabled { opacity:.4; cursor:default; }
.user-notice-dialog .user-notice-actions .user-notice-nav:hover:not(:disabled) { background:#e3e9f3; }
.user-notice-content > .user-notice-count { float:right; margin-left:12px; }
@media(max-width:380px){.user-notice-actions{gap:8px;padding:14px 16px}.user-notice-actions .user-notice-pagination{flex-basis:100%;justify-content:space-between;margin:0}.user-notice-dialog.is-detail .user-notice-head{padding:16px 20px}}
