:root{--bg: #FCFBF8;--ink: #23221E;--chart-ink: #26241F;--mut: #8B887F;--faint: #B3B0A5;--ax: #ACA89D;--line: #E4E1D8;--field: #CFCBC0;--red: #B14E43;--red-bar: #BC5148;--grn: #5F8A68;--grn-bar: #6E9271;--dim-ink: #C9C5B9;--dim-sub: #D8D4C8;--icon: #4E4D49;--icon-soft: #84837F;--font: "Helvetica Neue", Helvetica, Arial, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}.wrap{max-width:1240px;margin:0 auto;padding:52px 56px 64px}.pos{color:var(--ink)}.neg{color:var(--red)}.hd{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.hd .t{font-size:17px;font-weight:700;letter-spacing:.02em}.hd .t i{font-style:normal;color:var(--red)}.hd .r{font-size:12px;color:var(--mut);text-align:right;line-height:1.7}.hd-links{display:flex;gap:8px;align-items:baseline;justify-content:flex-end}.hd-links .dot-sep{color:var(--faint)}.tbtn{background:none;border:0;padding:0;font:inherit;font-size:12.5px;color:var(--ink);cursor:pointer;letter-spacing:.02em}.tbtn.strong{font-weight:700}.tbtn.danger{color:var(--red);font-weight:600}.tbtn:disabled{opacity:.45;cursor:default}.tbtn:hover:not(:disabled){text-decoration:underline;text-underline-offset:4px}.msg{border-top:1px solid var(--ink);padding:10px 2px;margin-top:18px;font-size:13px;line-height:1.6;word-break:break-all}.hero{display:grid;grid-template-columns:1.25fr .75fr;gap:30px;margin-top:34px;align-items:end}.lab{font-size:10.5px;font-weight:500;letter-spacing:.24em;color:var(--mut)}.lab-row{display:flex;align-items:baseline;gap:20px;flex-wrap:wrap}.big{font-size:clamp(54px,9vw,96px);font-weight:300;line-height:.98;letter-spacing:-.02em;margin-top:10px;white-space:nowrap}.big sup{font-size:.35em;letter-spacing:0;vertical-align:1.45em;color:var(--mut);font-weight:300}.mstack{border-left:1px solid var(--line);padding-left:18px}.mstack .row{margin-bottom:16px}.mstack .row.last{margin-bottom:0}.mstack .v{font-size:27px;font-weight:300;letter-spacing:-.01em;margin-top:4px}.seg{display:inline-flex}.seg button{background:none;border:0;border-bottom:1px solid transparent;padding:0 0 3px;font:inherit;font-size:12px;font-weight:500;color:var(--faint);cursor:pointer;margin-left:22px;letter-spacing:.08em}.seg button:first-child{margin-left:0}.seg button.on{color:var(--ink);border-bottom-color:var(--ink)}.mini-seg button{font-size:11.5px;margin-left:14px}.chartbox{margin-top:42px;border-top:1px solid var(--line);padding-top:20px}.chart-hd{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.chart-hd .t{font-size:11px;font-weight:500;letter-spacing:.24em;color:var(--mut)}canvas.chart{display:block;width:100%;height:330px;margin-top:14px}.sumstrip{display:grid;border-top:1px solid var(--ink);padding-top:26px;margin-top:34px}.sumstrip .cell{padding:0 26px;border-left:1px solid var(--line);min-width:0}.sumstrip .cell:first-child{border-left:0;padding-left:0}.sumstrip .clab{display:block;font-size:10px;font-weight:500;letter-spacing:.24em;color:var(--mut)}.sumstrip b{display:block;font-size:31px;font-weight:300;color:var(--ink);margin-top:9px;letter-spacing:-.01em;white-space:nowrap}.sumstrip b.neg{color:var(--red)}.sec{margin-top:44px}.sec-hd{display:flex;justify-content:space-between;align-items:baseline}.sec-hd .t{font-size:11px;font-weight:500;letter-spacing:.24em;color:var(--mut)}.sec-hd .add{font-size:12.5px;font-weight:600;color:var(--mut);text-decoration:none;cursor:pointer}.sec-hd .add:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:8px}.card{border-top:1px solid var(--line);padding:24px 0 6px;position:relative;background:none}.card .no{display:none}.kind-lab{font-size:10px;font-weight:500;letter-spacing:.24em;color:var(--mut)}.hname{font-size:16.5px;font-weight:600;margin-top:7px;max-width:85%;line-height:1.35}.st{display:inline-block;font-size:11px;font-weight:500;letter-spacing:.14em;margin-top:8px;padding:0;background:none;color:var(--mut)}.st.red{background:none;color:var(--red)}.val{font-size:38px;font-weight:300;letter-spacing:-.02em;margin-top:14px;white-space:nowrap}.pnl{font-size:15px;font-weight:500;margin-top:3px}.pnl.pos{color:var(--ink)}.pnl.neg{color:var(--red)}.pnl.flat{color:var(--faint);font-weight:500}.rows{margin-top:14px}.rows .kv{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:13px;color:var(--mut);border-top:1px solid var(--line)}.rows .kv>span:last-child{color:var(--ink);font-weight:500;text-align:right}.mini{font-size:12px;color:var(--faint);padding:6px 0;border-top:1px solid var(--line);letter-spacing:.02em}.hcard.dim .val,.hcard.dim .hname{color:var(--dim-ink)}.hcard.dim .kind-lab,.hcard.dim .st,.hcard.dim .pnl{color:var(--dim-sub)}.hcard.dim .card-hd .kind-lab .kic,.hcard.dim .badge{color:var(--dim-ink)}.hcard.dim .badge{border-color:var(--dim-sub)}.hcard.dim .rows .kv>span:first-child{color:var(--dim-sub)}.hcard.dim .rows .kv>span:last-child{color:var(--dim-ink)}.hcard.dim .card-actions .tbtn{color:var(--dim-ink)}.rows .kv.dim>span:first-child{color:var(--dim-sub)}.rows .kv.dim>span:last-child{color:var(--dim-ink)}.group-hd{align-items:center}.group-t{display:inline-flex;align-items:center;gap:8px}.group-t .kic{color:var(--icon)}.group-amt{font-size:15px;font-weight:500;color:var(--ink);white-space:nowrap}.group-meta{display:flex;justify-content:space-between;align-items:flex-start;gap:10px 18px;flex-wrap:wrap;margin-top:8px}.group-meta .gm-lab{font-size:12px;color:var(--mut);letter-spacing:.04em;padding-top:3px}.group-meta .conn-actions{margin-top:0}.group-meta .msg{flex-basis:100%;margin-top:6px}.tag{display:inline-block;font-size:10.5px;font-weight:500;border:1px solid var(--field);padding:0 5px;margin-left:6px;color:var(--mut)}.tok-chain{color:var(--faint);font-size:11px}.stale-badge{color:var(--red);font-weight:600;margin-left:6px;font-size:11px}.card-actions{display:flex;gap:20px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.card-actions .tbtn{font-size:12.5px;font-weight:500}.card-actions .tbtn.strong{font-weight:600}.panel{border-top:1px solid var(--line);padding:30px 0 8px;margin-top:16px}.form-row{display:flex;align-items:center;gap:10px;margin-top:12px;flex-wrap:wrap}.form-row label{font-size:12px;font-weight:500;letter-spacing:.14em;color:var(--mut);min-width:118px}.form-row input,.form-row select{flex:1;min-width:120px;border:0;border-bottom:1px solid var(--field);border-radius:0;padding:8px 2px;font:inherit;font-size:14px;background:transparent;color:var(--ink)}.form-row input:focus,.form-row select:focus{outline:none;border-bottom-color:var(--ink)}.btn{border:1px solid var(--ink);background:transparent;color:var(--ink);border-radius:0;font:inherit;font-size:13px;font-weight:600;letter-spacing:.06em;padding:9px 20px;cursor:pointer}.btn:hover:not(:disabled){background:var(--ink);color:var(--bg)}.btn.ghost{border-color:var(--line);color:var(--mut)}.btn.ghost:hover:not(:disabled){background:transparent;color:var(--ink);border-color:var(--ink)}.btn.danger{background:transparent;color:var(--red);border-color:var(--red)}.btn.danger:hover:not(:disabled){background:var(--red);color:var(--bg)}.btn:disabled{opacity:.45;cursor:default}.editbox{margin-top:14px;border-top:1px solid var(--line);padding-top:6px}.sub-form{border-left:1px solid var(--line);padding-left:14px;margin:8px 0 4px}.radio-row,.toggle-row{display:flex;gap:18px;align-items:center;margin-top:14px;font-size:13.5px;flex-wrap:wrap}.radio-row label,.toggle-row label{display:inline-flex;align-items:center;gap:6px;cursor:pointer}input[type=checkbox],input[type=radio]{accent-color:var(--ink);width:15px;height:15px}.info-ico{width:17px;height:17px;border:1px solid var(--field);border-radius:50%;background:none;color:var(--mut);font-size:10.5px;font-weight:500;line-height:1;cursor:pointer;padding:0;margin-left:2px;font-style:italic}.info-pop{display:block;margin-top:10px;font-size:12.5px;line-height:1.6;border:1px solid var(--line);padding:10px 12px;background:none;max-width:360px}.lookup-box{display:flex;gap:8px 18px;flex-wrap:wrap;align-items:baseline;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 2px;margin-top:14px;font-size:13.5px}.typegrid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.typebtn{border:1px solid var(--line);background:none;color:var(--ink);border-radius:0;padding:20px 10px;font:inherit;font-size:15px;font-weight:600;cursor:pointer}.typebtn:hover{border-color:var(--ink)}.dim-seg{margin-bottom:16px}.allocbar{display:flex;height:24px;overflow:hidden}.allocseg{height:100%;min-width:2px}.alloc-dot{display:inline-block;width:8px;height:8px;margin-right:8px}.health{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}.health-hd{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.health-score{display:flex;align-items:center;gap:14px}.score-num{font-size:40px;font-weight:300;letter-spacing:-.02em;line-height:1}.findings{margin-top:12px}.finding{display:flex;gap:10px;align-items:baseline;padding:7px 0;border-top:1px solid var(--line);font-size:13.5px}.find-mark{flex:none;width:8px;height:8px;position:relative;top:1px}.hm-scroll{padding-bottom:6px}.hm{display:flex;gap:3px;width:100%;max-width:647px;margin-inline:auto}.hm-col{display:flex;flex-direction:column;gap:3px;flex:1 1 0;min-width:0}.hm-cell{width:100%;aspect-ratio:1;cursor:pointer}.hm-cell.sel{box-shadow:inset 0 0 0 1.5px var(--chart-ink)}.meta-strip{display:flex;gap:0;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:20px;padding-top:16px}.mini-stat{padding:0 18px 2px 0;margin-right:18px}.mini-stat .clab{display:block;font-size:10px;font-weight:500;letter-spacing:.2em;color:var(--mut)}.mini-stat b{display:block;font-size:16.5px;font-weight:500;margin-top:5px;white-space:nowrap}.mini-stat b.neg{color:var(--red)}.goalbar{height:2px;background:var(--line);margin-top:14px}.goalbar-fill{height:100%;background:var(--ink)}canvas.chart.wf{height:235px}canvas.chart.bench{height:265px}canvas.chart.dd{height:175px}.tm-wrap{position:relative;height:252px;margin-top:12px;overflow:hidden}.tm-cell{position:absolute;border:2px solid var(--bg);padding:7px 9px;overflow:hidden}.tm-name{font-size:12px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tm-pct{font-size:18px;font-weight:500;letter-spacing:-.01em;margin-top:2px}.scatter-svg{display:block;width:100%;height:auto;margin-top:6px}.an-kpi{margin-top:30px}.an-kpi b{font-size:36px}.an-kpi .cell-sub{display:block;font-size:11px;color:var(--faint);margin-top:5px;white-space:nowrap}.an-grid{display:grid;grid-template-columns:repeat(12,1fr);column-gap:48px;row-gap:28px;margin-top:36px;align-items:stretch}.an-grid .panel{margin-top:0}.an-main{grid-column:1 / 9;display:flex;flex-direction:column;gap:28px;min-width:0}.an-side{grid-column:9 / 13;min-width:0}.an-scatter{grid-column:1 / 6;min-width:0}.an-cal{grid-column:6 / 13;min-width:0}.an-full{grid-column:1 / -1;min-width:0}.an-grid canvas.chart.bench{height:340px}.an-grid canvas.chart.dd{height:160px}.an-wf-panel{height:100%;display:flex;flex-direction:column}.wf-scroll{flex:1 1 auto;overflow-x:auto;overflow-y:hidden;display:flex}.wf-scroll canvas.chart.wf{flex:0 0 auto;align-self:stretch;height:auto;min-height:300px}@media(max-width:1023px){.an-grid{column-gap:0}.an-main,.an-side,.an-scatter,.an-cal,.an-full{grid-column:1 / -1}.an-grid canvas.chart.bench{height:300px}.an-grid canvas.chart.dd{height:160px}.an-wf-panel{height:auto}.wf-scroll{display:block}.wf-scroll canvas.chart.wf{height:380px;min-height:0;width:100%}}@media(max-width:767px){.an-kpi .cell:last-child{grid-column:1 / -1}.an-grid canvas.chart.bench{aspect-ratio:16 / 10;height:auto}.an-grid canvas.chart.dd{aspect-ratio:16 / 7;height:auto}.wf-scroll canvas.chart.wf{aspect-ratio:4 / 3;height:auto}}.scope-seg{display:flex;gap:26px;margin-top:32px}.scope-seg button{padding:0 0 5px;background:none;border:0;border-bottom:1px solid transparent;font:inherit;font-size:13.5px;font-weight:500;color:var(--faint);cursor:pointer;letter-spacing:.1em}.scope-seg button.on{color:var(--ink);border-bottom-color:var(--ink)}.home-tm .tm-wrap{margin-top:16px}.catlist{margin-top:12px}.catrow{display:flex;align-items:center;gap:10px;width:100%;padding:16px 2px;background:none;border:0;border-bottom:1px solid var(--line);font:inherit;color:var(--ink);text-align:left;cursor:pointer}.catlist .catrow:first-child{border-top:1px solid var(--ink);margin-top:16px}.catrow:hover .cat-name{text-decoration:underline;text-underline-offset:4px}.cat-l{display:flex;flex-direction:column;min-width:0;flex:1}.cat-name{font-size:17px;font-weight:600;letter-spacing:.02em}.cat-sub{font-size:12px;color:var(--mut);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cat-r{display:flex;flex-direction:column;align-items:flex-end;flex:none}.cat-amt{font-size:17px;font-weight:500;letter-spacing:-.01em;white-space:nowrap}.cat-pct{font-size:12px;color:var(--faint);margin-top:3px}.cat-chev{color:var(--faint);font-size:18px;font-weight:400;flex:none;line-height:1}.catrow.dim .cat-name,.catrow.dim .cat-amt{color:var(--dim-ink)}.catrow.dim .cat-sub,.catrow.dim .cat-pct{color:var(--dim-sub)}.backrow{margin-top:38px}.backrow .tbtn{font-size:13px;color:var(--mut);font-weight:500}.cat-head{margin-top:20px}.big.mid{font-size:clamp(42px,7vw,64px)}.cat-pnl{font-size:16px;font-weight:500;margin-top:8px}.cat-pnl.pos{color:var(--ink)}.cat-pnl.neg{color:var(--red)}.cat-stats{margin-top:22px}.navline-box{margin-top:24px}.navline-svg{display:block;width:100%;height:auto}.sec.first{margin-top:26px}.sec.first>.sec-hd .t{font-size:21px;font-weight:600;letter-spacing:.04em;color:var(--ink)}.empty-cat{text-align:left}.add-search{margin-top:26px}.add-search input{width:100%;border:0;border-bottom:1px solid var(--field);border-radius:0;background:transparent;padding:10px 2px;font:inherit;font-size:16px;color:var(--ink)}.add-search input:focus{outline:none;border-bottom-color:var(--ink)}.add-search input::placeholder{color:var(--faint)}.sresults{margin-top:4px}.srow{display:flex;align-items:baseline;gap:12px;width:100%;padding:13px 2px;background:none;border:0;border-bottom:1px solid var(--line);font:inherit;color:var(--ink);text-align:left;cursor:pointer}.srow:hover .srow-name{text-decoration:underline;text-underline-offset:4px}.srow-name{font-size:15.5px;font-weight:600;white-space:nowrap}.srow-code{font-size:12.5px;color:var(--mut);white-space:nowrap}.srow-tag{margin-left:auto;flex:none;font-size:10.5px;font-weight:500;letter-spacing:.14em;color:var(--mut);border:1px solid var(--field);padding:1px 6px;white-space:nowrap}.search-note{font-size:13px;color:var(--faint);padding:14px 2px}.recents{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.rchip{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:none;padding:8px 14px;font:inherit;font-size:13px;color:var(--ink);cursor:pointer}.rchip:hover{border-color:var(--ink)}.rchip .rcode{color:var(--mut);margin-left:0;font-size:12px}.add-cards{margin-top:16px}.typebtn .tsub{display:block;font-size:11.5px;font-weight:500;color:var(--mut);margin-top:6px;letter-spacing:.04em}.add-entry{width:100%;border:1px solid var(--line);background:none;padding:20px 10px;font:inherit;font-size:15px;font-weight:600;color:var(--ink);cursor:pointer}.add-entry:hover{border-color:var(--ink)}.welcome{margin-top:14vh;max-width:600px}.welcome-title{font-size:clamp(34px,6vw,52px);font-weight:300;letter-spacing:-.01em;line-height:1.18;margin:16px 0 32px}.kic{display:inline-flex;flex:none;align-items:center;justify-content:center;line-height:0}.kic svg{display:block}.add-cards .typebtn{display:flex;align-items:center;gap:14px;text-align:left;padding:20px 18px}.add-cards .kic{color:var(--icon)}.type-txt{min-width:0}.rchip .kic{color:var(--icon-soft)}.catrow .kic{color:var(--icon)}.catrow.dim .kic{color:var(--dim-ink)}.cat-head-row{display:flex;align-items:flex-start;gap:16px}.cat-head-ic{color:var(--icon);margin-top:3px}.card-hd{display:flex;align-items:center;gap:12px}.card-hd-main{flex:1;min-width:0}.card-hd .kind-lab{display:flex;align-items:center;gap:6px}.card-hd .kind-lab .kic{color:var(--icon-soft)}.card-hd .hname{margin-top:5px}.badge{flex:none;width:36px;height:36px;border:1px solid var(--field);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:600;color:var(--ink);letter-spacing:.02em}.badge.two{font-size:11px}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card{width:100%;max-width:360px}.login-card h1{font-size:26px;font-weight:600;letter-spacing:.04em;margin-bottom:24px}.login-card h1 i{font-style:normal;color:var(--red)}.login-card .form-row label{display:none}.login-card .form-row input{min-width:0}.login-card .btn{width:100%;padding:11px 18px}.auth-switch{margin-top:18px;text-align:center}.auth-switch .tbtn{font-size:13px;color:var(--mut)}.form-row textarea{flex:1;min-width:220px;background:transparent;border:0;border-bottom:1px solid var(--field);color:var(--ink);font:inherit;font-size:13.5px;padding:6px 2px;resize:vertical}.form-row textarea:focus{outline:none;border-bottom-color:var(--ink)}.conn-list{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:8px}.conn-card{border-top:1px solid var(--line);padding:20px 0 4px;min-width:0}.conn-hd{display:flex;align-items:center;gap:9px}.conn-hd .kic{color:var(--icon)}.conn-name{font-size:15.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conn-status{margin-left:auto;font-size:11px;font-weight:500;letter-spacing:.14em;color:var(--mut);white-space:nowrap}.conn-status.err{color:var(--red)}.conn-actions{display:flex;gap:18px;margin-top:12px;flex-wrap:wrap}@media(max-width:820px){.wrap{padding:30px 20px 44px}.hero{grid-template-columns:1fr;gap:22px;margin-top:26px}.grid{grid-template-columns:1fr;gap:28px}canvas.chart{height:250px}canvas.chart.wf{height:210px}canvas.chart.bench{height:230px}canvas.chart.dd{height:150px}.tm-wrap{height:216px}.sumstrip{grid-template-columns:repeat(2,1fr)!important;padding-top:6px}.sumstrip .cell{border-left:0;padding:14px 16px 14px 0;border-top:1px solid var(--line)}.sumstrip .cell:nth-child(-n+2){border-top:0}.sumstrip b{font-size:26px}.an-kpi b{font-size:29px}.typegrid{grid-template-columns:repeat(2,1fr)}.conn-list{grid-template-columns:1fr;gap:28px}.val{font-size:34px}.form-row label{min-width:100%}.panel{padding:26px 0 6px}}.coverage-note{margin:4px 2px 0}
