@font-face{font-family:Vazirmatn;src:url(/fonts/Vazirmatn-Variable.woff2) format("woff2 supports variations"),url(/fonts/Vazirmatn-Variable.woff2) format("woff2-variations");font-weight:100 900;font-style:normal;font-display:swap}:root{--bg: #fafafa;--bg-2: #ffffff;--bg-3: #f1f3f5;--text: #1a1d23;--text-2: #5c6470;--border: #e4e7eb;--accent: #2f6f5e;--accent-2: #3b8d76;--accent-text: #ffffff;--danger: #b54545;--up: #2e8b57;--down: #c0492f;--radius: 14px;--shadow: 0 1px 3px rgba(0,0,0,.06);--shadow-lg: 0 12px 40px rgba(0,0,0,.1)}[data-theme=dark]{--bg: #0f1216;--bg-2: #181c22;--bg-3: #21262e;--text: #e8eaed;--text-2: #9aa1ab;--border: #2b2f37;--accent: #4fae93;--accent-2: #5fc0a4;--accent-text: #0f1216;--danger: #d96a6a;--up: #4fae7a;--down: #e07a5f;--shadow: 0 1px 3px rgba(0,0,0,.4);--shadow-lg: 0 16px 48px rgba(0,0,0,.5)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:Vazirmatn,Tahoma,Arial,sans-serif;direction:rtl;text-align:start;line-height:1.7;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;transition:background .25s,color .25s}input,button,textarea,select{font:inherit}a{color:var(--accent)}.ltr{direction:ltr;unicode-bidi:isolate;display:inline-block}.splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:grid;place-items:center;background:var(--bg);transition:opacity .35s}.splash.hide{opacity:0;pointer-events:none}.splash .mark{width:84px;height:84px;animation:splash-pulse 1.2s ease-in-out infinite}@keyframes splash-pulse{50%{opacity:.4;transform:scale(.93)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:10px;padding:.7rem 1.1rem;cursor:pointer;font-weight:600;background:var(--bg-3);color:var(--text);transition:filter .15s,background .15s,border-color .15s}.btn:hover{filter:brightness(.97)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--accent-text)}.btn-primary:hover{background:var(--accent-2);filter:none}.btn-ghost{background:transparent;border-color:var(--border)}.btn-danger{background:transparent;border-color:var(--danger);color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff;filter:none}.btn-sm{padding:.4rem .7rem;font-size:.85rem;border-radius:8px}.btn-block{width:100%}.field{margin-bottom:1.1rem}.field label{display:block;margin-bottom:.4rem;font-size:.9rem;color:var(--text-2)}.input{width:100%;padding:.75rem .9rem;background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:10px;outline:none;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.input-wrap{position:relative}.input-wrap .toggle-eye{position:absolute;inset-inline-end:.6rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-2);padding:.2rem}.alert{border-radius:10px;padding:.7rem .9rem;margin-bottom:1rem;font-size:.9rem;background:color-mix(in srgb,var(--danger) 12%,var(--bg-2));border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);color:var(--danger)}.alert-ok{background:color-mix(in srgb,var(--up) 12%,var(--bg-2));border-color:color-mix(in srgb,var(--up) 35%,transparent);color:var(--up)}.auth-screen{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.auth-aside{background:linear-gradient(160deg,var(--accent) 0%,color-mix(in srgb,var(--accent) 60%,#000) 100%);color:#fff;padding:3rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.auth-aside .brand{display:flex;align-items:center;gap:.7rem;font-weight:800;font-size:1.3rem}.auth-aside .tag{max-width:30ch;opacity:.92;line-height:2}.auth-aside .ticker{display:flex;gap:.9rem;flex-wrap:wrap;margin-top:1rem}.chip{background:#ffffff24;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:.3rem .8rem;font-size:.85rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-glow{position:absolute;width:380px;height:380px;border-radius:50%;background:#ffffff1f;filter:blur(40px);inset-block-start:-120px;inset-inline-start:-80px}.auth-main{display:grid;place-items:center;padding:2rem;position:relative}.auth-card{width:100%;max-width:380px}.auth-card h1{font-size:1.5rem;margin:0 0 .3rem}.auth-card .sub{color:var(--text-2);margin:0 0 2rem}.theme-toggle{position:absolute;inset-block-start:1rem;inset-inline-start:1rem;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;width:40px;height:40px;cursor:pointer;font-size:1.1rem;color:var(--text)}.app-footer{display:flex;justify-content:center;align-items:center;gap:.6rem;color:var(--text-2);font-size:.82rem;padding:1.1rem 1rem;border-top:1px solid var(--border)}.foot-sep{color:var(--border)}.app-footer-auth{position:absolute;inset-block-end:0;inset-inline:0;border-top:none;padding:1rem}.shell{min-height:100vh;display:flex;flex-direction:column}.shell-main{flex:1}.topbar{display:flex;align-items:center;gap:1rem;padding:.8rem 1.2rem;background:var(--bg-2);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.topbar .brand{display:flex;align-items:center;gap:.6rem;font-weight:800}.topbar nav{display:flex;gap:.3rem;margin-inline-start:1rem}.topbar nav a{text-decoration:none;color:var(--text-2);padding:.45rem .8rem;border-radius:9px;font-weight:600}.topbar nav a.active,.topbar nav a:hover{background:var(--bg-3);color:var(--text)}.topbar .spacer{flex:1}.topbar .user{color:var(--text-2);font-size:.9rem}.page{padding:1.6rem;max-width:1080px;width:100%;margin:0 auto}.card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:1.4rem;box-shadow:var(--shadow)}.card h2{margin:0 0 .3rem;font-size:1.15rem}.card .muted{color:var(--text-2);font-size:.9rem;margin:0 0 1.2rem}.tabs{display:flex;gap:.3rem;border-bottom:1px solid var(--border);margin-bottom:1.4rem}.tabs button{background:none;border:none;cursor:pointer;padding:.7rem 1rem;color:var(--text-2);font-weight:600;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs button.active{color:var(--text);border-bottom-color:var(--accent)}.table-scroll{overflow-x:auto;max-width:100%}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:start;padding:.75rem .8rem;border-bottom:1px solid var(--border);white-space:nowrap}th{color:var(--text-2);font-weight:600;font-size:.85rem}.badge{font-size:.78rem;padding:.15rem .55rem;border-radius:999px;border:1px solid var(--border);color:var(--text-2)}.badge-admin{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.badge-on{color:var(--up);border-color:color-mix(in srgb,var(--up) 40%,transparent)}.badge-off{color:var(--down);border-color:color-mix(in srgb,var(--down) 40%,transparent)}.row-actions{display:flex;gap:.4rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#00000073;display:grid;place-items:center;padding:1rem}.modal{width:100%;max-width:440px;background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:1.4rem}.modal h3{margin:0 0 1.2rem}.modal-actions{display:flex;gap:.6rem;justify-content:flex-start;margin-top:1.4rem}.toolbar{display:flex;align-items:center;gap:1rem;margin-bottom:1.2rem}.toolbar .spacer{flex:1}.sym-search{position:relative}.sym-dropdown{position:absolute;inset-inline:0;inset-block-start:calc(100% + 4px);z-index:20;background:var(--bg-2);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);max-height:320px;overflow-y:auto;padding:.3rem}.sym-item{display:flex;align-items:center;gap:.6rem;width:100%;text-align:start;background:none;border:none;cursor:pointer;padding:.55rem .7rem;border-radius:8px;color:var(--text)}.sym-item:hover,.sym-item.hi{background:var(--bg-3)}.sym-item .sym-code{font-weight:700;min-width:64px}.sym-item .sym-name{color:var(--text-2);font-size:.88rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.2rem}.stat{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.1rem}.stat-label{color:var(--text-2);font-size:.85rem;margin-bottom:.3rem}.stat-val{font-size:1.5rem;font-weight:800}.stat-warn{margin-top:.4rem;font-size:.72rem;font-weight:600;color:var(--warn, #d97706);line-height:1.4}.halt-tag{display:inline-block;margin-inline-start:.4rem;font-size:.68rem;font-weight:700;color:var(--warn, #d97706);background:color-mix(in srgb,var(--warn, #d97706) 14%,transparent);border-radius:6px;padding:.05rem .35rem;vertical-align:middle}.row-halted td{opacity:.72}.mover-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.mover-card h3{margin:0 0 .8rem;font-size:1rem}.mover-list{display:flex;flex-direction:column}.mover-row{display:flex;justify-content:space-between;align-items:center;gap:.6rem;padding:.5rem .2rem;border-bottom:1px solid var(--border);text-decoration:none;color:var(--text)}.mover-row:last-child{border-bottom:none}.mover-row:hover{background:var(--bg-3)}.mv-sym{font-weight:700}.mv-val{color:var(--text-2);font-size:.85rem}.mv-chg.up,.chg.up,.up{color:var(--up)}.mv-chg.down,.chg.down,.down{color:var(--down)}.sym-title{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin:0;line-height:1.2;font-size:1.5rem;font-weight:800;letter-spacing:-.01em}.sym-title .ltr{font-weight:800}.sym-title .badge{flex:0 0 auto;font-size:.74rem;font-weight:600}.sym-name{font-size:.95rem;color:var(--text-2);margin:.3rem 0 .8rem}.badge-sector{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent);background:color-mix(in srgb,var(--accent) 9%,transparent)}.badge-stop{color:#fff;background:var(--down);border-color:transparent}.sym-price{display:flex;align-items:baseline;gap:.5rem;flex-wrap:wrap}.sym-price .big{font-size:2rem;font-weight:800;letter-spacing:-.01em;line-height:1.1}.sym-price .unit{color:var(--text-2);font-size:.95rem;margin-inline-start:-.15rem}.sym-price .chg{font-weight:700;font-size:.88rem;padding:.16rem .55rem;border-radius:999px;align-self:center}.sym-price .chg.up{background:color-mix(in srgb,var(--up) 14%,transparent)}.sym-price .chg.down{background:color-mix(in srgb,var(--down) 14%,transparent)}.sym-price .sym-date{margin-inline-start:.25rem;font-size:.88rem}.sym-live{display:flex;align-items:center;gap:.5rem;margin-top:.5rem;flex-wrap:wrap}.sym-live .live-dot{color:var(--up);animation:live-pulse 1.6s ease-in-out infinite}.sym-live-label{color:var(--up);font-size:.78rem;font-weight:700;letter-spacing:.02em}.sym-live-price{font-size:1.25rem;font-weight:800;color:var(--text)}.sym-live .chg{font-weight:700}.range-bar{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.8rem}.range-btn{background:var(--bg-3);border:1px solid var(--border);border-radius:8px;padding:.35rem .8rem;cursor:pointer;color:var(--text-2);font:inherit;font-size:.85rem}.range-btn.active{background:var(--accent);color:var(--accent-text);border-color:var(--accent);font-weight:700}.ind-toolbar{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:.8rem}.ind-toolbar label{display:flex;align-items:center;gap:.35rem;color:var(--text-2);cursor:pointer;font-size:.9rem}.ind-label{font-size:.82rem;color:var(--text-2);margin:1rem 0 .2rem}.alert-form{display:flex;gap:.6rem;flex-wrap:wrap}.alert-form select{flex:0 0 auto;width:auto}.alert-form input{flex:1;min-width:160px}.gp-strip{display:flex;gap:.6rem;overflow-x:auto;padding-bottom:.3rem}.gp-item{flex:0 0 auto;min-width:110px;background:var(--bg-3);border-radius:10px;padding:.5rem .7rem;display:flex;flex-direction:column;gap:.15rem}.gp-name{font-size:.8rem;color:var(--text-2)}.gp-price{font-weight:800}.gp-chg{font-size:.75rem;font-weight:700}.cmd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.8rem}.cmd-card{background:var(--bg-3);border-radius:14px;padding:.85rem .95rem;border:1px solid transparent;cursor:pointer;text-align:start;font:inherit;color:inherit;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.cmd-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--c, var(--accent)) 55%,transparent);box-shadow:0 10px 22px -12px color-mix(in srgb,var(--c, var(--accent)) 45%,transparent)}.cmd-card:active{transform:translateY(0) scale(.99)}.cmd-ico{width:34px;height:34px;border-radius:10px;flex:none;display:inline-flex;align-items:center;justify-content:center;color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent);transition:transform .18s ease}.cmd-ico svg{width:20px;height:20px}.cmd-card:hover .cmd-ico{transform:scale(1.12) rotate(-5deg)}.cmd-toman{font-size:.78rem;color:var(--text-2);margin-top:.15rem}.cmd-hl{font-size:.72rem;margin-top:.3rem;display:flex;gap:.7rem}.cmd-hl .h{color:color-mix(in srgb,var(--up) 75%,var(--text-2))}.cmd-hl .l{color:color-mix(in srgb,var(--down) 75%,var(--text-2))}.modal-wide{max-width:680px}.cmd-top{display:flex;align-items:center;gap:.55rem}.cmd-name{font-weight:600;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmd-chg{font-size:.76rem;font-weight:700;padding:.13rem .5rem;border-radius:999px;white-space:nowrap}.cmd-chg.up{color:var(--up);background:color-mix(in srgb,var(--up) 13%,transparent)}.cmd-chg.down{color:var(--down);background:color-mix(in srgb,var(--down) 13%,transparent)}.cmd-chg.flat{color:var(--text-2);background:color-mix(in srgb,var(--text-2) 11%,transparent)}.cmd-price{font-size:1.25rem;font-weight:800;margin:.35rem 0}.cmd-unit{font-size:.72rem;font-weight:400;color:var(--text-2)}.mf-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.8rem;margin-bottom:1rem}.mf-cell{background:var(--bg-3);border-radius:10px;padding:.7rem .85rem}.mf-label{color:var(--text-2);font-size:.8rem;margin-bottom:.3rem}.mf-val{font-size:1.1rem;font-weight:800}.mf-spark{border-top:1px solid var(--border);padding-top:.8rem}.ssh-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}@media (max-width: 560px){.ssh-grid{grid-template-columns:1fr}}.md h3{font-size:1.02rem;margin:1rem 0 .4rem;color:var(--accent)}.md h4{font-size:.92rem;margin:.8rem 0 .3rem}.md p{margin:.4rem 0;line-height:1.9}.md ul{margin:.4rem 0;padding-inline-start:1.3rem}.md li{margin:.25rem 0;line-height:1.8}.md strong{font-weight:700}.ai-suggest{display:flex;flex-direction:column;gap:.5rem;max-width:360px;margin:1rem auto 0}.ai-suggest button{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:.6rem .8rem;cursor:pointer;color:var(--text);font:inherit}.ai-suggest button:hover{background:var(--bg-3);border-color:var(--accent)}.ai-tool{align-self:flex-start;font-size:.82rem;padding:.3rem .6rem}.nav-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;background:var(--danger);color:#fff;border-radius:999px;font-size:.7rem;margin-inline-start:.25rem}.index-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1.2rem}.index-card .ix-top{display:flex;justify-content:space-between;align-items:center}.ix-name{font-weight:700}.ix-chg{font-weight:700;font-size:.9rem}.ix-val{font-size:1.6rem;font-weight:800;margin:.3rem 0 .5rem}.sector-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.3rem .8rem}.sector-row{display:flex;align-items:center;gap:.6rem;padding:.45rem .2rem;border-bottom:1px solid var(--border)}.sec-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sec-count{font-size:.78rem}.sec-chg{font-weight:700;font-size:.88rem}.sym-header{display:block}.sym-topline{display:flex;align-items:center;justify-content:space-between;gap:.6rem 1rem;flex-wrap:wrap}.sym-topline .btn{flex:0 0 auto}@media (max-width: 560px){.sym-topline .btn{width:100%}}.holding-form{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.holding-form .picked{display:inline-flex;align-items:center;gap:.4rem;background:var(--bg-3);padding:.4rem .7rem;border-radius:10px}.holding-form .picked button{background:none;border:none;cursor:pointer;color:var(--text-2)}.chat-head-actions{display:flex;align-items:center;gap:.5rem}.chat-search{max-width:220px;padding:.45rem .7rem}.avatar-wrap{position:relative;flex-shrink:0}.online-dot{position:absolute;inset-block-end:0;inset-inline-end:0;width:11px;height:11px;border-radius:50%;background:var(--up);border:2px solid var(--bg-2)}.chat-page{height:calc(100vh - 62px);display:flex}.chat-card{display:flex;flex-direction:column;flex:1;padding:0;overflow:hidden}.chat-head{padding:1rem 1.2rem;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:.8rem}.chat-head h2{margin:0;font-size:1.1rem}.chat-head .muted{font-size:.82rem}.chat-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:1.2rem;display:flex;flex-direction:column;gap:.9rem}.chat-empty{margin:auto;color:var(--text-2)}.msg-row{display:flex;gap:.6rem;max-width:78%;align-self:flex-end;flex-direction:row-reverse}.msg-row.mine{align-self:flex-start;flex-direction:row}.avatar{width:38px;height:38px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;color:#fff;font-size:.8rem;font-weight:700}.avatar-img{object-fit:cover}.profile-avatar-row{display:flex;align-items:center;gap:1rem;margin-bottom:1.4rem}.profile-avatar{width:76px;height:76px;border-radius:50%;flex-shrink:0;overflow:hidden;display:grid;place-items:center;background:var(--accent);color:var(--accent-text);font-size:1.6rem;font-weight:800}.profile-avatar img{width:100%;height:100%;object-fit:cover}.bubble-wrap{display:flex;flex-direction:column;gap:.3rem;min-width:0}.bubble{position:relative;background:var(--bg-3);border-radius:16px;padding:.55rem .85rem .4rem;border-end-end-radius:4px;max-width:100%}.msg-row.mine .bubble{background:var(--accent);color:var(--accent-text);border-radius:16px;border-end-start-radius:4px;border-end-end-radius:16px}.msg-name{font-size:.78rem;font-weight:700;margin-bottom:.15rem}.msg-body{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;line-height:1.6}.msg-time{font-size:.68rem;opacity:.6;margin-top:.2rem;text-align:start}.msg-row.mine .msg-time{color:var(--accent-text)}.edit-box textarea{width:100%;resize:vertical}.edit-actions{display:flex;gap:.4rem;margin-top:.4rem}.msg-time .edited{opacity:.8}.bubble{cursor:context-menu}.ctx-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150}.ctx-menu{position:fixed;min-width:160px;padding:.3rem;z-index:151;background:var(--bg-2);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.ctx-menu button{display:flex;align-items:center;gap:.5rem;background:none;border:none;cursor:pointer;text-align:start;padding:.6rem .7rem;border-radius:8px;color:var(--text);font-size:.9rem;width:100%}.ctx-menu button:hover{background:var(--bg-3)}.ctx-menu button.danger{color:var(--danger)}.emoji-pop-inline{display:inline-flex;flex-wrap:wrap;gap:.15rem;padding:.3rem;align-self:flex-start;background:var(--bg-2);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}.msg-row.mine .emoji-pop-inline{align-self:flex-end}.emoji-pop-inline button,.emoji-bar button{border:none;background:none;cursor:pointer;font-size:1.2rem;line-height:1;padding:.25rem;border-radius:8px;transition:transform .1s,background .15s}.emoji-pop-inline button:hover,.emoji-bar button:hover{transform:scale(1.25);background:var(--bg-3)}.reactions{display:flex;flex-wrap:wrap;gap:.3rem}.msg-row.mine .reactions{justify-content:flex-end}.chip-react{display:inline-flex;align-items:center;gap:.2rem;background:var(--bg-2);border:1px solid var(--border);border-radius:999px;padding:.1rem .45rem;cursor:pointer;font-size:.85rem}.chip-react.mine{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--bg-2))}.chip-react .rc{font-size:.72rem;color:var(--text-2)}.reply-quote{display:flex;flex-direction:column;gap:.1rem;width:100%;text-align:start;background:color-mix(in srgb,var(--accent) 12%,transparent);border:none;border-inline-start:3px solid var(--accent);border-radius:6px;padding:.3rem .5rem;margin-bottom:.35rem;cursor:pointer;color:inherit;min-width:0}.msg-row.mine .reply-quote{border-inline-start-color:var(--accent-text);background:#ffffff2e}.reply-quote .rq-name{font-size:.76rem;font-weight:700}.reply-quote .rq-body{font-size:.8rem;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.msg-image{max-width:min(260px,100%);max-height:280px;border-radius:12px;cursor:pointer;display:block;margin-bottom:.35rem}.msg-file{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:inherit;background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:.5rem .65rem;margin-bottom:.35rem;max-width:260px}.msg-row.mine .msg-file{background:#ffffff26;border-color:#ffffff40}.mf-icon{font-size:1.4rem}.mf-meta{display:flex;flex-direction:column;min-width:0}.mf-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:190px}.mf-size{font-size:.72rem;opacity:.7}.flash{animation:flash-hl 1.2s ease}@keyframes flash-hl{0%,40%{background:color-mix(in srgb,var(--accent) 18%,transparent);border-radius:12px}}.compose-extras{padding:.5rem .8rem 0;display:flex;flex-direction:column;gap:.4rem}.reply-bar,.file-chip{display:flex;align-items:center;gap:.5rem;background:var(--bg-3);border-inline-start:3px solid var(--accent);border-radius:8px;padding:.4rem .6rem;font-size:.85rem}.reply-bar .rb-text,.file-chip span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.reply-bar button,.file-chip button{margin-inline-start:auto;background:none;border:none;cursor:pointer;color:var(--text-2);font-size:1rem}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000000d9;display:grid;place-items:center;padding:1.5rem}.lightbox img{max-width:95%;max-height:90%;border-radius:8px}.lb-close{position:absolute;inset-block-start:1rem;inset-inline-end:1rem;background:#ffffff26;color:#fff;border:none;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2rem}.composer{display:flex;align-items:center;gap:.5rem;padding:.8rem;border-top:1px solid var(--border);position:relative}.composer .input{flex:1}.emoji-toggle{background:none;border:none;cursor:pointer;font-size:1.4rem;line-height:1;padding:.2rem}.emoji-bar{position:absolute;inset-block-end:calc(100% + 6px);inset-inline-start:.8rem;z-index:5;display:flex;gap:.15rem;padding:.35rem;background:var(--bg-2);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg)}.notif-prompt{position:fixed;z-index:60;inset-block-end:1.1rem;inset-inline-start:1.1rem;width:min(400px,calc(100vw - 2.2rem));background:var(--bg-2);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-lg);padding:1.1rem 1.2rem;animation:notif-in .45s cubic-bezier(.21,1.02,.55,1.01) both}.notif-prompt.leave{animation:notif-out .3s ease-in both}@keyframes notif-in{0%{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}@keyframes notif-out{to{opacity:0;transform:translateY(14px) scale(.96)}}.notif-prompt-close{position:absolute;inset-block-start:.55rem;inset-inline-end:.55rem;background:none;border:none;color:var(--text-2);cursor:pointer;padding:.35rem;border-radius:8px;line-height:0}.notif-prompt-close:hover{background:var(--bg-3);color:var(--text)}.notif-prompt-head{display:flex;gap:.9rem;align-items:flex-start;margin-bottom:1rem}.notif-prompt-bell{flex:none;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.notif-prompt-bell svg{animation:bell-ring 3s ease-in-out 1.2s infinite;transform-origin:50% 15%}@keyframes bell-ring{0%,14%,to{transform:rotate(0)}2%{transform:rotate(13deg)}4%{transform:rotate(-11deg)}6%{transform:rotate(8deg)}8%{transform:rotate(-6deg)}10%{transform:rotate(3deg)}12%{transform:rotate(-1deg)}}.notif-prompt-head strong{display:block;font-size:.98rem;margin-block:.15rem .35rem}.notif-prompt-head p{margin:0;color:var(--text-2);font-size:.85rem;line-height:1.75}.notif-prompt-actions{display:flex;gap:.6rem}.notif-prompt-actions .btn-primary{flex:1}.notif-prompt-done{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.4rem 0;color:var(--up);font-weight:600}@media (prefers-reduced-motion: reduce){.notif-prompt,.notif-prompt.leave,.notif-prompt-bell svg{animation:none}}@media (max-width: 820px){.auth-screen{grid-template-columns:1fr}.auth-aside{display:none}}@media (max-width: 640px){.topbar{gap:.5rem .7rem;padding:.7rem .9rem}.topbar .brand span:not(.ti){font-size:.95rem}.page{padding:1rem}.card{padding:1.1rem;border-radius:12px}.auth-main{padding:1.25rem}.auth-card h1{font-size:1.3rem}.tabs{overflow-x:auto}.tabs button{white-space:nowrap}.modal{max-width:100%}.modal-actions{flex-direction:column}.modal-actions .btn,.toolbar .btn{width:100%}.row-actions{flex-direction:column}.row-actions .btn{width:100%}.chat-page{height:calc(100dvh - 116px);padding:.5rem}.msg-row{max-width:88%}.msg-actions{opacity:1}.chat-list{padding:.9rem}.notif-prompt{inset-inline:.75rem;inset-block-end:.75rem;width:auto}.notif-prompt-actions .btn{flex:1}}@media (max-width: 380px){.auth-card .sub{font-size:.9rem}}.update-banner{position:sticky;top:0;z-index:90;display:flex;align-items:center;justify-content:center;gap:.8rem;padding:.55rem .9rem;background:var(--accent);color:var(--accent-text);font-size:.9rem}.update-banner .update-btn{background:var(--accent-text);color:var(--accent);border:none;font-weight:700}.clock{display:flex;align-items:center;gap:.55rem;font-size:.8rem;color:var(--text-2);white-space:nowrap}.clock-time{font-variant-numeric:tabular-nums;direction:ltr;unicode-bidi:isolate}.cal-toggle{font-size:.75rem}@media (max-width: 900px){.clock-date{display:none}}.screener-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:.7rem;align-items:end}.screener-filters label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;color:var(--text-2)}.compare-picker{display:flex;flex-direction:column;gap:.6rem}.compare-chips{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .6rem;border:1px solid var(--border);border-radius:999px;font-size:.85rem;background:var(--bg-3, transparent)}.chip button{border:none;background:none;cursor:pointer;color:var(--text-2);font-size:.8rem;padding:0}.compare-legend{display:flex;flex-wrap:wrap;gap:.9rem;margin-bottom:.5rem;font-size:.85rem}.legend-item{display:inline-flex;align-items:center;gap:.4rem}.legend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.toggle-chip{position:relative;display:inline-flex;align-items:center;gap:.45rem;padding:.34rem .85rem;border:1px solid var(--border);border-radius:999px;cursor:pointer;font-size:.85rem;color:var(--text-2);background:transparent;transition:border-color .18s ease,color .18s ease,background .18s ease;-webkit-user-select:none;user-select:none;white-space:nowrap}.toggle-chip input{position:absolute;opacity:0;pointer-events:none}.toggle-chip .tick{width:17px;height:17px;border-radius:50%;border:1.5px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:.62rem;line-height:1;color:transparent;background:transparent;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.toggle-chip:hover{border-color:var(--accent);color:var(--text)}.toggle-chip:hover .tick{border-color:var(--accent)}.toggle-chip:active .tick{transform:scale(.85)}.toggle-chip:has(input:checked){border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.toggle-chip:has(input:checked) .tick{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.toggle-chip:has(input:focus-visible){box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.net-form{margin-bottom:.9rem}.net-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;align-items:end}.net-form-grid label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;color:var(--text-2)}.net-presets{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:1rem}.chip-btn{cursor:pointer;background:var(--bg-3);transition:border-color .15s,color .15s}.chip-btn:hover{border-color:var(--accent);color:var(--accent)}.net-list{display:flex;flex-direction:column;gap:.5rem}.net-row{display:grid;grid-template-columns:auto 1fr auto auto 1.4fr;align-items:center;gap:.8rem;padding:.55rem .7rem;border:1px solid var(--border);border-radius:12px;background:var(--bg-2);transition:border-color .15s}.net-row:hover{border-color:color-mix(in srgb,var(--accent) 45%,transparent)}.net-del{width:30px;height:30px;flex:none;border-radius:8px;border:1px solid color-mix(in srgb,var(--danger) 45%,transparent);background:transparent;color:var(--danger);cursor:pointer;font-size:.85rem;transition:background .15s,color .15s}.net-del:hover{background:var(--danger);color:#fff}.net-label{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.net-iface,.net-gw,.net-dest{font-size:.85rem;color:var(--text-2);white-space:nowrap}.net-dest{color:var(--text);font-weight:600}@media (max-width: 620px){.net-row{grid-template-columns:auto 1fr;row-gap:.3rem}.net-iface,.net-gw{grid-column:2}}.connector-card{border:1px solid var(--border);border-radius:14px;padding:1rem;margin-bottom:1rem;background:var(--bg-2)}.connector-head{display:flex;align-items:center;gap:.7rem;margin-bottom:.8rem}.connector-ico{width:40px;height:40px;flex:none;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--c);background:color-mix(in srgb,var(--c) 15%,transparent)}.connector-body label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;color:var(--text-2);margin-bottom:.6rem}.test-badge{font-size:.8rem;padding:.18rem .6rem;border-radius:999px;align-self:center}.test-badge.ok{color:var(--up);background:color-mix(in srgb,var(--up) 14%,transparent)}.test-badge.bad{color:var(--down);background:color-mix(in srgb,var(--down) 14%,transparent)}.notif-perm{display:flex;align-items:center;gap:1rem;padding:.9rem;border:1px solid var(--border);border-radius:12px;margin-bottom:1rem;background:var(--bg-2)}.notif-perm>div{flex:1}.notif-group{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-bottom:1rem}.notif-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem .9rem}.notif-row+.notif-row{border-top:1px solid var(--border)}.notif-title{font-weight:600}.notif-tg label{display:flex;flex-direction:column;gap:.3rem;font-size:.82rem;color:var(--text-2)}.switch{position:relative;flex:none;cursor:pointer}.switch input{position:absolute;opacity:0}.switch-track{display:block;width:44px;height:25px;border-radius:999px;background:var(--border);transition:background .2s ease}.switch-thumb{position:absolute;top:3px;inset-inline-start:3px;width:19px;height:19px;border-radius:50%;background:#fff;transition:transform .2s ease}.switch input:checked+.switch-track{background:var(--accent)}.switch input:checked+.switch-track .switch-thumb{transform:translate(-19px)}.switch input:focus-visible+.switch-track{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.alert-kinds{display:flex;flex-wrap:wrap;gap:.4rem}.kind-chip{padding:.34rem .8rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text-2);cursor:pointer;font:inherit;font-size:.84rem;transition:border-color .15s,color .15s,background .15s}.kind-chip:hover{border-color:var(--accent);color:var(--text)}.kind-chip.active{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);font-weight:600}.alert-hint-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.88rem;color:var(--text-2)}.badge-repeat{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent);margin-inline-start:.25rem}.bell-btn{font-size:.9rem;padding:.2rem .45rem}.view-tabs{display:inline-flex;border:1px solid var(--border);border-radius:10px;overflow:hidden}.view-tabs button{font:inherit;font-size:.84rem;padding:.35rem .9rem;border:none;background:transparent;color:var(--text-2);cursor:pointer;transition:background .15s,color .15s}.view-tabs button.active{background:var(--accent);color:var(--accent-text);font-weight:600}.sector-row{cursor:pointer}.sector-row:hover td{background:color-mix(in srgb,var(--accent) 7%,transparent)}:root{--seg-0: #3b82f6;--seg-1: #f59e0b;--seg-2: #8b5cf6;--seg-3: #10b981;--seg-4: #ef4444;--seg-5: #64748b}.sector-mix{margin-top:1rem}.sector-bar{display:flex;height:10px;border-radius:999px;overflow:hidden;background:var(--bg-3)}.sector-seg{display:block;height:100%;min-width:2px}.sector-legend{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.5rem;font-size:.8rem;color:var(--text-2)}.rsi-badge{padding:.1rem .5rem;border-radius:999px;font-size:.8rem;background:color-mix(in srgb,var(--text-2) 12%,transparent)}.rsi-badge.hot{color:var(--down);background:color-mix(in srgb,var(--down) 14%,transparent)}.rsi-badge.cold{color:var(--up);background:color-mix(in srgb,var(--up) 14%,transparent)}.app-version{font-size:.75rem;color:var(--text-2)}.btn-logout{display:inline-flex;align-items:center;gap:.35rem;background:transparent;border:1px solid color-mix(in srgb,var(--danger) 45%,transparent);color:var(--danger)}.btn-logout:hover{background:var(--danger);color:#fff;filter:none}.confirm-box{max-width:340px}.settings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.8rem;margin-top:1rem}.settings-card{display:flex;align-items:center;gap:.8rem;padding:.95rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--bg-2);cursor:pointer;text-align:start;font:inherit;color:inherit;transition:border-color .15s ease,transform .15s ease}.settings-card:hover{border-color:var(--accent);transform:translateY(-1px)}.settings-ico{width:42px;height:42px;flex:none;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:1.25rem;background:color-mix(in srgb,var(--accent) 10%,transparent)}.settings-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.settings-txt b{font-weight:700}.settings-txt .muted{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-chev{color:var(--text-2);font-size:1.2rem}.pin-bar{display:flex;align-items:center;gap:.4rem;width:100%;padding:.45rem .8rem;border:none;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--accent) 7%,transparent);color:var(--text);font:inherit;font-size:.82rem;cursor:pointer;text-align:start}.pin-bar .pin-text{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text-2)}.msg-audio{max-width:260px;width:100%;margin:.2rem 0}.ticks{margin-inline-start:.3rem;font-size:.72rem;color:var(--text-2);letter-spacing:-2px}.ticks.seen{color:var(--accent)}.jump-down{position:absolute;bottom:84px;inset-inline-start:50%;transform:translate(50%);z-index:5;padding:.35rem .9rem;border-radius:999px;border:1px solid var(--border);background:var(--bg-2);color:var(--accent);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;box-shadow:0 4px 14px #0000002e}.chat-card{position:relative}.typing-line{display:flex;align-items:center;gap:.45rem;padding:.25rem .9rem;font-size:.78rem;color:var(--text-2)}.typing-dots{display:inline-flex;gap:3px}.typing-dots i{width:5px;height:5px;border-radius:50%;background:var(--accent);animation:typing-bounce 1.2s infinite}.typing-dots i:nth-child(2){animation-delay:.2s}.typing-dots i:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}.rec-bar{flex:1;display:flex;align-items:center;gap:.6rem;padding:.3rem .6rem;border:1px solid color-mix(in srgb,var(--danger) 40%,transparent);border-radius:10px}.rec-dot{width:10px;height:10px;border-radius:50%;background:var(--danger);animation:rec-blink 1s infinite}.rec-time{font-variant-numeric:tabular-nums;direction:ltr;font-size:.85rem}@keyframes rec-blink{50%{opacity:.25}}.gp-item .cmd-ico{width:26px;height:26px;border-radius:8px}.gp-item .cmd-ico svg{width:15px;height:15px}.install-float{position:fixed;bottom:18px;inset-inline-start:50%;transform:translate(50%);z-index:80;display:flex;align-items:center;gap:.7rem;padding:.7rem .9rem;border:1px solid var(--border);border-radius:16px;background:var(--bg-2);box-shadow:0 10px 30px #0000004d;max-width:min(94vw,420px);width:max-content}.install-txt{display:flex;flex-direction:column;gap:.1rem;min-width:0}.install-txt .muted{font-size:.76rem}.install-close{border:none;background:none;color:var(--text-2);cursor:pointer;font-size:.85rem;padding:.2rem}.install-steps{padding-inline-start:1.2rem;line-height:2}a.sector-row{text-decoration:none;color:inherit;transition:background .15s}a.sector-row:hover{background:color-mix(in srgb,var(--accent) 6%,transparent)}.copy-btn{margin-top:.6rem;display:inline-flex;align-items:center;gap:.3rem;padding:.28rem .7rem;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text-2);font:inherit;font-size:.78rem;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.copy-btn:hover{border-color:var(--accent);color:var(--accent)}.copy-btn.done{border-color:var(--up);color:var(--up);background:color-mix(in srgb,var(--up) 10%,transparent)}.bt-params{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:.8rem}.bt-param{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;color:var(--text-2)}.bt-param input{width:6.5rem;padding:.4rem .55rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-2);color:var(--text);font:inherit}.bt-param input:focus{outline:none;border-color:var(--accent)}.bt-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.7rem}.bt-stat{background:var(--bg-2);border:1px solid var(--border);border-radius:10px;padding:.7rem .8rem}.bt-stat-label{font-size:.75rem;color:var(--text-2);margin-bottom:.3rem}.bt-stat-value{font-size:1.15rem;font-weight:700;font-variant-numeric:tabular-nums}.tech-chips{display:flex;flex-wrap:wrap;gap:.5rem}.tech-chip{padding:.35rem .8rem;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text-2);font:inherit;font-size:.82rem;cursor:pointer;transition:all .15s}.tech-chip:hover{border-color:var(--accent);color:var(--accent)}.tech-chip.on{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}.tech-filter-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:end;margin-top:.9rem}.tech-filter-row label{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;color:var(--text-2)}.tech-filter-row .input{width:12rem;max-width:60vw}.live-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .7rem;border-radius:999px;font-size:.8rem;font-weight:600;border:1px solid var(--border)}.live-badge.on{color:var(--up);border-color:color-mix(in srgb,var(--up) 40%,transparent);background:color-mix(in srgb,var(--up) 10%,transparent)}.live-badge.off{color:var(--text-2)}.live-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.live-badge.on .live-dot{animation:live-pulse 1.6s ease-in-out infinite}@keyframes live-pulse{0%,to{opacity:1;box-shadow:0 0 color-mix(in srgb,var(--up) 55%,transparent)}50%{opacity:.5;box-shadow:0 0 0 5px transparent}}.confirm-backdrop{animation:confirm-fade .18s ease}@keyframes confirm-fade{0%{opacity:0}to{opacity:1}}.confirm-pop{max-width:380px;text-align:center;animation:confirm-pop .2s cubic-bezier(.2,.9,.3,1.2)}@keyframes confirm-pop{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:none}}.confirm-icon{width:54px;height:54px;margin:0 auto 1rem;border-radius:50%;display:grid;place-items:center;color:var(--text-2);background:color-mix(in srgb,var(--text-2) 12%,transparent)}.confirm-icon.danger{color:var(--danger);background:color-mix(in srgb,var(--danger) 14%,transparent)}.confirm-msg{color:var(--text-2);font-size:.92rem;line-height:1.9;margin:0 0 .4rem}.confirm-actions{display:flex;gap:.6rem;margin-top:1.3rem}.confirm-actions .btn{flex:1}@media (max-width: 560px){.confirm-actions{flex-direction:column-reverse}}.field-label{display:block;margin-bottom:.5rem;font-size:.9rem;color:var(--text-2);font-weight:600}.provider-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}@media (max-width: 560px){.provider-tabs{grid-template-columns:1fr}}.provider-tab{display:flex;flex-direction:column;align-items:flex-start;gap:.4rem;padding:.8rem .9rem;border:1px solid var(--border);border-radius:12px;background:var(--bg);color:var(--text);cursor:pointer;text-align:start;font-weight:700;transition:border-color .15s,background .15s,box-shadow .15s}.provider-tab:hover{border-color:var(--accent)}.provider-tab.on{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg));box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.provider-flags{display:flex;gap:.35rem;flex-wrap:wrap}.pf{font-size:.68rem;font-weight:600;padding:.1rem .45rem;border-radius:999px;border:1px solid var(--border);color:var(--text-2)}.pf.active{color:var(--accent-text);background:var(--accent);border-color:var(--accent)}.pf.set{color:var(--up);border-color:color-mix(in srgb,var(--up) 40%,transparent)}.table td{font-variant-numeric:tabular-nums}.table tbody tr{transition:background .12s}.table tbody tr:hover{background:color-mix(in srgb,var(--accent) 5%,transparent)}.table thead th{position:sticky;top:0;background:var(--bg-2);z-index:1}.nav-toggle{display:none;align-items:center;justify-content:center;background:transparent;border:1px solid var(--border);border-radius:10px;width:40px;height:40px;color:var(--text);cursor:pointer;flex:0 0 auto}.nav-toggle:hover{border-color:var(--accent);color:var(--accent)}.topnav{display:flex}.drawer-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#00000080;opacity:0;pointer-events:none;transition:opacity .25s}.drawer-backdrop.show{opacity:1;pointer-events:auto}.mobile-drawer{display:none;flex-direction:column;position:fixed;top:0;right:0;bottom:0;z-index:61;width:min(84vw,320px);background:var(--bg-2);border-inline-start:1px solid var(--border);box-shadow:var(--shadow-lg);transform:translate(100%);transition:transform .28s cubic-bezier(.3,.8,.3,1)}.mobile-drawer.open{transform:translate(0)}.drawer-head{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--border)}.drawer-close{background:transparent;border:none;color:var(--text-2);cursor:pointer;padding:.3rem;border-radius:8px}.drawer-close:hover{color:var(--text);background:var(--bg-3)}.drawer-nav{display:flex;flex-direction:column;gap:.2rem;padding:.6rem;overflow-y:auto;flex:1}.drawer-nav a{text-decoration:none;color:var(--text-2);padding:.85rem 1rem;border-radius:10px;font-weight:600;display:flex;align-items:center;gap:.5rem;transition:background .12s,color .12s}.drawer-nav a:hover{background:var(--bg-3);color:var(--text)}.drawer-nav a.active{background:color-mix(in srgb,var(--accent) 13%,transparent);color:var(--accent)}.drawer-foot{border-top:1px solid var(--border);padding:1rem;display:flex;flex-direction:column;gap:.7rem}.drawer-user{color:var(--text-2);font-size:.9rem;font-weight:700}.drawer-actions{display:flex;gap:.5rem}.drawer-actions .btn{flex:1}@media (max-width: 880px){.topbar .nav-toggle{display:inline-flex}.topbar .topnav,.topbar .topbar-only,.topbar .user{display:none}.mobile-drawer{display:flex}.drawer-backdrop{display:block}}.link-btn{background:none;border:none;color:var(--accent);cursor:pointer;font:inherit;font-size:.82rem;padding:.35rem 0 0}.link-btn:hover{text-decoration:underline}.breadth-bar{display:flex;height:14px;border-radius:999px;overflow:hidden;background:var(--bg-3)}.breadth-bar .seg{height:100%;transition:width .4s ease}.breadth-bar .seg.up{background:var(--up)}.breadth-bar .seg.down{background:var(--down)}.breadth-bar .seg.flat{background:color-mix(in srgb,var(--text-2) 45%,transparent)}.breadth-legend{display:flex;justify-content:space-between;gap:.6rem;flex-wrap:wrap;margin-top:.6rem;font-size:.85rem;font-weight:600}.breadth-legend .muted{font-weight:500}.breadth-note{margin-top:.7rem;font-size:.82rem;line-height:1.9}
