:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#17120f;font-synthesis:none;text-rendering:optimizelegibility;background:#f7efe1;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}body{background-color:#f7efe1;background-image:linear-gradient(90deg,#17120f0d 1px,#0000 1px),linear-gradient(#17120f0d 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:34px 34px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;min-width:320px;margin:0}button,input{font:inherit}button{cursor:pointer}a{color:inherit}.app{width:min(1180px,100% - 32px);margin:0 auto;padding:18px 0 30px}.topbar,.footer{justify-content:space-between;align-items:center;gap:14px;display:flex}.brand{background:#fffaf0;border:2px solid #17120f;border-radius:8px;align-items:center;gap:8px;padding:10px 13px;font-weight:950;text-decoration:none;display:inline-flex;box-shadow:4px 4px #17120f}.topNote{color:#6a5e54;font-size:14px;font-weight:850}.hero{grid-template-columns:1fr auto;align-items:end;gap:22px;padding:40px 0 24px;display:grid}.mini{color:#d83124;margin:0 0 10px;font-weight:950}h1,h2,h3,p{margin-top:0}h1{letter-spacing:0;margin-bottom:12px;font-size:clamp(42px,7vw,82px);line-height:.98}.lead{color:#4b4037;max-width:730px;margin:0;font-size:18px;font-weight:700;line-height:1.7}.scoreStamp{text-align:center;background:#d9f0c9;border:3px solid #17120f;border-radius:16px;min-width:146px;padding:16px;transform:rotate(2deg);box-shadow:7px 7px #17120f}.scoreStamp span{font-size:13px;font-weight:950;display:block}.scoreStamp strong{color:#d83124;font-size:44px;font-weight:950;line-height:1;display:block}.workspace{grid-template-columns:minmax(0,.95fr) minmax(380px,1.05fr);align-items:start;gap:18px;display:grid}.panel{background:#fffaf0;border:3px solid #17120f;border-radius:12px;padding:22px;box-shadow:8px 8px #17120f}.panelTitle{align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.panelTitle svg{color:#d83124;flex:none}.panelTitle h2{margin-bottom:4px;font-size:25px;line-height:1.1}.panelTitle p{color:#70665d;margin:0;font-size:14px;font-weight:700}.controlGroup{margin-bottom:16px}.controlGroup>p,.field>span{color:#3d342d;align-items:center;gap:6px;margin-bottom:8px;font-size:13px;font-weight:950;display:flex}.controlGroup>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.chip,.resetBtn,.copyBtn,.toggle,.stepper button{color:#17120f;background:#fff;border:2px solid #17120f;border-radius:8px;font-weight:950;transition:transform .16s,box-shadow .16s,background .16s}.chip{min-height:44px;padding:8px}.chip.active{color:#fffaf0;background:#ee3d31;box-shadow:3px 3px #17120f}.fieldGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field{min-width:0;display:grid}.stepper{background:#fff;border:2px solid #17120f;border-radius:8px;grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;min-height:48px;display:grid;overflow:hidden}.stepper button{background:#f5d46b;border:0;border-radius:0;height:100%;font-size:21px}.stepper strong{text-align:center;font-size:20px;font-weight:950}.stepper em{color:#6d6258;margin-left:2px;font-size:13px;font-style:normal}.toggleRows{gap:9px;margin:16px 0;display:grid}.toggle{text-align:left;align-items:center;gap:9px;min-height:42px;padding:9px 10px;display:flex}.toggle span{background:#fff;border:2px solid #17120f;border-radius:6px;flex:none;place-items:center;width:22px;height:22px;display:grid}.toggle.active{background:#e1f2d4}.resetBtn,.copyBtn{justify-content:center;align-items:center;gap:9px;width:100%;min-height:48px;padding:12px 16px;display:inline-flex}.resetBtn{background:#dceff2}.resultPanel{background:#fffdf5}.metricGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px;display:grid}.metric{background:#f9eec3;border:2px solid #17120f;border-radius:10px;padding:13px}.metric span{color:#5f554e;margin-bottom:6px;font-size:13px;font-weight:950;display:block}.metric strong{color:#d83124;font-size:clamp(26px,4vw,36px);font-weight:950;line-height:1}.timeline{gap:10px;display:grid}.block{background:#fff;border:2px solid #17120f;border-radius:10px;grid-template-columns:112px 1fr;gap:12px;padding:12px;display:grid}.block span{color:#5d5249;font-size:13px;font-weight:950}.block h3{margin-bottom:4px;font-size:18px}.block p{color:#4a4038;margin:0;font-size:14px;font-weight:700;line-height:1.45}.wake{background:#f9eec3}.study{background:#dceff2}.outdoor{background:#dff1ce}.blank{background:#ffe4d7}.interest{background:#fff3dc}.family{background:#e8e2f6}.weekStrip{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:16px 0;display:grid}.weekStrip span{background:#fff;border:2px solid #17120f;border-radius:9px;place-items:center;gap:2px;min-height:58px;padding:8px 4px;font-size:12px;font-weight:900;display:grid}.weekStrip strong{color:#d83124;font-size:18px}.tips{gap:8px;margin-bottom:16px;display:grid}.tips p{color:#40372f;align-items:flex-start;gap:8px;margin:0;font-size:14px;font-weight:750;line-height:1.45;display:flex}.tips svg{color:#2f7d3a;flex:none;margin-top:2px}.copyBtn{color:#fffaf0;background:#17120f;font-size:17px}.disclaimer{background:#fffaf0c7;border:2px dashed #17120f;border-radius:12px;align-items:flex-start;gap:10px;margin-top:24px;padding:16px;display:flex}.disclaimer p{color:#4b4037;margin:0;font-weight:720;line-height:1.65}.footer{color:#5d5249;flex-wrap:wrap;padding-top:28px;font-size:14px;font-weight:800}.footer a{text-underline-offset:4px;text-decoration-thickness:2px}@media (hover:hover){.chip:hover,.resetBtn:hover,.copyBtn:hover,.toggle:hover,.stepper button:hover{transform:translate(-1px,-1px);box-shadow:3px 3px #17120f}}@media (width<=920px){.workspace,.hero{grid-template-columns:1fr}.scoreStamp{width:100%;transform:none}}@media (width<=640px){.app{width:min(100% - 18px,1180px);padding-top:10px}.topbar{flex-direction:column;align-items:stretch}.brand{justify-content:center}.hero{padding:30px 0 18px}h1{font-size:42px}.lead{font-size:16px}.panel{padding:16px;box-shadow:5px 5px #17120f}.controlGroup>div,.fieldGrid,.metricGrid{grid-template-columns:1fr}.block{grid-template-columns:1fr;gap:4px}.weekStrip{grid-template-columns:repeat(2,minmax(0,1fr))}}
