:root{font-family:Inter,"Microsoft YaHei",system-ui,sans-serif;color:#173b35;background:#f3f5ef;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #c48c40;outline-offset:3px}main{max-width:1140px;margin:auto;padding:30px 32px}header{display:flex;align-items:center;justify-content:space-between;padding-bottom:24px;border-bottom:1px solid #dce3d6}.brand{text-decoration:none;color:inherit;font-size:19px;font-weight:800;letter-spacing:2px}.brand span{font-size:12px;font-weight:400;letter-spacing:1px;margin-left:14px;color:#728077}.pill{display:inline-block;padding:7px 11px;border-radius:30px;background:#e8ece4;font-size:12px;white-space:nowrap;color:#69756a}.pill.on{background:#d6eadc;color:#245e41}.intro{padding:35px 0 24px}.eyebrow{font-size:12px;letter-spacing:2px;color:#7a8678}.intro h1{font-size:42px;letter-spacing:-1px;line-height:1.2;margin:16px 0}.intro>p:last-child{font-size:14px;color:#738071}.metrics{display:grid;grid-template-columns:1.1fr 1.1fr 1fr;gap:18px}.metric{border-radius:22px;padding:25px 28px;min-height:211px}.temperature{background:#235b48;color:#f4f8e9}.humidity{background:#e1e9ce}.formaldehyde{background:#ebeae1}.metric-label{display:flex;justify-content:space-between;font-size:14px}.metric-label>span:last-child{opacity:.6;font-size:22px}.reading{margin:23px 0 12px;white-space:nowrap}.reading strong{font-size:61px;font-weight:500;letter-spacing:-3px;font-variant-numeric:tabular-nums}.reading>span{font-size:17px;margin-left:9px;opacity:.75}.metric p{font-size:12px;opacity:.7;margin:0}.future-reading{font-size:29px;margin:39px 0 25px;color:#7c8575}.sample-row{display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:12px;color:#75806f;min-height:54px;padding:0 4px}.sample-row p{margin:12px 0}.sample-row>span{white-space:nowrap}.columns{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:start}.card{background:#fffef9;border:1px solid #e0e4d8;border-radius:22px;padding:25px;margin-bottom:20px}.section-top{display:flex;justify-content:space-between;align-items:center;gap:10px}h2{font-size:17px;margin:0;font-weight:650}.muted{font-size:12px;color:#83907b}.chart-wrap{position:relative;margin:35px -3px 10px;min-height:185px}#chart{display:block;width:100%;height:auto;overflow:visible}#chart-empty{position:absolute;top:30%;left:15px;right:15px;text-align:center;font-size:13px;color:#87907f;line-height:1.9}.chart-footer{display:flex;justify-content:space-between;font-size:12px;color:#7f8978}.tip{font-size:11px;line-height:1.8;color:#929987;margin-bottom:0}.last-scene{display:flex;flex-direction:column;align-items:center;padding:21px 0}.last-scene span{font-size:12px;color:#7c8673}.last-scene strong{font-size:35px;font-weight:500;margin:9px 0}.last-scene small{font-size:11px;color:#939b87}label{font-size:12px;color:#65765b}.input-row{display:flex;gap:9px;margin:8px 0 18px}.input-row input{width:100%;min-width:0;border:1px solid #dce2d3;border-radius:10px;padding:12px;background:#fffefb}.input-row button{border:0;border-radius:10px;padding:0 18px;background:#245c48;color:white;white-space:nowrap}.scene-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.scene-buttons button{display:flex;flex-direction:column;align-items:center;gap:4px;border:1px solid #d4dfcb;background:#f2f6e9;border-radius:12px;color:#34573b;padding:14px}.scene-buttons strong{font-size:26px;font-weight:500}.scene-buttons span{font-size:12px}.off{width:100%;border:1px solid #e1e4d8;background:transparent;padding:12px;border-radius:12px;color:#586853;margin-top:10px}.scene-buttons button:hover:not(:disabled),.off:hover:not(:disabled){background:#e2ecd5}.notice{font-size:12px;line-height:1.9;color:#7a856d;min-height:44px;margin-bottom:0}#signed-in p{font-size:13px;color:#45673e}.text-button{border:0;background:none;color:#5f794c;text-decoration:underline;float:right;padding:0}footer{text-align:center;font-size:11px;line-height:2;color:#89917f;margin:12px 0 24px}#events{list-style:none;padding:0;margin-bottom:0}#events li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;border-top:1px solid #edf0e4;font-size:13px}#events li:first-child{border:0}#events small{color:#839079;font-size:11px}.error{color:#a44c31!important}[hidden]{display:none!important}@media(max-width:760px){main{padding:20px}.intro{padding:24px 0 20px}.intro h1{font-size:34px}.metrics{gap:10px;grid-template-columns:1fr 1fr}.metric{padding:20px;min-height:182px}.reading strong{font-size:50px}.formaldehyde{grid-column:1/-1;min-height:0;display:flex;align-items:center;justify-content:space-between;padding:18px 20px}.formaldehyde .metric-label>span:last-child{display:none}.future-reading{font-size:20px;margin:0}.formaldehyde p{font-size:10px}.columns{grid-template-columns:1fr}.sample-row{font-size:11px;align-items:flex-start}.sample-row>span{margin-top:12px}.card{padding:21px;margin-bottom:0}.trend{order:2}.controls{order:1}#events-card{margin-top:20px}.brand span{margin-left:8px}.chart-wrap{margin-top:26px}.last-scene{padding:18px 0}footer{margin-top:24px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s ease,opacity .15s ease}}

.trends{min-width:0}.trends .card{margin-bottom:16px}.trends .chart-wrap{margin-top:20px;min-height:235px}.chart-wrap svg{display:block;width:100%;height:235px;overflow:visible}.chart-wrap p{position:absolute;top:30%;left:15px;right:15px;text-align:center;font-size:13px;color:#7b8673;line-height:1.9}.trends-note{margin:0 5px 20px}#hcho-value{font-size:46px;letter-spacing:-1px}#hcho-caption{line-height:1.7}#events small{font-variant-numeric:tabular-nums;text-align:right}.chart-footer{gap:12px}
@media(max-width:760px){.trends{order:2}.trends .card{margin-bottom:16px}.formaldehyde{flex-wrap:wrap;gap:10px}.formaldehyde .reading{margin:0}.formaldehyde .reading strong{font-size:30px!important}.formaldehyde .reading>span{font-size:12px}.formaldehyde p{flex-basis:100%;text-align:right}#events li{align-items:flex-start;flex-direction:column;gap:6px}#events small{text-align:left;line-height:1.7}.sample-row{flex-wrap:wrap;gap:0}.sample-row>span{margin:0 0 10px}.trends .chart-wrap{margin-left:0;margin-right:0}}
