:root{color-scheme:dark;--bg:#142522;--paper:#e8ddbe;--gold:#dfb975;--muted:#a7b9aa;--line:#4e6557}*{box-sizing:border-box}body{margin:0;background:#0b1615;color:var(--paper);font-family:'Microsoft YaHei',sans-serif}main{position:relative;max-width:680px;margin:auto;padding:14px 18px;min-height:100svh;background:var(--bg)}button{min-height:44px;border:1px solid var(--line);border-radius:8px;background:#20372f;color:var(--paper);font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,canvas:focus-visible{outline:2px solid var(--gold);outline-offset:2px}button:disabled{opacity:.38;cursor:default}button:active:not(:disabled){filter:brightness(1.3)}header,.ledger,.heading,nav{display:flex;justify-content:space-between;align-items:center;gap:8px}header{font-family:serif;font-size:18px}header small{display:block;color:var(--muted);font:10px sans-serif;letter-spacing:2px}header button{font:12px sans-serif;background:transparent;border:0;padding:4px}small,#keyhint,footer{color:var(--muted);font-size:11px}.ledger{font-size:12px;border-block:1px solid var(--line);padding:9px 0;margin:10px 0}.ledger b{font-size:20px;color:var(--gold)}#saved{font-size:10px}h1,h2{font-family:'Songti SC',SimSun,serif;font-weight:600}h1{font-size:27px;margin:4px 0}h2{font-size:22px;margin:4px 0;color:var(--gold)}.heading{margin-top:12px}.heading small{letter-spacing:3px}#stage{font-size:12px;color:var(--gold)}#instruction{font-size:13px;line-height:1.5;margin:9px 0;min-height:39px}canvas{display:block;width:100%;height:auto;max-height:40svh;object-fit:contain;background:#11231f;border:1px solid #385547;border-radius:14px;touch-action:none}.result{min-height:75px;padding:9px 0 2px}#feedback{font-size:12px;line-height:1.6;color:#c7d5c5;margin:5px 0}#risk{font-size:11px;color:#d1af86;padding:8px 0;border-top:1px solid var(--line);min-height:34px}.actions{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:7px;min-height:44px}.actions button{font-size:13px;padding:8px 3px}#action{color:#172820;background:var(--gold);border-color:var(--gold);font-weight:bold}#keyhint{text-align:center;padding:8px 0;font-size:10px}footer{text-align:center;font-size:9px;margin-top:7px}#pause{position:absolute;inset:0;background:#0a1715ec;z-index:5;display:flex;align-items:center;justify-content:center;flex-direction:column}#pause[hidden],[hidden]{display:none!important}#resume{padding:10px 28px}.intro{margin:24px 0 17px}.intro p{font-size:12px;line-height:1.8;color:var(--muted)}#cards{display:flex;flex-direction:column;gap:8px}#cards button{display:grid;grid-template-columns:42px 1fr 18px;align-items:center;text-align:left;padding:11px 12px;min-height:69px}#cards .number{font-family:serif;font-size:23px;color:var(--gold)}#cards b{font:19px SimSun,serif}#cards small{display:block;margin-top:5px;font-size:10px}nav{margin:16px 0;font-size:12px}nav button{font-size:12px;padding:0 12px}#shelf{border-top:1px solid var(--line);font-size:11px;line-height:1.7;padding:10px 0;color:var(--muted)}@media(max-height:700px) and (orientation:portrait){main{padding:8px 14px}.heading{margin-top:5px}#instruction{margin:5px 0;min-height:36px}canvas{max-height:35svh}.result{min-height:69px}.intro{margin:16px 0}#cards button{min-height:61px;padding:7px 10px}header small{display:none}}@media(orientation:landscape) and (max-height:600px){main{max-width:1050px;padding:8px 16px}header{height:36px}.ledger{position:absolute;right:160px;top:6px;margin:0;border:0}#saved,header small,footer{display:none}#game{display:grid;grid-template-columns:1.2fr 1fr;gap:4px 18px}.heading{grid-column:2;grid-row:1;margin:0}#instruction{grid-column:2;grid-row:2;margin:0;min-height:32px;font-size:11px}canvas{grid-column:1;grid-row:1/8;max-height:calc(100svh - 62px);height:100%;width:100%}.result{grid-column:2;min-height:64px}#risk,.actions,#keyhint{grid-column:2}#risk{padding:4px 0;min-height:22px}.intro{margin:5px 0}.intro p{margin:4px 0}#cards{display:grid;grid-template-columns:1fr 1fr}#cards button{min-height:55px;padding:6px 12px}nav{margin:8px 0}#shelf{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}