*{box-sizing:border-box}body{margin:0;background:#eae5d7;color:#254349;font-family:system-ui,-apple-system,sans-serif;background-image:radial-gradient(ellipse at 30% 0%,#fff9ec,transparent 75%)}main{max-width:1100px;padding:30px 36px;margin:auto}header,nav,.topline,.bottomline,footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{text-decoration:none;font-size:24px;font-weight:850;letter-spacing:4px;color:#254349}.brand span{display:block;font-size:8px;letter-spacing:2px;margin-top:4px;color:#728482}button{background:#f8f3e8;color:#254349;border:1px solid #b0b9ac;border-radius:8px;font:600 12px system-ui;padding:11px 17px;cursor:pointer;touch-action:manipulation}button:hover:not(:disabled){background:#fffdf4;border-color:#527c78}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid #b4793b;outline-offset:3px}.intro{display:flex;justify-content:space-between;align-items:center;margin:48px 0 35px}.eyebrow{font-size:9px;letter-spacing:2.4px;font-weight:650;color:#7c8b78}h1{font:55px/1.08 Georgia,serif;letter-spacing:-2px;font-weight:400;margin:17px 0 0}h1 em{color:#56877c;font-weight:400}.intro>p{font:15px/1.8 Georgia,serif;color:#61766e;padding-top:30px}.cabinet{background:#f8f4e9;border:1px solid #b8c2b2;border-radius:18px;box-shadow:0 20px 50px #4b61551a;padding:22px 26px;max-width:850px;margin:auto}.topline span{font-size:9px;letter-spacing:2px;color:#668176}.topline h2{font:23px Georgia,serif;margin:6px 0 0}.readouts{display:flex;align-items:center;gap:35px;padding:22px 5px 15px}.plant{flex:1}label{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px}label strong{letter-spacing:0;font-size:12px}progress{width:100%;height:7px;border:0;border-radius:5px;background:#dfe4d7;overflow:hidden;margin-top:10px}progress::-webkit-progress-bar{background:#dfe4d7}progress::-webkit-progress-value{background:#668f78;border-radius:5px}.right progress::-webkit-progress-value{background:#b3a16a}.mist{display:grid;text-align:center;gap:3px}.mist span{font-size:8px;letter-spacing:1.5px}.mist strong{font-size:22px;font-weight:500;font-variant-numeric:tabular-nums}.field{position:relative;aspect-ratio:720/520;overflow:hidden;border-radius:10px;background:#d0e0d9}canvas{display:block;width:100%;height:100%;touch-action:none}#overlay{position:absolute;inset:0;background:#e5eee4ef;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:20px}#overlay[hidden]{display:none}#overlay h2{font:40px Georgia,serif;margin:10px 0}#message{font-size:13px;line-height:1.8;color:#61776c}#start{background:#254e48;color:#fff9e8;font-size:14px;padding:16px 30px;margin:10px 0}#start:hover{background:#3c6a5c}.small{font-size:9px;letter-spacing:.7px;line-height:1.7;color:#758678}.controls{display:grid;grid-template-columns:1.3fr 1fr 1.3fr 1fr;gap:9px;margin-top:15px}.controls button{padding:14px 10px;background:#e8eddf}.controls button.active{background:#315e52;color:#fff9e8}kbd{font:8px system-ui;opacity:.65;margin-left:8px}#status{font-size:11px;line-height:1.6;min-height:18px;text-align:center;color:#617b6d;margin:12px 0}.bottomline{border-top:1px solid #ccd3c4;padding-top:13px;font-size:8px;letter-spacing:1.3px;color:#738371}.bottomline button{border:0;background:none;padding:0;font-size:10px;letter-spacing:0}.journal{display:grid;grid-template-columns:1fr 1.3fr;gap:35px;margin:45px auto 30px;max-width:850px}.journal h2{font:28px Georgia,serif;margin:12px 0}.journal p:not(.eyebrow){font-size:12px;line-height:1.8;color:#6e8174}#gardens{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}#gardens button{display:grid;gap:6px;text-align:left;padding:13px;font-weight:500}#gardens span{font-size:9px;color:#6d8273}#gardens button.current{border-color:#356959;box-shadow:inset 0 0 0 1px #356959}footer{border-top:1px solid #bdc7b6;padding-top:18px;font-size:9px;line-height:1.8;color:#7b8978}footer a{color:#4f7164}dialog{border:1px solid #a9b7a2;border-radius:14px;padding:32px;max-width:540px;width:calc(100% - 30px);background:#f7f3e7;color:#294d44}dialog::backdrop{background:#1d3e3bb8}dialog h2{font:32px Georgia,serif}dialog p{font-size:12px;line-height:1.8}#close-help{float:right;padding:8px 12px}@media(max-width:650px){main{padding:20px 14px}header{gap:8px}.brand{font-size:18px;letter-spacing:3px}.brand span{font-size:6px}nav{gap:5px}nav button{padding:8px;font-size:10px}.intro{margin:29px 3px 24px;display:block}h1{font-size:41px;margin-top:12px}.intro>p{font-size:12px;padding-top:0;margin-top:15px;line-height:1.6}.intro>p br{display:none}.cabinet{padding:15px 11px;border-radius:13px}.readouts{gap:14px;padding-top:18px}.topline h2{font-size:21px}.topline span{font-size:8px}.controls{gap:5px}.controls button{font-size:10px;padding:14px 4px}kbd{display:none}.bottomline{gap:6px;font-size:6px;letter-spacing:.5px}.bottomline button{font-size:9px}#record{max-width:100px;text-align:center}#overlay h2{font-size:28px}#overlay .eyebrow{font-size:7px;margin:0}#message{font-size:11px;line-height:1.6;margin:10px 0}#start{padding:12px 22px;margin:3px 0;font-size:12px}#overlay .small{font-size:7px;margin:8px 0}.journal{grid-template-columns:1fr;gap:12px;margin:30px 3px}.journal h2{font-size:25px;margin:10px 0}.journal p:not(.eyebrow){font-size:11px;margin:7px 0}#gardens button{font-size:11px}footer{font-size:8px;gap:10px}label{font-size:8px;letter-spacing:.5px}label strong{font-size:10px}#status{font-size:9px;margin:10px 0}}