*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
:root{color-scheme:dark;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:#f0e5cd;background:#152120}
body{margin:0;position:fixed;inset:0;overflow:hidden;overscroll-behavior:none}
#game{position:absolute;left:50%;top:50%;margin-left:-180px;margin-top:-320px;width:360px;height:640px;overflow:hidden;transform-origin:center;background:#202d2c;box-shadow:0 12px 70px #0005}
canvas,.screen{position:absolute;inset:0;width:100%;height:100%}canvas{display:block;pointer-events:none}[hidden]{display:none!important}.screen{pointer-events:none;text-align:center}
button{pointer-events:auto;touch-action:manipulation;cursor:pointer;border:0;font:inherit;font-weight:700;min-height:50px}button:focus-visible{outline:3px solid #e8ac8d;outline-offset:3px}.primary:active,.secondary:active{translate:0 2px}
.eyebrow{color:#c2ba9e;letter-spacing:3px;font-size:11px;margin-top:51px}h1{font-size:32px;letter-spacing:.02em;margin:19px 12px 12px;line-height:1.3}.rule{font-size:14px;color:#d4cbb6;margin:0 12px;line-height:1.7}
.title-bottom{position:absolute;top:479px;left:30px;right:30px}.chips{display:flex;justify-content:center;gap:30px;color:#d2c7ad;font-size:13px;margin-bottom:24px}.chips span+span{border-left:1px solid #657369;padding-left:30px}
.primary{width:100%;height:58px;border-radius:12px;background:#ebd9b6;color:#273a34;font-size:18px;box-shadow:0 5px 0 #928369,0 10px 20px #0003}.small{font-size:11px;color:#b7b6a1;margin:20px 0 0;line-height:1.5}.secondary{display:block;width:100%;height:50px;background:transparent;color:#d1c7ae;font-size:14px;margin:12px auto 0}
.hud{position:absolute;top:17px;left:24px;right:24px;display:flex;justify-content:space-between;text-align:left}.hud span{display:block;font-size:10px;color:#c6c2ac}.hud strong{font-size:29px;font-variant-numeric:tabular-nums;line-height:1.15}.clock{text-align:right}.timer{position:absolute;top:71px;left:24px;right:24px;height:3px;background:#516056}.timer i{display:block;width:100%;height:100%;background:#dca27e;transform-origin:left}
.progress{position:absolute;top:84px;left:24px;right:24px;display:flex;justify-content:space-between;font-size:11px;color:#c8c4ae}.progress b{color:#f0e5cd;font-size:12px;margin-left:4px}.target-label{position:absolute;top:116px;left:26px;right:26px;display:flex;justify-content:space-between;font-size:10px;color:#b9c1ab}.combo b{color:#e8b492;font-size:12px}
.current-word{position:absolute;top:136px;left:20px;width:320px;height:42px;font-size:30px;line-height:42px;font-weight:700;letter-spacing:5px;color:#f0e5cd}.current-word .done{color:#92ab98}.current-word .next{color:#f0b494;border-bottom:2px solid #e1a07e}
#slots{position:absolute;top:189px;left:20px;right:20px;display:flex;justify-content:center;gap:8px}.slot{width:44px;height:42px;border:1px solid #738076;border-radius:8px;font-size:25px;line-height:40px;color:#a9b6a6;background:#17242166}.slot.linked{color:#283b33;background:#e4d5b6;border-color:#eadfc8;box-shadow:0 3px 0 #8b806b}.slot.waiting{border-color:#e3a582;border-style:dashed}
#next-hint{position:absolute;top:239px;width:100%;font-size:11px;color:#c9c5b1;line-height:16px}#next-letter{color:#efb190;font-size:14px;margin-left:5px}
#tiles{position:absolute;top:258px;left:0;width:360px;height:326px;overflow:hidden;pointer-events:none}.tile-target{position:absolute;width:60px;height:60px;min-height:60px;padding:0;border-radius:10px;background:transparent;color:transparent;touch-action:none;user-select:none}.tile-target:focus-visible{outline-offset:-3px}
#feedback{position:absolute;top:590px;left:10px;right:10px;min-height:18px;font-size:12px;font-weight:600;line-height:18px;color:#edb592}#feedback.wrong{color:#f0a49b}#hint{position:absolute;top:615px;left:12px;right:12px;font-size:11px;color:#b9c1ad;margin:0}
.result{background:#202d2cf5;padding:0 30px}.result .eyebrow{margin-top:42px}.result-mark{font-size:52px;color:#c38e6d;margin-top:17px}.result h2{font-size:27px;margin:12px 0 23px;line-height:1.35}.result-label{font-size:12px;color:#c9c0a9}#result-score{display:block;font-size:68px;color:#eedbb5;line-height:1.35;font-variant-numeric:tabular-nums}.result-stats{display:grid;grid-template-columns:1fr auto;gap:16px;text-align:left;font-size:13px;color:#c8c1ab;padding:19px 14px 33px}.result-stats b{color:#eee0c1}.result .small{margin-top:13px}html[lang="en"] h1{font-size:28px}html[lang="en"] .current-word{letter-spacing:4px}
@media(prefers-reduced-motion:reduce){button:active{translate:none}}
