@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-latin-400-normal.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-latin-500-normal.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-latin-600-normal.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-latin-700-normal.woff2) format("woff2")}:root{--paper: #fbfbf9;--ink: #1b1b1a;--ink-soft: #6b6b67;--rule: #e4e4df;--muted: #efefea;--muted-text: #b4b4ae;--accent: #c4442a;--font: "Inter", system-ui, sans-serif;--r-cell: 4px;--r-btn: 8px;--r-card: 12px;--column: 680px;--gutter: 20px;--tabbar-h: 56px}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:15px;font-weight:400;line-height:1.45;font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;touch-action:manipulation}button{font:inherit;font-variant-numeric:inherit;color:inherit;background:none;border:none;padding:0;margin:0;cursor:pointer}:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}#app{min-height:100dvh;display:flex;flex-direction:column}.view{flex:1;width:100%;max-width:var(--column);margin:0 auto;padding:20px var(--gutter) calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 24px)}.tabbar{position:fixed;inset:auto 0 0;z-index:20;display:flex;background:var(--paper);border-top:1px solid var(--rule);padding-bottom:env(safe-area-inset-bottom)}.tabbar__inner{display:flex;width:100%;max-width:var(--column);margin:0 auto}.tabbar a{flex:1;display:flex;align-items:center;justify-content:center;min-height:var(--tabbar-h);text-decoration:none;color:var(--ink-soft);font-size:13px;font-weight:400}.tabbar a[aria-current=page]{color:var(--ink);font-weight:600}.section-label{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin:0}.screen-title{font-size:18px;font-weight:600;margin:0}.body-soft{color:var(--ink-soft)}.hairline{border:none;border-top:1px solid var(--rule);margin:20px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.cell{position:relative;overflow:hidden;background:var(--muted);border-radius:var(--r-cell);aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:0;border:none}.fill{position:absolute;inset:auto 0 0;background:var(--ink)}.cell span{position:relative;z-index:1;mix-blend-mode:difference;color:#fff;font-size:9px;font-weight:600;line-height:1;letter-spacing:0}.cell--empty span{mix-blend-mode:normal;color:var(--muted-text)}.cell--selected{outline:1px solid var(--ink);outline-offset:0}.matrix--glimpse .cell--selected{outline-color:var(--accent)}button.cell{cursor:pointer}.matrix{display:grid;grid-template-columns:repeat(13,1fr);gap:2px;width:100%}.matrix--glimpse{grid-template-columns:repeat(5,1fr);max-width:190px;margin:0}.btn{min-height:52px;padding:0 20px;border-radius:var(--r-btn);font-size:16px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;transition:opacity .12s ease}.btn--raise{background:var(--accent);color:var(--paper)}.btn--fold{background:transparent;border:1px solid var(--rule);color:var(--ink)}.btn:disabled{opacity:.35;cursor:default}.text-btn{min-height:44px;padding:0 4px;font-size:13px;font-weight:600;color:var(--ink-soft)}.text-btn--danger{color:var(--accent)}.drill__top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}.drill__body{padding-top:8px}.drill__diagram{display:flex;justify-content:center;padding:14px 0 8px}.diagram{max-width:200px;height:auto}.drill__hand{margin:4px 0 0;text-align:center;font-size:44px;font-weight:700;letter-spacing:-.02em;line-height:1.1}.drill__hand .suit{font-size:.6em}.drill__sub{margin:6px 0 0;text-align:center;color:var(--ink-soft);font-size:14px}.drill__answers{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.drill__feedback:empty{display:none}.drill__verdict{margin:20px 0 0;padding-bottom:12px;font-size:15px;border-bottom:1px solid var(--ink)}.drill__verdict--miss{border-bottom-color:var(--accent)}.drill__feedback .matrix--glimpse{margin-top:16px}.drill__next{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:16px;padding:0 18px;border:1px solid var(--rule);border-radius:var(--r-btn);color:var(--ink)}.segmented[hidden]{display:none}.segmented{display:flex;border:1px solid var(--rule);border-radius:var(--r-btn);overflow:hidden;margin-bottom:12px}.segmented button{position:relative;flex:1;min-height:32px;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--ink-soft);border-right:1px solid var(--rule)}.segmented button:after{content:"";position:absolute;inset:-6px 0;min-height:44px}.segmented button:last-child{border-right:none}.segmented button[aria-pressed=true]{background:var(--muted);color:var(--ink)}.charts__grid{margin-top:16px}.charts__detail{margin-top:14px;padding-top:12px;border-top:1px solid var(--rule);font-size:14px;min-height:22px}.charts__detail--idle{color:var(--ink-soft)}.charts__meta{margin-top:6px;font-size:13px;color:var(--ink-soft)}.stats__headline{margin:4px 0 0;font-size:22px;font-weight:600}.stats__streak{margin:4px 0 0;color:var(--ink-soft);font-size:14px}.stats__table{width:100%;border-collapse:collapse;margin-top:10px}.stats__table th{text-align:left;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);padding:8px 0;border-bottom:1px solid var(--rule)}.stats__table td{padding:12px 0;border-bottom:1px solid var(--rule);font-size:15px}.stats__table td+td,.stats__table th+th{text-align:right}.leaks{display:grid;grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:12px;margin-top:12px}.leak{display:flex;flex-direction:column;gap:6px;align-items:stretch}.leak__count{font-size:11px;line-height:1.3;color:var(--ink-soft);text-align:center}.leak__count+.leak__count{margin-top:-4px}.empty{margin:12px 0 0;color:var(--ink-soft)}.about p{margin:0 0 14px;max-width:60ch}.about dl{margin:0}.about dt{font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin-top:16px}.about dd{margin:4px 0 0;max-width:60ch}.about__version{margin-top:24px;font-size:13px;color:var(--ink-soft)}.sheet__root{position:fixed;inset:0;z-index:40;display:flex;align-items:flex-end;justify-content:center}.sheet__backdrop{position:absolute;inset:0;background:#1b1b1a47}.sheet{position:relative;width:100%;max-width:var(--column);background:var(--paper);border-top:1px solid var(--rule);border-radius:var(--r-card) var(--r-card) 0 0;padding:20px var(--gutter) calc(20px + env(safe-area-inset-bottom));animation:sheet-in .16s ease-out}@keyframes sheet-in{0%{transform:translateY(12px)}}.sheet__done{width:100%;margin-top:20px}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.chip{min-height:44px;padding:0 16px;border:1px solid var(--rule);border-radius:var(--r-btn);font-size:14px;font-weight:500;color:var(--ink-soft)}.chip--on{background:var(--ink);border-color:var(--ink);color:var(--paper)}.chip:disabled{color:var(--muted-text);cursor:default}
