:root{color:#1d2626;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f6f8f7;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-shell{color:#1d2626;background:#f6f8f7;min-height:100vh}.topbar{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fafcfbeb;border-bottom:1px solid #d9e2df;grid-template-columns:minmax(180px,1fr) auto minmax(210px,1fr);align-items:center;gap:18px;min-height:64px;padding:0 24px;display:grid;position:sticky;top:0}.brand-lockup,.top-actions,.panel-title,.mini-title,.preset-strip,.utility-grid button,.chart-title,.legend,.comparison-header,.comparison-deltas{align-items:center;display:flex}.brand-lockup{gap:10px;font-size:.9rem;font-weight:700}.brand-mark{color:#192827;letter-spacing:.04em;background:#fff;border:1px solid #192827;border-radius:6px;place-items:center;width:34px;height:34px;font-size:.72rem;display:grid}.topbar nav{background:#fff;border:1px solid #d9e2df;border-radius:8px;gap:6px;padding:4px;display:flex}.topbar nav a{color:#526462;border-radius:6px;padding:8px 12px;font-size:.82rem;font-weight:700;text-decoration:none}.topbar nav a:hover{color:#1d2626;background:#edf3f1}.top-actions{justify-content:flex-end;gap:10px}.status{color:#526462;text-align:center;background:#fff;border:1px solid #d9e2df;border-radius:6px;min-width:112px;padding:7px 10px;font-size:.78rem;font-weight:700}.icon-button{color:#24413e;cursor:pointer;background:#fff;border:1px solid #cddbd7;border-radius:7px;place-items:center;width:36px;height:36px;display:grid}.icon-button:hover,.utility-grid button:hover,.preset-chip:hover{background:#f3faf8;border-color:#9fc1b9}.workspace{grid-template-columns:minmax(280px,340px) minmax(500px,1fr) minmax(280px,340px);gap:18px;padding:18px;display:grid}.panel,.comparison-band{background:#fff;border:1px solid #d9e2df;border-radius:8px;box-shadow:0 14px 34px #2538330d}.panel{min-width:0;padding:18px}.panel-title{color:#1f4d47;gap:10px;margin-bottom:16px}.panel-title h1,.panel-title h2,.canvas-header h2,.comparison-header h2{color:#172322;letter-spacing:0;margin:0;font-size:1.1rem;line-height:1.15}.panel-title p,.canvas-header p,.comparison-header p{color:#6b7977;margin:4px 0 0;font-size:.78rem;line-height:1.35}.preset-strip{flex-wrap:wrap;gap:8px;margin-bottom:18px}.preset-chip,.utility-grid button{color:#2f4643;min-height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d6e0dd;border-radius:7px;gap:7px;font-size:.8rem;font-weight:800}.preset-chip{padding:0 12px}.preset-chip.active{color:#14574d;background:#e7f4f1;border-color:#1f7b6c}.sliders{gap:15px;display:grid}.slider-row{gap:7px;display:grid}.slider-header{color:#223331;justify-content:space-between;align-items:baseline;gap:12px;font-size:.87rem;font-weight:800;display:flex}.slider-header strong{color:#1f4d47;text-align:right;background:#f7faf9;border:1px solid #d9e2df;border-radius:6px;min-width:40px;padding:3px 7px;font-size:.78rem}.slider-row input{appearance:none;cursor:pointer;background:linear-gradient(90deg,currentColor,#e7ecea);border-radius:999px;width:100%;height:8px}.slider-row input::-webkit-slider-thumb{appearance:none;background:#fff;border:2px solid;border-radius:50%;width:18px;height:18px;box-shadow:0 2px 8px #2233312e}.slider-row input::-moz-range-thumb{background:#fff;border:2px solid;border-radius:50%;width:18px;height:18px;box-shadow:0 2px 8px #2233312e}.slider-row small{color:#778784;font-size:.74rem;line-height:1.3}.utility-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px;display:grid}.utility-grid button{justify-content:center;padding:0 10px}.main-canvas{gap:16px;display:grid}.canvas-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.threshold-badge{white-space:nowrap;color:#12614f;background:#ebf7f3;border:1px solid #b9d6ce;border-radius:6px;padding:8px 10px;font-size:.78rem;font-weight:900}.canvas-grid{grid-template-columns:minmax(330px,1.15fr) minmax(260px,.85fr);gap:16px;min-height:390px;display:grid}.ladder-wrap,.energy-curve,.chart-panel,.metric-card,.roby-panel,.why-panel,.comparison-summary,.waterfall,.contribution-table{background:#fbfdfc;border:1px solid #e0e8e5;border-radius:8px}.ladder-wrap{--axis-left:122px;--marker-start:22px;min-height:390px;padding:14px 8px 14px 12px;position:relative;overflow:hidden}.ladder-track{height:100%;min-height:360px;margin-left:var(--axis-left);border-left:3px solid #213330;position:relative}.ladder-track>span{background:#c8d7d3;width:30px;height:1px;position:absolute;left:-16px}.anchor-row,.component-marker{position:absolute;transform:translateY(-50%)}.anchor-row{left:calc(var(--axis-left) * -1);width:calc(var(--axis-left) - 12px);color:#687976;pointer-events:none;z-index:1;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:5px;font-size:.68rem;line-height:1.05;display:grid}.anchor-tick{z-index:1;background:#213330;width:24px;height:2px;position:absolute;left:-28px;transform:translateY(-50%)}.anchor-row span{text-align:right;font-variant-numeric:tabular-nums}.anchor-row strong{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.component-marker{left:var(--marker-start);min-height:26px;max-width:calc(100% - var(--marker-start) - 8px);color:#243b38;z-index:2;background:#fff;border:1px solid;border-radius:999px;align-items:center;gap:7px;padding:4px 7px;font-size:.7rem;font-weight:800;display:flex;box-shadow:0 4px 12px #20302d14}.component-marker b{border-radius:50%;flex:none;width:8px;height:8px}.component-marker span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.energy-curve{grid-template-rows:auto 1fr auto;min-height:360px;padding:14px;display:grid}.mini-title{color:#24413e;gap:8px;font-size:.82rem;font-weight:900}.energy-curve svg,.chart-panel svg{width:100%;height:100%;overflow:visible}.zero-line{stroke:#dce5e2;stroke-dasharray:5 5}.energy-line{fill:none;stroke:#16816f;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.energy-curve circle{fill:#fff;stroke:#16816f;stroke-width:3px}.curve-labels{color:#6b7977;text-align:center;grid-template-columns:repeat(4,1fr);gap:6px;font-size:.68rem;font-weight:800;display:grid}.chart-panel{min-height:260px;padding:14px}.chart-title{color:#526462;justify-content:space-between;gap:12px;margin-bottom:10px;font-size:.8rem;font-weight:800}.chart-title strong{color:#152b28}.threshold-line{stroke:#56a66a;stroke-width:2px;stroke-dasharray:7 7}.motivation-line,.strain-line{fill:none;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.motivation-line{stroke:#148a76}.strain-line{stroke:#ef6f61}.legend{color:#637572;justify-content:center;gap:14px;font-size:.74rem;font-weight:800}.dot{border-radius:50%;width:9px;height:9px}.dot.teal{background:#148a76}.dot.coral{background:#ef6f61}.dash{background:repeating-linear-gradient(90deg,#56a66a 0 5px,#0000 5px 8px);width:18px;height:2px}.metric-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.metric-card{min-height:78px;padding:12px}.metric-card span{color:#667875;font-size:.72rem;font-weight:900;display:block}.metric-card strong{color:#182725;margin-top:8px;font-size:1.55rem;line-height:1;display:block}.metric-card.teal{background:#eff9f6;border-color:#b9dcd4}.metric-card.coral{background:#fff4f2;border-color:#f0c8c0}.metric-card.amber{background:#fff8e8;border-color:#ebd7ae}.metric-card.graphite{background:#f7faf9;border-color:#d6dfdc}.balance-bars{gap:10px;margin:16px 0;display:grid}.level-bar{color:#62736f;grid-template-columns:96px 1fr 44px;align-items:center;gap:9px;font-size:.74rem;font-weight:800;display:grid}.level-bar>div{background:#edf2f0;border-radius:999px;height:10px;overflow:hidden}.level-bar i{border-radius:inherit;background:linear-gradient(90deg,#ef6f61,#e5b861,#148a76);height:100%;display:block}.level-bar strong{color:#213330;text-align:right}.roby-panel,.why-panel{padding:14px}.roby-panel{background:#f6fbfa;margin-bottom:12px}.roby-panel p,.why-panel p{color:#435653;margin:10px 0 0;font-size:.82rem;line-height:1.5}.roby-panel strong,.why-panel strong{color:#143d38}.comparison-band{margin:0 18px 18px;padding:18px}.comparison-header{justify-content:space-between;gap:20px;margin-bottom:16px}.comparison-deltas{gap:8px}.comparison-deltas span{color:#334743;background:#fbfdfc;border:1px solid #d9e2df;border-radius:6px;padding:7px 9px;font-size:.75rem;font-weight:900}.comparison-grid{grid-template-columns:minmax(210px,.75fr) minmax(300px,1.1fr) minmax(430px,1.5fr);gap:14px;display:grid}.comparison-summary,.waterfall,.contribution-table{padding:14px}.comparison-summary h3,.waterfall h3,.contribution-table h3{color:#1a2b28;margin:0 0 12px;font-size:.9rem}.comparison-summary dl{gap:8px;margin:0;display:grid}.comparison-summary div{border-bottom:1px solid #e6eeeb;justify-content:space-between;gap:14px;padding-bottom:8px;display:flex}.comparison-summary dt,.comparison-summary dd{color:#5a6d69;margin:0;font-size:.78rem;font-weight:800}.comparison-summary dd{color:#152b28}.waterfall{gap:8px;display:grid}.waterfall-row{color:#526462;grid-template-columns:128px 1fr 48px;align-items:center;gap:8px;font-size:.72rem;font-weight:800;display:grid}.waterfall-row>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.waterfall-track{background:linear-gradient(90deg,#f4d7d2 0 50%,#e4f2ee 50% 100%);border-radius:999px;height:16px;position:relative;overflow:hidden}.waterfall-track:after{content:"";background:#8fa09c;width:1px;position:absolute;top:0;bottom:0;left:50%}.waterfall-track i{border-radius:999px;height:100%;display:block}.waterfall-track i.positive{background:#148a76}.waterfall-track i.negative{background:#ef6f61}.waterfall-row strong{color:#213330;text-align:right}.contribution-table{overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:420px}th,td{color:#455956;text-align:left;white-space:nowrap;border-bottom:1px solid #e6eeeb;padding:9px 8px;font-size:.74rem}th{color:#6a7b78;text-transform:uppercase;font-size:.68rem;font-weight:900}td.good{color:#137a68;font-weight:900}td.bad{color:#d65a4e;font-weight:900}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #148a7652}@media (width<=1240px){.workspace{grid-template-columns:320px 1fr}.result-panel{grid-column:1/-1}.comparison-grid{grid-template-columns:1fr 1fr}.contribution-table{grid-column:1/-1}}@media (width<=980px){.canvas-grid{grid-template-columns:1fr}}@media (width<=860px){.topbar{grid-template-columns:1fr;justify-items:stretch;padding:12px;position:static}.topbar nav{justify-content:space-between;overflow-x:auto}.top-actions{justify-content:space-between}.workspace,.comparison-grid,.canvas-grid{grid-template-columns:1fr}.workspace{padding:12px}.comparison-band{margin:0 12px 12px}.canvas-header,.comparison-header{flex-direction:column}.threshold-badge{white-space:normal}.metric-grid,.utility-grid{grid-template-columns:1fr}.ladder-wrap,.energy-curve{min-height:320px}}@media (width<=520px){.panel,.comparison-band{padding:14px}.topbar nav a{padding:8px 9px;font-size:.76rem}.level-bar{grid-template-columns:88px 1fr 38px}.waterfall-row{grid-template-columns:96px 1fr 42px}}
