@font-face{font-family:Geist;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/geist-cyrillic-ext-0-DjL33-gN.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/geist-cyrillic-1-BEAKL7Jp.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/geist-vietnamese-2-6IgcOCM7.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/geist-latin-ext-3-DC-KSUi6.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/geist-latin-4-BgDaEnEv.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/geist-mono-cyrillic-ext-5-X_5orZeX.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/geist-mono-cyrillic-6-DiZS0aHC.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/geist-mono-symbols2-7-CO5SzqOn.woff2) format("woff2");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/geist-mono-vietnamese-8-DadHysG0.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/geist-mono-latin-ext-9-Bwz-egvJ.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/geist-mono-latin-10-XN7g48iV.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light dark;--font-display: "Geist", -apple-system, system-ui, sans-serif;--font-ui: "Geist", -apple-system, system-ui, sans-serif;--font-mono: "Geist Mono", ui-monospace, monospace;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--s8: 64px;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--r-pill: 999px;--accent: #14B8A6;--accent-ink: #ffffff;--accent-soft: color-mix(in oklab, var(--accent) 14%, transparent);--accent-line: color-mix(in oklab, var(--accent) 34%, transparent);--cta: #F97316;--cta-hover: #EA580C;--cta-ink: #ffffff;--paper: #F7F8FA;--paper-2: #F1F3F5;--surface: #FFFFFF;--surface-2: #F7F8FA;--ink: #0B1220;--ink-soft: #4B5563;--ink-faint: #6B7280;--line: rgba(11, 18, 32, .1);--line-strong: rgba(11, 18, 32, .16);--shadow: 0 1px 2px rgba(11, 37, 69, .05), 0 8px 26px -14px rgba(11, 37, 69, .28);--shadow-lg: 0 2px 6px rgba(11, 37, 69, .08), 0 30px 60px -28px rgba(11, 37, 69, .42);--danger: #b23a2e;--ok: #3f7d4e;--grain-opacity: 0}:root[data-theme=dark]{--paper: #0B1220;--paper-2: #0B2545;--surface: #111A2E;--surface-2: #0B2545;--ink: #E8ECF3;--ink-soft: #9BA7BC;--ink-faint: #6B7A93;--line: rgba(232, 236, 243, .1);--line-strong: rgba(232, 236, 243, .18);--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 30px -16px rgba(0, 0, 0, .7);--shadow-lg: 0 2px 8px rgba(0, 0, 0, .5), 0 34px 70px -30px rgba(0, 0, 0, .85);--accent: #2BD4C0;--accent-ink: #05231f;--grain-opacity: 0}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper: #0B1220;--paper-2: #0B2545;--surface: #111A2E;--surface-2: #0B2545;--ink: #E8ECF3;--ink-soft: #9BA7BC;--ink-faint: #6B7A93;--line: rgba(232, 236, 243, .1);--line-strong: rgba(232, 236, 243, .18);--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 10px 30px -16px rgba(0, 0, 0, .7);--shadow-lg: 0 2px 8px rgba(0, 0, 0, .5), 0 34px 70px -30px rgba(0, 0, 0, .85);--accent: #2BD4C0;--accent-ink: #05231f;--grain-opacity: 0}}*,*:before,*:after{box-sizing:border-box}*{margin:0}html,body,#root{height:100%}body{font-family:var(--font-ui);font-size:15px;line-height:1.55;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:none;border:none}a{color:inherit;text-decoration:none}input,textarea{background:none}::selection{background:var(--accent-soft)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.35'/%3E%3C/svg%3E")}#root{position:relative;z-index:1;isolation:isolate}.display{font-family:var(--font-display);font-weight:500;letter-spacing:-.015em;line-height:1.05;font-optical-sizing:auto}.mono{font-family:var(--font-mono)}.eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint)}*{scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px;border:3px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:var(--ink-faint);background-clip:padding-box}.btn{--pad-y: 9px;--pad-x: 15px;display:inline-flex;align-items:center;justify-content:center;gap:var(--s2);padding:var(--pad-y) var(--pad-x);border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-weight:500;font-size:14px;line-height:1;transition:transform .12s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease,opacity .16s;white-space:nowrap}.btn:hover{border-color:var(--ink-faint);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-accent{background:var(--cta);color:var(--cta-ink);border-color:transparent;box-shadow:0 6px 18px -8px color-mix(in oklab,var(--cta) 55%,transparent)}.btn-accent:hover{border-color:transparent;background:var(--cta-hover)}.btn-ghost{background:transparent;border-color:transparent;color:var(--ink-soft)}.btn-ghost:hover{background:var(--surface-2);border-color:transparent;color:var(--ink)}.btn-danger{color:var(--danger);border-color:color-mix(in oklab,var(--danger) 34%,transparent)}.btn-danger:hover{background:color-mix(in oklab,var(--danger) 10%,transparent);border-color:var(--danger)}.btn-sm{--pad-y: 6px;--pad-x: 11px;font-size:13px}.btn-icon{--pad-x: 9px;--pad-y: 9px;border-radius:var(--r-md)}@media(pointer:coarse){.btn-sm,.btn-icon{position:relative}.btn-sm:after,.btn-icon:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:44px;min-height:44px}}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:12.5px;font-weight:500;color:var(--ink-soft);letter-spacing:.01em}.field .hint{font-size:12px;color:var(--ink-faint)}.input,.textarea,.select{width:100%;padding:10px 13px;border-radius:var(--r-md);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-size:14.5px;transition:border-color .16s ease,box-shadow .16s ease,background .16s}.input::placeholder,.textarea::placeholder{color:var(--ink-faint)}.input:focus,.textarea:focus,.select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.textarea{resize:none;line-height:1.5}@media(max-width:860px){.input,.textarea,.select{font-size:16px}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow)}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:11.5px;letter-spacing:.02em;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-soft)}.chip-accent{background:var(--accent-soft);border-color:var(--accent-line);color:color-mix(in oklab,var(--accent) 72%,var(--ink))}.switch{--w: 42px;--h: 24px;position:relative;width:var(--w);height:var(--h);border-radius:var(--r-pill);background:var(--line-strong);transition:background .2s ease;flex:none}.switch[data-on=true]{background:var(--accent)}.switch:after{content:"";position:absolute;top:3px;left:3px;width:calc(var(--h) - 6px);height:calc(var(--h) - 6px);border-radius:50%;background:#fff;box-shadow:0 1px 3px #0000004d;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.switch[data-on=true]:after{transform:translate(calc(var(--w) - var(--h)))}.rule{height:1px;background:var(--line);border:none}.role-badge{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;padding:2px 8px;border-radius:var(--r-pill);border:1px solid var(--line-strong);color:var(--ink-soft)}.skel{border-radius:var(--r-md);background:linear-gradient(100deg,var(--surface-2) 30%,color-mix(in oklab,var(--surface-2) 55%,var(--ink-faint) 12%) 50%,var(--surface-2) 70%);background-size:220% 100%;animation:shimmer 1.4s ease-in-out infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-60% 0}}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--accent-line);border-top-color:var(--accent);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes scale-in{0%{opacity:0;transform:scale(.97) translateY(6px)}to{opacity:1;transform:none}}.rise{animation:fade-up .5s cubic-bezier(.22,1,.36,1) both}.rise-1{animation-delay:.05s}.rise-2{animation-delay:.12s}.rise-3{animation-delay:.2s}.rise-4{animation-delay:.28s}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-delay:0!important;transition-duration:.001ms!important}}.toast-wrap{position:fixed;z-index:100;bottom:calc(var(--s5) + env(safe-area-inset-bottom));right:calc(var(--s5) + env(safe-area-inset-right));display:flex;flex-direction:column;gap:var(--s2);max-width:min(92vw,380px)}.toast{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line-strong);box-shadow:var(--shadow-lg);animation:scale-in .28s cubic-bezier(.22,1,.36,1) both;font-size:13.5px}.toast .dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex:none}.toast-error .dot{background:var(--danger)}.toast-ok .dot{background:var(--ok)}.toast-info .dot{background:var(--accent)}.toast .msg{color:var(--ink)}.toast .close{margin-left:auto;color:var(--ink-faint);font-size:16px;line-height:1;padding:0 2px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:color-mix(in oklab,var(--paper) 40%,#000 55%);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:var(--s5);animation:fade-in .2s ease both}.dialog{width:min(520px,100%);max-height:88vh;overflow:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-xl);box-shadow:var(--shadow-lg);padding:var(--s6);animation:scale-in .26s cubic-bezier(.22,1,.36,1) both}.dialog h2{font-family:var(--font-display);font-weight:500;font-size:22px;letter-spacing:-.01em}.row{display:flex;align-items:center;gap:var(--s3)}.col{display:flex;flex-direction:column}.grow{flex:1}.wrap{flex-wrap:wrap}.between{justify-content:space-between}.center{align-items:center;justify-content:center}.gap2{gap:var(--s2)}.gap3{gap:var(--s3)}.gap4{gap:var(--s4)}.gap5{gap:var(--s5)}.muted{color:var(--ink-soft)}.faint{color:var(--ink-faint)}.tabnum{font-variant-numeric:tabular-nums}.input-sm{padding:5px 9px;font-size:13px;width:auto}.pw-wrap{position:relative;display:flex}.pw-wrap .input{flex:1;padding-right:40px}.pw-toggle{position:absolute;top:0;right:0;height:100%;display:grid;place-items:center;width:38px;color:var(--ink-faint);cursor:pointer;background:none;border:none}.pw-toggle:hover{color:var(--ink)}.topbar{display:flex;align-items:center;gap:var(--s4);padding:var(--s3) var(--s5);border-bottom:1px solid var(--line);background:color-mix(in oklab,var(--paper) 82%,var(--surface));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:sticky;top:0;z-index:40}.topbar>.btn{flex:none}.topbar .brand{display:flex;align-items:center;gap:12px;flex:1 1 auto;min-width:7rem}.topbar .brand .t{display:flex;flex-direction:column;min-width:0}.topbar .brand .t .name{font-family:var(--font-display);font-weight:600;font-size:18px;letter-spacing:-.01em;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar .brand .t .sub{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}@media(max-width:860px){.topbar{gap:var(--s2);padding:var(--s3) var(--s4)}.topbar .brand .t .sub,.topbar .btn-label{display:none}.topbar>.btn{padding-inline:9px}}.page{min-height:100dvh;display:flex;flex-direction:column}.container{width:min(1120px,100%);margin:0 auto;padding:var(--s7) var(--s5)}.container-narrow{width:min(760px,100%);margin:0 auto;padding:var(--s6) var(--s5)}.page-head{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--s6)}.page-head h1{font-family:var(--font-display);font-weight:500;font-size:clamp(28px,4vw,40px);letter-spacing:-.02em}.page-head p{color:var(--ink-soft);max-width:60ch}.login-wrap{min-height:100dvh;display:grid;grid-template-columns:1.05fr .95fr}@media(max-width:900px){.login-wrap{grid-template-columns:1fr}.login-aside{display:none}}.login-aside{position:relative;overflow:hidden;background:radial-gradient(120% 90% at 8% 10%,color-mix(in oklab,var(--accent) 26%,transparent),transparent 55%),radial-gradient(100% 100% at 100% 100%,color-mix(in oklab,var(--accent) 16%,transparent),transparent 60%),var(--paper-2);border-right:1px solid var(--line);padding:var(--s8) var(--s7);display:flex;flex-direction:column;justify-content:space-between}.login-aside:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:repeating-linear-gradient(0deg,transparent,transparent 27px,var(--line) 27px,var(--line) 28px);opacity:.5;pointer-events:none}.login-aside .kicker{position:relative;z-index:1}.login-logo{height:42px;width:auto;display:block}:root[data-theme=dark] .login-logo{filter:brightness(0) invert(1);opacity:.94}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .login-logo{filter:brightness(0) invert(1);opacity:.94}}.login-aside .hero{position:relative;z-index:1;font-family:var(--font-display);font-weight:500;font-size:clamp(34px,4.4vw,58px);letter-spacing:-.025em;line-height:1.02}.login-aside .hero em{font-style:italic;color:var(--accent)}.login-aside .foot{position:relative;z-index:1;display:flex;gap:18px;flex-wrap:wrap}.login-aside .foot .stat .n{font-family:var(--font-display);font-size:26px}.login-aside .foot .stat .l{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.login-panel{display:grid;place-items:center;padding:var(--s7) var(--s5)}.login-card{width:min(400px,100%);display:flex;flex-direction:column;gap:var(--s5)}.login-card .lead h2{font-family:var(--font-display);font-weight:500;font-size:30px;letter-spacing:-.02em}.seg{display:flex;gap:4px;padding:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-pill)}.seg button{flex:1;padding:7px 10px;border-radius:var(--r-pill);font-size:13px;color:var(--ink-soft);transition:all .16s}.seg button[data-on=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow);font-weight:500}@media(pointer:coarse){.seg button{position:relative}.seg button:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-height:44px}}.ws-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--s4)}.ws-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:var(--s4);padding:var(--s5);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);transition:transform .18s ease,box-shadow .18s ease,border-color .18s}.ws-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--line-strong)}.ws-card .accent-bar{position:absolute;inset:0 auto 0 0;width:4px;background:var(--accent)}.ws-card .ws-head{display:flex;align-items:center;gap:12px}.ws-card .ws-name{font-family:var(--font-display);font-weight:500;font-size:20px;letter-spacing:-.01em;line-height:1.1}.ws-card .ws-slug{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-faint)}.ws-stats{display:flex;gap:var(--s5)}.ws-stats .st .n{font-family:var(--font-display);font-size:22px;font-variant-numeric:tabular-nums}.ws-stats .st .l{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint)}.ws-card .ws-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:var(--s3);border-top:1px solid var(--line)}.ws-add{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:190px;text-align:center;border:1.5px dashed var(--line-strong);border-radius:var(--r-lg);color:var(--ink-soft);background:transparent;transition:all .18s ease}.ws-add:hover{border-color:var(--accent);color:var(--ink);background:color-mix(in oklab,var(--accent) 5%,transparent);transform:translateY(-3px)}.ws-add .plus{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line-strong)}.cred{background:var(--surface-2);border:1px solid var(--line-strong);border-radius:var(--r-md);padding:var(--s4)}.cred .kv{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0}.cred .kv+.kv{border-top:1px dashed var(--line)}.cred .k{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.cred .v{font-family:var(--font-mono);font-size:13px;overflow-wrap:anywhere;text-align:right}.admin-shell{display:grid;grid-template-columns:236px 1fr;min-height:100dvh}@media(max-width:820px){.admin-shell{grid-template-columns:1fr}.admin-shell>.side{display:none}}.side{border-right:1px solid var(--line);background:color-mix(in oklab,var(--paper) 60%,var(--surface));padding:var(--s5) var(--s3);display:flex;flex-direction:column;gap:var(--s2);position:sticky;top:0;height:100dvh}.side .side-brand{display:flex;align-items:center;gap:10px;padding:6px 8px var(--s4)}.side .nav{display:flex;flex-direction:column;gap:2px;margin-top:var(--s2)}.side .nav a,.side .nav button{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:var(--r-md);color:var(--ink-soft);font-size:14px;font-weight:500;text-align:left;transition:background .14s,color .14s}.side .nav a:hover,.side .nav button:hover{background:var(--surface-2);color:var(--ink)}.side .nav a[data-active=true]{background:var(--accent-soft);color:color-mix(in oklab,var(--accent) 72%,var(--ink))}.side .nav a[data-active=true] svg{color:var(--accent)}.side .side-foot{margin-top:auto;display:flex;flex-direction:column;gap:6px}.admin-main{display:flex;flex-direction:column;min-width:0;min-height:100dvh}.tabbar-mobile{display:none}@media(max-width:820px){.tabbar-mobile{display:flex;gap:4px;overflow-x:auto;padding:10px var(--s4);border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:0;z-index:30}.tabbar-mobile a{white-space:nowrap;padding:7px 12px;border-radius:var(--r-pill);font-size:13px;color:var(--ink-soft)}.tabbar-mobile a[data-active=true]{background:var(--accent-soft);color:var(--accent)}}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-weight:500;padding:10px 14px;border-bottom:1px solid var(--line)}.table td{padding:12px 14px;border-bottom:1px solid var(--line);font-size:14px;vertical-align:middle}.table tr:last-child td{border-bottom:none}.table tr:hover td{background:var(--surface-2)}.table-wrap{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--surface);box-shadow:var(--shadow)}.table-scroll{overflow-x:auto}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--s4)}.tile{position:relative;overflow:hidden;padding:var(--s5);border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}.tile .tl{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.tile .tn{font-family:var(--font-display);font-weight:500;font-size:clamp(34px,5vw,46px);letter-spacing:-.02em;line-height:1.05;margin-top:8px;font-variant-numeric:tabular-nums}.tile .glyph{position:absolute;top:-10px;right:-6px;font-size:84px;opacity:.06;font-family:var(--font-display)}.section{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden}.section>.sh{padding:var(--s4) var(--s5);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.section>.sh h3{font-family:var(--font-display);font-weight:500;font-size:18px;letter-spacing:-.01em}.section>.sh p{font-size:12.5px;color:var(--ink-faint);margin-top:2px}.section>.sb{padding:var(--s5);display:flex;flex-direction:column;gap:var(--s4)}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0}.toggle-row+.toggle-row{border-top:1px solid var(--line)}.toggle-row .tt{font-weight:500;font-size:14px}.toggle-row .td{font-size:12.5px;color:var(--ink-faint);margin-top:1px}.swatch{width:42px;height:42px;border-radius:var(--r-md);border:1px solid var(--line-strong);padding:0;overflow:hidden;cursor:pointer}.swatch::-webkit-color-swatch-wrapper{padding:0}.swatch::-webkit-color-swatch{border:none}.sharebox{display:flex;align-items:center;gap:8px;padding:4px 4px 4px 14px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface-2)}.sharebox code{font-family:var(--font-mono);font-size:12.5px;color:var(--ink-soft);overflow-x:auto;white-space:nowrap;flex:1}.dropzone{display:flex;align-items:center;gap:14px;padding:var(--s5);cursor:pointer;border:1.5px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--surface);transition:all .16s ease}.dropzone:hover,.dropzone[data-drag=true]{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 6%,var(--surface))}.dropzone .dz-icon{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.ingest-url{display:flex;align-items:center;gap:10px;padding:4px 6px 4px 12px;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface)}.doc-list .doc-row{display:flex;align-items:center;gap:12px;padding:11px 12px;background:var(--surface);border:1px solid var(--line);transition:background .14s}.doc-list .doc-row:first-child{border-radius:var(--r-md) var(--r-md) 0 0}.doc-list .doc-row:last-child{border-radius:0 0 var(--r-md) var(--r-md)}.doc-list .doc-row:only-child{border-radius:var(--r-md)}.doc-list .doc-row+.doc-row{border-top:none}.doc-list .doc-row:hover{background:var(--surface-2)}.doc-ic{width:34px;height:34px;flex:none;border-radius:9px;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-soft)}.doc-name{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-meta{font-size:11px;color:var(--ink-faint);margin-top:1px}.member-layout{display:flex;min-height:0}.member-layout>.chat-col{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0}.mydocs,.sesspanel{flex:none;background:color-mix(in oklab,var(--paper) 55%,var(--surface));display:flex;flex-direction:column;min-height:0}.sesspanel{width:300px;border-right:1px solid var(--line)}.mydocs{width:340px;border-left:1px solid var(--line)}.mydocs .mh,.sesspanel .mh{display:flex;align-items:center;justify-content:space-between;padding:var(--s4) var(--s4) var(--s3);border-bottom:1px solid var(--line)}.mydocs .mh .t,.sesspanel .mh .t{font-family:var(--font-display);font-size:17px;font-weight:500}.mydocs .mb,.sesspanel .mb{padding:var(--s4);overflow-y:auto}.mydocs-scrim,.sesspanel-scrim,.mydocs-close,.sesspanel-close{display:none}.sess-new{width:100%;justify-content:center}.sess-list{display:flex;flex-direction:column;gap:4px}.sess-row{display:flex;align-items:stretch;gap:2px;border-radius:var(--r-md);border:1px solid transparent;transition:background .14s,border-color .14s}.sess-row:hover{background:var(--surface-2)}.sess-row[data-active=true]{background:var(--surface-2);border-color:var(--line)}.sess-open{flex:1;min-width:0;min-height:48px;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:8px 10px;text-align:left;border-radius:var(--r-md)}.sess-open .sess-title{font-size:13.5px;font-weight:500;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sess-row[data-active=true] .sess-open .sess-title{color:var(--accent)}.sess-open .sess-date{font-size:11px;color:var(--ink-faint);font-family:var(--font-mono)}.sess-actions{display:flex;align-items:center;gap:1px;opacity:0;transition:opacity .14s}.sess-row:hover .sess-actions,.sess-row:focus-within .sess-actions,.sess-row[data-active=true] .sess-actions{opacity:1}@media(pointer:coarse){.sess-actions{opacity:1}}@media(max-width:860px){.mydocs-scrim,.sesspanel-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:color-mix(in oklab,var(--ink) 34%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:sv-fade .2s ease both}.mydocs,.sesspanel{position:fixed;top:0;bottom:0;z-index:61;width:min(420px,92vw);box-shadow:var(--shadow-lg);padding-bottom:env(safe-area-inset-bottom)}.mydocs{right:0;animation:sv-slide .26s cubic-bezier(.22,1,.36,1) both}.sesspanel{left:0;animation:sv-slide-left .26s cubic-bezier(.22,1,.36,1) both}.mydocs .mb,.sesspanel .mb{flex:1;min-height:0}.mydocs-close,.sesspanel-close{display:grid;place-items:center;flex:none;width:32px;height:32px;border-radius:var(--r-md);color:var(--ink-soft);border:1px solid var(--line);background:var(--surface-2);transition:color .14s,border-color .14s}.mydocs-close:hover,.sesspanel-close:hover{color:var(--ink);border-color:var(--accent)}}@media(pointer:coarse){.mydocs-close,.sesspanel-close{position:relative}.mydocs-close:after,.sesspanel-close:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:44px;min-height:44px}}@media(max-width:860px)and (prefers-reduced-motion:reduce){.mydocs,.sesspanel,.mydocs-scrim,.sesspanel-scrim{animation:none}}@keyframes sv-slide-left{0%{transform:translate(-100%)}to{transform:translate(0)}}.admin-sessions{width:260px;flex:none;border-right:1px solid var(--line);overflow-y:auto;padding:var(--s4)}@media(max-width:860px){.admin-sessions{display:none}}.viewport{height:100dvh;display:flex;flex-direction:column;overflow:hidden}.viewport-body{flex:1;min-height:0;display:flex}.center-screen{min-height:100dvh;display:grid;place-items:center}.loader-stack{display:flex;flex-direction:column;align-items:center;gap:14px;color:var(--ink-soft)}.link{color:var(--accent);font-weight:500}.link:hover{text-decoration:underline}.kbd{font-family:var(--font-mono);font-size:11px;padding:1px 6px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface-2)}.qr-card{margin-top:var(--s4);padding:var(--s5);border-radius:14px;border:1px solid var(--line, rgba(127, 127, 127, .2));background:var(--surface);display:flex;flex-direction:column;align-items:center;gap:var(--s3);max-width:320px}.qr-card-head{display:flex;align-items:center;gap:10px;align-self:flex-start}.qr-card-name{font-weight:600;font-size:15px}.qr-card-sub{font-size:12.5px;color:var(--ink-faint)}.qr-card-img{width:220px;height:220px;background:#fff;padding:8px;border-radius:8px}.qr-card-foot{font-size:12.5px;color:var(--ink-faint);text-align:center}@media print{body *{visibility:hidden}#share-qr-card,#share-qr-card *{visibility:visible}#share-qr-card{position:absolute;inset:0 auto auto 0;margin:24px;border:none;box-shadow:none;max-width:none}.no-print{display:none!important}}.chat{display:flex;flex-direction:column;height:100%;min-height:0}.chat-scroll{flex:1;min-height:0;overflow-y:auto;padding:var(--s6) 0 var(--s5)}.chat-thread{width:min(760px,100%);margin:0 auto;padding:0 var(--s5);display:flex;flex-direction:column;gap:var(--s6)}.chat-empty{width:min(680px,100%);margin:auto;padding:var(--s7) var(--s5);text-align:center;animation:fade-up .6s cubic-bezier(.22,1,.36,1) both}.chat-empty .mark{font-family:var(--font-display);font-size:46px;color:var(--accent);line-height:1}.chat-empty h1{font-family:var(--font-display);font-weight:500;font-size:clamp(26px,4vw,38px);letter-spacing:-.02em;margin-top:var(--s3)}.chat-suggests{display:flex;flex-wrap:wrap;gap:var(--s2);justify-content:center;margin-top:var(--s5)}.suggest{padding:9px 14px;border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);font-size:13.5px;transition:all .16s ease;text-align:left}.suggest:hover{border-color:var(--accent);color:var(--ink);transform:translateY(-1px)}.msg{display:flex;flex-direction:column;gap:8px;animation:fade-up .4s cubic-bezier(.22,1,.36,1) both}.msg-user{align-items:flex-end}.msg-user .bubble{max-width:82%;background:var(--accent-soft);border:1px solid var(--accent-line);color:var(--ink);padding:11px 16px;border-radius:var(--r-lg) var(--r-lg) 6px var(--r-lg);font-size:15px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.msg-assistant .who{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.msg-assistant .who .astr{color:var(--accent);font-family:var(--font-display);font-size:15px}.answer{font-size:16px;line-height:1.68;color:var(--ink);overflow-wrap:anywhere;letter-spacing:.002em}.answer>:first-child{margin-top:0}.answer>:last-child{margin-bottom:0}.answer p{margin:0 0 .7em}.answer h1,.answer h2,.answer h3,.answer h4,.answer h5,.answer h6{margin:1.1em 0 .5em;line-height:1.3;font-family:var(--font-display);font-weight:650;letter-spacing:-.01em}.answer h1{font-size:1.42em}.answer h2{font-size:1.26em}.answer h3{font-size:1.12em}.answer h4,.answer h5,.answer h6{font-size:1em}.answer ul,.answer ol{margin:0 0 .7em;padding-left:1.4em}.answer li{margin:.2em 0}.answer li::marker{color:var(--muted)}.answer strong{font-weight:660;color:var(--ink)}.answer em{font-style:italic}.answer a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.answer a:hover{text-decoration-thickness:2px}.answer code{font-family:var(--font-mono);font-size:.88em;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:5px;padding:.08em .36em}.answer pre{margin:0 0 .8em;padding:.85em 1em;overflow-x:auto;background:var(--surface-2, rgba(127,127,127,.08));border:1px solid var(--line, rgba(127,127,127,.2));border-radius:var(--r-md, 10px)}.answer pre code{background:none;border:none;padding:0;font-size:.86em;line-height:1.55}.answer blockquote{margin:0 0 .7em;padding:.1em 0 .1em .95em;border-left:3px solid var(--accent-line);color:var(--muted)}.answer hr{border:none;border-top:1px solid var(--line, rgba(127,127,127,.2));margin:1.1em 0}.md-table-wrap{overflow-x:auto;margin:0 0 .8em}.answer table{border-collapse:collapse;width:100%;font-size:.92em}.answer th,.answer td{border:1px solid var(--line, rgba(127,127,127,.2));padding:.42em .7em;text-align:left}.answer th{background:var(--accent-soft);font-weight:640}.answer .caret{display:inline-block;width:8px;height:1.05em;margin-left:1px;background:var(--accent);vertical-align:text-bottom;border-radius:1px;animation:blink 1s steps(2,start) infinite}@keyframes blink{to{opacity:0}}.cite{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 5px;margin:0 1px;vertical-align:super;line-height:1;font-family:var(--font-mono);font-size:10.5px;font-weight:600;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:var(--r-pill);cursor:pointer;transition:background .14s ease,color .14s,transform .14s}.cite:hover{background:var(--accent);color:var(--accent-ink);transform:translateY(-1px)}.cite:focus-visible{outline:2px solid var(--accent);outline-offset:1px}@media(pointer:coarse){.cite{position:relative}.cite:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:44px;min-height:44px}}.stream-status{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:12px;color:var(--ink-faint)}.dots span{animation:pulse 1.2s ease-in-out infinite}.dots span:nth-child(2){animation-delay:.2s}.dots span:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,60%,to{opacity:.25}30%{opacity:1}}.warming{margin-top:4px;display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-soft);padding:6px 11px;border-radius:var(--r-pill);background:color-mix(in oklab,var(--accent) 8%,transparent);border:1px dashed var(--accent-line)}.think{border-left:2px solid var(--line-strong);padding:2px 0 2px 12px;margin:2px 0;color:var(--ink-faint);font-size:13px;font-style:italic;white-space:pre-wrap}.think summary{cursor:pointer;font-style:normal;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.nodes{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.sources{margin-top:6px;border-top:1px dashed var(--line-strong);padding-top:var(--s3)}.sources>summary{cursor:pointer;width:fit-content;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);padding:2px 0}.sources>summary:hover{color:var(--accent)}.sources>summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.source-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:var(--s3)}.source-chip{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:4px 10px 4px 4px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface-2);cursor:pointer;font-size:12.5px;color:var(--ink);transition:border-color .16s ease,background .16s ease}.source-chip:hover{border-color:var(--accent);background:var(--surface)}.source-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.source-chip-num{flex:none;font-family:var(--font-mono);font-size:11px;font-weight:500;width:20px;height:20px;border-radius:var(--r-pill);display:grid;place-items:center;background:var(--accent);color:var(--accent-ink)}.source-chip-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.source-chip-page{flex:none;font-family:var(--font-mono);font-size:10.5px;color:var(--ink-soft)}.source-viewer-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:color-mix(in oklab,var(--ink) 34%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:sv-fade .2s ease both}.source-viewer{position:fixed;top:0;right:0;bottom:0;z-index:61;width:min(560px,96vw);display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--line-strong);box-shadow:var(--shadow-lg);animation:sv-slide .26s cubic-bezier(.22,1,.36,1) both}.sv-head{display:flex;align-items:flex-start;gap:10px;padding:var(--s4) var(--s4) var(--s3);border-bottom:1px solid var(--line)}.sv-head-main{display:flex;align-items:flex-start;gap:10px;min-width:0;flex:1}.sv-kind-icon{flex:none;width:34px;height:34px;border-radius:var(--r-md);display:grid;place-items:center;margin-top:1px;background:var(--accent-soft);color:var(--accent);border:1px solid var(--accent-line)}.sv-head-text{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.sv-eyebrow{display:inline-flex;align-items:center;gap:7px;font-family:var(--font-mono);font-size:10.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}.sv-num{flex:none;font-family:var(--font-mono);font-size:10.5px;font-weight:600;min-width:18px;height:18px;padding:0 4px;border-radius:5px;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);letter-spacing:0}.sv-title{font-family:var(--font-display);font-weight:500;font-size:18px;line-height:1.3;letter-spacing:-.01em;color:var(--ink);overflow-wrap:anywhere;min-width:0}.sv-subtitle{font-size:12px;color:var(--ink-faint);overflow-wrap:anywhere}.sv-close{flex:none;width:32px;height:32px;border-radius:var(--r-md);display:grid;place-items:center;color:var(--ink-soft);border:1px solid var(--line);background:var(--surface-2);transition:color .14s,border-color .14s}.sv-close:hover{color:var(--ink);border-color:var(--accent)}.sv-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sv-nav{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:var(--s2) var(--s4);border-bottom:1px solid var(--line)}.sv-nav-btn{flex:none;width:30px;height:30px;border-radius:var(--r-sm);display:grid;place-items:center;color:var(--ink-soft);border:1px solid var(--line);background:var(--surface-2);transition:color .14s,border-color .14s,opacity .14s}.sv-nav-btn:hover:not(:disabled){color:var(--ink);border-color:var(--accent)}.sv-nav-btn:disabled{opacity:.35;cursor:not-allowed}.sv-nav-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sv-counter{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--ink-soft);text-align:center}.sv-meta{display:flex;flex-wrap:wrap;gap:6px;padding:var(--s3) var(--s4) 0}.sv-chip{font-family:var(--font-mono);font-size:11px;color:var(--ink-soft);padding:3px 9px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);overflow-wrap:anywhere}.sv-score{display:flex;align-items:center;gap:10px;padding:var(--s3) var(--s4) 0}.sv-score-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);flex:none}.sv-score-bar{flex:1;height:6px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line);overflow:hidden}.sv-score-fill{display:block;height:100%;border-radius:var(--r-pill);background:var(--accent)}.sv-score-val{flex:none;font-family:var(--font-mono);font-size:12px;color:var(--accent)}.sv-body{flex:1;min-height:0;overflow-y:auto;padding:var(--s4)}.sv-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:var(--s2)}.sv-section-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}.sv-copy{flex:none;width:30px;height:30px;border-radius:var(--r-sm);display:grid;place-items:center;color:var(--ink-soft);border:1px solid var(--line);background:var(--surface-2);transition:color .14s,border-color .14s}.sv-copy:hover{color:var(--accent);border-color:var(--accent)}.sv-copy:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sv-passage-wrap{overflow-x:auto}.sv-passage{font-family:var(--font-ui);font-size:15px;line-height:1.72;color:var(--ink);white-space:pre-line;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}.sv-passage table{border-collapse:collapse;white-space:normal;margin:6px 0;font-size:13.5px;min-width:max-content}.sv-passage th,.sv-passage td{border:1px solid var(--line, rgba(127, 127, 127, .2));padding:5px 8px;text-align:left;vertical-align:top;overflow-wrap:normal;word-break:normal}.sv-passage th{background:var(--surface-2);font-weight:600}.sv-passage td>p{margin:0 0 4px}.sv-passage td>p:last-child{margin-bottom:0}.sv-empty{font-size:13px;color:var(--ink-faint);font-style:italic}.flow-diagram{display:flex;flex-direction:column;gap:6px;margin:8px 0;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2)}.flow-edge{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.flow-node{font-size:13px;line-height:1.3;padding:3px 9px;background:var(--surface);border:1px solid var(--line-strong)}.flow-rect{border-radius:6px}.flow-round{border-radius:var(--r-pill)}.flow-circle{border-radius:50%;padding:3px 7px}.flow-diamond{border-radius:3px;border-style:dashed}.flow-node-empty{color:var(--ink-faint)}.flow-arrow{display:inline-flex;align-items:center;gap:5px;color:var(--ink-soft)}.flow-arrow-line{font-size:15px;color:var(--accent)}.flow-arrow-label{font-size:11.5px;font-family:var(--font-mono);color:var(--ink);padding:1px 7px;border-radius:var(--r-pill);background:var(--accent-soft);border:1px solid var(--accent-line)}.sv-mode{background:var(--accent-soft);border-color:var(--accent-line);color:var(--ink);font-weight:600}.flow-fallback{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;color:var(--ink-soft);padding:2px 9px;border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--line)}.sv-matched{border-left:3px solid var(--accent);background:color-mix(in oklab,var(--accent) 6%,transparent);border-radius:0 var(--r-md) var(--r-md) 0;padding:10px 12px}.sv-full{margin-top:var(--s4)}.sv-full>summary{cursor:pointer;width:fit-content;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);padding:4px 0}.sv-full>summary:hover{color:var(--accent)}.sv-full>summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.sv-full .sv-passage-wrap{margin-top:var(--s3)}.sv-page-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--s3);padding:var(--s6) var(--s4);border:1px dashed var(--line-strong);border-radius:var(--r-lg);background:var(--surface-2)}.sv-page-icon{width:48px;height:48px;border-radius:var(--r-md);display:grid;place-items:center;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line)}.sv-page-title{font-family:var(--font-display);font-weight:500;font-size:16px;color:var(--ink)}.sv-page-desc{font-size:13.5px;line-height:1.6;color:var(--ink-soft);max-width:34ch}.sv-foot{display:flex;align-items:center;gap:10px;padding:var(--s3) var(--s4) calc(var(--s3) + env(safe-area-inset-bottom));border-top:1px solid var(--line)}.sv-open{margin-left:auto}@media(pointer:coarse){.sv-close,.sv-nav-btn,.sv-copy{position:relative}.sv-close:after,.sv-nav-btn:after,.sv-copy:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;min-width:44px;min-height:44px}}@keyframes sv-fade{0%{opacity:0}to{opacity:1}}@keyframes sv-slide{0%{transform:translate(100%)}to{transform:translate(0)}}@media(prefers-reduced-motion:reduce){.source-viewer,.source-viewer-scrim{animation:none}.source.is-clickable:hover,.cite:hover{transform:none}}.composer-wrap{border-top:1px solid var(--line);background:color-mix(in oklab,var(--paper) 80%,var(--surface));padding:var(--s4) 0 calc(var(--s5) + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.composer{width:min(760px,100%);margin:0 auto;padding-left:max(var(--s5),env(safe-area-inset-left));padding-right:max(var(--s5),env(safe-area-inset-right))}.composer-box{display:flex;align-items:flex-end;gap:10px;padding:8px 8px 8px 16px;border:1px solid var(--line-strong);border-radius:var(--r-xl);background:var(--surface);box-shadow:var(--shadow);transition:border-color .16s ease,box-shadow .16s}.composer-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.composer-box textarea{flex:1;border:none;outline:none;resize:none;font-size:15.5px;line-height:1.5;max-height:200px;padding:8px 0;background:transparent}@media(max-width:860px){.composer-box textarea{font-size:16px}}.send-btn{width:44px;height:44px;border-radius:50%;flex:none;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);transition:transform .14s ease,filter .16s,opacity .16s}.send-btn:hover:not(:disabled){transform:scale(1.05);filter:brightness(1.06)}.send-btn:disabled{opacity:.4;cursor:not-allowed}.composer-foot{margin-top:8px;display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.scope-line{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--ink-faint)}
