:root{font-family:Arial,sans-serif;color:#203e2d;background:#f5f4ec;line-height:1.6}*{box-sizing:border-box}body{margin:0}header,main{max-width:1120px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d7ddcf}a{color:inherit;text-decoration:none}.brand{font-size:26px;font-weight:800}.hero{position:relative;overflow:hidden;padding:50px 0 70px;min-height:370px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#677d58}h1{font-family:Georgia,serif;font-size:clamp(40px,5.5vw,66px);line-height:1.08;letter-spacing:-2px;margin:18px 0}h1 em{color:#698643}h2{font-family:Georgia,serif;font-size:29px;line-height:1.25;margin:15px 0}h3{font-size:15px}.hero>p,.hero>h1{position:relative;z-index:2}.hero>p:not(.eyebrow){max-width:480px}.landscape{position:absolute;right:0;top:35px;width:370px;height:300px;border-radius:160px 160px 20px 20px;background:#e5ead6;overflow:hidden}.sun{position:absolute;right:60px;top:35px;width:66px;height:66px;background:#e8b664;border-radius:50%}.hill{position:absolute;width:420px;height:270px;border-radius:50%}.back{background:#b4c69d;top:135px;left:-100px;transform:rotate(-25deg)}.front{background:#7f9e6d;top:200px;left:65px}.tree{position:absolute;font-size:180px;color:#375d42;left:120px;top:54px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.card{background:#fffef8;border:1px solid #dde1d1;border-radius:20px;padding:30px;margin-bottom:24px}.result{background:#edf1e3}label{display:block;font-size:13px;font-weight:700;margin:18px 0 7px}select,textarea{font:inherit;width:100%;padding:12px;border:1px solid #c8d1bf;border-radius:10px;background:#fffef9;color:inherit}textarea{resize:vertical;min-height:85px}.row{display:grid;grid-template-columns:1fr 1.3fr;gap:14px}button{font:inherit;font-weight:700;border:0;border-radius:10px;padding:13px 19px;background:#274c36;color:white;cursor:pointer;margin-top:15px;min-height:46px}#generate,#sample{width:100%}button:hover{filter:brightness(1.1)}button:disabled{opacity:.5;cursor:wait}.secondary{background:transparent;color:#37523a;border:1px solid #b7c5aa}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #aa7e2a;outline-offset:3px}#status,.note,footer{font-size:12px;color:#58654f}.badge{font-size:12px;background:#dae4cd;padding:6px 10px;border-radius:15px}li{padding:6px 0}ol{padding-left:22px}.large-leaf{font-size:135px;text-align:center;color:#81966a}.session{text-align:center;background:#203e2d;color:#f7f6ea}.session .secondary{color:white}.session .eyebrow,.session .note{color:#c7d5ba}.clock{font-size:52px;font-variant-numeric:tabular-nums;margin:18px}.entry{padding:16px 0;border-top:1px solid #d7ddcf}.entry p{white-space:pre-wrap;margin:5px 0}footer{text-align:center;padding:20px}[hidden]{display:none!important}@media(max-width:850px){.landscape{opacity:.3;right:-90px}.grid{grid-template-columns:1fr}.hero{padding:40px 0}.hero>p{max-width:90%}}@media(max-width:450px){main,header{padding:16px}.card{padding:22px}.row{grid-template-columns:1fr}h1{font-size:42px}header a:last-child{font-size:13px}}

progress{width:100%;margin-top:16px;accent-color:#274c36}details{margin:20px 0;font-size:14px}summary{cursor:pointer;font-weight:bold}
