.flow{width:1180px}.fl-head{margin-bottom:40px}.fl-head .eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan)}.fl-head h1{font-size:34px;font-weight:700;letter-spacing:-.02em;margin-top:12px}.fl-head p{font-size:15px;line-height:1.6;color:var(--ink-2);max-width:74ch;margin-top:12px}.fl-head p b{color:var(--ink);font-weight:600}.step{border:1px solid var(--line);border-radius:12px;background:var(--panel);overflow:hidden}.step-h{display:flex;align-items:center;gap:12px;padding:13px 18px;border-bottom:1px solid var(--line);background:var(--panel-2)}.step-n{width:24px;height:24px;border-radius:7px;background:var(--raise);border:1px solid var(--line-2);display:grid;place-items:center;font-family:var(--mono);font-size:11px;color:var(--ink-2);flex-shrink:0}.step-h .t{font-size:15px;font-weight:700;letter-spacing:-.01em}.step-h .when{margin-left:auto;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);border:1px solid var(--line-2);border-radius:5px;padding:3px 8px}.step-b{padding:18px}.step-b>.lede{font-size:14px;line-height:1.6;color:var(--ink-2);max-width:92ch}.step-b>.lede b{color:var(--ink);font-weight:600}.conn{display:flex;flex-direction:column;align-items:center;gap:0;padding:4px 0}.conn .line{width:2px;height:26px;background:var(--line-2)}.conn .head{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:7px solid var(--line-2)}.conn .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);padding:7px 0}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px}.mini{border:1px solid var(--line-2);border-radius:10px;background:var(--panel-2);padding:15px 16px}.mini .mh{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}.mini .mh .pip{width:7px;height:7px;border-radius:2px;flex-shrink:0}.mini h4{font-size:14px;font-weight:600;margin-bottom:7px}.mini p{font-size:13px;line-height:1.55;color:var(--ink-3)}.mini p b{color:var(--ink-2);font-weight:600}.mini .eg{font-family:var(--mono);font-size:11.5px;color:var(--ink-2);background:var(--raise);border:1px solid var(--line-2);border-radius:7px;padding:9px 11px;margin-top:11px;line-height:1.7}.mini .eg span{color:var(--ink-3)}.scal .mh{color:var(--cyan)}.scal .pip{background:var(--cyan)}.fixd .mh{color:var(--ink-3)}.fixd .pip{background:var(--ink-4)}.formula{border:1px solid var(--line-2);border-radius:10px;background:var(--void);padding:16px 18px;font-family:var(--mono);font-size:14px;line-height:2;color:var(--ink-2);margin-top:4px}.formula b{color:var(--ink);font-weight:500}.formula .c{color:var(--cyan)}.formula .d{color:var(--ink-4)}.ex{margin-top:16px;border:1px solid var(--line-2);border-radius:10px;overflow:hidden}.ex-r{display:grid;grid-template-columns:196px 1fr 1fr 1fr;align-items:center}.ex-r>div{padding:11px 14px;border-right:1px solid var(--line-soft)}.ex-r>div:last-child{border-right:none}.ex-r.h{background:var(--panel-2);border-bottom:1px solid var(--line-2)}.ex-r.h>div{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.ex-r.h .who{font-size:12px;letter-spacing:0;text-transform:none;color:var(--ink);font-weight:600;font-family:var(--sans)}.ex-r.h .who small{display:block;font-family:var(--mono);font-size:10px;color:var(--ink-3);margin-top:2px;font-weight:400}.ex-r+.ex-r{border-top:1px solid var(--line-soft)}.ex-r .food{font-size:13px;color:var(--ink-2)}.ex-r .food em{font-style:normal;display:block;font-family:var(--mono);font-size:10.5px;color:var(--ink-3);margin-top:3px}.ex-r .q{font-family:var(--mono);font-size:15px;color:var(--ink)}.ex-r .q small{display:block;font-size:10px;color:var(--ink-3);margin-top:3px}.ex-r .q.base{color:var(--cyan)}.ex-r .q.warn{color:var(--amber)}.branch-top{display:flex;flex-direction:column;align-items:center;padding-top:4px}.branch-top .stem{width:2px;height:22px;background:var(--line-2)}.branch-bar{width:calc((200% + 28px) / 3);height:2px;background:var(--line-2)}.branch-legs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;width:100%}.branch-legs .leg{display:flex;flex-direction:column;align-items:center}.branch-legs .leg .l{width:2px;height:20px;background:var(--line-2)}.branch-legs .leg .head{width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:7px solid var(--line-2)}.out{border:1px solid var(--line);border-radius:11px;background:var(--panel);overflow:hidden}.out .oh{padding:12px 15px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:9px}.out .oh .n{font-family:var(--mono);font-size:19px;color:var(--ink)}.out .oh .s{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.out .ob{padding:14px 15px}.out .ob .cause{font-size:13px;line-height:1.55;color:var(--ink-2)}.out .ob .cause b{color:var(--ink);font-weight:600}.out .ob .act{margin-top:11px;padding-top:11px;border-top:1px solid var(--line-soft);font-size:12.5px;line-height:1.5;color:var(--ink-3)}.out .ob .act b{color:var(--ink-2);font-weight:600}.out.ok{border-color:var(--line-2)}.out.ok .oh .s{color:var(--ink-3)}.out.warn{border-color:#ffb13d57}.out.warn .oh .s,.out.warn .oh .n{color:var(--amber)}.out.block{border-color:#ff4d5e57}.out.block .oh .s,.out.block .oh .n{color:var(--red)}.terminal{border-radius:12px;padding:2px;background:var(--holo)}.terminal-in{border-radius:10px;background:var(--void);padding:20px 24px;display:flex;align-items:center;gap:18px}.terminal-in .big{font-size:19px;font-weight:700;letter-spacing:-.01em}.terminal-in p{font-size:13.5px;line-height:1.55;color:var(--ink-2);max-width:70ch;margin-top:5px}.terminal-in .cnt{margin-left:auto;text-align:right;flex-shrink:0}.terminal-in .cnt .v{font-family:var(--mono);font-size:26px;color:var(--ink)}.terminal-in .cnt .k{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-top:2px}.callout{margin-top:34px;border:1px solid var(--line);border-left:none;border-radius:12px;background:var(--panel);padding:20px 22px;position:relative;overflow:hidden}.callout:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--amber)}.callout .ct{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--amber);margin-bottom:9px}.callout h3{font-size:16px;font-weight:700;margin-bottom:9px}.callout p{font-size:14px;line-height:1.65;color:var(--ink-2);max-width:96ch}.callout p b{color:var(--ink);font-weight:600}.callout p+p{margin-top:9px}.doc-back{margin-bottom:22px}.cmp{width:1180px}.ch{margin-bottom:38px}.ch .eyebrow{font-family:var(--mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan)}.ch h1{font-size:34px;font-weight:700;letter-spacing:-.02em;margin-top:12px}.ch p{font-size:15px;line-height:1.6;color:var(--ink-2);max-width:78ch;margin-top:12px}.ch p b{color:var(--ink);font-weight:600}.sec-t{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin:38px 0 14px}.duo{display:grid;grid-template-columns:1fr 1fr;gap:16px}.model{border:1px solid var(--line);border-radius:12px;background:var(--panel);overflow:hidden}.model-h{padding:15px 18px;border-bottom:1px solid var(--line);background:var(--panel-2)}.model-h .tag{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.model-h h2{font-size:17px;font-weight:700;letter-spacing:-.01em;margin-top:7px}.model-h .sub{font-size:12.5px;color:var(--ink-3);margin-top:5px}.model-b{padding:18px}.model-b .q{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}.model-b .q+p{font-size:13.5px;line-height:1.6;color:var(--ink-2)}.model-b .q+p b{color:var(--ink);font-weight:600}.model-b .blk+.blk{margin-top:18px;padding-top:18px;border-top:1px solid var(--line-soft)}.fx{font-family:var(--mono);font-size:12.5px;line-height:1.9;color:var(--ink-2);background:var(--void);border:1px solid var(--line-2);border-radius:8px;padding:12px 14px}.fx b{color:var(--ink);font-weight:500}.fx .c{color:var(--cyan)}.fx .d{color:var(--ink-4)}.mockrow{display:grid;grid-template-columns:1fr 78px 118px;gap:8px;align-items:center;border:1px solid var(--line-2);border-radius:8px;background:var(--panel-2);padding:8px 10px;font-size:12.5px}.mockrow+.mockrow{margin-top:7px}.mockrow .f{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mockrow .f b{color:var(--ink);font-weight:500}.mockrow .p{font-family:var(--mono);font-size:11.5px;color:var(--ink);background:var(--raise);border:1px solid var(--line-2);border-radius:5px;padding:3px 7px;text-align:right}.mockrow .bs{font-family:var(--mono);font-size:10px;color:var(--ink-3);text-align:right}.mockrow .bs.fixd{color:var(--ink-3);opacity:.72}.mocklbl{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);display:grid;grid-template-columns:1fr 78px 118px;gap:8px;padding:0 10px 7px;text-align:right}.mocklbl span:first-child{text-align:left}.rt{border:1px solid var(--line-2);border-radius:11px;overflow:hidden;margin-top:2px}.rt-r{display:grid;grid-template-columns:210px 1fr 1fr 1fr 1fr}.rt-r>div{padding:11px 13px;border-right:1px solid var(--line-soft)}.rt-r>div:last-child{border-right:none}.rt-r.h{background:var(--panel-2);border-bottom:1px solid var(--line-2)}.rt-r.h .who{font-size:12.5px;font-weight:600;color:var(--ink)}.rt-r.h .who small{display:block;font-family:var(--mono);font-size:10px;color:var(--ink-3);margin-top:3px;font-weight:400}.rt-r.h>div:first-child{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.rt-r+.rt-r{border-top:1px solid var(--line-soft)}.rt-r .lab{font-size:12.5px;color:var(--ink-2)}.rt-r .lab em{font-style:normal;display:block;font-family:var(--mono);font-size:10px;color:var(--ink-3);margin-top:3px}.rt-r .v{font-family:var(--mono);font-size:14px;color:var(--ink)}.rt-r .v small{display:block;font-size:10px;color:var(--ink-3);margin-top:3px}.rt-r .v.base{color:var(--cyan)}.rt-r .v.bad{color:var(--amber)}.rt-r .v.good{color:var(--green)}.rt-r.grp{background:var(--panel-2)}.rt-r.grp>div{grid-column:1 / -1;font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);padding:8px 13px;border-right:none}.oc{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ocard{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:18px}.ocard .on{font-size:14px;font-weight:600;margin-bottom:14px}.obar{display:flex;height:26px;border-radius:6px;overflow:hidden;border:1px solid var(--line-2)}.obar i{display:block;height:100%}.obar .ok{background:var(--ink-4)}.obar .wn{background:var(--amber)}.obar .bk{background:var(--red)}.okey{display:flex;gap:16px;margin-top:11px;font-family:var(--mono);font-size:10.5px;color:var(--ink-3);flex-wrap:wrap}.okey i{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:6px;vertical-align:-1px}.ostat{display:flex;gap:22px;margin-top:15px;padding-top:14px;border-top:1px solid var(--line-soft)}.ostat .s .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}.ostat .s .v{font-family:var(--mono);font-size:17px;color:var(--ink);margin-top:4px}.ostat .s .v.good{color:var(--green)}.ostat .s .v.bad{color:var(--amber)}.tro{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tcol{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:18px}.tcol h3{font-size:14px;font-weight:600;margin-bottom:13px}.tcol ul{list-style:none;display:flex;flex-direction:column;gap:11px}.tcol li{font-size:13px;line-height:1.55;color:var(--ink-2);padding-left:19px;position:relative}.tcol li b{color:var(--ink);font-weight:600}.tcol li:before{content:"";position:absolute;left:0;top:7px;width:7px;height:7px;border-radius:2px}.tcol.pro li:before{background:var(--green)}.tcol.con li:before{background:var(--amber)}.rec{margin-top:38px;border-radius:12px;padding:2px;background:var(--holo)}.rec-in{border-radius:10px;background:var(--void);padding:22px 24px}.rec-in .rt2{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.rec-in h3{font-size:19px;font-weight:700;letter-spacing:-.01em;margin:9px 0 10px}.rec-in p{font-size:14px;line-height:1.65;color:var(--ink-2);max-width:94ch}.rec-in p b{color:var(--ink);font-weight:600}.rec-in p+p{margin-top:9px}:root{--void:#0a0a10;--surface:#0e0e16;--panel:#12121c;--panel-2:#171724;--raise:#1c1c2b;--line:#22222f;--line-2:#2b2b3b;--line-soft:#191924;--ink:#f4f3fa;--ink-2:#b9b7cf;--ink-3:#8a88a3;--ink-4:#6a6885;--ink-5:#43415a;--cyan:#38f5ff;--magenta:#ff3df0;--violet:#9b5cff;--amber:#ffb13d;--red:#ff4d5e;--green:#5be59a;--holo:linear-gradient(90deg,#38f5ff 0%,#9b5cff 52%,#ff3df0 100%);--sans:"Inter Tight",-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace}*{margin:0;padding:0;box-sizing:border-box}html,body{background:#050509}body{font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:var(--cyan);text-decoration:none}a:hover{color:var(--ink)}button,input,select{font:inherit;color:inherit}.num{font-family:var(--mono);font-variant-numeric:tabular-nums}.screen{position:absolute;width:1440px;background:var(--void);overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--line)}.topbar{height:52px;flex-shrink:0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px;padding:0 16px;background:var(--surface)}.tb-mark{font-weight:800;font-size:14px;letter-spacing:.22em;color:var(--ink)}.tb-div{width:1px;height:20px;background:var(--line-2)}.tb-org{font-size:12.5px;color:var(--ink-3)}.tb-org b{color:var(--ink-2);font-weight:600}.tb-nav{display:flex;gap:2px;margin-left:8px}.tb-nav a{font-size:12.5px;color:var(--ink-3);padding:6px 11px;border-radius:6px}.tb-nav a.on{color:var(--ink);background:var(--panel-2)}.tb-right{margin-left:auto;display:flex;align-items:center;gap:10px}.search{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:6px 10px;width:250px}.search svg{width:13px;height:13px;color:var(--ink-4);flex-shrink:0}.search span{font-size:12.5px;color:var(--ink-4)}.search kbd{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--ink-5);border:1px solid var(--line-2);border-radius:4px;padding:1px 4px}.avatar{width:26px;height:26px;border-radius:50%;background:var(--raise);border:1px solid var(--line-2);display:grid;place-items:center;font-size:10.5px;font-weight:700;color:var(--ink-2)}.body{flex:1;display:flex;min-height:0}.side{width:236px;flex-shrink:0;border-right:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column}.side-h{padding:14px 14px 8px;display:flex;align-items:center;justify-content:space-between}.side-h .lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-4)}.side-h .cnt{font-family:var(--mono);font-size:10px;color:var(--ink-3)}.side-list{padding:0 8px;display:flex;flex-direction:column;gap:1px}.tm{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:6px;cursor:default}.tm:hover{background:var(--panel)}.tm.on{background:var(--panel-2)}.tm .dot{width:6px;height:6px;border-radius:2px;flex-shrink:0;background:var(--ink-5)}.tm.on .dot{background:var(--cyan)}.tm .nm{font-size:12.5px;color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tm.on .nm{color:var(--ink);font-weight:600}.tm .n{margin-left:auto;font-family:var(--mono);font-size:10.5px;color:var(--ink-4)}.tm .alert{margin-left:auto;font-family:var(--mono);font-size:10px;color:var(--amber);background:#ffb13d1f;border-radius:4px;padding:1px 5px}.side-sep{height:1px;background:var(--line);margin:12px 14px}.main{flex:1;min-width:0;display:flex;flex-direction:column}.mhead{padding:16px 20px 14px;border-bottom:1px solid var(--line);display:flex;align-items:flex-end;gap:16px}.mhead h1{font-size:20px;font-weight:700;letter-spacing:-.01em}.mhead .sub{font-size:12.5px;color:var(--ink-3)}.mhead .sub b{color:var(--ink-2);font-weight:600}.mhead .right{margin-left:auto;display:flex;align-items:center;gap:8px}.btn{display:inline-flex;align-items:center;gap:7px;height:30px;padding:0 12px;border-radius:7px;border:1px solid var(--line-2);background:var(--panel-2);font-size:12.5px;font-weight:500;color:var(--ink-2);white-space:nowrap}.btn:hover{color:var(--ink);border-color:var(--ink-5)}.btn svg{width:13px;height:13px}.btn.quiet{background:transparent}.btn.solid{background:var(--ink);color:#0a0a10;border-color:var(--ink);font-weight:600}.btn.holo{background:var(--holo);border:none;color:#0a0a12;font-weight:700;height:32px;padding:0 16px;letter-spacing:.01em}.seg{display:flex;border:1px solid var(--line-2);border-radius:7px;overflow:hidden}.seg button{height:30px;padding:0 11px;background:transparent;border:none;font-size:12px;color:var(--ink-3);border-right:1px solid var(--line-2)}.seg button:last-child{border-right:none}.seg button.on{background:var(--panel-2);color:var(--ink);font-weight:600}.filters{display:flex;align-items:center;gap:8px;padding:10px 20px;border-bottom:1px solid var(--line);background:var(--surface)}.chip{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:6px;border:1px solid var(--line-2);font-size:12px;color:var(--ink-3)}.chip b{color:var(--ink-2);font-weight:600}.chip.act{border-color:#38f5ff59;color:var(--cyan);background:#38f5ff0f}.filters .count{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--ink-4)}.tbl{width:100%;border-collapse:collapse}.tbl thead th{position:sticky;top:0;background:var(--surface);text-align:left;font-family:var(--mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--ink-4);font-weight:500;padding:9px 12px;border-bottom:1px solid var(--line-2);white-space:nowrap}.tbl thead th.sortable{cursor:default}.tbl thead th .car{color:var(--ink-2);margin-left:4px}.tbl thead th.r,.tbl td.r{text-align:right}.tbl thead th.c,.tbl td.c{text-align:center}.tbl tbody tr{border-bottom:1px solid var(--line-soft)}.tbl tbody tr:hover{background:var(--panel)}.tbl tbody tr.flagged{background:#ff4d5e0b}.tbl tbody tr.flagged:hover{background:#ff4d5e13}.tbl td{padding:0 12px;height:40px;font-size:12.5px;color:var(--ink-2);white-space:nowrap}.tbl td.nm{color:var(--ink);font-weight:600}.tbl td.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:12px;color:var(--ink-2)}.tbl td.dim{color:var(--ink-4)}.ath{display:flex;align-items:center;gap:9px}.ath .ini{width:24px;height:24px;border-radius:6px;background:var(--raise);border:1px solid var(--line-2);display:grid;place-items:center;font-size:9.5px;font-weight:700;color:var(--ink-3);flex-shrink:0}.pos{font-family:var(--mono);font-size:10px;color:var(--ink-4);border:1px solid var(--line-2);border-radius:4px;padding:1px 5px;margin-left:2px}.goal{display:inline-flex;align-items:center;gap:5px;font-size:12px}.goal .g-ar{font-family:var(--mono);font-size:11px}.goal.gain .g-ar{color:var(--cyan)}.goal.loss .g-ar{color:var(--amber)}.goal.maint .g-ar{color:var(--ink-4)}.goal .g-t{color:var(--ink-3);font-family:var(--mono);font-size:11.5px}.fc{display:flex;align-items:center;gap:8px}.fc .bar{width:44px;height:5px;border-radius:3px;background:var(--raise);overflow:hidden;flex-shrink:0}.fc .bar i{display:block;height:100%;border-radius:3px}.fc.hi .bar i{background:var(--holo)}.fc.mid .bar i{background:var(--amber)}.fc.lo .bar i{background:var(--red)}.fc .v{font-family:var(--mono);font-size:12px;font-variant-numeric:tabular-nums;width:22px}.fc.hi .v{color:var(--ink)}.fc.mid .v{color:var(--amber)}.fc.lo .v{color:var(--red)}.fc .v.na{color:var(--ink-5)}.flag{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;padding:2px 6px;border-radius:4px}.flag.under{color:var(--red);background:#ff4d5e1f}.flag.nolog{color:var(--amber);background:#ffb13d1f}.flag.wt{color:var(--violet);background:#9b5cff24}.flag.ok{color:var(--ink-5)}.dhead{padding:16px 20px;border-bottom:1px solid var(--line);background:var(--surface);display:flex;align-items:center;gap:18px}.dhead .big-ini{width:52px;height:52px;border-radius:12px;background:var(--raise);border:1px solid var(--line-2);display:grid;place-items:center;font-size:17px;font-weight:800;color:var(--ink-2);flex-shrink:0}.dhead h1{font-size:23px;font-weight:700;letter-spacing:-.015em;display:flex;align-items:center;gap:10px}.dhead .meta{display:flex;gap:0;margin-top:8px}.dhead .meta .m{padding-right:16px;margin-right:16px;border-right:1px solid var(--line-2)}.dhead .meta .m:last-child{border-right:none}.dhead .meta .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4)}.dhead .meta .v{font-family:var(--mono);font-size:13.5px;color:var(--ink);margin-top:3px}.dhead .meta .v small{font-size:10.5px;color:var(--ink-4);margin-left:2px}.dhead .actions{margin-left:auto;display:flex;align-items:center;gap:8px}.cols{display:flex;gap:0;flex:1;min-height:0}.col-l{flex:1;min-width:0;padding:16px 20px;display:flex;flex-direction:column;gap:14px}.col-r{width:392px;flex-shrink:0;border-left:1px solid var(--line);padding:16px 18px;display:flex;flex-direction:column;gap:14px;background:var(--surface)}.card{border:1px solid var(--line);border-radius:10px;background:var(--panel);overflow:hidden}.card-h{display:flex;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid var(--line)}.card-h .t{font-size:13px;font-weight:600;color:var(--ink)}.card-h .s{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4)}.card-h .right{margin-left:auto;display:flex;align-items:center;gap:6px}.card-b{padding:14px}.calc{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field{display:flex;flex-direction:column;gap:5px}.field .lb{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4)}.sel{display:flex;align-items:center;height:30px;padding:0 9px;border:1px solid var(--line-2);border-radius:6px;background:var(--panel-2);font-size:12.5px;color:var(--ink)}.sel svg{width:11px;height:11px;margin-left:auto;color:var(--ink-4)}.inp{height:30px;padding:0 9px;border:1px solid var(--line-2);border-radius:6px;background:var(--panel-2);font-family:var(--mono);font-size:12.5px;color:var(--ink);display:flex;align-items:center}.inp .u{margin-left:auto;font-size:10.5px;color:var(--ink-4)}.calc-out{margin-top:12px;border-top:1px solid var(--line);padding-top:12px}.eqn{font-family:var(--mono);font-size:11px;line-height:1.75;color:var(--ink-4)}.eqn b{color:var(--ink-2);font-weight:500}.eqn .hl{color:var(--ink)}.tot-row{display:flex;align-items:baseline;gap:10px;margin-top:10px}.tot-row .big{font-family:var(--mono);font-size:30px;font-weight:600;color:var(--ink);letter-spacing:-.01em}.tot-row .u2{font-family:var(--mono);font-size:11px;color:var(--ink-4)}.tot-row .delta{margin-left:auto;font-family:var(--mono);font-size:11.5px;color:var(--cyan)}.macros{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mac{border:1px solid var(--line);border-radius:8px;padding:10px 11px;background:var(--panel-2)}.mac .k{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4)}.mac .v{font-family:var(--mono);font-size:19px;color:var(--ink);margin-top:5px}.mac .v small{font-size:11px;color:var(--ink-4)}.mac .pct{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);margin-top:2px}.mac .track{height:3px;border-radius:2px;background:var(--raise);margin-top:8px;overflow:hidden}.mac .track i{display:block;height:100%;background:var(--ink-4)}.slot{border-bottom:1px solid var(--line-soft)}.slot:last-child{border-bottom:none}.slot-h{display:flex;align-items:center;gap:9px;padding:8px 14px;background:var(--panel-2)}.slot-h .tm2{font-family:var(--mono);font-size:10.5px;color:var(--ink-4);width:52px}.slot-h .nm2{font-size:12.5px;font-weight:600;color:var(--ink)}.slot-h .kc{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--ink-3)}.food{display:flex;align-items:center;gap:10px;padding:7px 14px;font-size:12.5px}.food:hover{background:var(--panel-2)}.food .fn{color:var(--ink-2);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.food .fn em{font-style:normal;color:var(--ink-4);font-size:11.5px}.food .qty{font-family:var(--mono);font-size:11.5px;color:var(--ink);background:var(--raise);border:1px solid var(--line-2);border-radius:5px;padding:2px 7px;min-width:72px;text-align:right}.food .mc{font-family:var(--mono);font-size:11px;color:var(--ink-4);width:118px;text-align:right}.food .mc b{color:var(--ink-3);font-weight:500}.chart{padding:6px 14px 14px}.chart svg{display:block;width:100%;height:132px;overflow:visible}.chart .lgd{display:flex;gap:14px;margin-top:8px;font-family:var(--mono);font-size:10px;color:var(--ink-4)}.chart .lgd i{display:inline-block;width:14px;height:2px;background:var(--ink-2);margin-right:5px;vertical-align:middle}.chart .lgd i.dash{background:none;border-top:2px dashed var(--ink-5)}.log{display:flex;align-items:center;gap:10px;padding:8px 14px;border-bottom:1px solid var(--line-soft);font-size:12.5px}.log:last-child{border-bottom:none}.log .t{font-family:var(--mono);font-size:10.5px;color:var(--ink-3);width:74px;flex-shrink:0}.log .d{color:var(--ink-2);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.log .k{font-family:var(--mono);font-size:11px;color:var(--ink-4)}.tabs{display:flex;align-items:center;gap:2px;padding:0 20px;border-bottom:1px solid var(--line);background:var(--surface)}.tab{height:38px;padding:0 14px;display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink-3);border-bottom:2px solid transparent;margin-bottom:-1px}.tab.on{color:var(--ink);font-weight:600;border-bottom-color:var(--ink)}.tab .kc2{font-family:var(--mono);font-size:10px;color:var(--ink-3)}.tab.add{color:var(--ink-5);font-size:14px}.tabs .right{margin-left:auto;display:flex;align-items:center;gap:8px;padding:4px 0}.ed-cols{flex:1;display:flex;min-height:0}.ed-main{flex:1;min-width:0;padding:14px 20px;display:flex;flex-direction:column;gap:12px}.ed-rail{width:340px;flex-shrink:0;border-left:1px solid var(--line);background:var(--surface);padding:14px 16px;display:flex;flex-direction:column;gap:12px}.eslot{border:1px solid var(--line);border-radius:9px;background:var(--panel);overflow:hidden}.eslot-h{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line);background:var(--panel-2)}.eslot-h .tm3{font-family:var(--mono);font-size:10.5px;color:var(--ink-4);width:56px}.eslot-h .nm3{font-size:12.5px;font-weight:600}.eslot-h .sum{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--ink-3)}.eslot-h .sum b{color:var(--ink);font-weight:500}.erow{display:grid;grid-template-columns:422px 108px 84px 116px 54px 54px 54px 54px 22px;align-items:center;gap:8px;padding:6px 12px;border-bottom:1px solid var(--line-soft);font-size:12.5px}.erow:last-child{border-bottom:none}.erow:hover{background:var(--panel-2)}.erow.hdr{background:transparent;border-bottom:1px solid var(--line);padding-top:7px;padding-bottom:7px}.erow.hdr span{font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);text-align:right}.erow.hdr span:first-child{text-align:left}.erow .f{color:var(--ink-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.erow .f b{color:var(--ink);font-weight:500}.erow .edit{font-family:var(--mono);font-size:11.5px;color:var(--ink);background:var(--raise);border:1px solid var(--line-2);border-radius:5px;padding:3px 7px;text-align:right}.erow .edit.focus{border-color:var(--cyan);box-shadow:0 0 0 2px #38f5ff1f}.erow .var{display:flex;align-items:center;gap:4px;font-family:var(--mono);font-size:10.5px;color:var(--ink-3);background:var(--raise);border:1px solid var(--line-2);border-radius:5px;padding:3px 6px;white-space:nowrap;overflow:hidden;min-width:0}.erow .var>span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.erow .var svg{width:9px;height:9px;margin-left:auto;color:var(--ink-5);flex-shrink:0}.erow .n2{font-family:var(--mono);font-size:11.5px;color:var(--ink-3);text-align:right;font-variant-numeric:tabular-nums}.erow .x{color:var(--ink-5);text-align:center;font-size:13px}.addrow{padding:7px 12px;font-size:12px;color:var(--ink-3);border-top:1px dashed var(--line-2)}.rail-t{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4)}.ring-row{display:flex;align-items:center;gap:14px;padding:2px 0 6px}.ring-row .kcal{font-family:var(--mono);font-size:32px;color:var(--ink);letter-spacing:-.01em}.ring-row .of{font-family:var(--mono);font-size:11px;color:var(--ink-4);line-height:1.5}.ring-row .of b{color:var(--ink-2);font-weight:500}.ring-row .badge{margin-left:auto;font-family:var(--mono);font-size:10.5px;padding:3px 7px;border-radius:5px;color:var(--cyan);background:#38f5ff1a}.mrow{padding:9px 0;border-bottom:1px solid var(--line-soft)}.mrow:last-child{border-bottom:none}.mrow .top{display:flex;align-items:baseline;gap:8px;font-family:var(--mono);font-size:11.5px}.mrow .top .k{color:var(--ink-2);width:64px}.mrow .top .v{color:var(--ink)}.mrow .top .tg{margin-left:auto;color:var(--ink-4)}.mrow .track2{height:6px;border-radius:3px;background:var(--raise);margin-top:7px;overflow:hidden;position:relative}.mrow .track2 i{display:block;height:100%;border-radius:3px;background:var(--ink-3)}.mrow .track2 .mk{position:absolute;top:-2px;bottom:-2px;width:1px;background:var(--ink-2)}.mrow.over .track2 i{background:var(--amber)}.mrow .note{font-family:var(--mono);font-size:10px;color:var(--ink-3);margin-top:5px}.mrow.over .note{color:var(--amber)}.rail-note{font-size:11.5px;line-height:1.55;color:var(--ink-4);border-top:1px solid var(--line);padding-top:10px}.rail-note b{color:var(--ink-3);font-weight:600}.push{margin-top:auto;display:flex;flex-direction:column;gap:8px}.meta-line{font-family:var(--mono);font-size:10px;color:var(--ink-3);text-align:center}.kv{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;color:var(--ink-4)}.kv b{color:var(--ink-2);font-weight:500}.sec-lbl{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-4);margin-bottom:2px}.frame-tag{position:absolute;top:-30px;left:0;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#5e5c78}.basis{font-family:var(--mono);font-size:10px;color:var(--ink-3);text-align:right;white-space:nowrap}.basis.fx{color:var(--ink-3)}.rail-sel{display:flex;align-items:center;height:32px;padding:0 10px;border:1px solid var(--line-2);border-radius:7px;background:var(--panel-2);font-size:12.5px;color:var(--ink)}.rail-sel .kg{font-family:var(--mono);font-size:11px;color:var(--ink-4);margin-left:6px}.rail-sel svg{width:11px;height:11px;margin-left:auto;color:var(--ink-4);flex-shrink:0}.warn-note{display:flex;gap:8px;align-items:flex-start;font-size:11.5px;line-height:1.5;color:var(--amber);background:#ffb13d14;border:1px solid rgba(255,177,61,.22);border-radius:8px;padding:9px 11px}.warn-note b{font-weight:600}.fit{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10px;letter-spacing:.04em;text-transform:uppercase;padding:2px 7px;border-radius:4px;white-space:nowrap}.fit.ok{color:var(--ink-3);background:var(--raise)}.fit.base{color:var(--cyan);background:#38f5ff1a}.fit.warn{color:var(--amber);background:#ffb13d1f}.fit.block{color:var(--red);background:#ff4d5e1f}.tbl tr.exp>td{padding:0;height:auto;background:var(--panel)}.exp-in{padding:13px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.exp-h{display:flex;align-items:center;gap:10px;margin-bottom:11px}.exp-h .t{font-size:12.5px;font-weight:600;color:var(--ink)}.exp-h .m{font-family:var(--mono);font-size:10.5px;color:var(--ink-4)}.exp-h .right{margin-left:auto;display:flex;gap:7px}.pgrid{display:grid;grid-template-columns:repeat(6,1fr);gap:7px}.pchip{border:1px solid var(--line-2);border-radius:7px;background:var(--panel-2);padding:7px 9px}.pchip .f2{font-size:11px;color:var(--ink-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pchip .q{font-family:var(--mono);font-size:13px;color:var(--ink);margin-top:3px}.pchip .b2{font-family:var(--mono);font-size:9.5px;color:var(--ink-3);margin-top:2px}.pchip.over{border-color:#ffb13d66;background:#ffb13d12}.pchip.over .q{color:var(--amber)}.pchip.fx{border-style:dashed}.rule{display:flex;flex-direction:column;gap:5px;padding:9px 0;border-bottom:1px solid var(--line-soft)}.rule:last-child{border-bottom:none}.rule .rk{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4)}.sum-row{display:flex;align-items:center;justify-content:space-between;padding:7px 0;font-size:12.5px;color:var(--ink-2);border-bottom:1px solid var(--line-soft)}.sum-row:last-child{border-bottom:none}.sum-row .v2{font-family:var(--mono);font-size:13px;color:var(--ink)}.sum-row.w .v2{color:var(--amber)}.sum-row.b .v2{color:var(--red)}#root{min-height:100vh}.app-screen{display:flex;flex-direction:column;height:100vh;width:100%;background:var(--void);overflow:hidden}.app-screen .main,.app-screen .side-list,.app-screen .col-l,.app-screen .col-r,.app-screen .ed-main,.app-screen .ed-rail{overflow-y:auto}.app-screen .cols,.app-screen .ed-cols{overflow:hidden}.tbl tbody tr.click,.tb-nav a{cursor:pointer}.tb-nav a.disabled{opacity:.4;cursor:not-allowed}.side .tm.click,.btn{cursor:pointer}.btn:disabled,.btn.disabled{opacity:.45;cursor:not-allowed}.btn:disabled:hover,.btn.disabled:hover{color:var(--ink-2);border-color:var(--line-2)}.seg button{cursor:pointer}.soon{font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-4);border:1px solid var(--line-2);border-radius:4px;padding:1px 5px;margin-left:6px;white-space:nowrap}.preview-banner{display:flex;align-items:center;gap:9px;padding:8px 20px;flex-shrink:0;background:#ffb13d14;border-bottom:1px solid rgba(255,177,61,.22);font-family:var(--mono);font-size:11px;color:var(--amber)}.preview-banner b{color:var(--ink-2);font-weight:600}.preview-banner .grow{margin-left:auto}.preview-banner a{color:var(--cyan)}.login-wrap{min-height:100vh;display:grid;place-items:center;background:var(--void);padding:24px}.login-card{width:364px;border:1px solid var(--line);border-radius:14px;background:var(--panel);padding:28px 26px}.login-brand{font-weight:800;letter-spacing:.22em;font-size:16px;color:var(--ink)}.login-tag{font-size:12px;color:var(--ink-3);margin-top:6px}.login-card h1{font-size:19px;font-weight:700;margin:24px 0 4px;letter-spacing:-.01em}.login-lead{font-size:12.5px;color:var(--ink-3);margin-bottom:20px;line-height:1.5}.login-field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.login-field label{font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4)}.login-field input{height:38px;padding:0 11px;border:1px solid var(--line-2);border-radius:8px;background:var(--panel-2);font-size:13.5px;color:var(--ink);outline:none}.login-field input:focus{border-color:var(--cyan);box-shadow:0 0 0 2px #38f5ff1f}.login-btn{width:100%;height:40px;border:none;border-radius:8px;background:var(--holo);color:#0a0a12;font-weight:700;font-size:13.5px;letter-spacing:.01em;margin-top:6px;cursor:pointer}.login-btn:disabled{opacity:.6;cursor:default}.login-err{font-size:12px;color:var(--red);background:#ff4d5e1a;border:1px solid rgba(255,77,94,.25);border-radius:8px;padding:9px 11px;margin-bottom:14px;line-height:1.45}.login-foot{font-size:11.5px;color:var(--ink-4);margin-top:16px;line-height:1.5}.login-foot b{color:var(--ink-3);font-weight:600}.state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:72px 24px;text-align:center;flex:1}.state .spin{width:26px;height:26px;border-radius:50%;border:2px solid var(--line-2);border-top-color:var(--cyan);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.state .st-title{font-size:14px;font-weight:600;color:var(--ink-2)}.state .st-sub{font-size:12.5px;color:var(--ink-4);max-width:46ch;line-height:1.55}.state.err .st-title{color:var(--red)}.state-full{min-height:100vh}.doc-page{height:100vh;overflow-y:auto;background:#0a0a10;display:flex;justify-content:center;padding:56px 32px 90px}.sk{display:inline-block;height:11px;border-radius:4px;background:linear-gradient(90deg,var(--raise),var(--line-2),var(--raise));background-size:200% 100%;animation:sh 1.2s ease-in-out infinite}@keyframes sh{0%{background-position:200% 0}to{background-position:-200% 0}}
