:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff7ea;--ink:#3b2f2a;--ink-soft:#7a6a60;--card:#fff;--line:#ecdcc4;--coral:#f26d5b;--orange:#f59e4c;--green:#58b368;--teal:#3aa6a0;--blue:#4a7fd4;--purple:#8b6cc9;color:var(--ink);background:var(--bg);-webkit-text-size-adjust:100%;font-family:Hiragino Maru Gothic ProN,Hiragino Sans,Helvetica Neue,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{background:var(--bg);overscroll-behavior:none;height:100%;margin:0}body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;min-width:44px;min-height:44px}.screen{min-height:100%;padding:calc(24px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));flex-direction:column;align-items:center;display:flex}.big-button{border:3px solid var(--coral);background:var(--card);letter-spacing:.08em;border-radius:28px;width:100%;min-height:88px;font-size:32px;font-weight:700;transition:transform 80ms;box-shadow:0 4px #3b2f2a1f}.big-button:active{transform:translateY(2px)scale(.98);box-shadow:0 2px #3b2f2a1f}.big-button.secondary{border-color:var(--line);font-size:26px}.sub-button{border:2px solid var(--line);background:var(--card);border-radius:999px;min-width:120px;min-height:56px;padding:0 20px;font-size:22px;font-weight:700}.sub-button[aria-pressed=false]{color:var(--ink-soft);background:0 0}.start-screen{justify-content:space-between;gap:24px}.title{letter-spacing:.06em;text-align:center;margin:16px 0 0;font-size:clamp(40px,12vw,56px);font-weight:800}.difficulty-list{flex-direction:column;gap:20px;width:100%;max-width:440px;display:flex}.difficulty-button{min-height:96px;font-size:36px}.difficulty-easy{border-color:var(--green)}.difficulty-normal{border-color:var(--blue)}.difficulty-hard{border-color:var(--purple)}.start-footer{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.game-screen{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);background:var(--bg);flex-direction:column;display:flex;position:fixed;inset:0}.game-bar{border-bottom:2px solid var(--line);flex:none;justify-content:space-between;align-items:center;height:52px;padding:0 4px;display:flex}.bar-button{min-width:88px;height:48px;color:var(--ink-soft);background:0 0;border:none;font-size:20px;font-weight:700}.bar-remaining{font-size:20px;font-weight:700}.bar-count{font-size:26px}.playfield{flex:1;min-height:0;position:relative;overflow:hidden}.playfield-canvas{touch-action:none;display:block;position:absolute;inset:0}.pause-overlay{z-index:10;background:#fff7eaf5;flex-direction:column;justify-content:center;align-items:center;gap:40px;padding:24px;display:flex;position:fixed;inset:0}.pause-message{margin:0;font-size:36px;font-weight:800}.resume-button{max-width:360px;min-height:112px;font-size:40px}.clear-screen{justify-content:center;gap:32px}.celebration{align-items:flex-end;gap:14px;height:96px;display:flex}.celebration-ball{border-radius:50%;width:28px;height:28px;animation:1.1s cubic-bezier(.3,0,.7,1) infinite alternate bounce;box-shadow:inset -4px -5px #0000001f,inset 4px 4px #ffffff59}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-60px)}}.clear-message{letter-spacing:.06em;margin:0;font-size:clamp(44px,13vw,60px);font-weight:800}.clear-actions{flex-direction:column;gap:20px;width:100%;max-width:440px;display:flex}.records-screen{gap:20px}.records-header{align-items:center;gap:16px;width:100%;max-width:440px;display:flex}.records-title{margin:0;font-size:32px;font-weight:800}.records-stats{flex-direction:column;gap:10px;width:100%;max-width:440px;margin:0;display:flex}.stat{background:var(--card);border-radius:20px;justify-content:space-between;align-items:baseline;gap:12px;padding:14px 18px;display:flex}.stat dt{font-size:20px;font-weight:700}.stat dd{white-space:nowrap;margin:0;font-size:20px;font-weight:700}.stat-number{margin-right:4px;font-size:36px}.recent-list{width:100%;max-width:440px;margin:0;padding:0;list-style:none}.recent-day{border-bottom:1px solid var(--line);color:var(--ink-soft);justify-content:space-between;align-items:baseline;padding:10px 18px;font-size:20px;display:flex}.recent-day.played{color:var(--ink);font-weight:700}.recent-number{margin-right:4px;font-size:24px}
