:root{--paper:#f5f2eb;--ink:#282e29;--muted:#7e8478;--line:#dddcd2;--accent:#c8734e}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px Arial,'Microsoft JhengHei',sans-serif}.shell{max-width:1100px;padding:0 40px;margin:auto}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,canvas:focus-visible{outline:3px solid var(--accent);outline-offset:5px}nav{min-height:96px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-weight:700;letter-spacing:3px;font-size:21px}.brand span{display:block;font-size:8px;margin-top:8px;letter-spacing:2px;color:var(--muted)}.quiet{border:1px solid var(--line);padding:10px 16px;background:transparent;border-radius:30px;color:var(--muted)}main{padding:55px 0}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--muted)}h1{font:normal 58px/1.3 Georgia,'PMingLiU',serif;letter-spacing:2px;margin:24px 0 18px}h1 span{color:var(--accent)}.intro{line-height:2;color:var(--muted)}.section-label{display:flex;justify-content:space-between;align-items:center;margin:48px 0 20px}.section-label h2{font-size:14px;font-weight:500}.section-label>span{font-size:9px;letter-spacing:2px;color:var(--muted)}.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.card{border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:transform .2s;background:#fbf9f3}.card:hover{transform:translateY(-4px)}.art{height:190px;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.keys{background:#e8e4d9;gap:5px}.keys i{width:32px;height:110px;background:#faf8f2;border-radius:0 0 5px 5px;border:1px solid #d0ccbf;position:relative}.keys i:nth-child(2n):after{content:'';position:absolute;background:#30372f;width:21px;height:68px;right:-14px;top:0;z-index:1;border-radius:0 0 3px 3px}.streets{background:repeating-linear-gradient(0deg,#8e9c7e 0 38px,#535e56 38px 95px,#b0b896 95px 133px,#535e56 133px 190px)}.chicken{font-size:48px;position:absolute;left:48%;top:76px}.car{font-size:72px;color:#d88a60;position:absolute;left:15%;top:13px}.car.second{left:73%;top:117px;color:#dfcb8e}.card-body{padding:26px}h3{font:normal 28px Georgia,'PMingLiU',serif;margin:15px 0}h3 b{float:right;font:normal 22px Arial;color:var(--accent)}.card p{color:var(--muted);font-size:12px;line-height:2}.tag{display:inline-block;font-size:10px;border-top:1px solid var(--line);padding-top:16px;margin-top:10px;width:100%;color:var(--accent)}footer{border-top:1px solid var(--line);padding:24px 0;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}footer span:last-child{font-size:8px;letter-spacing:1px}.game-layout{display:grid;grid-template-columns:1fr 440px;gap:50px;align-items:start}.game-layout h1{font-size:46px}.game-panel{background:#fbf9f3;border:1px solid var(--line);border-radius:14px;padding:20px}.stats{display:flex;justify-content:space-between;margin-bottom:15px;color:var(--muted);font-size:12px}.stats strong{font-size:24px;color:var(--ink);margin-left:8px}canvas{display:block;width:100%;aspect-ratio:400/520;background:#a9b88f;border-radius:8px;touch-action:none}.controls{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:250px;margin:15px auto}.controls button,.primary{min-height:44px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--ink);touch-action:manipulation}.controls button:first-child{grid-column:2}.controls button:nth-child(2){grid-column:1}.primary{background:var(--accent);color:white;border:0;padding:12px 24px}.actions{display:flex;gap:10px;align-items:center}.status{min-height:40px;line-height:1.7;color:var(--muted)}@media(max-width:760px){.shell{padding:0 20px}nav{min-height:78px}main{padding:32px 0}h1{font-size:42px}.cards,.game-layout{grid-template-columns:1fr}.game-layout{gap:20px}.game-layout h1{font-size:34px;margin:12px 0}.art{height:160px}.section-label{margin-top:30px}.game-panel{width:100%;max-width:440px;margin:auto;padding:14px}footer{gap:15px}footer span:last-child{max-width:130px;line-height:1.6}.game-layout .intro{font-size:12px}}@media(prefers-reduced-motion:reduce){.card{transition:none}}
