:root{--ink:#071917;--paper:#ecedcf;--muted:#a1b8a2;--gold:#efce81;--line:#d9eac520}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--ink);color:var(--paper)}body{font-family:Arial,Helvetica,sans-serif;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:6px}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line)}.brand{font-size:16px;letter-spacing:4px;font-weight:600;color:var(--paper);text-decoration:none;display:flex;align-items:center;gap:13px}.brand span{font-size:31px;color:var(--gold);font-weight:normal}.header-right{display:flex;align-items:center;gap:26px}.edition,.eyebrow,footer,.world-note,.best{font-size:10px;letter-spacing:2px;line-height:1.8}.edition{color:var(--muted)}.header-right button{border:1px solid #abc8ab35;color:var(--paper);background:transparent;border-radius:30px;font-size:11px;padding:10px 15px}main{position:relative;height:calc(100svh - 143px);min-height:380px;overflow:hidden}canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none}.panel{position:absolute;top:50%;left:8%;transform:translateY(-50%);max-width:580px}.eyebrow{color:var(--gold);font-size:9px;letter-spacing:2px}.tiny-star{margin-right:9px;font-size:16px}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(52px,6.1vw,92px);line-height:1.06;letter-spacing:-4px;margin:24px 0}h1 em{font-weight:400;color:#d5dfb4}p{font-size:14px;line-height:1.85;color:#adc3b0;margin-bottom:28px}.primary{border:0;padding:18px 25px;background:var(--gold);color:#23392c;border-radius:3px;font-size:13px;font-weight:600;letter-spacing:.3px;min-width:220px;display:inline-flex;justify-content:space-between;align-items:center;gap:34px;transition:background .2s,transform .2s}.primary:hover{background:#ffe0a0;transform:translateY(-2px)}.primary span{font-size:20px}.instructions{display:grid;gap:12px;font-size:11px;color:var(--muted);margin-top:29px}.instructions>span{display:flex;align-items:center;gap:12px}.key{font-style:normal;border:1px solid #9db69b50;border-radius:3px;font-size:10px;padding:0 3px}.seed-icon{width:8px;height:8px;background:var(--gold);transform:rotate(45deg);margin:0 5px}.thorn-icon{width:10px;height:10px;border:1px solid #e69483;transform:rotate(45deg);margin:0 4px}.best{display:block;color:#789780;font-size:9px;margin-top:20px}.world-note{position:absolute;right:7%;bottom:30px;color:#8da78e;font-size:8px;display:flex;align-items:center;gap:12px;pointer-events:none}.note-line{height:1px;width:30px;background:#819d77}footer{height:53px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-top:1px solid var(--line);font-size:8px;color:#77937e}#hud{position:absolute;top:28px;left:5%;right:5%;display:flex;align-items:start;justify-content:space-between;pointer-events:none}.gathered{display:flex;gap:10px;align-items:baseline;margin-top:5px}.gathered b{font:40px Georgia,serif}.gathered span{font-size:12px;color:var(--muted)}.vitals{display:flex;gap:25px;align-items:center;color:var(--gold)}#hearts{letter-spacing:5px}#timer{font:28px Georgia,serif;color:var(--paper);min-width:55px}.compact{left:50%;transform:translate(-50%,-50%);text-align:center;width:min(90%,500px);padding:42px 30px;background:#0a211ef2;border:1px solid #b2d0a433;border-radius:6px;box-shadow:0 20px 100px #0005}.compact h2{font:52px/1.05 Georgia,serif;letter-spacing:-2px;margin:20px 0}.compact p{margin:20px 0 26px}.compact .primary{justify-content:center}.text-button{display:block;margin:22px auto 0;color:var(--muted);font-size:11px;border:0;background:transparent}#toast{position:absolute;bottom:45px;text-align:center;left:20%;right:20%;font-size:12px;line-height:1.8;color:var(--gold);pointer-events:none;transition:opacity .4s}[hidden]{display:none!important}@media(max-width:700px){header{height:70px;padding:0 6%}.edition{display:none}.brand{font-size:12px;letter-spacing:3px}.header-right{gap:8px}main{height:calc(100svh - 111px)}footer{height:41px;padding:0 6%;font-size:7px;letter-spacing:1px}footer span:last-child{display:none}.panel{left:8%;right:6%}h1{font-size:58px;letter-spacing:-3px}.panel p{font-size:12px}.eyebrow{font-size:8px;letter-spacing:1.3px}.world-note{display:none}.instructions{font-size:10px}.compact{left:50%;right:auto}.compact h2{font-size:42px}#hud{top:20px}.vitals{gap:8px}#timer{font-size:24px}#hearts{font-size:13px}#toast{left:8%;right:8%;bottom:25px}.best{margin-top:12px}}@media(max-height:700px){h1{font-size:56px;margin:15px 0}.panel p{margin-bottom:18px}.instructions{margin-top:18px;gap:8px}.primary{padding:14px 22px}.best{margin-top:10px}.world-note{bottom:16px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.secondary{border:1px solid #efce8160;padding:18px 21px;background:#0a211eb0;color:var(--gold);border-radius:3px;font-size:13px;margin-left:10px;display:inline-flex;align-items:center;gap:20px}.secondary:hover{background:#244831}.secondary span{font-size:20px;line-height:1}.resume{display:block;margin-top:15px;padding:0;background:none;border:none;color:var(--gold);font-size:12px}.compact{max-height:calc(100% - 30px);overflow-y:auto}.compact p{line-height:1.8}.compact h2{font-size:43px}#recovery{font-size:10px;color:#a1b8a2;margin-top:8px;max-width:220px;line-height:1.5}.panel{max-height:calc(100% - 28px);overflow-y:auto;padding:4px}.compact{padding:32px}.vitals{white-space:nowrap}@media(max-width:700px){.primary{min-width:175px}.secondary{padding:15px 13px;font-size:11px;margin-left:7px;gap:8px}.compact h2{font-size:34px}#recovery{font-size:9px;max-width:180px}.gathered span{font-size:10px}.gathered b{font-size:34px}.vitals{gap:4px}#hearts{letter-spacing:2px}.compact{padding:26px 22px}.panel p{font-size:12px}}@media(max-width:365px){.secondary{margin:10px 0 0;display:flex;justify-content:center;width:175px}}@media(max-height:700px){.secondary{padding:14px 18px}.compact h2{font-size:34px}}
.mode-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:10px}.mode-actions .secondary{margin:0}.mode-actions .primary,.mode-actions .secondary{min-height:54px}@media(max-width:700px){.mode-actions .primary{min-width:175px;padding:16px 18px;gap:14px}.mode-actions .secondary{padding:16px 13px}}
