@font-face{font-family:OPPO Sans;src:url(/fonts/OPPOSans-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:OPPO Sans;src:url(/fonts/OPPOSans-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}*{box-sizing:border-box;margin:0;padding:0}:root{--paper: #F3F4F8;--surface: #FFFFFF;--surface2: #F8FAFC;--surface3: #F1F5F9;--ink: #1B2230;--ink2: #334155;--dim: #64748B;--faint: #94A3B8;--line: #E2E8F0;--line2: #CBD5E1;--accent: #1E293B;--accent2: #0F172A;--accent-ink: #101318;--accent-soft: #F1F5F9;--accent-line: #CBD5E1;--ok: #16A34A;--ok-soft: #F0FDF4;--ok-line: #BBF7D0;--warn: #D97706;--warn-soft: #FFFBEB;--warn-line: #FDE68A;--bad: #EF4444;--bad-soft: #FEF2F2;--bad-line: #FECACA;--info: #0284C7;--info-soft: #E0F2FE;--info-line: #BAE6FD;--blue: #0284C7;--blue-soft: #E0F2FE;--blue-line: #BAE6FD;--r: 10px;--r-sm: 8px;--r-lg: 12px;--sh: none;--sh-sm: none;--sh-hi: none;--sh-ovl: 0 8px 24px rgba(2,6,23,.1), 0 2px 6px rgba(2,6,23,.06);--sh-paper: 0 1px 3px rgba(2,6,23,.05);--fs-hero: 24px;--fs-title: 19px;--fs-sub: 14px;--fs-nav: 13px;--fs-body: 14px;--fs-card: 14px;--fs-meta: 12.5px;--fs-tag: 11px;--fs-stat: 24px;--fs-editor: 16px;--font-editor-serif: "Noto Serif SC", "Source Han Serif SC", "Songti SC", "SimSun", serif}body{font-family:OPPO Sans,-apple-system,Segoe UI,PingFang SC,Microsoft YaHei,Hiragino Sans GB,system-ui,sans-serif;background:var(--paper);color:var(--ink);font-size:var(--fs-body);line-height:1.62;-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--line2);border-radius:8px}::-webkit-scrollbar-track{background:transparent}.app{height:100vh;display:flex;flex-direction:column}.topbar{height:50px;flex:0 0 50px;background:#ffffffb8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;padding:0 16px;position:relative;z-index:30}.book{font-weight:700;font-size:14px;display:flex;align-items:center;gap:7px;letter-spacing:-.2px}.brand{display:flex;align-items:center;gap:8px;font-weight:800;font-size:15px;letter-spacing:-.3px;flex:0 0 auto}.brand-mark{width:22px;height:22px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent),#7c6cf0);color:#fff;box-shadow:0 2px 6px #7c6cf059}.book .tag{font-size:10px;font-weight:500;color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:4px;padding:1px 6px}.flowbar{display:flex;align-items:center;gap:0;margin-left:8px;min-width:0;overflow-x:auto;scrollbar-width:none}.flowbar::-webkit-scrollbar{display:none}.fb{display:flex;align-items:center;gap:6px;padding:4px 12px;font-size:12px;color:var(--faint);cursor:pointer;border-radius:20px;white-space:nowrap}.fb .n{width:17px;height:17px;border-radius:50%;background:var(--surface3);color:var(--faint);display:grid;place-items:center;font-size:10px;font-weight:600}.fb.done{color:var(--dim)}.fb.done .n{background:var(--ok-soft);color:var(--ok)}.fb.cur{color:var(--ink);background:var(--surface3);font-weight:600}.fb.cur .n{background:var(--accent);color:#fff}.fbar-row{width:14px;height:1px;background:var(--line2)}.spacer{flex:1}.meta{display:flex;align-items:center;gap:14px;font-size:12px;color:var(--dim)}.meta b{color:var(--ink);font-weight:600}.avatar{width:28px;height:28px;border-radius:50%;background:linear-gradient(150deg,#3f3f46,#18181b);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:600;cursor:pointer;flex:0 0 28px;border:1px solid var(--line2);position:relative}.avatar:hover{box-shadow:0 0 0 3px var(--surface3)}.avatar .d{position:absolute;right:-1px;bottom:-1px;width:8px;height:8px;border-radius:50%;background:var(--ok);border:1.5px solid var(--surface)}.usermenu{position:absolute;top:50px;right:10px;width:230px;background:var(--surface);border:1px solid var(--line2);border-radius:10px;box-shadow:var(--sh-ovl);padding:5px;display:none;z-index:60}.usermenu.on{display:block}.umi{display:flex;align-items:center;gap:8px;padding:7px 9px;border-radius:6px;cursor:pointer;font-size:12.5px;color:var(--ink2)}.umi:hover{background:var(--surface2);color:var(--ink)}.umi .r{margin-left:auto;font-size:11px;color:var(--dim)}.umi.danger{color:var(--bad)}.umi.danger:hover{background:var(--bad-soft)}.umsep{height:1px;background:var(--line);margin:5px 2px}.umhead{display:flex;gap:9px;align-items:center;padding:8px 9px 9px}.umhead .av{width:32px;height:32px;border-radius:50%;background:linear-gradient(150deg,#3f3f46,#18181b);color:#fff;display:grid;place-items:center;font-size:13px;font-weight:700;flex:0 0 32px}.umhead .n{font-size:13px;font-weight:650}.umhead .e{font-size:11px;color:var(--dim)}.body{flex:1;display:flex;min-height:0}.rail{width:204px;flex:0 0 204px;background:#f7f8fbb3;border-right:1px solid var(--line);overflow:auto;padding:12px 10px;display:flex;flex-direction:column}.rfoot{flex:0 0 auto;border-top:1px solid var(--line);margin:10px -10px -12px;padding:8px}.rfoot .ri{width:100%}.rglabel{font-size:11px;color:var(--dim);padding:0 8px 5px;letter-spacing:.3px}.rgroup{margin-bottom:6px}.rhead{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:var(--r);cursor:pointer;font-size:var(--fs-nav);font-weight:600;color:var(--ink2)}.rhead:hover{background:var(--surface3)}.rhead.on{background:var(--accent-soft);color:var(--accent);font-weight:600}.rhead .n{width:18px;height:18px;border-radius:5px;background:var(--surface3);color:var(--dim);display:grid;place-items:center;font-size:10px;font-weight:700}.rhead.on .n{background:var(--accent);color:#fff}.rhead .st{margin-left:auto;width:6px;height:6px;border-radius:50%;background:var(--line2)}.rhead .st.done{background:var(--ok)}.rhead .st.cur{background:var(--accent)}.rsub{position:relative;display:none;margin:2px 0 4px}.rgroup.on .rsub{display:block}.rsub:before{content:"";position:absolute;left:27px;top:-2px;bottom:10px;width:1px;background:var(--line2)}.rsub div{position:relative;padding:5px 10px 5px 40px;font-size:12.5px;font-weight:500;color:var(--dim);cursor:pointer}.rsub div:before{content:"";position:absolute;left:24px;top:50%;margin-top:-3px;width:6px;height:6px;border-radius:50%;background:var(--surface);border:1.5px solid var(--faint)}.rsub div:hover{color:var(--ink2)}.rsub div.on{color:var(--ink);font-weight:600}.rsub div.on:before{background:var(--accent);border-color:var(--accent)}.stage{flex:1;overflow:auto;padding:18px 22px 60px}.cap{display:flex;align-items:center;gap:9px;margin-bottom:14px;flex-wrap:wrap}.cap h2{font-size:19px;font-weight:700;letter-spacing:-.5px}.cap .chip{font-size:11px;padding:2px 8px;border-radius:5px;background:var(--surface);border:1px solid var(--line);color:var(--dim)}.cap .chip.api{background:var(--blue-soft);border-color:var(--blue-line);color:var(--blue);font-family:ui-monospace,Menlo,monospace}.cap .chip.new{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.cap .chip.cut{background:var(--bad-soft);border-color:var(--bad-line);color:var(--bad)}.cap .chip.keep{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.cap p{font-size:12px;color:var(--dim);width:100%}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh)}.cols{display:flex;gap:14px;align-items:flex-start}.col{flex:1;min-width:0}.btn{display:inline-flex;align-items:center;gap:6px;padding:5px 13px;border-radius:var(--r-sm, 9px);border:1px solid var(--line2);background:var(--surface);cursor:pointer;font-size:12.5px;color:var(--ink2);box-shadow:var(--sh-sm)}.btn:hover{background:var(--surface3);border-color:var(--line2)}.btn.pri{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn.pri:hover{background:var(--accent2)}.btn.ghost{border-color:transparent;background:transparent;color:var(--accent);padding:0 4px;box-shadow:none}.btn.ghost:hover{background:transparent;text-decoration:underline}.btn.sm{padding:4px 10px;font-size:11.5px;border-radius:8px}.btn:disabled{opacity:.45;cursor:not-allowed}.inp{width:100%;padding:7px 11px;border:1px solid var(--line2);border-radius:var(--r-sm, 9px);background:var(--surface);outline:none;font-size:12.5px;box-shadow:inset 0 1px 2px #171c2b08}.inp:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1e293b1f}textarea.inp{resize:vertical;line-height:1.7}.lbl{font-size:11.5px;color:var(--dim);margin-bottom:4px;display:block}.hd{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid var(--line)}.hd h3{font-size:13.5px;font-weight:650}.hd .r{margin-left:auto;display:flex;gap:6px}.pad{padding:14px}.sec{padding:0 0 12px}.muted{color:var(--dim)}.dot{width:7px;height:7px;border-radius:50%;display:inline-block}.pill{font-size:10.5px;padding:1px 7px;border-radius:20px;border:1px solid;white-space:nowrap}.pill.ok{background:var(--ok-soft);border-color:var(--ok-line);color:var(--ok)}.pill.warn{background:var(--warn-soft);border-color:var(--warn-line);color:var(--warn)}.pill.bad{background:var(--bad-soft);border-color:var(--bad-line);color:var(--bad)}.pill.mut{background:var(--surface3);border-color:var(--line);color:var(--dim)}.pill.acc{background:var(--accent-soft);border-color:var(--accent-line);color:var(--accent)}.pill.blu{background:var(--blue-soft);border-color:var(--blue-line);color:var(--blue)}.card{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden;box-shadow:var(--sh-sm)}.card .ch{display:flex;align-items:center;gap:7px;padding:9px 12px;border-bottom:1px solid var(--line);background:var(--surface2);font-size:12.5px;font-weight:600}.card .ch .r{margin-left:auto;font-weight:400;font-size:11.5px}.card .cb{padding:12px}.bar{height:6px;border-radius:6px;background:var(--surface3);overflow:hidden}.bar i{display:block;height:100%;background:var(--accent)}.row{display:flex;align-items:center;gap:8px}.wrap{flex-wrap:wrap}hr.sep{border:0;border-top:1px solid var(--line);margin:12px 0}.kv{display:flex;justify-content:space-between;padding:5px 0;font-size:12px;border-bottom:1px dashed var(--line)}.kv:last-child{border:0}.kv span:first-child{color:var(--dim)}.list{display:flex;flex-direction:column}.li{display:flex;align-items:center;gap:9px;padding:8px 12px;border-bottom:1px solid var(--line);font-size:12.5px;cursor:pointer}.li:last-child{border:0}.li:hover{background:var(--surface2)}.li.on{background:var(--accent-soft);box-shadow:inset 2px 0 0 var(--accent)}.li .r{margin-left:auto;display:flex;gap:6px;align-items:center}.step{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-left:2px solid var(--line);cursor:pointer}.step.on{border-left-color:var(--accent);background:var(--surface2)}.step .sn{width:20px;height:20px;border-radius:50%;background:var(--surface3);color:var(--dim);display:grid;place-items:center;font-size:11px;font-weight:700;flex:0 0 20px}.step.on .sn{background:var(--accent);color:#fff}.step.done .sn{background:var(--ok);color:#fff}.step .st{font-size:12.5px;font-weight:600}.step .sd{font-size:11.5px;color:var(--dim);margin-top:1px}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);padding:0 12px}.tabs div{padding:8px 12px;font-size:12.5px;color:var(--dim);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.tabs div.on{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.tabp{display:none;padding:14px}.tabp.on{display:block}.empty{padding:26px;text-align:center;color:var(--faint);font-size:12px}.grid{display:grid;gap:11px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.stat{padding:13px 14px}.stat .n{font-size:24px;font-weight:700;letter-spacing:-.5px;line-height:1.2}.stat .l{font-size:11.5px;color:var(--dim);margin-top:2px}.mini{font-size:11px;color:var(--faint);font-family:ui-monospace,Menlo,monospace}.tree{font-size:12.5px}.tree .v{padding:5px 10px;font-weight:650;color:var(--ink);cursor:pointer;border-radius:6px}.tree .v:hover{background:var(--surface3)}.tree .c{padding:4px 10px 4px 22px;color:var(--ink2);cursor:pointer;border-radius:6px;display:flex;gap:7px;align-items:center}.tree .c:hover{background:var(--surface2)}.tree .c.on{background:var(--accent-soft);color:var(--accent);font-weight:600;box-shadow:inset 2px 0 0 var(--accent)}.tree .c .x{margin-left:auto}.chipx{font-size:11px;padding:2px 8px;border-radius:6px;border:1px solid var(--line2);background:var(--surface2);cursor:pointer;color:var(--ink2)}.chipx:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.chipx.on{background:var(--accent);border-color:var(--accent);color:#fff}.mono{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:11px}.prose{font-size:13.5px;line-height:2;color:var(--ink)}.prose p{text-indent:2em;margin-bottom:4px}table.tb{width:100%;border-collapse:collapse;font-size:12px}table.tb th,table.tb td{border:1px solid var(--line);padding:7px 9px;text-align:left}table.tb th{background:var(--surface2);font-weight:600;font-size:11.5px;color:var(--ink2)}table.tb td.c{text-align:center}.mk{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:4px;font-size:10px}.mk.y{background:var(--ok-soft);color:var(--ok)}.mk.n{background:var(--surface3);color:var(--faint)}.mk.f{background:var(--accent-soft);color:var(--accent)}.note{background:var(--warn-soft);border:1px solid var(--warn-line);border-radius:var(--r);padding:9px 12px;font-size:12px;color:#7a5a12}.note.b{background:var(--blue-soft);border-color:var(--blue-line);color:#2c5279}.gate{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--surface2);border-top:1px solid var(--line);font-size:12.5px}.kanban{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:start}.kcol{background:var(--surface2);border:1px solid var(--line);border-radius:var(--r);padding:9px}.kcol h4{font-size:12px;font-weight:650;margin-bottom:8px;display:flex;gap:6px;align-items:center}.kcol .cnt{margin-left:auto;font-size:11px;color:var(--dim);font-weight:400}.kitem{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:9px 10px;margin-bottom:7px;font-size:12px}.kitem .t{font-weight:600;margin-bottom:3px}.kitem .d{color:var(--dim);font-size:11.5px;line-height:1.55}.diff{display:grid;grid-template-columns:1fr 1fr;gap:12px}.diffcol{border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.diffcol h4{padding:8px 12px;background:var(--surface2);font-size:12px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:7px}.diffcol .bd{padding:11px 13px;font-size:12.5px;line-height:1.85}del{background:var(--bad-soft);color:var(--bad);text-decoration:none}ins{background:var(--ok-soft);color:#2f5e3c;text-decoration:none}.finding{display:flex;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:var(--r);margin-bottom:8px}.finding .badge{width:22px;height:22px;border-radius:6px;flex:0 0 22px;display:grid;place-items:center;font-size:11px;font-weight:700}.finding.bad .badge{background:var(--bad-soft);color:var(--bad)}.finding.warn .badge{background:var(--warn-soft);color:var(--warn)}.finding.ok .badge{background:var(--ok-soft);color:var(--ok)}.finding .ft{font-size:12.5px;font-weight:600}.finding .fb2{font-size:11.5px;color:var(--dim);margin:2px 0 5px;line-height:1.6}.quote{border-left:2px solid var(--accent-line);padding:2px 0 2px 9px;color:var(--ink2);font-size:12px;background:var(--surface2)}.timeline{position:relative;padding-left:18px}.timeline:before{content:"";position:absolute;left:5px;top:4px;bottom:4px;width:1px;background:var(--line2)}.tl{position:relative;padding:0 0 14px}.tl:before{content:"";position:absolute;left:-17px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--surface);border:2px solid var(--line2)}.tl.ok:before{border-color:var(--ok);background:var(--ok-soft)}.tl .tt{font-size:12.5px;font-weight:600}.tl .td{font-size:11.5px;color:var(--dim)}.aibox{background:var(--surface2);border:1px solid var(--line);border-radius:var(--r);padding:11px 12px;font-size:12.5px;line-height:1.75}.spark{border:1px dashed var(--line2);border-radius:var(--r);padding:10px 11px;background:var(--surface2);cursor:pointer}.spark:hover{border-color:var(--accent);background:var(--accent-soft)}.spark .st{font-size:12px;font-weight:600;margin-bottom:3px}.spark .sd{font-size:11.5px;color:var(--dim);line-height:1.55}.big{font-size:15px;font-weight:650}.legend{display:flex;gap:14px;font-size:11px;color:var(--dim);padding:8px 12px;background:var(--surface2);border-bottom:1px solid var(--line);flex-wrap:wrap}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px;vertical-align:-1px}.hero{padding:32px 40px 24px;text-align:center;margin-bottom:14px;position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh)}.hero .badge{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;color:var(--accent-ink);background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:20px;padding:3px 11px;margin-bottom:14px}.hero h1{font-size:26px;font-weight:750;letter-spacing:-.8px;margin-bottom:7px}.hero .sub{font-size:13px;color:var(--dim);margin-bottom:20px}.magic{max-width:680px;margin:0 auto;text-align:left;background:var(--surface);border:1px solid var(--line2);border-radius:var(--r-lg);box-shadow:var(--sh);padding:15px 17px 12px;position:relative}.magic .mt{display:flex;align-items:center;gap:7px;margin-bottom:6px}.magic .mt b{font-size:12.5px;color:var(--ink)}.magic textarea{border:0;background:transparent;font-size:14.5px;padding:2px 0;resize:none;line-height:1.6}.magic .mf{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:9px;padding-top:9px;border-top:1px solid var(--line)}.cover{flex:0 0 80px;height:106px;border-radius:6px;color:#fafafa;background:linear-gradient(160deg,#3f3f46,#18181b);display:flex;flex-direction:column;justify-content:flex-end;padding:9px 10px;box-shadow:0 3px 12px #18181b2e;position:relative;overflow:hidden}.cover:after{content:"";position:absolute;left:7px;top:0;bottom:0;width:1px;background:#ffffff24}.cover .t{font-size:14px;font-weight:700;line-height:1.32;letter-spacing:1px}.cover .a{font-size:9.5px;opacity:.65;margin-top:5px}.journey{display:flex;align-items:center;gap:5px}.journey .j{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--dim);white-space:nowrap}.journey .j i{width:17px;height:17px;border-radius:50%;background:var(--surface3);color:var(--faint);display:grid;place-items:center;font-size:10px;font-style:normal;font-weight:700}.journey .j.done i{background:var(--ok-soft);color:var(--ok)}.journey .j.cur i{background:var(--accent);color:#fff}.journey .j.cur{color:var(--ink);font-weight:600}.journey .jl{flex:1;height:1px;background:var(--line2);min-width:8px}.tile{border:1.5px dashed var(--line2);border-radius:var(--r-lg);display:grid;place-items:center;min-height:118px;cursor:pointer;background:var(--surface2)}.tile:hover{border-color:var(--accent);background:var(--accent-soft)}.tile .ti{text-align:center}.tile .plus{font-size:24px;color:var(--faint);line-height:1}.tile .tn{font-size:12.5px;color:var(--ink2);margin-top:3px}.tile .td{font-size:11px;color:var(--faint);margin-top:1px}.homecard{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);padding:14px 15px;display:flex;gap:11px;align-items:flex-start}.homecard .ic{width:30px;height:30px;border-radius:8px;flex:0 0 30px;display:grid;place-items:center;font-size:14px;font-weight:700}.homecard .ic.a,.homecard .ic.b,.homecard .ic.c{background:var(--surface3);color:var(--ink2)}.homecard .ht{font-size:12.5px;font-weight:650;margin-bottom:3px}.homecard .hd2{font-size:12px;color:var(--dim);line-height:1.6}.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;align-items:start}.plan{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);overflow:hidden}.plan.hot{border:1.5px solid var(--accent)}.plan .ph{padding:18px 18px 14px;border-bottom:1px solid var(--line);background:var(--surface2)}.plan.hot .ph{background:var(--accent-soft)}.plan .pn{font-size:15px;font-weight:700;display:flex;align-items:center;gap:7px}.plan .pp{font-size:29px;font-weight:750;letter-spacing:-1px;margin:7px 0 2px}.plan .pp small{font-size:12px;font-weight:400;color:var(--dim);letter-spacing:0}.plan .pd{font-size:11.5px;color:var(--dim);line-height:1.6}.plan ul{list-style:none;padding:12px 18px 16px}.plan li{display:flex;gap:8px;padding:5px 0;font-size:12.5px;line-height:1.55;align-items:flex-start}.plan li .m{flex:0 0 15px;font-weight:700}.plan li.y .m{color:var(--ok)}.plan li.n{color:var(--faint)}.plan li.n .m{color:var(--line2)}.plan li.hd{font-weight:650;color:var(--ink);margin-top:7px;font-size:12px}.plan li.hd .m{color:var(--ink)}.usagebar{display:flex;align-items:center;gap:10px;padding:11px 14px;background:var(--surface2);border:1px solid var(--line);border-radius:var(--r-lg);margin-bottom:14px}.usagebar .ub{flex:1}.tabbar{display:flex;gap:2px;border-bottom:1px solid var(--line);padding:0 14px;flex-wrap:wrap}.tabbar div{padding:9px 13px;font-size:12.5px;color:var(--dim);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.tabbar div.on{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.tabbar div .bd{display:inline-grid;place-items:center;min-width:15px;height:15px;border-radius:8px;background:var(--bad);color:#fff;font-size:9.5px;margin-left:4px;padding:0 3px}.acc{display:flex;gap:14px;align-items:center}.acc .av{width:52px;height:52px;border-radius:50%;background:linear-gradient(150deg,#3f3f46,#18181b);color:#fff;display:grid;place-items:center;font-size:19px;font-weight:700;flex:0 0 52px}.sess{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r);margin-bottom:8px}.sess .si{width:30px;height:30px;border-radius:8px;background:var(--surface3);display:grid;place-items:center;flex:0 0 30px}*{overflow-wrap:break-word}button:active{transform:translateY(.5px)}.mini,.fb2,.ft,.kv span:last-child,.panel .pad>div{overflow-wrap:anywhere}code,pre{white-space:pre-wrap;overflow-wrap:anywhere}.in,input.inp,select.inp,textarea.inp{width:100%;max-width:100%;min-height:34px;padding:7px 11px;border:1px solid var(--line2);border-radius:var(--r-sm);background:var(--surface);outline:none;font-size:12.5px;color:var(--ink);box-shadow:inset 0 1px 2px #171c2b08;box-sizing:border-box}select.in,select.inp{cursor:pointer;padding-right:24px}.in:focus,.inp:focus,select.in:focus,textarea.inp:focus{border-color:var(--accent);box-shadow:0 0 0 3px #1e293b1f}textarea.in,textarea.inp{resize:vertical;line-height:1.7;min-height:74px}label.lbl{margin-top:6px;display:block}input::placeholder,textarea::placeholder{color:var(--faint)}.ellip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.iconb{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:7px;border:1px solid var(--line2);background:var(--surface);color:var(--ink2);cursor:pointer;box-shadow:var(--sh-sm);flex:0 0 28px}.iconb:hover{background:var(--surface3);color:var(--accent);border-color:var(--line2)}.rhead svg,.fb svg{flex:0 0 14px;opacity:.75}.rhead.on svg,.fb.cur svg{opacity:1}.hd svg{flex:0 0 15px;opacity:.8}.wstats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:14px}.wstat{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:14px 18px;min-height:84px;display:flex;flex-direction:column;justify-content:center}.wstat .l{font-size:12px;font-weight:500;color:var(--dim)}.wstat .n{font-size:var(--fs-stat);font-weight:700;letter-spacing:-.5px;line-height:1.2;margin-top:3px;color:var(--ink);font-variant-numeric:tabular-nums}.wstat .n.sm{font-size:15px;font-weight:600;letter-spacing:0}.wstat .m{font-size:11px;color:var(--faint);margin-top:2px}.wdesk{background:var(--surface2)}.editor-wrap{max-width:720px;margin:0 auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--sh-paper);overflow:hidden}.editor-wrap .cm-editor{background:transparent}.editor-wrap .cm-editor .cm-scroller{font-family:var(--font-editor-serif);font-size:var(--fs-editor);line-height:1.9;padding:18px 28px 26px}.editor-wrap .cm-content{caret-color:var(--accent)}.editor-wrap .cm-cursor,.editor-wrap .cm-dropCursor{border-left-color:var(--accent)}.editor-wrap .cm-selectionBackground,.editor-wrap .cm-focused .cm-selectionBackground,.editor-wrap .cm-editor ::selection{background:#1e293b1a!important}.editor-wrap .cm-activeLine,.editor-wrap .cm-activeLineGutter{background:transparent}.editor-wrap .cm-gutters{border-right:0;background:transparent}.editor-wrap .cm-placeholder{color:var(--faint)}.editor-wrap .cm-finding{border-radius:2px}.editor-wrap .cm-f-crit{background:var(--bad-soft);box-shadow:inset 0 -1.5px 0 var(--bad)}.editor-wrap .cm-f-warn{background:var(--warn-soft);box-shadow:inset 0 -1.5px 0 var(--warn)}.editor-wrap .cm-f-sugg{background:var(--ok-soft);box-shadow:inset 0 -1.5px 0 var(--ok)}.wdesk{display:flex;justify-content:center;gap:16px}.wdesk>.editor-wrap{flex:0 1 720px;max-width:720px;margin:0;align-self:flex-start}.wmargin{flex:1 1 0;min-width:220px;max-width:360px;align-self:flex-start}@media(max-width:1100px){.wmargin{display:none}}.wmargin .wc-hd{font-size:11.5px;font-weight:600;color:var(--dim);padding:0 2px 6px}.wmargin .wc-item{display:flex;gap:7px;align-items:flex-start;padding:7px 8px;border-radius:var(--r-sm);cursor:pointer;background:var(--surface);margin-bottom:5px;border-left:2px solid var(--line2);box-shadow:var(--sh-paper)}.wmargin .wc-item:hover{background:var(--surface3)}.wmargin .wc-item .dot{flex:0 0 6px;margin-top:5px}.wmargin .wc-item .ft{font-size:12px;color:var(--ink2);line-height:1.5;overflow-wrap:anywhere}.wmargin .wc-crit{border-left-color:var(--bad)}.wmargin .wc-warn{border-left-color:var(--warn)}.wmargin .wc-sugg{border-left-color:var(--ok)}.dragcol{flex:0 0 5px;cursor:col-resize;border-radius:3px;background:transparent;align-self:stretch}.dragcol:hover,.dragcol:active{background:var(--line2)}.chat-anchor{font-size:12px;color:var(--ink2);background:var(--surface2);border:1px solid var(--line);border-radius:var(--r-sm);padding:7px 10px;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-flow{display:flex;flex-direction:column;gap:8px;overflow-y:auto;min-height:120px;max-height:46vh;padding-right:2px}.chat-u{align-self:flex-end;max-width:92%;background:var(--surface2);border:1px solid var(--line);border-radius:10px 10px 3px;padding:8px 10px;font-size:12.5px;color:var(--ink);line-height:1.6}.chat-a{align-self:flex-start;max-width:96%;border:1px solid var(--line);border-radius:10px 10px 10px 3px;padding:8px 10px;font-size:12.5px;color:var(--ink2);line-height:1.65;background:var(--surface)}.chat-a .who{font-size:10.5px;color:var(--faint);letter-spacing:.5px;margin-bottom:3px}.chat-a .ft{overflow-wrap:anywhere}.chat-card{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface2);padding:7px 9px;margin-top:6px;font-size:12px;color:var(--dim);line-height:1.55;overflow-wrap:anywhere}.chat-card b{display:block;color:var(--ink);font-size:12.5px;margin-bottom:2px}.chat-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.chat-sendrow{display:flex;gap:6px;margin-top:8px;align-items:flex-start}.chat-sendrow .in{flex:1}.chat-in{resize:none;line-height:1.6;min-height:34px;overflow-y:auto;transition:min-height .15s ease}.chat-in.open{min-height:138px}.rows{display:flex;flex-direction:column}.rows.item,.rows .item{padding:7px 9px;border-radius:var(--r-sm);cursor:pointer;border:0}.rows.item:hover,.rows .item:hover,.rows.item.on,.rows .item.on{background:var(--surface3)}.rows.item b,.rows .item b{font-size:12.5px;font-weight:600;color:var(--ink)}.rows.item .mini,.rows .item .mini{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wcol{display:flex;flex-direction:column;min-width:0}.wcol>.hd{border-bottom:0;background:transparent;padding:4px 4px 8px}.wcol>.hd h3{font-size:12px;font-weight:600;color:var(--dim);letter-spacing:.3px}.wai{display:flex;align-items:center;gap:8px;padding:8px 16px;border-top:1px solid var(--line)}.wai select.in{max-width:200px;min-height:30px;height:30px;padding:4px 10px;font-size:12px}.wai .hint{font-size:11px;color:var(--faint)}.wbar{display:flex;align-items:center;gap:12px;padding:8px 16px;border-top:1px solid var(--line);background:var(--surface2);font-size:12px;color:var(--dim)}.wbar b{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.wbar .grow{flex:1}.field{margin-bottom:12px}.cols>.panel{min-width:0}.sg-sec{margin-bottom:20px}.sg-h{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:10px;display:flex;align-items:center;gap:8px}.sg-h .chip{font-weight:400}.sg-sw{height:46px;border-radius:var(--r-sm);border:1px solid var(--line);display:flex;align-items:flex-end;padding:4px 8px;font-size:10.5px;font-family:ui-monospace,Menlo,monospace;color:var(--dim)}.sg-note{font-size:11.5px;color:var(--faint);line-height:1.7}.d36{background:var(--surface2);border:1px solid var(--line);border-radius:var(--r-sm);padding:10px 12px;display:flex;flex-direction:column;gap:6px}.d36 .t{display:flex;align-items:baseline;gap:7px}.d36 .t .no{font-family:ui-monospace,Menlo,monospace;font-size:10.5px;color:var(--dim)}.d36 .t b{font-size:12.5px;font-weight:600;color:var(--ink)}.d36 .t .pill{margin-left:auto}.d36 .v{font-size:12.5px;color:var(--ink2);line-height:1.65;overflow-wrap:anywhere}.d36.miss .v{color:var(--faint)}.d36 .l{display:flex;flex-direction:column;gap:3px}.d36 .l .l-line{font-size:12px;color:var(--ink2);line-height:1.6;padding-left:10px;border-left:2px solid var(--line2);overflow-wrap:anywhere}.d36 .hint{font-size:11px;color:var(--faint);line-height:1.65;border-top:1px dashed var(--line);padding-top:6px;margin-top:auto}.kmd-ovl{position:fixed;inset:0;background:#0f172a47;z-index:90;display:flex;justify-content:center;align-items:flex-start;padding-top:12vh}.kmd{width:560px;max-width:calc(100vw - 40px);background:var(--surface);border:1px solid var(--line2);border-radius:var(--r-lg);box-shadow:var(--sh-ovl);overflow:hidden}.kmd-in{width:100%;border:0;outline:none;padding:14px 18px;font-size:14.5px;color:var(--ink);background:var(--surface);border-bottom:1px solid var(--line)}.kmd-in::placeholder{color:var(--faint)}.kmd-list{max-height:320px;overflow:auto;padding:6px}.kmd-item{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:var(--r-sm);cursor:pointer;font-size:13px;color:var(--ink2)}.kmd-item.on{background:var(--surface3);color:var(--ink)}.kmd-item .g{flex:0 0 44px;font-size:10.5px;color:var(--faint)}.kmd-item .l{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kmd-item .k{font-size:11px;color:var(--faint)}.kmd-empty{padding:22px;text-align:center;font-size:12.5px;color:var(--faint)}.kmd-foot{display:flex;gap:16px;padding:8px 14px;border-top:1px solid var(--line);font-size:11px;color:var(--faint);background:var(--surface2)}.kmd-foot b{font-weight:600;color:var(--dim)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.25}}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}
