:root{font-family:Arial,Helvetica,sans-serif;color:#f6f4e6;background:#23392b;font-synthesis:none}*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #f4c961;outline-offset:6px}#world,.vignette{position:fixed;inset:0;width:100%;height:100%}.vignette{pointer-events:none;background:linear-gradient(90deg,rgba(9,29,22,.78),rgba(9,29,22,.32) 38%,transparent 68%),linear-gradient(0deg,rgba(9,29,22,.5),transparent 26%);transition:opacity .8s}body.playing .vignette{opacity:.35}header{position:absolute;top:0;left:0;right:0;padding:30px 4.2%;display:flex;justify-content:space-between;align-items:center;z-index:4}.brand{color:#fff;text-decoration:none;letter-spacing:3px;font-size:14px;font-weight:700;display:flex;align-items:center;gap:12px}.brand-mark{font-size:43px;line-height:20px;color:#e5d27b;transform:rotate(-25deg)}.header-right{display:flex;align-items:center;gap:22px}.edition{font-size:10px;letter-spacing:2px;opacity:.7}.icon-button{position:relative;color:#fff;border:1px solid #ffffff40;background:#15332138;backdrop-filter:blur(10px);border-radius:50%;width:39px;height:39px;font-size:19px}.sound-slash{position:absolute;left:10px;top:17px;width:20px;height:1px;background:#fff;transform:rotate(-45deg)}.sound-on .sound-slash{display:none}main{position:absolute;left:7.2%;top:50%;transform:translateY(-47%);z-index:2}.eyebrow{display:flex;align-items:center;gap:10px;color:#d1dba1;letter-spacing:2.1px;font-size:10px;font-weight:bold}.eyebrow>span{width:6px;height:6px;background:#ced998;border-radius:50%}h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-2.7px;font-size:clamp(48px,5.6vw,85px);line-height:1.04;margin:23px 0}h1 em{color:#e7cf82;font-weight:400}p.intro{color:#d0d7c9;font-size:14px;line-height:1.9;margin:24px 0 28px}.primary{background:#ecd48a;color:#24372b;border:0;border-radius:5px;padding:17px 23px;font-size:14px;font-weight:700;min-width:190px;display:inline-flex;gap:40px;align-items:center;justify-content:space-between;box-shadow:0 5px 25px #081f2520;transition:background .2s,transform .2s}.primary:hover{background:#ffe7a0;transform:translateY(-2px)}.primary span{font-size:22px;font-weight:400}.instructions{font-size:11px;color:#b8c4b5;margin-top:17px;display:flex;align-items:center;gap:7px}.key,kbd{border:1px solid #ffffff40;border-radius:3px;padding:4px 6px;font:9px Arial;letter-spacing:1px}.instructions i{padding:0 2px}.trail-note{margin-top:40px;border-top:1px solid #ffffff25;padding-top:21px;display:flex;align-items:center;gap:13px}.trail-note .leaf{font-size:35px;color:#b2c38c}.trail-note strong{display:block;font-size:12px;font-weight:400}.trail-note small{display:block;color:#a2b59f;font-size:10px;margin-top:7px}footer{position:absolute;bottom:25px;left:4.2%;right:4.2%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.1px;color:#bccbbb;pointer-events:none}footer>span:first-child{font-size:8px;letter-spacing:1.8px}footer i{display:inline-block;background:#bace98;width:5px;height:5px;border-radius:50%;margin:0 7px 1px 0}.hidden{display:none!important}#hud{position:absolute;left:4.2%;top:105px;display:flex;gap:16px;pointer-events:none}.stat{background:#152d2580;backdrop-filter:blur(12px);border:1px solid #ffffff20;border-radius:8px;padding:14px 19px;min-width:190px}.stat small{display:block;font-size:8px;letter-spacing:1.6px;color:#c8d1b9}.stat strong{font-size:27px;font-weight:400;display:block;margin-top:7px;font-variant-numeric:tabular-nums}.stat .unit{font-size:12px;color:#c8d1b9}.stat.compact{min-width:130px}.hearts{color:#ecc680;letter-spacing:5px;font-size:23px!important}.progress{height:2px;margin-top:10px;background:#ffffff20}.progress i{display:block;width:0;height:2px;background:#ecd48a}#cue{position:absolute;bottom:116px;left:50%;transform:translateX(-50%);text-align:center;background:#142d258a;border:1px solid #ffffff25;backdrop-filter:blur(8px);border-radius:30px;padding:12px 25px;font-size:13px;white-space:nowrap;pointer-events:none}#play-controls{position:absolute;bottom:35px;left:4.2%;right:4.2%;display:flex;justify-content:space-between;align-items:center}#play-controls>span{font-size:11px;color:#d3dbc8}#play-controls b{margin:0 15px;opacity:.5}#jump{border:1px solid #ead99b80;background:#ecdb99;color:#263b2b;padding:15px 30px;min-width:135px;border-radius:40px;font-weight:700;font-size:16px;touch-action:manipulation}#jump span{margin-left:20px}#modal{position:absolute;inset:0;z-index:5;display:grid;place-items:center;background:#0c241d66;backdrop-filter:blur(5px)}.modal-card{text-align:center;background:#203c31ee;border:1px solid #a3b39855;padding:45px 55px;border-radius:14px;box-shadow:0 20px 80px #0b191760;max-width:90vw}.modal-card .eyebrow{justify-content:center}h2{font:42px Georgia;margin:22px 0;color:#f5e7ba}.modal-card p{color:#c1d0bc;font-size:14px;line-height:1.8;max-width:330px;margin:0 auto 25px}.text-button{display:block;margin:20px auto 0;background:none;border:0;color:#c4cdbb;text-decoration:underline;text-underline-offset:5px;font-size:12px}#error{position:absolute;inset:20%;padding:50px;background:#173d30;z-index:20;line-height:2;text-align:center}
@media(max-width:700px){header{padding:23px 6%}.brand{font-size:11px;letter-spacing:2px}.edition{display:none}main{left:7%;top:46%;transform:translateY(-44%)}h1{font-size:53px;letter-spacing:-2px}p.intro{font-size:12px;margin:20px 0}.eyebrow{font-size:8px;letter-spacing:1.4px}.trail-note{margin-top:25px}.vignette{background:linear-gradient(90deg,#091d16c9, #091d1650 75%,transparent),linear-gradient(0deg,#091d1650,transparent 30%)}footer{font-size:8px;bottom:18px}footer>span:first-child{font-size:6px}#hud{top:86px;gap:8px;left:5%;right:5%}.stat{padding:11px 12px;min-width:0;flex:1}.stat.compact{min-width:0;flex:.8}.stat small{font-size:6px;letter-spacing:1px}.stat strong{font-size:23px}.hearts{font-size:17px!important;letter-spacing:2px}#cue{font-size:11px;padding:11px 17px;bottom:108px;max-width:94%;white-space:normal;width:max-content}#play-controls>span{font-size:9px}#play-controls b{margin:0 5px}#jump{padding:15px 20px;min-width:110px}.modal-card{padding:36px 24px}h2{font-size:35px}}@media(max-height:650px) and (min-width:701px){h1{font-size:55px}main{transform:translateY(-43%)}.trail-note{margin-top:22px;padding-top:15px}p.intro{margin:17px 0}.instructions{margin-top:12px}}
