:root{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI','PingFang SC',sans-serif;color:#edf0df;background:#12282b;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 5% 4%,#294b45,transparent 54%),#12282b}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,a:focus-visible{outline:3px solid #f0d49a;outline-offset:3px}button:disabled{opacity:.38;cursor:default}a{color:inherit}.shell{max-width:1180px;margin:auto;padding:25px 30px}header{display:flex;justify-content:space-between;align-items:center;padding-bottom:25px;border-bottom:1px solid #7b998330}.brand{font-size:12px;letter-spacing:.25em;font-weight:900;color:#e2c58a;text-decoration:none}.brand span{display:block;font-size:8px;color:#a5c0ac;letter-spacing:.19em;margin-top:7px;font-weight:500}.edition{font-family:Georgia,serif;font-size:32px;color:#d7c093;display:flex;gap:12px;align-items:center}.edition span{font:9px Inter,sans-serif;letter-spacing:.12em;color:#9fbaae}.layout{display:grid;grid-template-columns:1fr 500px;gap:80px;align-items:center;padding-top:29px}.eyebrow{font-size:9px;color:#c5ccaa;letter-spacing:.18em;display:flex;align-items:center;gap:9px}.eyebrow i,.map-corner i{width:6px;height:6px;border-radius:50%;background:#9bc6a1;display:inline-block;box-shadow:0 0 10px #b8d2ac55}.intro h1{font-size:59px;letter-spacing:-.055em;line-height:1.25;margin:24px 0}.intro h1 em{font-style:normal;color:#e4c88e}.lead{font-size:14px;color:#adc6b4;line-height:1.95;margin-bottom:30px}.guide{display:grid;gap:17px;border-top:1px solid #91aa7d35;padding-top:23px}.guide>div{display:flex;gap:14px}.guide>div>span{font:18px Georgia,serif;color:#b9ae7e;padding-top:3px}.guide p{margin:0;font-size:11px;line-height:1.85;color:#93b2a2}.guide b{color:#dfebd7;font-size:12px;font-weight:600}.collection{margin-top:30px;color:#d4c291;font-size:11px}.collection small{display:block;color:#8eaa99;margin-top:8px;font-size:10px}.game{border:1px solid #78957d6b;border-radius:19px;overflow:hidden;background:#1b3538;box-shadow:0 24px 70px #0004}.game-top{padding:14px 15px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #819c7d33;gap:10px}.tiny{display:block;font-size:8px;letter-spacing:.13em;color:#99b6a2}.game-top strong{font-size:12px;display:block;margin-top:6px;color:#e1c68b}.small{background:#29474a;border:1px solid #5e7b67;color:#d6e3cc;border-radius:7px;padding:7px 10px;font-size:11px}.dashboard{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:8px;padding:10px}.dashboard>div{border:1px solid #526c5d66;border-radius:9px;background:#142c30;padding:9px 12px}.dashboard small{display:block;font-size:9px;color:#a2bca9}.dashboard b{display:block;font-size:21px;color:#e6ca8d;margin-top:4px;font-variant-numeric:tabular-nums}.dashboard b span{font-size:12px;color:#8eaa99}.dashboard>div:nth-child(2) b{font-size:13px;margin:6px 0}.meter{height:4px;background:#4a6353;border-radius:5px;overflow:hidden}.meter i{display:block;height:100%;width:0;background:#9bc3a3;transition:width .2s}.stage{position:relative;aspect-ratio:1;background:#345a48}.stage canvas{display:block;width:100%;height:100%;touch-action:manipulation}.map-corner{position:absolute;left:12px;top:11px;display:flex;align-items:center;gap:6px;color:#d6e1c3;font-size:8px;letter-spacing:.1em;background:#1c3338ab;padding:6px 8px;border-radius:5px;pointer-events:none}.signal-pill{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);white-space:nowrap;border:1px solid #a0bc8e55;background:#152b32da;color:#e1d4ad;padding:6px 12px;border-radius:30px;font-size:10px;pointer-events:none}.overlay{position:absolute;inset:0;background:#10272ceF;backdrop-filter:blur(7px);padding:20px;display:flex;overflow:auto;z-index:4;align-items:safe center}.hidden{display:none!important}.modal{width:100%;max-width:380px;margin:auto;text-align:center}.badge{font-size:9px;letter-spacing:.16em;color:#d7c48c}.modal h2{font-size:29px;letter-spacing:-.03em;margin:14px 0;color:#f0e9cb}.modal p{font-size:12px;line-height:1.9;color:#b0c9b4}.chapter-list{display:flex;gap:5px;flex-wrap:wrap;justify-content:center;margin:16px 0 12px}.chapter{font-size:10px;border-radius:6px;padding:6px 8px;background:#254149;color:#b8cebb;border:1px solid #56755d}.chapter.active{background:#dec28a;color:#213b38}.levels{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;margin:12px 0 17px}.level{height:32px;background:#263f43;border:1px solid #5c7861;border-radius:6px;color:#c0d1bb;font-size:11px;position:relative;padding:0}.level.active{background:#e2c68c;color:#223b32}.level.done:after{content:'★';position:absolute;right:0;top:-7px;color:#e7c784;font-size:9px}.primary,.secondary{width:100%;padding:12px;border-radius:9px;font-size:13px;font-weight:700}.primary{background:#e7c78b;color:#203a35;border:1px solid #f1d9a8;box-shadow:0 3px #9d8457}.secondary{border:1px solid #54745f;color:#d6e1ce;background:#25434a;margin-top:10px}.practice{font-size:11px;color:#c3d3ba;display:flex;gap:8px;align-items:center;justify-content:center;margin:13px 0 20px}.practice input{accent-color:#dec18a;width:16px;height:16px}.stars{font-size:38px;color:#e8c782;letter-spacing:7px;margin:12px 0}.notice{background:#142c31;padding:9px 13px;min-height:39px;font-size:11px;line-height:1.75;color:#bcd4ba;border-top:1px solid #6b8d7640}.notice.warn{color:#f0b7a1}.controls{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:10px 10px 8px}.signal-button{position:relative;min-height:62px;background:#2b4748;border:1px solid #64816c;border-radius:10px;color:#e2e8d8;box-shadow:0 3px #10252d;text-align:left;padding:10px 12px 10px 34px}.signal-button b{font-size:13px;display:block}.signal-button small{display:block;font-size:9px;color:#a7c0aa;margin-top:4px}.lamp{position:absolute;width:9px;height:9px;border-radius:50%;background:#b27e6f;left:13px;top:19px;box-shadow:0 0 0 3px #142b2e}.signal-button.active{background:#3e5d4d;border-color:#a1c38d}.signal-button.active .lamp{background:#b8d59b;box-shadow:0 0 9px #b8d59b88}.signal-button.active small{color:#cfddbd}.signal-button.requested{border-color:#dec187}.tools{display:flex;gap:6px;padding:7px 10px}.tools button{border:1px solid #526f5e;border-radius:7px;padding:8px 10px;background:#234047;color:#c8dcc3;font-size:10px}.tools button:first-child{flex:1;text-align:left}.tools button span{font-size:9px;float:right;color:#8da995;margin-left:6px}.tools button.pending{border-color:#d7b97b;color:#eed399;background:#4b4e3f}.under{font-size:9px;line-height:1.8;color:#8da99a;text-align:center;padding:4px 8px 11px}footer{display:flex;justify-content:space-between;padding:24px 0 2px;color:#91ae9b;gap:15px;font-size:10px}footer small{font-size:9px;color:#759584}@media(max-width:960px){.layout{gap:35px;grid-template-columns:1fr 470px}.intro h1{font-size:47px}.shell{padding:20px}.game{width:100%}}@media(max-width:800px){.shell{max-width:530px;padding:10px}.intro{display:none}.layout{display:block;padding-top:13px}header{padding-bottom:11px}.edition{font-size:23px}.edition span{font-size:7px;max-width:70px;line-height:1.6}.brand{font-size:10px}.brand span{font-size:7px}.game{border-radius:14px}.game-top{padding:10px 12px}.dashboard{padding:7px;gap:6px}.dashboard>div{padding:7px 9px}.dashboard b{font-size:18px}.signal-button{min-height:57px}.controls{padding:8px 8px 5px;gap:8px}.stage{max-height:56svh}.stage canvas{height:100%;position:absolute;inset:0}.modal h2{font-size:25px}.modal p{font-size:11px}.overlay{padding:16px}.levels{margin:8px 0 12px}.chapter-list{margin:11px 0 8px}.level{height:28px}.practice{margin:9px 0 14px}.notice{font-size:10px;padding:7px 11px;min-height:35px}footer{padding:15px 0;display:block;text-align:center;line-height:2}footer small{display:block}.under{font-size:8px}.stage{aspect-ratio:1}.primary,.secondary{padding:10px}}@media(prefers-reduced-motion:reduce){.meter i{transition:none}}
