.notif-panel{background:var(--surface);border:1px solid var(--border);z-index:1000;border-radius:10px;flex-direction:column;width:340px;max-height:420px;display:flex;position:absolute;top:calc(100% + 6px);right:0;overflow:hidden;box-shadow:0 6px 20px #0006}.notif-panel-header{border-bottom:1px solid var(--border);color:var(--text-primary);justify-content:space-between;align-items:center;padding:12px 14px;font-size:.95rem;display:flex}.notif-mark-all{color:var(--accent);cursor:pointer;background:0 0;border:none;font-size:.8rem}.notif-header-actions{align-items:center;gap:var(--s-8);display:flex}.notif-close{width:28px;height:28px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-family:inherit;font-size:16px;display:inline-flex}.notif-close:hover{background:var(--surface-light);color:var(--text-primary)}.notif-panel-body{overflow-anchor:none;flex:1;min-height:0;overflow-y:auto}.notif-loading,.notif-empty{text-align:center;color:var(--text-muted);padding:24px;font-size:.85rem}.notif-footer{height:32px;color:var(--text-muted);border-top:1px solid var(--border);justify-content:center;align-items:center;font-family:inherit;font-size:.85rem;display:flex}.notif-footer--end{font-style:italic}.notif-item{cursor:pointer;border-bottom:1px solid var(--border);gap:10px;padding:10px 14px;transition:background .15s;display:flex}.notif-item:hover{background:var(--bg-secondary)}.notif-unread{background:#3b82f614}.notif-icon{flex-shrink:0;margin-top:2px;font-size:1.2rem}.notif-content{flex:1;min-width:0}.notif-title{color:var(--text-secondary);font-size:15px;font-weight:500;line-height:1}.notif-body{color:var(--text-secondary);margin-top:2px;font-size:.8rem;line-height:1.35}.notif-link{color:inherit;text-decoration:none;display:block}.notif-link:hover{text-decoration:none}.notif-time{color:var(--text-muted);margin-top:4px;font-size:.72rem}
.notif-bell-wrapper{align-items:center;display:inline-flex;position:relative}.notif-bell{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;padding:4px 8px;font-family:inherit;font-size:1.3rem;line-height:1;position:relative}@media (max-width:767px){.notif-bell-label{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}.notif-badge{color:#fff;pointer-events:none;background:#e74c3c;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:0;right:0}.notif-sheet{z-index:1000;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;overscroll-behavior-y:contain;border-bottom:none;flex-direction:column;width:100%;height:70dvh;transition:transform .25s ease-out;animation:.28s cubic-bezier(.22,1,.36,1) sheet-slide-up;display:flex;position:fixed;inset:auto 0 0;overflow:hidden;box-shadow:0 -8px 30px #0006}.notif-sheet--dragging{transition:none}.notif-sheet .notif-sheet-handle,.notif-sheet .notif-panel-header{touch-action:none}@keyframes sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.notif-sheet{animation:none}}.notif-sheet-handle{width:40px;height:4px;margin:var(--s-8) auto 0;background:var(--border);border-radius:999px;flex-shrink:0}.notif-sheet .notif-panel{width:100%;min-height:0;max-height:none;box-shadow:none;border:none;border-radius:0;flex:1;position:static}.notif-drawer-backdrop{z-index:1190;background:#00000073;animation:.2s drawer-fade-in;position:fixed;inset:0}.notif-drawer{z-index:1200;background:var(--surface);border-left:1px solid var(--border);overscroll-behavior-y:contain;flex-direction:column;width:min(420px,100%);animation:.28s cubic-bezier(.22,1,.36,1) drawer-slide-in;display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;box-shadow:-8px 0 30px #0006}@keyframes drawer-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes drawer-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.notif-drawer,.notif-drawer-backdrop{animation:none}}.notif-drawer .notif-panel{width:100%;min-height:0;max-height:none;box-shadow:none;border:none;border-radius:0;flex:1;position:static}
.navbar-dm-wrap{align-items:center;display:inline-flex;position:relative}.navbar-dm-badge{color:#fff;pointer-events:none;background:#e74c3c;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.65rem;font-weight:700;display:inline-flex;position:absolute;top:0;right:0}
.legal-menu-backdrop{z-index:1190;background:#00000073;animation:.2s legal-menu-fade-in;position:fixed;inset:0}.legal-menu-sheet{z-index:1200;width:100%;max-height:85dvh;padding-bottom:calc(var(--s-20) + env(safe-area-inset-bottom,0px));background:var(--surface);border:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;overscroll-behavior-y:contain;border-bottom:none;flex-direction:column;transition:transform .25s ease-out;animation:.28s cubic-bezier(.22,1,.36,1) legal-menu-slide-up;display:flex;position:fixed;inset:auto 0 0;overflow-y:auto;box-shadow:0 -8px 30px #0006}.legal-menu-sheet--dragging{transition:none}.legal-menu-sheet-handle{width:40px;height:4px;margin:var(--s-8) auto 0;background:var(--border);touch-action:none;border-radius:999px;flex-shrink:0}@keyframes legal-menu-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes legal-menu-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.legal-menu-sheet,.legal-menu-backdrop{animation:none}}.legal-menu-header{justify-content:space-between;align-items:center;gap:var(--s-12);padding:var(--s-16) var(--s-16) var(--s-8);touch-action:none;display:flex}.legal-menu-header h2{font-size:17px;font-weight:700;font-family:var(--font-display);margin:0}.legal-menu-close{background:var(--surface-light);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;font-size:1.25rem;display:inline-flex}.legal-menu-close:hover{color:var(--text-primary)}.legal-menu-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.legal-menu-intro{padding:0 var(--s-16) var(--s-12);color:var(--text-muted);margin:0;font-size:13px;line-height:1.5}.legal-menu-list{gap:var(--s-6);padding:0 var(--s-12);flex-direction:column;display:flex}.legal-menu-item{align-items:center;gap:var(--s-12);min-height:52px;padding:var(--s-10) var(--s-12);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-light);color:var(--text-primary);text-decoration:none;transition:border-color .15s;display:flex}.legal-menu-item:hover{border-color:var(--accent)}.legal-menu-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.legal-menu-item-icon{color:var(--accent);flex-shrink:0;font-size:1.4rem}.legal-menu-item-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.legal-menu-item-label{font-size:15px;font-weight:600}.legal-menu-item-blurb{color:var(--text-muted);font-size:12.5px;line-height:1.4}.legal-menu-item-chevron{color:var(--text-muted);flex-shrink:0;font-size:1.4rem;line-height:1}.legal-menu-item--external{margin:var(--s-6) var(--s-12) 0}.legal-menu-footnote{margin:var(--s-16) 0 0;padding:var(--s-16);color:var(--text-muted);border-top:1px solid var(--border);font-size:12.5px;line-height:1.6}.legal-menu-button{width:42px;height:42px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:none}.legal-menu-button:hover{background:#8080801f}.legal-menu-button:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}@media (max-width:767px){.legal-menu-button{display:inline-flex}}
.navbar{padding:var(--s-16) var(--s-24);background:var(--surface);border-bottom:1px solid var(--border);z-index:100;flex-shrink:0;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.nav-icon,.navbar .nav-profile-avatar{display:none}.navbar-brand-logo{flex-shrink:0;width:auto;height:28px;display:block}.navbar-brand{font-size:16px;font-weight:600}.navbar-brand a{color:var(--text-primary);text-decoration:none;transition:color .15s}.navbar-brand a:hover{color:var(--accent)}.navbar-links{align-items:center;gap:var(--s-24);display:flex}.navbar-links a{color:var(--text-secondary);font-size:15px;font-weight:500;line-height:1;text-decoration:none;transition:color .15s}.navbar-links a:hover,.navbar-links a.active{color:var(--text-primary)}@media (max-width:767px){.navbar{padding:var(--s-16)}}@media (display-mode:standalone){.navbar{padding-top:calc(var(--s-16) + env(safe-area-inset-top))}}@media (max-width:767px){.navbar{top:auto;bottom:calc(var(--s-16) + env(safe-area-inset-bottom,0px));background:var(--surface-light);border:1px solid var(--border);z-index:100;border-radius:999px;justify-content:center;align-items:center;gap:4px;width:max-content;max-width:calc(100vw - 24px);padding:8px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #00000073}.navbar-brand{display:none}.navbar-links{flex-direction:row;gap:2px;width:100%}.navbar--anon .navbar-links{gap:8px}.nav-icon{flex-shrink:0;font-size:1.4rem;display:inline-flex}.nav-label{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.navbar .nav-profile-avatar{display:inline-flex}.navbar-links>a,.navbar-dm-wrap>a,.notif-bell{width:42px;height:42px;color:var(--text-secondary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:flex}.navbar-links>a:hover,.navbar-links>a.active,.navbar-dm-wrap>a:hover,.navbar-dm-wrap>a.active,.notif-bell:hover{background:#8080801f}.navbar-links>a.active,.navbar-dm-wrap>a.active{color:var(--accent)}.navbar-dm-wrap,.notif-bell-wrapper{flex-shrink:0;display:inline-flex}.notif-bell{font-size:1.4rem;position:relative}.app--dm-thread .navbar,.app--settings-detail .navbar{display:none}.navbar{transition:opacity .15s,visibility .15s}.app--composer-open .navbar{opacity:0;visibility:hidden;pointer-events:none}}@media (min-width:768px){.navbar{width:72px;padding:var(--s-16) 10px;border-bottom:none;border-right:1px solid var(--border);flex-direction:column;justify-content:flex-start;align-items:center;gap:10px;transition:width .2s;position:fixed;top:0;bottom:0;left:0;overflow:hidden}.navbar--expanded{width:240px}.nav-icon{flex-shrink:0;font-size:1.5rem;display:inline-flex}.navbar .nav-profile-avatar{flex-shrink:0;display:inline-flex}.navbar-links>a:has(.nav-profile-avatar){padding-left:10px}.navbar-brand{flex-shrink:0;align-self:flex-start;width:52px}.navbar-brand a{border-radius:10px;justify-content:center;align-items:center;width:100%;padding:10px 0;display:flex}.navbar-brand a:hover{background:#8080801f}.navbar-links{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:4px;width:100%}.navbar-links>a{border-radius:10px;justify-content:flex-start;align-items:center;gap:12px;width:100%;min-height:44px;padding:10px 14px;display:flex}.navbar-links>a .nav-label{white-space:nowrap;opacity:0;transition:opacity .15s}.navbar-links>a:hover,.navbar-links>a.active,.navbar-dm-wrap>a:hover,.navbar-dm-wrap>a.active{color:var(--text-primary);background:#8080801f}.navbar-dm-wrap{width:100%;display:flex}.navbar-dm-wrap>a{border-radius:10px;justify-content:flex-start;align-items:center;gap:12px;width:100%;min-height:44px;padding:10px 14px;display:flex}.navbar-dm-wrap>a .nav-label{white-space:nowrap;opacity:0;transition:opacity .15s}.notif-bell-wrapper{justify-content:center;width:100%}.notif-bell{border-radius:10px;justify-content:flex-start;align-items:center;gap:12px;width:100%;min-height:44px;padding:10px 14px;font-size:1.5rem;display:flex}.notif-bell svg{flex-shrink:0}.notif-bell:hover{color:var(--text-primary);background:#8080801f}.notif-bell-label{white-space:nowrap;opacity:0;font-size:15px;font-weight:500;line-height:1;transition:opacity .15s;display:inline}.navbar--expanded .navbar-links>a .nav-label,.navbar--expanded .navbar-dm-wrap>a .nav-label,.navbar--expanded .notif-bell-label{opacity:1}}
.footer{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;padding:0;display:flex}.footer-links{justify-content:center;gap:var(--s-24);padding:var(--s-16) var(--s-24);flex-wrap:wrap;display:flex}.footer-links a{color:var(--text-muted);font-size:13px;text-decoration:none;transition:color .15s}.footer-links a:hover{color:var(--text-secondary)}.footer-brand{padding:0 var(--s-24) var(--s-16);justify-content:center;display:flex}.footer-logo{width:100%;max-width:1200px;height:auto;display:block}@media (max-width:767px){.footer{display:none}}
.announcement-banner{--announce-bg:#f80;--announce-fg:#181008;--announce-soft:#ff880024;top:env(safe-area-inset-top,0px);z-index:95;justify-content:center;align-items:center;gap:var(--s-12);padding:8px var(--s-16);background:var(--announce-bg);color:var(--announce-fg);display:flex;position:sticky}.announcement-banner-message{text-align:center;font-size:14px;font-weight:700;line-height:1.4}.announcement-banner-close{border-radius:var(--radius-sm);background:var(--announce-soft);width:26px;height:26px;color:inherit;cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:18px;line-height:1;display:inline-flex}.announcement-banner-close:hover{background:#0000002e}@media (min-width:768px){.announcement-banner{padding-left:calc(72px + var(--s-16))}}
.app{flex-direction:column;min-height:100svh;display:flex}.app--fullscreen{height:100dvh;overflow:hidden}@media (max-width:767px){.app--dm-thread{height:100dvh;overflow:hidden}}.app{padding-top:env(safe-area-inset-top,0px)}.route-content--ready{animation:.18s ease-out both route-fade-in}@media (prefers-reduced-motion:reduce){.route-content--ready{animation:none}}@media (min-width:768px){.layout-content,.footer{margin-left:72px}}
