:root{--blue:#1447e6;--acid:#d7ff3f;--black:#111318;--gray:#70747e;--line:#cbd0d9;--paper:#f5f6f2;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--black);font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif}.topbar{height:62px;padding:0 max(20px,calc((100% - 1180px)/2));display:flex;align-items:center;justify-content:space-between;background:var(--black);color:white}.brand{color:inherit;text-decoration:none;font-weight:900;letter-spacing:.08em;font-size:14px}.brand span{display:inline-grid;place-items:center;width:34px;height:34px;background:var(--acid);color:var(--black);margin-right:10px;letter-spacing:-.08em}.status{font:11px ui-monospace,monospace;color:#c8cad0}.status i{display:inline-block;width:7px;height:7px;background:var(--acid);border-radius:50%;margin-right:8px;box-shadow:0 0 0 4px rgba(215,255,63,.12)}main{width:min(1180px,calc(100% - 40px));margin:auto;padding:64px 0 80px}.hero{display:grid;grid-template-columns:1.5fr .55fr;gap:60px;align-items:end}.kicker,.sheet-head p,.template-title>div>p{font:700 11px ui-monospace,monospace;letter-spacing:.17em;color:var(--blue);margin:0 0 14px}h1{font-size:clamp(42px,6.8vw,80px);line-height:1.02;letter-spacing:-.065em;margin:0;max-width:900px}mark{background:var(--acid);color:inherit;padding:0 .08em}.hero-copy{margin:0;border-left:3px solid var(--blue);padding-left:20px;color:#565a65;line-height:1.75;font-size:14px}.dashboard{display:grid;grid-template-columns:1.1fr 1.1fr .65fr;gap:1px;background:var(--black);border:1px solid var(--black);margin:60px 0 18px}.score{background:var(--white);padding:24px;min-width:0}.score.primary{background:var(--blue);color:white}.score span{font-size:12px;font-weight:800}.score strong{display:block;margin:12px 0;font:900 clamp(38px,5vw,62px)/1 Arial,sans-serif;letter-spacing:-.07em}.score small{font:10px/1.5 ui-monospace,monospace;color:var(--gray)}.primary small{color:#cbd7ff}.score.compact strong{font-size:52px}.meter{height:8px;background:#e5e7eb;margin:14px 0}.primary .meter{background:#426bf0}.meter i{display:block;height:100%;width:0;background:var(--black);transition:width .25s}.primary .meter i{background:var(--acid)}.weight-alert{border:1px solid var(--black);background:var(--acid);padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.weight-alert.ok{background:#e8ece5;border-color:#aab1a6}.weight-alert b{font-size:14px}.weight-alert p{display:inline;margin:0 0 0 12px;font-size:13px}.weight-alert button{border:2px solid var(--black);background:var(--black);color:white;padding:10px 14px;font-weight:800;cursor:pointer;white-space:nowrap}.weight-alert.ok button{display:none}.sheet,.templates{margin-top:52px}.sheet-head,.template-title{display:flex;align-items:end;justify-content:space-between;border-bottom:3px solid var(--black);padding-bottom:13px}.sheet-head h2,.template-title h2{margin:0;font-size:28px;letter-spacing:-.04em}.add{background:var(--blue);color:white;border:0;padding:13px 18px;font-weight:800;cursor:pointer}.table-head,.item-row{display:grid;grid-template-columns:minmax(160px,2fr) minmax(105px,.7fr) minmax(190px,1.3fr) minmax(80px,.55fr) 42px;gap:14px;align-items:center}.table-head{padding:14px 12px 9px;font:700 10px ui-monospace,monospace;color:var(--gray);letter-spacing:.08em}.rows{display:grid;gap:8px}.item-row{background:white;border:1px solid var(--line);padding:11px 12px}.item-row:focus-within{border-color:var(--blue);box-shadow:4px 0 0 var(--blue)}input{min-width:0;width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:10px 8px;font:14px inherit;outline:none}input:focus{border-color:var(--blue)}.number-unit{display:flex;align-items:center}.number-unit span{font-size:12px;color:var(--gray);margin-left:-25px}.completion{display:grid;grid-template-columns:1fr 66px;align-items:center;gap:9px}.completion input[type=range]{appearance:none;height:5px;background:#dfe3ea;padding:0;border:0}.completion input[type=range]::-webkit-slider-thumb{appearance:none;width:18px;height:18px;background:var(--blue);border:3px solid white;box-shadow:0 0 0 1px var(--blue);cursor:pointer}.contribution{font:800 15px ui-monospace,monospace}.remove{border:0;background:transparent;font-size:21px;color:var(--gray);cursor:pointer}.remove:hover{color:#e3342f}.empty{border:1px dashed var(--line);padding:40px;text-align:center;color:var(--gray)}.empty.hidden{display:none}.template-title>p{margin:0;max-width:280px;text-align:right;color:var(--gray);font-size:12px}#saveForm{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid var(--line);padding:18px 0}#saveForm input{font-size:16px}#saveForm button{border:0;background:var(--black);color:white;padding:10px 20px;font-weight:800;cursor:pointer}.template-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:15px}.template-card{border:1px solid var(--line);background:white;padding:16px;display:grid;gap:12px}.template-card strong{overflow-wrap:anywhere}.template-card small{color:var(--gray)}.template-actions{display:flex;gap:7px}.template-actions button{border:1px solid var(--black);background:white;padding:7px 10px;font-weight:700;cursor:pointer}.template-actions .load{background:var(--acid)}.template-actions .delete{border-color:#d5d6da;color:#777}footer{background:var(--blue);color:white;display:flex;justify-content:space-between;padding:25px max(20px,calc((100% - 1180px)/2));font:11px ui-monospace,monospace;letter-spacing:.1em}@media(max-width:800px){main{width:min(100% - 24px,1180px);padding-top:38px}.hero{grid-template-columns:1fr;gap:28px}.dashboard{grid-template-columns:1fr 1fr}.score.compact{grid-column:1/-1}.table-head{display:none}.item-row{grid-template-columns:1fr 100px 36px}.item-row>input:first-child{grid-column:1/-1}.completion{grid-column:1/2}.contribution{grid-column:2}.remove{grid-column:3;grid-row:2}.template-list{grid-template-columns:1fr 1fr}}@media(max-width:540px){.status{font-size:0}.status i{margin:0}.dashboard{grid-template-columns:1fr}.score.compact{grid-column:auto}.weight-alert{align-items:flex-start;flex-direction:column}.weight-alert p{display:block;margin:6px 0 0}.template-title{align-items:flex-start}.template-title>p{display:none}.template-list{grid-template-columns:1fr}footer{flex-direction:column;gap:8px}}
