:root{--bg:#101724;--card:#1b2333;--line:#2b3548;--text:#f2f4f6;--sub:#8b95a1;--blue:#3182f6;--top:calc(env(safe-area-inset-top,0px) + 56px)}[hidden]{display:none!important}*{box-sizing:border-box;margin:0}html,body{background:var(--bg);height:100%;color:var(--text);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;font-family:-apple-system,BlinkMacSystemFont,Pretendard,Apple SD Gothic Neo,Noto Sans KR,sans-serif}body{touch-action:none;-webkit-user-select:none;user-select:none;overflow:hidden}#app{height:100%;padding:var(--top) 16px calc(env(safe-area-inset-bottom,0px) + 8px);flex-direction:column;align-items:center;display:flex}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}.top{justify-content:space-between;align-items:center;gap:8px;width:100%;max-width:440px;display:flex}.seg{background:var(--card);border-radius:12px;padding:3px;display:flex}.seg button{color:var(--sub);border-radius:9px;padding:8px 12px;font-size:14px;font-weight:600}.seg button[aria-selected=true]{background:var(--line);color:var(--text)}.tools{gap:4px;display:flex}.ic{background:var(--card);border-radius:12px;place-items:center;width:40px;height:40px;display:grid}.ic svg{fill:none;width:20px;height:20px;stroke:var(--text);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.sub{color:var(--sub);font-size:13px;line-height:1.5}.stat{width:100%;max-width:440px;color:var(--sub);font-variant-numeric:tabular-nums;justify-content:space-between;margin:14px 0 8px;font-size:14px;font-weight:600;display:flex}#clock{color:var(--text)}#miss.warn{color:#f04452}#grid{background:var(--card);border:2px solid #4e5968;border-radius:8px;grid-template-columns:repeat(9,1fr);display:grid;overflow:hidden}.c{border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:calc(var(--cell,36px)*.56);color:var(--blue);font-variant-numeric:tabular-nums;place-items:center;padding:0;font-weight:600;display:grid;position:relative}.c:nth-child(9n){border-right:0}.c:nth-child(n+73){border-bottom:0}.c.br{border-right:2px solid #4e5968}.c.bb{border-bottom:2px solid #4e5968}.c.g{color:var(--text)}.c.peer{background:#222c3e}.c.same{background:#2a3a5a}.c.sel{background:#2c4a7c}.c.bad{color:#f04452;background:#3a2230}.n{font-size:calc(var(--cell,36px)*.24);color:var(--sub);grid-template-columns:repeat(3,1fr);font-weight:500;line-height:1;display:grid;position:absolute;inset:2px}.n i{place-items:center;font-style:normal;display:grid}.acts{justify-content:space-around;width:100%;max-width:440px;margin:12px 0 6px;display:flex}.acts button{color:var(--sub);flex-direction:column;align-items:center;gap:4px;padding:4px 8px;font-size:12px;display:flex;position:relative}.acts button:disabled{opacity:.35}.acts svg{fill:none;width:24px;height:24px;stroke:var(--text);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.acts b{background:var(--line);color:var(--sub);border-radius:8px;padding:1px 5px;font-size:10px;position:absolute;top:-2px;right:-6px}#notebtn[aria-pressed=true] b{background:var(--blue);color:#fff}#pad{grid-template-columns:repeat(9,1fr);gap:4px;width:100%;max-width:440px;display:grid}#pad button{border-radius:10px;flex-direction:column;align-items:center;padding:6px 0;display:flex}#pad b{color:var(--blue);font-size:30px;font-weight:600;line-height:1.1}#pad small{color:var(--sub);min-height:14px;font-size:11px}#pad button.done{visibility:hidden}#note{text-align:center;margin-top:6px}#banner{width:100%;max-width:440px;margin-top:auto}#banner.on{min-height:56px;padding-top:24px}.view{z-index:60;background:#0a0e16db;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.view[hidden]{display:none}.card{background:var(--card);text-align:center;border-radius:24px;flex-direction:column;gap:10px;width:100%;max-width:340px;padding:28px 20px 20px;display:flex}.card h2{font-size:20px;font-weight:700}.eyebrow{color:var(--blue);font-size:13px;font-weight:600}.big{font-variant-numeric:tabular-nums;font-size:48px;font-weight:800}.primary{background:var(--blue);color:#fff;border-radius:14px;padding:15px;font-size:16px;font-weight:700}#revive{background:#15c47e}.ghost{background:var(--line);border-radius:14px;padding:15px;font-weight:600}.seg button,.ic{position:relative}.seg button:after{content:"";position:absolute;inset:-8px 0}.ic:after{content:"";position:absolute;inset:-4px}
