@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-400-normal-CtwdMZP0.woff2) format("woff2"),url(/assets/barlow-latin-400-normal-Gqj0RTbC.woff) format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-500-normal-BRhHB0xN.woff2) format("woff2"),url(/assets/barlow-latin-500-normal-BAaAwKGi.woff) format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-600-normal-DMnFtVx9.woff2) format("woff2"),url(/assets/barlow-latin-600-normal-DznpAvW9.woff) format("woff")}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-latin-700-normal-Bku5AOSK.woff2) format("woff2"),url(/assets/barlow-latin-700-normal-AkmsA7ur.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-condensed-latin-500-normal-BZhxI-S8.woff2) format("woff2"),url(/assets/barlow-condensed-latin-500-normal-CgFv4DbK.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-BN11TKSn.woff2) format("woff2"),url(/assets/barlow-condensed-latin-600-normal-CX7qwx3H.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-B9NQhHK3.woff2) format("woff2"),url(/assets/barlow-condensed-latin-700-normal-IaWpoxiT.woff) format("woff")}:root{--bg: #131a29;--surface: #1b2438;--surface-2: #253049;--line: #34415f;--ink: #e8eef8;--ink-2: #9ba9c4;--accent: #ffd166;--on-accent: #1a1503;--raise: #ff6f4e;--call: #35b8c4;--fold: #1a2235;--on-action: #10151f;--on-fold: #7c8aa8;--good: #5fd39a;--bad: #ff8a80;--display: "Barlow Condensed", "Arial Narrow", sans-serif;--body: "Barlow", system-ui, sans-serif;--radius: 16px;--suit-s: #e8eef8;--suit-h: #ff7a70;--suit-d: #6fb1ff;--suit-c: #6fd69a;color-scheme:dark}*{box-sizing:border-box;margin:0;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font:400 16px/1.45 var(--body);overscroll-behavior:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{opacity:.45;cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{height:100%;max-width:520px;margin:0 auto;display:flex;flex-direction:column}.screen{flex:1;overflow-y:auto;padding:calc(env(safe-area-inset-top) + 14px) 16px 24px;-webkit-overflow-scrolling:touch}h1{font:700 34px/1.05 var(--display)}h2{font:700 24px/1.1 var(--display)}h3{font:600 14px/1.3 var(--body);color:var(--ink-2);margin:18px 0 8px}.muted{color:var(--ink-2)}.small{font-size:14px}.row{display:flex;align-items:center;justify-content:space-between;gap:12px}.stack{display:flex;flex-direction:column;gap:8px}.gap{margin-top:14px}.btn{min-height:48px;padding:0 16px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface-2);font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform 80ms ease-out,background .12s}.btn:active:not(:disabled){transform:scale(.97)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.ghost{background:none}.btn.danger{color:var(--bad)}.btn.wide{width:100%}.btn.big{min-height:56px;font-size:18px}.btn svg,.icon-btn svg{width:18px;height:18px;flex:none}.icon-btn{width:44px;height:44px;border-radius:14px;border:1px solid var(--line);background:var(--surface);display:inline-flex;align-items:center;justify-content:center;flex:none}.format{min-height:44px;padding:0 12px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:6px}.format svg{width:14px;height:14px}.chips{display:flex;flex-wrap:wrap;gap:8px}.scroll-row{display:flex;gap:6px;overflow-x:auto;margin:0 -16px;padding:0 16px;scrollbar-width:none}.scroll-row::-webkit-scrollbar{display:none}.chip{min-height:44px;padding:0 14px;border-radius:22px;border:1px solid var(--line);background:var(--surface-2);font-weight:500;font-size:15px;white-space:nowrap;display:inline-flex;align-items:center;gap:6px;flex:none;transition:background .12s,transform 80ms ease-out}.chip:active{transform:scale(.96)}.chip.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.chip .count{background:#00000047;border-radius:10px;padding:0 7px;font-size:13px;font-weight:700}.chip:not(.on) .count{background:var(--line)}.seats{display:flex;gap:6px}.seats .seat{flex:1;min-width:0;min-height:44px;border-radius:14px;border:1px solid var(--line);background:none;color:var(--ink-2);font-weight:600;font-size:14px;padding:0 2px}.seats .seat.on{background:var(--surface-2);color:var(--ink);border-color:var(--accent)}.seat-label{font-size:13px;color:var(--ink-2);width:58px;flex:none}.seat-line{display:flex;align-items:center;margin-top:8px}.seat-line .seats{flex:1;min-width:0}.grid{display:grid;grid-template-columns:repeat(13,1fr);gap:3px;margin:12px -8px 0;touch-action:pan-y;user-select:none;-webkit-user-select:none}.grid.painting{touch-action:none}.cell{aspect-ratio:1;border-radius:7px;border:0;padding:0;display:flex;align-items:center;justify-content:center;font:600 14px/1 var(--display);color:var(--on-action);letter-spacing:-.01em}.cell.f{color:var(--on-fold)}.cell.part{color:#fff;text-shadow:0 0 3px rgba(0,0,0,.9),0 1px 2px rgba(0,0,0,.8)}.cell.sel{outline:2px solid var(--accent);outline-offset:0;position:relative;z-index:1}.cell.marked{outline:3px solid var(--ink);outline-offset:0;position:relative;z-index:1}.legend{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:12px;font-size:14px;color:var(--ink-2)}.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:6px;vertical-align:-1px}.legend b{color:var(--ink);font-weight:600}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px}.hand-name{font:700 24px/1 var(--display)}.bar{display:flex;height:8px;border-radius:4px;overflow:hidden;margin-top:10px;background:var(--fold)}.spot-title{font:600 21px/1.15 var(--display);margin-top:14px}.badge{font-size:12px;font-weight:600;padding:2px 8px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);color:var(--ink-2)}.tabs{display:flex;margin:0 12px calc(env(safe-area-inset-bottom) + 10px);padding:6px;background:var(--surface);border:1px solid var(--line);border-radius:22px;flex:none}.tabs button{flex:1;min-height:50px;background:none;border:0;color:var(--ink-2);font-size:12px;font-weight:600;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border-radius:16px}.tabs svg{width:22px;height:22px}.tabs button[aria-current=page]{color:var(--accent)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#04070e99;z-index:10;animation:fade .16s ease-out}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:11;max-width:520px;margin:0 auto;max-height:88%;overflow-y:auto;background:var(--surface);border:1px solid var(--line);border-bottom:0;border-radius:22px 22px 0 0;padding:10px 16px calc(env(safe-area-inset-bottom) + 20px);animation:rise .22s cubic-bezier(.2,.8,.2,1)}.grab{width:40px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 12px}@keyframes fade{0%{opacity:0}}@keyframes drop{0%{transform:translateY(-20px);opacity:0}}@keyframes rise{0%{transform:translateY(40px);opacity:0}}.field{display:flex;flex-direction:column;gap:6px;margin-top:14px}.field label,.label{font-size:14px;font-weight:600;color:var(--ink-2)}.input{min-height:48px;padding:10px 12px;border-radius:14px;border:1px solid var(--line);background:var(--bg);width:100%;font-size:16px}textarea.input{min-height:84px;resize:vertical}.swatches{display:flex;gap:10px;flex-wrap:wrap}.swatch{width:44px;height:44px;border-radius:50%;border:3px solid transparent}.swatch.on{border-color:var(--ink)}.item{display:flex;align-items:center;gap:12px;min-height:62px;padding:8px 12px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:100%;text-align:left}.item .name{font-weight:600}.item .sub{color:var(--ink-2);font-size:13px}.item .end{margin-left:auto;color:var(--ink-2);font-size:13px;white-space:nowrap}.dot{width:36px;height:36px;border-radius:50%;flex:none;display:flex;align-items:center;justify-content:center;font-weight:700;color:#14110b}.empty{text-align:center;color:var(--ink-2);padding:28px 12px}.empty p{margin-bottom:14px}.pc{display:inline-flex;align-items:center;justify-content:center;gap:1px;min-width:34px;height:42px;padding:0 5px;border-radius:8px;background:var(--bg);border:1px solid var(--line);font:700 20px/1 var(--display)}.pc.big{min-width:74px;height:100px;border-radius:14px;font-size:46px;flex-direction:column;gap:2px;background:var(--surface-2)}.pc.big .suit{font-size:30px}.pc.blank{color:var(--ink-2);border-style:dashed;font-weight:500}.s-s{color:var(--suit-s)}.s-h{color:var(--suit-h)}.s-d{color:var(--suit-d)}.s-c{color:var(--suit-c)}.cards{display:inline-flex;gap:6px}.picker{display:grid;grid-template-columns:repeat(13,1fr);gap:3px}.picker button{aspect-ratio:.72;border-radius:6px;border:1px solid var(--line);background:var(--bg);font:700 15px/1 var(--display);padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px}.picker button .suit{font-size:11px}.picker button.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.picker button.on span{color:var(--on-accent)}.progress{height:6px;border-radius:3px;background:var(--surface-2);overflow:hidden}.progress span{display:block;height:100%;background:var(--accent);transition:width .2s ease-out}.ask{text-align:center;padding:22px 0 8px}.ask .cards{gap:12px;margin-top:18px}.answers{display:flex;gap:8px;margin-top:22px}.answers .btn{flex:1;min-height:64px;font-size:19px;font-weight:700;padding:0 6px}.answers .a-raise{background:var(--raise);border-color:var(--raise);color:var(--on-action)}.answers .a-call{background:var(--call);border-color:var(--call);color:var(--on-action)}.verdict{display:flex;align-items:center;gap:10px;font:700 26px/1.1 var(--display)}.verdict svg{width:28px;height:28px}.verdict.good{color:var(--good)}.verdict.bad{color:var(--bad)}.stat{font:700 40px/1 var(--display)}.meter{height:8px;border-radius:4px;background:var(--surface-2);position:relative;margin-top:6px}.meter span{position:absolute;top:0;bottom:0;left:0;border-radius:4px;background:var(--call)}.meter i{position:absolute;top:-4px;bottom:-4px;width:3px;border-radius:2px;background:var(--accent)}.compare{display:grid;grid-template-columns:1fr auto;gap:2px 12px;font-size:14px}.days{display:flex;align-items:flex-end;justify-content:flex-end;gap:4px;height:64px;flex:1;min-width:0}.days span{flex:1;max-width:18px;background:var(--call);border-radius:4px 4px 0 0;min-height:3px}.axis{position:relative;height:10px;border-radius:5px;background:var(--surface-2);margin:6px 0 2px}.axis i{position:absolute;top:-3px;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:var(--accent);border:2px solid var(--bg)}.axis-ends{display:flex;justify-content:space-between;font-size:12px;color:var(--ink-2)}.counter{display:flex;align-items:center;gap:8px}.counter .n{min-width:26px;text-align:center;font-weight:700}.counter .icon-btn{width:40px;height:40px}.line-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.line-item:last-child{border-bottom:0}.toast{position:fixed;left:16px;right:16px;top:calc(env(safe-area-inset-top) + 10px);max-width:488px;margin:0 auto;z-index:20;background:var(--ink);color:var(--bg);border-radius:14px;padding:10px 10px 10px 16px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:600;animation:drop .18s ease-out}.toast button{min-height:40px;padding:0 12px;border-radius:10px;border:0;background:#00000024;color:inherit;font-weight:700}.street{font:600 17px var(--display);color:var(--accent);margin-top:12px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}}@media (max-width: 380px){.cell{font-size:12.5px;border-radius:5px}.grid{gap:2px}}
