@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-ext.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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-cyrillic-ext.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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jbmono-400-cyrillic-ext.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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jbmono-400-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jbmono-400-latin-ext.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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jbmono-400-latin.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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jbmono-500-cyrillic-ext.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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jbmono-500-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jbmono-500-latin-ext.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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jbmono-500-latin.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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/jbmono-700-cyrillic-ext.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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/jbmono-700-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/jbmono-700-latin-ext.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:JetBrains Mono;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/jbmono-700-latin.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{--accent: #c0441a;--accent-hover: #a83a15;--accent-ring: rgba(192, 68, 26, .1);--accent-soft: #f7ede8;--accent-tint: rgba(192, 68, 26, .06);--surface: rgba(255, 253, 250, .96);--surface-solid: #fffdfa;--input-bg: #fffef9;--assistant-bg: #ffffff;--page-bg: #4a6a8a;--text: #2a2420;--text-medium: #4a3f36;--text-muted: #9a9088;--border: #c8bfb4;--divider: #e0d8ce;--card-edge: rgba(255, 255, 255, .7);--code-bg: #2a2420;--code-fg: #fffef9;--ok: #6f8f4e;--ok-bg: rgba(111, 143, 78, .12);--warn: #c08a2a;--danger: #b03415;--danger-bg: rgba(176, 52, 21, .1);--sys: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--display: var(--sys);--serif: var(--sys);--mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--r-card: 16px;--r-ctrl: 8px;--r-pill: 999px;--card-border: .5px solid var(--card-edge);--sidebar-w: 260px;--ease: cubic-bezier(.4, 0, .2, 1);--t: .15s;--float: 0 18px 50px -24px rgba(30, 30, 50, .55)}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html,body,#root{height:100%}body{font-family:var(--serif);font-weight:400;color:var(--text);background:var(--page-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;font-feature-settings:"liga" 1,"calt" 1}.atmosphere{position:fixed;top:0;left:0;right:0;height:114vh;height:calc(100lvh + 14vh);z-index:0;background:radial-gradient(120% 70% at 50% 78%,#d69abc8c,#d69abc00 55%),radial-gradient(90% 55% at 22% 70%,#f4e2e899,#f4e2e800 50%),linear-gradient(180deg,#4aa3c4,#6fb4cf 16%,#cdd8e0 34%,#e9e1e6,#e7c9d8,#c98fb5,#9a6ba6 82%,#5b4f86 92%,#3f4a72);background-size:cover}.atmosphere:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--page-bg);opacity:.12;mix-blend-mode:multiply}.atmosphere.has-image{background-image:url(/bg/kanchenjunga.jpg);background-position:center top;filter:saturate(.86) brightness(.92)}.atmosphere.blurred{filter:blur(4px) saturate(.86) brightness(.92);transform:scale(1.04)}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}*{scrollbar-width:thin;scrollbar-color:rgba(154,144,136,.5) transparent}*::-webkit-scrollbar{width:9px;height:9px}*::-webkit-scrollbar-thumb{background:#9a908873;border-radius:999px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#9a9088b3;background-clip:padding-box}button{font-family:inherit;cursor:pointer}input,textarea,button{font-family:inherit}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}::selection{background:var(--accent-ring);color:var(--text)}.card{background:var(--surface);border:var(--card-border);border-radius:var(--r-card);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;background:var(--accent);border:none;border-radius:var(--r-ctrl);color:#fff;font-family:var(--serif);font-size:15px;font-weight:500;letter-spacing:.01em;transition:background var(--t) var(--ease),transform var(--t) var(--ease),opacity var(--t)}.btn:hover{background:var(--accent-hover)}.btn:active{transform:scale(.99)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--text-medium);border:1px solid var(--border)}.btn-ghost:hover{background:#00000008;color:var(--text)}.field{margin-bottom:1.1rem}.field>label{display:block;font-size:14px;font-weight:500;color:var(--text-medium);margin-bottom:7px;letter-spacing:.01em}.input{width:100%;background:var(--input-bg);border:1px solid var(--border);border-radius:var(--r-ctrl);padding:11px 14px;font-size:15px;font-family:var(--serif);color:var(--text);transition:border-color var(--t) var(--ease),box-shadow var(--t) var(--ease),background var(--t)}.input::placeholder{color:#c0b8ae}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring);background:#fff}.muted{color:var(--text-muted)}.mono{font-family:var(--mono)}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.service-state{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:2rem 1.5rem;animation:rise .3s var(--ease) both}.ss-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.85rem;background:var(--surface-solid);border:.5px solid var(--divider);border-radius:var(--r-card);box-shadow:0 16px 44px -24px #1e1e3273;padding:2.4rem 2.6rem;max-width:30rem}.ss-card .ss-mark{opacity:1}.ss-card h3{font-family:var(--display);font-weight:600;font-size:1.5rem;color:var(--text)}.ss-card p{color:var(--text-medium);font-size:14.5px;max-width:26em;line-height:1.6}.ss-card .ss-retry{margin-top:.5rem}.offline-banner{position:fixed;top:0;left:0;right:0;z-index:200;display:flex;align-items:center;justify-content:center;gap:9px;padding:8px 16px;font-size:13px;font-weight:500;background:#2a2420;color:#f2ede4;letter-spacing:.01em;box-shadow:0 4px 16px -6px #0006;animation:rise .22s var(--ease) both}.offline-banner .dot{width:7px;height:7px;border-radius:50%;background:#d98c6a;flex-shrink:0;animation:pulseDot 1.4s var(--ease) infinite}@keyframes pulseDot{0%,to{opacity:.4}50%{opacity:1}}.spinner{display:inline-block;box-sizing:border-box;flex-shrink:0;border:2.5px solid var(--accent-ring);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.load-row{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--text-muted);font-family:var(--mono);font-size:13px;letter-spacing:.03em;padding:.4rem 0 1.4rem}.skel-box,.skel-line{background:linear-gradient(90deg,#786e5f1a 25%,#786e5f2e 37%,#786e5f1a 63%);background-size:400% 100%;animation:shimmer 1.4s ease infinite;border-radius:7px}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.skel-line{height:13px}.skel-list{display:flex;flex-direction:column;gap:10px}.skel-card{display:flex;align-items:center;gap:14px;pointer-events:none;background:var(--surface);border:var(--card-border);border-radius:var(--r-card);padding:1rem 1.2rem}.skel-card .ico-box{width:40px;height:40px;border-radius:10px;flex-shrink:0}.skel-card .body{flex:1;min-width:0}.landing{position:relative;z-index:1;min-height:100vh;min-height:100dvh;overflow-x:hidden;display:flex;flex-direction:column;color:#fffdfa}.lp-brand{min-width:0}.landing:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(100deg,#21263e57,#21263e30 52%,#21263e14),linear-gradient(180deg,#21263e2e,#21263e08 42%,#3a26364d)}.lp-nav{display:flex;align-items:center;justify-content:space-between;padding:1.5rem clamp(1.25rem,5vw,4rem);animation:fade .7s var(--ease) both}.lp-brand{display:flex;align-items:center;gap:12px}.lp-brand .name{font-family:var(--display);font-weight:600;font-size:21px;letter-spacing:.01em;color:#fffdfa;text-shadow:0 1px 12px rgba(40,40,70,.4)}.lp-nav-actions{display:flex;align-items:center;gap:10px}.lp-link{color:#fffdfa;font-size:15px;padding:9px 16px;border-radius:var(--r-ctrl);transition:background var(--t)}.lp-link:hover{background:#ffffff24;color:#fffdfa}.lp-enter{background:var(--surface);color:var(--text);padding:9px 20px;border-radius:var(--r-ctrl);font-weight:500;font-size:15px;box-shadow:var(--float);transition:transform var(--t),background var(--t)}.lp-enter:hover{transform:translateY(-1px);color:var(--text);background:#fff}.lp-hero{flex:1;display:flex;flex-direction:column;justify-content:center;padding:2rem clamp(1.25rem,5vw,4rem) 4rem;max-width:1000px}.lp-eyebrow{font-family:var(--mono);font-size:12.5px;letter-spacing:.32em;text-transform:uppercase;color:#fffdfad1;margin-bottom:1.6rem;animation:rise .7s var(--ease) .12s both}.lp-title{font-family:var(--display);font-weight:600;font-size:clamp(2.8rem,8vw,6rem);line-height:.98;letter-spacing:-.01em;text-shadow:0 2px 30px rgba(40,40,70,.35);margin-bottom:1.6rem;animation:rise .8s var(--ease) .22s both}.lp-title em{font-style:italic;color:#ffd9b0}.lp-lead{font-size:clamp(1.05rem,2vw,1.4rem);line-height:1.6;font-weight:300;max-width:30em;color:#fffdfaf0;text-shadow:0 1px 16px rgba(40,40,70,.3);animation:rise .8s var(--ease) .34s both}.lp-cta-row{display:flex;gap:14px;margin-top:2.4rem;flex-wrap:wrap;animation:rise .8s var(--ease) .46s both}.lp-cta-row .btn{padding:13px 28px;font-size:16px;box-shadow:var(--float)}.lp-cta-row .btn-ghost{background:#fffdfa1a;color:#fffdfa;border-color:#fffdfa80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.lp-cta-row .btn-ghost:hover{background:#fffdfa33;color:#fffdfa}.lp-marks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;max-width:1000px;padding:0 clamp(1.25rem,5vw,4rem) 3rem;animation:rise .9s var(--ease) .6s both}.lp-mark{max-width:16rem}.lp-mark h3{font-family:var(--display);font-weight:600;font-size:1.3rem;margin-bottom:.3rem;color:#fffdfa}.lp-mark p{font-size:.95rem;line-height:1.5;color:#fffdfad1;font-weight:300}.lp-foot{padding:1.4rem clamp(1.25rem,5vw,4rem);font-family:var(--mono);font-size:12px;letter-spacing:.08em;color:#fffdfa99;border-top:.5px solid rgba(255,255,255,.18)}@media (max-width: 600px){.lp-marks{grid-template-columns:1fr;gap:1.4rem}.lp-mark{max-width:none}.lp-nav{padding:1.1rem;gap:8px}.lp-brand .name{font-size:17px}.lp-nav .lp-enter{display:none}.lp-nav .lp-link{background:#fffdfa1a;color:#fffdfa;border:1px solid rgba(255,253,250,.5);padding:9px 20px;border-radius:var(--r-ctrl);font-weight:500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.lp-nav .lp-link:hover{background:#fffdfa33;color:#fffdfa}.lp-eyebrow{letter-spacing:.16em;font-size:11px;margin-bottom:1.2rem}}.auth-page{position:relative;z-index:1;min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem}.auth-page:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:linear-gradient(100deg,#21263e7a,#21263e4d 52%,#21263e2e),linear-gradient(180deg,#21263e4d,#21263e14 42%,#3a26366b)}.auth-card{position:relative;z-index:1;width:100%;max-width:396px;background:var(--surface);border:var(--card-border);border-radius:var(--r-card);box-shadow:var(--float);padding:2.75rem 2.25rem 2.25rem;animation:rise .48s var(--ease) both}.auth-head{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:1.75rem}.auth-mark{filter:drop-shadow(0 4px 10px rgba(192,68,26,.18));animation:rise .64s var(--ease) both}.auth-org{font-family:var(--display);font-weight:600;font-size:24px;line-height:1.1;letter-spacing:.01em;color:var(--text);text-align:center}.auth-sub{font-family:var(--mono);font-size:12px;color:var(--text-muted);text-align:center;margin-top:6px;letter-spacing:.22em;text-transform:uppercase;font-weight:500}.auth-divider{height:.5px;background:var(--divider);margin:0 0 1.6rem}.pwd-wrap{position:relative}.pwd-wrap .input{padding-right:44px}.pwd-toggle{position:absolute;top:50%;right:6px;transform:translateY(-50%);background:transparent;border:none;padding:7px 9px;color:var(--text-muted);display:flex;align-items:center;border-radius:6px;transition:color var(--t),background var(--t)}.pwd-toggle:hover{color:var(--text-medium);background:#0000000a}.remember{display:flex;align-items:center;gap:9px;margin:.1rem 0 1.1rem;font-size:14px;color:var(--text-medium);cursor:pointer;-webkit-user-select:none;user-select:none}.remember input{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:17px;height:17px;flex-shrink:0;border:1px solid var(--border);border-radius:5px;background:var(--input-bg);position:relative;cursor:pointer;transition:border-color var(--t),background var(--t)}.remember input:checked{background:var(--accent);border-color:var(--accent)}.remember input:checked:after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.auth-cta{width:100%;padding:13px;font-size:16px;margin-top:.3rem}.auth-foot{margin-top:1.4rem;text-align:center;font-size:13px;color:var(--text-muted);line-height:1.7}.auth-foot a{font-weight:500}.auth-error{background:var(--danger-bg);color:var(--danger);border:.5px solid rgba(176,52,21,.25);border-radius:var(--r-ctrl);padding:9px 13px;font-size:13.5px;margin-bottom:1.1rem;animation:rise .22s var(--ease) both}.pwd-meter{display:flex;gap:5px;margin-top:9px}.pwd-meter i{height:3px;flex:1;border-radius:999px;background:var(--divider);transition:background var(--t)}.pwd-meter.s1 i:nth-child(1){background:#cd7048}.pwd-meter.s2 i:nth-child(-n+2){background:#cd7048}.pwd-meter.s3 i{background:#cd7048}.pwd-meter-label{font-size:12px;color:var(--text-muted);margin-top:6px}.pwd-hints{list-style:none;margin:9px 0 0;padding:0;display:flex;flex-direction:column;gap:5px}.pwd-hints li{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#cd7048;transition:color var(--t)}.pwd-hints li.ok{color:var(--text-muted)}.pwd-hints li.ok .lbl{text-decoration:line-through}.pwd-hints .tick{width:14px;height:14px;display:grid;place-items:center;flex-shrink:0}.pwd-hints .dot{width:5px;height:5px;border-radius:50%;background:#cd7048}.gate-icon{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;margin:0 auto 1.1rem;background:var(--accent-tint);color:var(--accent)}.gate-icon.danger{background:var(--danger-bg);color:var(--danger)}.gate-title{font-family:var(--display);font-weight:600;font-size:24px;text-align:center;color:var(--text);margin-bottom:.6rem}.gate-text{font-size:14.5px;color:var(--text-medium);text-align:center;line-height:1.65}@media (max-width: 480px){.auth-card{padding:2.25rem 1.4rem 1.9rem;border-radius:14px}.auth-org{font-size:24px}}@media (max-height: 660px){.auth-page{align-items:flex-start}}.shell{position:relative;z-index:1;height:100vh;height:100dvh;display:grid;grid-template-columns:var(--sidebar-w) 1fr}.sidebar{background:var(--surface);border-right:.5px solid var(--divider);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;flex-direction:column;height:100%;min-height:0}.sb-top{padding:1.25rem 1rem .75rem}.sb-brand{display:flex;align-items:center;gap:11px;padding:0 .4rem 1rem}.sb-brand .name{font-family:var(--display);font-weight:600;font-size:19px;line-height:1.05;color:var(--text)}.sb-new{width:100%;padding:11px;font-size:15px}.sb-scroll{flex:1;min-height:0;overflow-y:auto;padding:.5rem .6rem 1rem}.sb-state{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:.9rem .7rem;font-size:13px;color:var(--text-muted)}.sb-state.load{flex-direction:row;align-items:center;gap:9px;font-family:var(--mono);font-size:12.5px}.sb-state-retry{background:var(--accent-tint);color:var(--accent);border:.5px solid rgba(192,68,26,.25);border-radius:var(--r-ctrl);padding:6px 12px;font-size:13px;font-weight:500;transition:background var(--t),color var(--t)}.sb-state-retry:hover{background:var(--accent);color:#fff}.sb-group-label{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding:.9rem .6rem .4rem}.sb-item{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:var(--r-ctrl);color:var(--text-medium);font-size:14.5px;cursor:pointer;transition:background var(--t);position:relative;width:100%;text-align:left;border:none;background:transparent}.sb-item:hover{background:var(--accent-tint);color:var(--text)}.sb-item.active{background:var(--accent-soft);color:var(--text)}.sb-item .t{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-item .star{color:var(--accent);flex-shrink:0;opacity:.85;display:flex}.sb-item .row-actions{display:none;gap:2px;flex-shrink:0}.sb-item:hover .row-actions{display:flex}.sb-mini-btn{background:transparent;border:none;color:var(--text-muted);padding:4px;border-radius:6px;display:flex;transition:color var(--t),background var(--t)}.sb-mini-btn:hover{color:var(--accent);background:#0000000d}.sb-nav{display:flex;flex-direction:column;gap:2px;padding:0 .6rem}.sb-nav .sb-item .ico{display:flex;color:var(--text-muted)}.sb-nav .sb-item.active .ico,.sb-nav .sb-item:hover .ico{color:var(--accent)}.sb-user{border-top:.5px solid var(--divider);padding:.75rem;position:relative}.sb-user-btn{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:none;padding:7px 8px;border-radius:var(--r-ctrl);cursor:pointer;transition:background var(--t);text-align:left}.sb-user-btn:hover{background:var(--accent-tint)}.avatar{width:34px;height:34px;border-radius:50%;flex-shrink:0;background:var(--accent);color:#fff;display:grid;place-items:center;font-family:var(--display);font-weight:600;font-size:17px}.sb-user .meta{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}.sb-user .meta .nm{font-size:14px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-user .meta .lv{font-size:11.5px;color:var(--text-muted);font-family:var(--mono)}.menu{position:absolute;bottom:calc(100% - 2px);left:.75rem;right:.75rem;background:var(--surface-solid);border:.5px solid var(--divider);border-radius:var(--r-ctrl);box-shadow:var(--float);overflow:hidden;animation:rise .16s var(--ease) both;z-index:30}.menu button{display:flex;align-items:center;gap:10px;width:100%;background:transparent;border:none;padding:11px 14px;font-size:14px;color:var(--text-medium);cursor:pointer;transition:background var(--t);text-align:left}.menu button:hover{background:var(--accent-tint);color:var(--text)}.menu button .ico{color:var(--text-muted);display:flex}.menu .sep{height:.5px;background:var(--divider)}.main{min-width:0;min-height:0;display:flex;flex-direction:column;height:100%;background:linear-gradient(#21263e29,#21263e29),#fcfbfa80;-webkit-backdrop-filter:blur(11px) saturate(1.05);backdrop-filter:blur(11px) saturate(1.05)}.mobile-bar,.tabbar,.fab,.scrim{display:none}@media (max-width: 1023px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;top:0;left:0;bottom:0;width:min(320px,86vw);z-index:50;transform:translate(-102%);transition:transform .22s var(--ease);box-shadow:var(--float)}.sidebar.open{transform:translate(0)}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;background:#1e1e3259;animation:fade .2s var(--ease) both;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-bar{display:flex;align-items:center;gap:12px;padding:.75rem 1rem;background:var(--surface);border-bottom:.5px solid var(--divider);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.mobile-bar .name{font-family:var(--display);font-weight:600;font-size:18px;color:var(--text)}.hamb{background:transparent;border:none;color:var(--text-medium);padding:6px;display:flex;border-radius:6px}.hamb:hover{background:#0000000d}}@media (max-width: 767px){.tabbar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:40;background:var(--surface);border-top:.5px solid var(--divider);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding-bottom:env(safe-area-inset-bottom)}.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 0 8px;color:var(--text-muted);font-size:11px}.tabbar a.active{color:var(--accent)}.fab{display:grid;place-items:center;position:fixed;right:1.1rem;bottom:calc(64px + env(safe-area-inset-bottom) + .8rem);z-index:41;width:54px;height:54px;border-radius:50%;background:var(--accent);color:#fff;border:none;box-shadow:var(--float);transition:transform var(--t)}.fab:active{transform:scale(.95)}}.chat{display:flex;flex-direction:column;height:100%;min-height:0;position:relative}.chat-head{display:flex;align-items:center;gap:10px;padding:.9rem 1.4rem;border-bottom:.5px solid var(--divider);background:#fffdfab3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:5}.chat-title{flex:1;min-width:0;font-family:var(--display);font-weight:500;font-style:italic;font-size:17px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:text;padding:2px 4px;border-radius:6px}.chat-title:hover{background:#00000008}.chat-title-input{flex:1;font-family:var(--display);font-weight:500;font-style:italic;font-size:17px;color:var(--text);background:#fff;border:1px solid var(--accent);border-radius:6px;padding:1px 5px;outline:none;box-shadow:0 0 0 3px var(--accent-ring)}.head-btn{background:transparent;border:none;color:var(--text-muted);padding:7px;border-radius:var(--r-ctrl);display:flex;transition:color var(--t),background var(--t)}.head-btn:hover{color:var(--accent);background:var(--accent-tint)}.head-btn.on{color:var(--accent)}.confirm-pop{position:absolute;top:56px;right:1.2rem;z-index:20;background:var(--surface-solid);border:.5px solid var(--divider);border-radius:var(--r-ctrl);box-shadow:var(--float);padding:.9rem 1rem;width:250px;animation:rise .16s var(--ease) both}.confirm-pop p{font-size:13.5px;color:var(--text-medium);margin-bottom:.8rem;line-height:1.5}.confirm-pop .row{display:flex;gap:8px}.confirm-pop .btn{flex:1;padding:8px;font-size:13.5px}.btn-danger{background:var(--danger)}.btn-danger:hover{background:#8f2a11}.msg-search{display:flex;align-items:center;gap:8px;padding:.6rem 1.4rem;border-bottom:.5px solid var(--divider);background:var(--accent-tint);animation:rise .16s var(--ease) both}.msg-search input{flex:1;background:var(--input-bg);border:1px solid var(--border);border-radius:var(--r-ctrl);padding:7px 12px;font-size:14px;font-family:var(--serif);color:var(--text);outline:none}.msg-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.msg-search .count{font-size:13px;color:var(--text-muted);font-family:var(--mono);white-space:nowrap}mark{background:#c0441a38;color:inherit;border-radius:3px;padding:0 1px}mark.cur{background:var(--accent);color:#fff}.msgs{flex:1;min-height:0;overflow-y:auto;padding:1.6rem 0 1rem;scroll-behavior:smooth}.msgs-inner{max-width:760px;margin:0 auto;padding:0 1.4rem;display:flex;flex-direction:column;gap:1.5rem}.msg{animation:rise .28s var(--ease) both;max-width:100%}.msg.user{display:flex;justify-content:flex-end}.msg.assistant{display:flex;flex-direction:column;align-items:flex-start}.msg-head{display:flex;align-items:center;gap:9px;margin-bottom:8px;padding-left:2px}.msg-avatar{width:28px;height:28px;border-radius:50%;flex-shrink:0;display:grid;place-items:center;background:#fff;border:.5px solid rgba(192,68,26,.28)}.msg-name{font-family:var(--mono);font-size:14px;letter-spacing:.03em;color:var(--text);font-weight:700}.bubble{border-radius:12px;padding:13px 17px;font-size:15px;line-height:1.62;color:var(--text);overflow-wrap:break-word;word-break:break-word}.msg.user .bubble{background:var(--accent-soft);max-width:82%}.msg.assistant .bubble{background:var(--assistant-bg);border:.5px solid var(--divider);width:auto;max-width:88%}.chat-error{display:flex;align-items:center;gap:12px;max-width:88%;margin-top:8px;background:var(--danger-bg);border:.5px solid rgba(176,52,21,.28);border-radius:12px;padding:12px 14px;animation:rise .24s var(--ease) both}.chat-error .ce-icon{color:var(--danger);flex-shrink:0;display:flex;align-self:flex-start;margin-top:1px}.chat-error .ce-body{flex:1;min-width:0}.chat-error .ce-title{font-weight:600;font-size:14px;color:var(--danger);margin-bottom:2px}.chat-error .ce-text{font-size:13px;color:var(--text-medium);line-height:1.5}.chat-error .ce-retry{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;align-self:center;background:var(--danger);color:#fff;border:none;border-radius:var(--r-ctrl);padding:8px 13px;font-size:13px;font-weight:500;font-family:var(--serif);transition:background var(--t)}.chat-error .ce-retry:hover{background:#8f2a11}.bubble p{margin:0 0 .7em}.bubble p:last-child{margin-bottom:0}.bubble h1,.bubble h2,.bubble h3{font-family:var(--display);font-weight:600;line-height:1.2;margin:.6em 0 .4em}.bubble h1{font-size:1.5em}.bubble h2{font-size:1.3em}.bubble h3{font-size:1.15em}.bubble ul,.bubble ol{margin:0 0 .7em;padding-left:1.3em}.bubble li{margin-bottom:.3em}.bubble blockquote{border-left:3px solid var(--accent);margin:.6em 0;padding:.1em 0 .1em 1em;color:var(--text-medium);font-style:italic;font-family:var(--display);font-size:1.08em}.bubble a{text-decoration:underline}.bubble code{font-family:var(--mono);font-size:.86em;background:#2a242012;padding:.12em .4em;border-radius:5px}.bubble pre{background:var(--code-bg);color:var(--code-fg);border-radius:10px;padding:.9em 1em;overflow-x:auto;margin:.6em 0;position:relative}.bubble pre code{background:transparent;padding:0;font-size:.84em;line-height:1.55;color:var(--code-fg)}.bubble table{border-collapse:collapse;width:100%;margin:.6em 0;font-size:.92em}.bubble th,.bubble td{border:.5px solid var(--border);padding:6px 10px;text-align:left}.bubble th{background:var(--accent-tint);font-weight:600}.citations{margin-top:11px;padding:0 2px;max-width:88%}.citations-label{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-medium);font-weight:700;margin-bottom:6px}.citations-row{display:flex;flex-wrap:wrap;gap:7px}.citation-chip{display:inline-flex;align-items:center;gap:7px;background:var(--surface);border:.5px solid var(--divider);border-radius:var(--r-pill);padding:5px 12px 5px 6px;font-size:13px;color:var(--text-medium);transition:border-color var(--t),color var(--t),background var(--t),transform var(--t)}.citation-chip:hover{border-color:var(--accent);color:var(--text);background:var(--accent-tint);transform:translateY(-1px)}.citation-chip .cn{display:grid;place-items:center;width:18px;height:18px;flex-shrink:0;background:var(--accent);color:#fff;border-radius:50%;font-family:var(--mono);font-size:11px;font-weight:700}.citation-chip .cs{white-space:nowrap}.msg-actions{display:flex;gap:4px;margin-top:9px;padding:0 2px}.act-btn{display:inline-flex;align-items:center;gap:5px;background:transparent;border:none;color:var(--text);font-size:12.5px;font-family:var(--mono);font-weight:700;padding:4px 8px;border-radius:6px;transition:color var(--t),background var(--t)}.act-btn:hover{color:var(--accent);background:var(--accent-tint)}.typing{display:inline-flex;gap:5px;align-items:center;padding:4px 2px}.typing i{width:7px;height:7px;border-radius:50%;background:var(--accent);opacity:.55;animation:blink 1.2s var(--ease) infinite}.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}@keyframes blink{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:.9;transform:translateY(-3px)}}.scroll-down{position:absolute;bottom:120px;left:50%;transform:translate(-50%);width:38px;height:38px;border-radius:50%;background:var(--surface-solid);border:.5px solid var(--divider);box-shadow:var(--float);color:var(--text-medium);display:grid;place-items:center;z-index:6;animation:rise .2s var(--ease) both}.scroll-down:hover{color:var(--accent)}.composer-wrap{padding:.8rem 1.4rem 1.2rem}.composer-wrap .inner{max-width:760px;margin:0 auto}.composer{display:flex;align-items:flex-end;gap:10px;background:var(--input-bg);border:1px solid var(--border);border-radius:16px;padding:8px 8px 8px 16px;transition:border-color var(--t),box-shadow var(--t)}.composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.composer textarea{flex:1;border:none;outline:none;background:transparent;resize:none;font-family:var(--serif);font-size:15.5px;line-height:1.5;color:var(--text);max-height:9.5em;padding:7px 0}.composer textarea::placeholder{color:#c0b8ae}.send-btn{width:40px;height:40px;border-radius:12px;flex-shrink:0;background:var(--accent);color:#fff;border:none;display:grid;place-items:center;transition:background var(--t),opacity var(--t),transform var(--t)}.send-btn:disabled{opacity:.4;cursor:not-allowed}.send-btn:not(:disabled):hover{background:var(--accent-hover)}.send-btn.stop{background:var(--text-medium)}.composer-hint{text-align:center;font-size:12px;color:var(--text);font-weight:700;margin-top:8px;font-family:var(--mono);letter-spacing:.03em}.chat-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;gap:1rem}.chat-empty .mark{opacity:.9;filter:drop-shadow(0 6px 16px rgba(192,68,26,.18))}.chat-empty h2{font-family:var(--display);font-weight:600;font-size:2rem;color:var(--text)}.chat-empty p{color:var(--text-medium);font-size:15px;max-width:30em;line-height:1.6}.suggest-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:.5rem;max-width:40em}.suggest{background:var(--surface);border:.5px solid var(--divider);border-radius:var(--r-pill);padding:9px 16px;font-size:14px;color:var(--text-medium);cursor:pointer;transition:border-color var(--t),color var(--t),background var(--t)}.suggest:hover{border-color:var(--accent);color:var(--text);background:var(--accent-tint)}@media (max-width: 767px){.msgs{padding-bottom:.5rem}.composer-wrap{padding-bottom:calc(64px + env(safe-area-inset-bottom) + .6rem)}.msg .bubble-wrap{max-width:88%}.chat-title{font-size:18px}}.page-scroll{flex:1;min-height:0;overflow-y:auto}.page-wrap{max-width:820px;margin:0 auto;padding:2rem 1.5rem 3rem;animation:fade .3s var(--ease) both}.page-head{margin-bottom:1.6rem}.page-title{font-family:var(--display);font-weight:600;font-size:2.1rem;color:var(--text)}.page-sub{color:var(--text-medium);font-size:14.5px;font-weight:500;margin-top:.2rem}.list-search{display:flex;align-items:center;gap:9px;margin-bottom:1.4rem;background:var(--input-bg);border:1px solid var(--border);border-radius:var(--r-ctrl);padding:10px 14px;transition:border-color var(--t),box-shadow var(--t)}.list-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}.list-search input{flex:1;border:none;outline:none;background:transparent;font-family:var(--serif);font-size:15px;color:var(--text)}.list-search input::placeholder{color:#c0b8ae}.list-search .ico{color:var(--text-muted);display:flex}.limit-note{background:var(--accent-tint);border:.5px solid rgba(192,68,26,.2);color:var(--text-medium);border-radius:var(--r-ctrl);padding:9px 14px;font-size:13px;margin-bottom:1.2rem}.cards{display:flex;flex-direction:column;gap:10px}.dcard{display:flex;align-items:flex-start;gap:12px;background:var(--surface);border:var(--card-border);border-radius:var(--r-card);padding:1rem 1.2rem;cursor:pointer;position:relative;transition:border-color var(--t),transform var(--t),background var(--t)}.dcard:hover{transform:translateY(-1px);background:var(--surface-solid)}.dcard .body{flex:1;min-width:0}.dcard .row1{display:flex;align-items:center;gap:8px;margin-bottom:4px}.dcard .title{font-family:var(--display);font-weight:600;font-size:1.18rem;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dcard .date{font-family:var(--mono);font-size:11.5px;color:var(--text-muted);white-space:nowrap}.dcard .preview{font-size:14px;color:var(--text-medium);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dcard .fav-mark{color:var(--accent);flex-shrink:0;display:flex}.dcard .actions{display:flex;gap:2px;opacity:0;transition:opacity var(--t);flex-shrink:0}.dcard:hover .actions{opacity:1}.dcard .act{background:transparent;border:none;color:var(--text-muted);padding:6px;border-radius:6px;display:flex;transition:color var(--t),background var(--t)}.dcard .act:hover{color:var(--accent);background:var(--accent-tint)}.pf-card{padding:1.1rem 1.3rem;margin-bottom:1rem}.pf-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.5rem 0}.pf-row+.pf-row{border-top:.5px solid var(--divider)}.pf-key{color:var(--text-muted);font-size:14px;flex-shrink:0}.pf-val{color:var(--text);font-weight:500;font-size:14px;text-align:right;word-break:break-word}.pf-action{width:100%;display:flex;align-items:center;gap:12px;padding:.9rem 1.2rem;margin-bottom:.7rem;cursor:pointer;text-align:left;background:var(--surface);border:var(--card-border);border-radius:var(--r-card);color:var(--text);font-size:15px;font-family:var(--serif);transition:border-color var(--t),background var(--t)}.pf-action:hover{border-color:var(--accent)}.pf-action:disabled{opacity:.6;cursor:default}.pf-action .ico{display:flex;color:var(--text-medium);flex-shrink:0}.pf-action .lbl{flex:1}.pf-action .chev{display:flex;color:var(--text-muted);transition:transform var(--t)}.pf-action .chev.open{transform:rotate(180deg)}.pf-action.danger,.pf-action.danger .ico{color:var(--danger)}.pf-action.danger:hover{border-color:var(--danger)}.pf-form{padding:1.5rem 1.4rem;margin-bottom:.7rem}.empty-state{text-align:center;padding:4rem 1.5rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.empty-state .mark{opacity:.45}.empty-state h3{font-family:var(--display);font-weight:600;font-size:1.6rem;color:var(--text-medium)}.empty-state p{color:var(--text-muted);font-size:14.5px;max-width:26em;line-height:1.6}@media (max-width: 767px){.page-scroll{padding-bottom:calc(64px + env(safe-area-inset-bottom))}}.reader{display:flex;flex-direction:column;height:100%;min-height:0}.reader-head{display:flex;align-items:center;gap:12px;padding:.85rem 1.4rem;border-bottom:.5px solid var(--divider);background:#fffdfab3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:5}.reader-back{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;background:transparent;border:none;color:var(--text-medium);font-size:14px;padding:6px 8px;border-radius:var(--r-ctrl);transition:color var(--t),background var(--t)}.reader-back:hover{color:var(--accent);background:var(--accent-tint)}.reader-titles{flex:1;min-width:0}.reader-title{font-family:var(--display);font-weight:600;font-size:19px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reader-sub{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;color:var(--text-muted);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reader-banner{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:.7rem 1.4rem;border-bottom:.5px solid var(--divider);background:var(--accent-tint);animation:rise .2s var(--ease) both}.reader-banner .bt{font-size:13px;color:var(--text-medium);flex:1;min-width:12rem}.reader-banner .bt b{color:var(--accent);font-weight:600}.reader-banner .acts{display:flex;gap:8px}.banner-btn{font-size:13px;padding:6px 13px;border-radius:var(--r-ctrl);border:.5px solid var(--border);background:var(--surface-solid);color:var(--text-medium);transition:all var(--t)}.banner-btn:hover{border-color:var(--accent);color:var(--text);background:#fff}.banner-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.banner-btn.primary:hover{background:var(--accent-hover);color:#fff}.reader-resume{display:inline-flex;align-items:center;gap:8px;background:var(--accent-tint);color:var(--text-medium);border:.5px solid rgba(192,68,26,.2);border-radius:var(--r-pill);padding:6px 14px;font-size:12.5px;margin-bottom:1.6rem}.reader-scroll{flex:1;min-height:0;overflow-y:auto}.reader-page{max-width:720px;margin:1.6rem auto;padding:2.2rem 2.4rem 2.4rem;background:var(--surface-solid);border:.5px solid var(--divider);border-radius:var(--r-card);box-shadow:0 14px 40px -24px #1e1e3273;animation:fade .2s var(--ease) both}.rb-label{font-family:var(--mono);font-size:13px;letter-spacing:.06em;color:var(--accent);font-weight:700;margin-bottom:.9rem}.rb-text{font-size:17.5px;line-height:1.78;color:var(--text)}.reader-page mark{background:#c0441a3d;color:inherit;border-radius:3px;padding:0 2px}.reader-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:.7rem 1.4rem;border-top:.5px solid var(--divider);background:#fffdfab3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.nav-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--border);border-radius:var(--r-ctrl);color:var(--text-medium);font-size:14px;padding:8px 14px;transition:all var(--t)}.nav-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent);background:var(--accent-tint)}.nav-btn:disabled{opacity:.4;cursor:not-allowed}.page-ind{font-family:var(--mono);font-size:12.5px;color:var(--text-muted);text-align:center}.page-ind b{color:var(--text);font-weight:700}.toc-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#1e1e3252;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fade .18s var(--ease) both}.toc-drawer{position:fixed;top:0;right:0;bottom:0;z-index:61;width:min(380px,88vw);background:var(--surface-solid);border-left:.5px solid var(--divider);box-shadow:var(--float);display:flex;flex-direction:column;animation:tocIn .22s var(--ease) both}@keyframes tocIn{0%{transform:translate(102%)}to{transform:translate(0)}}.toc-head{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.2rem .9rem;border-bottom:.5px solid var(--divider);font-family:var(--display);font-weight:600;font-size:1.2rem;color:var(--text)}.toc-close{background:transparent;border:none;color:var(--text-muted);padding:5px;border-radius:6px;display:flex}.toc-close:hover{color:var(--accent);background:var(--accent-tint)}.toc-body{flex:1;min-height:0;overflow-y:auto;padding:.6rem .6rem 1.5rem}.toc-group{margin-bottom:2px}.toc-group-head{display:flex;align-items:center;gap:7px;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;font-family:var(--display);font-weight:600;font-size:.98rem;color:var(--text);padding:9px 10px;border-radius:var(--r-ctrl);transition:background var(--t)}.toc-group-head:hover{background:var(--accent-tint)}.toc-group-head .chev{display:flex;color:var(--text-muted);transition:transform var(--t)}.toc-group-head .chev.open{transform:rotate(90deg)}.toc-item{display:block;width:100%;text-align:left;background:transparent;border:none;cursor:pointer;font-size:13.5px;color:var(--text-medium);line-height:1.4;padding:8px 10px 8px 28px;border-radius:var(--r-ctrl);transition:background var(--t),color var(--t)}.toc-item:hover{background:var(--accent-tint);color:var(--text)}.toc-item.active{color:var(--accent);font-weight:600;background:var(--accent-soft)}.toc-group.flat .toc-item{padding-left:12px}.lib-cards{display:flex;flex-direction:column;gap:10px}.lib-card{display:flex;align-items:center;gap:14px;background:var(--surface);border:var(--card-border);border-radius:var(--r-card);padding:1rem 1.2rem;cursor:pointer;transition:border-color var(--t),transform var(--t),background var(--t)}.lib-card:hover{transform:translateY(-1px);background:var(--surface-solid)}.lib-ico{width:40px;height:40px;border-radius:10px;flex-shrink:0;display:grid;place-items:center;background:var(--accent-tint);color:var(--accent)}.lib-card .body{flex:1;min-width:0}.lib-card .title{font-family:var(--display);font-weight:600;font-size:1.15rem;color:var(--text)}.lib-card .meta{font-family:var(--mono);font-size:11.5px;color:var(--text-muted);margin-top:2px}.lib-card .snippet{font-size:13.5px;color:var(--text-medium);line-height:1.5;margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.lib-card .snippet .sn-loc{font-family:var(--mono);font-size:11.5px;color:var(--accent)}.lib-card .snippet mark{background:#c0441a33;color:inherit;border-radius:3px;padding:0 2px}.list-search .ls-clear{display:flex;flex-shrink:0;background:transparent;border:none;cursor:pointer;color:var(--text-muted);padding:2px;border-radius:5px;transition:color var(--t)}.list-search .ls-clear:hover{color:var(--accent)}.lib-scope{display:flex;gap:8px;margin-bottom:1.3rem}.chip{font-size:13px;padding:6px 14px;border-radius:var(--r-pill);cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text-medium);transition:border-color var(--t),color var(--t),background var(--t)}.chip:hover{border-color:var(--accent);color:var(--text)}.chip.on{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.lib-group{font-family:var(--mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-medium);font-weight:600;margin:1.1rem 0 .4rem}.lib-group:first-child{margin-top:0}.lib-count{font-family:var(--mono);font-size:12px;color:var(--text-medium);margin-bottom:.8rem}.lib-star{flex-shrink:0;display:flex;background:transparent;border:none;cursor:pointer;color:var(--text-muted);padding:6px;border-radius:8px;transition:color var(--t),background var(--t)}.lib-star:hover{color:var(--accent);background:var(--accent-tint)}.lib-star.on{color:var(--accent)}.link-btn{background:none;border:none;padding:0;cursor:pointer;color:var(--accent);font:inherit;text-decoration:underline;text-underline-offset:2px}.lib-more{display:block;width:100%;margin-top:.9rem;padding:11px 16px;cursor:pointer;font-family:var(--mono);font-size:12px;letter-spacing:.03em;color:var(--text-medium);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);transition:border-color var(--t),color var(--t)}.lib-more:hover{border-color:var(--accent);color:var(--text)}.reader.night{background:#16131a8c}.reader.night .reader-head,.reader.night .reader-nav{background:#e2dcd199;border-color:#786e5f38}.reader.night .reader-page{background:#e7e1d4;border-color:#786e5f42;box-shadow:0 16px 44px -24px #0000008c}.reader.night .rb-text{color:#3a342b}.reader.night .reader-page mark{background:#c0441a38}.reader.night .toc-drawer{background:#ece6da}.reader.night .reader-banner{background:#c0441a1a}@media (max-width: 767px){.reader-page{padding-top:1.6rem}.rb-text{font-size:16.5px}.reader-nav{padding-bottom:calc(.7rem + env(safe-area-inset-bottom))}.nav-btn .lbl{display:none}.reader-head{gap:6px;padding-left:1rem;padding-right:1rem}.reader-head .reader-back .lbl,.reader-sub{display:none}}
