:root{color-scheme:dark;--bg:#091c2c;--panel:#102c3d;--mint:#a2f3dc;--text:#edf5ff;--muted:#a8becb;--line:#294957}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 85% 25%,#123848 0,transparent 55%),var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,"Microsoft YaHei",sans-serif}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ffcf76;outline-offset:4px}header,main,footer{max-width:1260px;margin:auto}header{padding:32px 36px;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:16px;align-items:center;text-decoration:none;color:var(--text);font-weight:750;letter-spacing:2px}.brand small{display:block;color:var(--muted);font-size:12px;letter-spacing:2px;margin-top:4px;font-weight:400}.logo{border:1px solid #5b9b98;background:#122f3c;border-radius:16px;font-size:30px;font-style:italic;color:var(--mint);width:58px;height:58px;text-align:center}.icon{border:1px solid var(--line);border-radius:16px;width:48px;height:48px;background:transparent;color:var(--text);font-size:25px}main{padding:26px 36px 35px}#home{display:grid;grid-template-columns:1fr 1.08fr;gap:64px;align-items:center;min-height:660px}.eyebrow{color:var(--mint);font-size:14px;letter-spacing:3px;font-weight:650}h1{font-size:clamp(38px,4.5vw,62px);line-height:1.23;letter-spacing:-1px;margin:28px 0}h1 em{font-style:normal;color:var(--mint)}.lead{color:var(--muted);font-size:18px;line-height:1.9}.facts{display:flex;flex-wrap:wrap;gap:24px;color:#c4d7df;margin:26px 0;font-size:14px}form label{display:block;margin-bottom:10px}#startForm{border:1px solid var(--line);background:#132f40;padding:22px;border-radius:22px}.startrow{display:flex;gap:10px;flex-wrap:wrap}input{background:#0b2332;border:1px solid #3c5d6c;border-radius:12px;color:white;padding:13px 15px;min-width:0;width:100%}.startrow input{flex:1 1 160px}.primary{border:0;border-radius:12px;background:var(--mint);color:#082c32;font-weight:750;padding:14px 22px;display:inline-flex;justify-content:center;align-items:center;gap:24px}.primary:hover{background:#c5ffed}.muted{color:var(--muted)}#startForm p{font-size:12px;margin:12px 0 0}.preview,.boardpanel{border:1px solid var(--line);border-radius:26px;background:#0e2939;overflow:hidden;box-shadow:0 24px 60px #0002}.preview{transform:rotate(-2deg)}.maphead{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:22px;font-size:12px;letter-spacing:1px}.tag{color:var(--mint);border:1px solid #376060;padding:5px 9px;border-radius:8px;white-space:nowrap}svg{display:block;width:100%;height:auto}.mapcaption{padding:20px 26px;border-top:1px solid var(--line);display:flex;gap:18px;align-items:center}.mapcaption>span{font-size:36px;color:#ffcf76}.mapcaption p{margin:3px 0;color:var(--muted);font-size:14px}.gamehead{display:flex;justify-content:space-between;align-items:center;gap:20px}h2{font-size:28px;margin:4px 0 20px}.stats{display:flex;align-items:center;gap:20px;flex-wrap:wrap}#lives{color:#ffa6b4;letter-spacing:4px;font-size:22px}#coins{color:#ffcf76}.quiet{color:var(--muted);background:transparent;border:1px solid var(--line);border-radius:10px;padding:8px 14px}.steps{display:flex;gap:8px;margin:12px 0 28px}.step{flex:1;border-top:3px solid #36505b;padding-top:10px;font-size:14px;color:var(--muted)}.step.active{border-color:var(--mint);color:var(--mint)}.step.done{border-color:#52a593}.playlayout{display:grid;grid-template-columns:1.7fr 1fr;gap:28px}aside{background:#132f40;padding:26px;border:1px solid var(--line);border-radius:22px}h3{font-size:25px;line-height:1.6;margin:12px 0}.coords{display:flex;gap:12px}.coords label{flex:1}.coords input{margin-top:8px}#answerForm button,#next{width:100%}#feedback{min-height:66px;padding:15px 0;color:var(--mint)}#feedback.wrong{color:#ffc4ba}.hint{border-top:1px solid var(--line);margin-top:24px;padding-top:22px;color:var(--muted)}.hint b{color:#edf5ff}.hint p{font-size:14px}.hint span{color:var(--mint);font-size:14px}.boardnote{text-align:center;color:var(--muted);font-size:14px;padding:0 16px 12px}.point{cursor:pointer;outline:none}.point:hover .hit,.point:focus .hit{fill:#a2f3dc44;stroke:var(--mint);stroke-width:2}.point .hit{fill:transparent;stroke:transparent}.point.selected .hit{fill:#a2f3dc55;stroke:var(--mint)}#result{text-align:center;padding:55px 10px;min-height:620px}.medal{font-size:80px;color:#ffcf76}#result .quiet{display:block;margin:20px auto}footer{padding:20px 36px 30px;color:#7895a5;font-size:12px}dialog{background:#132f40;border:1px solid #52707a;border-radius:22px;color:var(--text);max-width:520px;padding:30px;line-height:1.9}dialog::backdrop{background:#000a}[hidden]{display:none!important}@media(max-width:850px){#home{gap:32px;grid-template-columns:1fr;min-height:0}.preview{transform:none}.intro{max-width:600px}h1{font-size:44px}.playlayout{grid-template-columns:1fr}.gamehead{align-items:flex-start;flex-direction:column}.steps .step{font-size:12px}.maphead{padding:14px}.brand{font-size:14px;letter-spacing:1px}header{padding:20px}main{padding:14px 20px}footer{padding:22px 20px}.stats{gap:12px}.preview{margin-top:6px}.lead{font-size:16px}h2{font-size:24px}.primary{padding:14px 18px}#startForm{padding:18px}.facts{gap:18px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s}#game{animation:appear .3s}@keyframes appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}}
