:root{--bg: #ece8df;--surface: #f8f5ee;--ink: #1b2724;--muted: #68726d;--line: #d6d0c2;--accent: #c2993f;--accent-hi: #d6b05a;--accent-edge: #8f6e24;--accent-ink: #85641c;--on-accent: #1b2724;--good: #2f7f62;--good-bg: #dbeadf;--on-good: #f4efe3;--danger: #8e2f3a;--danger-hi: #a43d49;--danger-edge: #5e1b24;--on-danger: #f6ede0;--felt: #1b463f;--felt-hi: #245a50;--cell: rgba(255, 255, 255, .06);--cell-line: rgba(255, 255, 255, .07);--t-ink: #1d2623;--t-num: #f1e8d3;--t-num-hi: #fbf6ea;--t-num-edge: #b9ab88;--t-op: #e4d6b0;--t-op-hi: #efe4c6;--t-op-edge: #a99a6f;--t-fn: #b4cdc2;--t-fn-hi: #c8dcd2;--t-fn-edge: #78a090;--t-calc: #d2a94f;--t-calc-hi: #e3c273;--t-calc-edge: #8d6a25;--t-eq: #202826;--t-eq-hi: #303a37;--t-eq-edge: #090c0b;--t-eq-ink: #f2e9d6;--ring-pending: #f6f0e2;--ring-ok: #6fd1a6;--display: "Cormorant Garamond", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--sans: "Jost", "Avenir Next", "Segoe UI", system-ui, -apple-system, sans-serif;--math: "STIX Two Text", "Cambria Math", "Times New Roman", Georgia, serif;--cell-size: 46px;--rack-tile: 46px}@media (prefers-color-scheme: dark){:root{--bg: #0c1513;--surface: #14211e;--ink: #ece5d4;--muted: #92a098;--line: #26372f;--accent-ink: #d6b05a;--good: #55b78f;--good-bg: #14302a;--on-good: #0c1513;--felt: #0b231e;--felt-hi: #123a32;--cell: rgba(255, 255, 255, .045);--cell-line: rgba(255, 255, 255, .06)}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}body{overscroll-behavior:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;padding:0}button:disabled{cursor:default}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ic{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.tile{position:relative;width:100%;height:100%;display:grid;place-items:center;border-radius:8px;background:linear-gradient(180deg,var(--t-num-hi),var(--t-num));color:var(--t-ink);box-shadow:0 2px 0 var(--t-num-edge),0 3px 7px #0000004d,inset 0 1px #ffffffbf,inset 0 0 0 1px #ffffff40;font-family:var(--math);font-size:calc(var(--ts, 46px) * .56);line-height:1;-webkit-user-select:none;user-select:none}.tile.op{background:linear-gradient(180deg,var(--t-op-hi),var(--t-op));box-shadow:0 2px 0 var(--t-op-edge),0 3px 7px #0000004d,inset 0 1px #fff9}.tile.fn{background:linear-gradient(180deg,var(--t-fn-hi),var(--t-fn));box-shadow:0 2px 0 var(--t-fn-edge),0 3px 7px #0000004d,inset 0 1px #ffffff80}.tile.calc{background:linear-gradient(180deg,var(--t-calc-hi),var(--t-calc));box-shadow:0 2px 0 var(--t-calc-edge),0 3px 7px #00000052,inset 0 1px #ffffff73}.tile.eq{background:linear-gradient(180deg,var(--t-eq-hi),var(--t-eq));color:var(--t-eq-ink);box-shadow:0 2px 0 var(--t-eq-edge),0 3px 7px #00000059,inset 0 1px #ffffff1f;font-family:var(--sans);font-weight:500}.tile.var .face,.tile.fn .face{font-style:italic}.tile.num .face{font-style:normal;font-weight:600}.tile .face{display:inline-flex;align-items:baseline;white-space:nowrap;letter-spacing:-.02em}.tile.long .face{font-size:.62em}.tile sup{font-size:.6em;font-style:normal;line-height:1;margin-left:2px;transform:translateY(-.7em)}.tile .ddx{font-size:.62em;font-style:normal;font-weight:600;letter-spacing:-.04em}.tile .fn{font-size:.62em;font-style:normal;font-weight:600}.integral{display:inline-block;width:.5em;height:1.15em;vertical-align:-.22em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;transform:skew(-9deg)}.tile .integral{width:.66em;height:1.6em;vertical-align:baseline;align-self:center;stroke-width:1.5}.integral circle{fill:currentColor;stroke:none}.frac{display:inline-grid;justify-items:center;font-size:.66em;line-height:1;font-style:normal;vertical-align:middle}.frac i{font-style:normal;padding:0 .1em}.frac i:first-child{border-bottom:.09em solid currentColor;padding-bottom:.04em}.frac i:last-child{padding-top:.06em}.tile .pts,.tile .mult{position:absolute;font-family:var(--sans);font-weight:600;font-style:normal;line-height:1}.tile .pts{right:11%;bottom:8%;font-size:calc(var(--ts, 46px) * .22);opacity:.6}.tile .mult{right:7%;top:6%;font-size:calc(var(--ts, 46px) * .19);background:var(--t-ink);color:var(--t-num-hi);border-radius:6px;padding:2px 3px;letter-spacing:.02em}.tile.calc .face{transform:translateY(.2em)}.tile.big{--ts: 76px}.tile.last{box-shadow:0 2px 0 var(--t-num-edge),0 0 0 2.5px var(--accent-hi),0 0 14px #d6b05a73}.tile.pending{box-shadow:0 4px #00000052,0 0 0 2.5px var(--ring-pending);transform:translateY(-2px)}.tile.pending.ok{box-shadow:0 4px #00000052,0 0 0 3px var(--ring-ok),0 0 14px #6fd1a666}.tile.pending.selected{box-shadow:0 6px #00000052,0 0 0 3px var(--accent-hi)}.tile.pop{animation:pop .22s cubic-bezier(.3,1.6,.5,1)}@keyframes pop{0%{transform:scale(.55);opacity:.4}to{transform:none;opacity:1}}.home{min-height:100dvh;max-width:460px;margin:0 auto;padding:8dvh 20px 32px;display:flex;flex-direction:column;align-items:center;position:relative}.home-tiles{display:flex;flex-wrap:nowrap;justify-content:center;gap:8px;margin-bottom:26px;padding:18px 22px;border-radius:18px;background:radial-gradient(120% 140% at 50% 20%,var(--felt-hi),var(--felt));box-shadow:inset 0 0 0 1px var(--cell-line),0 10px 30px #00000038}.home-tiles .tile{width:64px;height:64px}.home-tiles .tile.big{--ts: 64px}.home-tiles>:nth-child(odd){transform:rotate(-3deg)}.home-tiles>:nth-child(2n){transform:rotate(2.5deg) translateY(3px)}.wordmark{font-family:var(--display);font-weight:700;font-size:40px;letter-spacing:.24em;text-transform:uppercase;margin:0;padding-left:.24em;line-height:1.05}.wordmark.small{font-size:21px;letter-spacing:.26em;padding-left:.26em}.tagline{display:flex;align-items:center;gap:14px;color:var(--muted);margin:8px 0 30px;font-family:var(--display);font-style:italic;font-weight:500;font-size:20px;letter-spacing:.02em}.tagline:before,.tagline:after{content:"";width:34px;height:1px;background:var(--accent)}.modes{width:100%;display:grid;gap:10px}.mode-card{display:flex;align-items:center;gap:14px;width:100%;padding:13px 16px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:14px;transition:transform .12s,border-color .12s,box-shadow .12s}.mode-card:hover:not(:disabled){border-color:var(--accent);transform:translateY(-1px);box-shadow:0 6px 18px #0000001a,0 0 0 1px var(--accent) inset}.mode-card:active:not(:disabled){transform:translateY(1px);box-shadow:none}.mode-card:disabled{opacity:.5}.mode-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;color:var(--accent-ink);border:1px solid var(--accent);background:transparent}.mode-icon .ic{width:22px;height:22px}.mode-text{flex:1;display:grid;gap:1px}.mode-text strong{font-size:17px;font-weight:600;letter-spacing:.01em}.mode-text small{color:var(--muted);font-size:13.5px}.chev{color:var(--accent-ink);display:grid}.soon{font-style:normal;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.link{margin-top:26px;color:var(--muted);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:4px;font-size:14px;letter-spacing:.02em}.home.online{padding-top:10dvh;gap:18px}.online-title{font-family:var(--display);font-weight:700;font-size:34px;margin:0;letter-spacing:.01em}.field{width:100%;display:grid;gap:6px;font-size:13px;color:var(--muted);letter-spacing:.04em}.field input,.join-row input{font:inherit;font-size:17px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 14px;width:100%}.field input:focus,.join-row input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #c2993f38}.join-row{width:100%;display:flex;gap:10px}.join-row input{text-transform:uppercase;letter-spacing:.3em;text-align:center;font-weight:600;font-family:var(--math)}.join-row .primary{flex:none;padding:0 22px}.mode-card.resume{border-style:dashed;border-color:var(--accent)}.lobby{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:24px;text-align:center}.lobby .code{font-family:var(--math);font-weight:600;font-size:60px;letter-spacing:.18em;background:linear-gradient(180deg,var(--t-num-hi),var(--t-num));color:var(--t-ink);border-radius:16px;padding:10px 26px 10px 36px;box-shadow:0 5px 0 var(--t-num-edge),0 12px 26px #00000040}.lobby .primary{flex:none;padding:14px 30px}.lobby .waiting{font-weight:500;margin:12px 0 0}.lobby .small{font-size:13px;max-width:320px}.dots:after{content:"";animation:dots 1.4s steps(4,end) infinite}@keyframes dots{0%{content:""}25%{content:"."}50%{content:".."}75%,to{content:"..."}}.game{height:100dvh;max-width:980px;margin:0 auto;display:flex;flex-direction:column}.bar{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;padding-top:calc(6px + env(safe-area-inset-top))}.icon{width:38px;height:38px;font-size:20px;border-radius:50%;display:grid;place-items:center;color:var(--ink);font-family:var(--sans);font-weight:500}.icon:hover{background:var(--line)}.icon.round{background:var(--surface);border:1px solid var(--line);width:40px;height:40px;box-shadow:0 3px 10px #00000038;color:var(--ink)}.icon.round:hover{border-color:var(--accent);background:var(--surface)}.scoreboard{display:flex;gap:8px;padding:0 12px}.score{flex:1;display:flex;align-items:baseline;justify-content:space-between;padding:7px 14px;background:var(--surface);border:1px solid var(--line);border-radius:12px;transition:border-color .15s,box-shadow .15s}.score.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset,0 4px 14px #c2993f2e}.score .who{font-weight:500;font-size:14px;letter-spacing:.02em}.score.active .who:before{content:"";display:inline-block;width:6px;height:6px;margin:0 7px 1px 0;border-radius:50%;background:var(--accent)}.score .who i{font-style:normal;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-left:4px}.score .pts{font-family:var(--display);font-weight:700;font-size:30px;line-height:1;font-variant-numeric:lining-nums tabular-nums}.bag{display:grid;place-items:center;padding:0 8px;line-height:1.1;color:var(--muted)}.bag strong{font-family:var(--display);font-weight:700;font-size:24px;color:var(--ink);font-variant-numeric:lining-nums tabular-nums}.bag span{font-size:10px;text-transform:uppercase;letter-spacing:.12em}.status{text-align:center;font-size:13.5px;color:var(--muted);min-height:28px;padding:6px 12px 4px;letter-spacing:.02em}.status.thinking{color:var(--ink);animation:breathe 1.1s ease-in-out infinite}@keyframes breathe{50%{opacity:.45}}.board-wrap{position:relative;flex:1;min-height:0;margin:0 8px;border-radius:16px;overflow:hidden;background:radial-gradient(130% 100% at 50% 35%,var(--felt-hi),var(--felt));box-shadow:inset 0 0 0 1px var(--cell-line),inset 0 8px 24px #00000040,0 1px #ffffff80}.board-scroll{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;touch-action:pan-x pan-y;padding:8px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(214,176,90,.4) transparent}.board{display:grid;gap:2px;width:max-content;margin:0 auto}.cell{--ts: var(--cell-size);width:var(--cell-size);height:var(--cell-size);padding:1.5px;border-radius:7px;background:var(--cell);box-shadow:inset 0 0 0 1px var(--cell-line)}.cell.start:empty:after{content:"";display:block;width:32%;height:32%;margin:34%;transform:rotate(45deg);border:1.5px solid rgba(214,176,90,.55)}.cell[data-drop]:hover{box-shadow:inset 0 0 0 2px var(--accent-hi)}.zoom{position:absolute;right:10px;bottom:10px;display:grid;gap:8px}.dock{background:var(--bg);padding:10px 12px calc(10px + env(safe-area-inset-bottom));width:100%;max-width:680px;margin:0 auto}.shake .dock{animation:shake .35s}@keyframes shake{20%,60%{transform:translate(-7px)}40%,80%{transform:translate(7px)}}.preview{min-height:38px;display:flex;align-items:center;justify-content:center;gap:10px;padding:6px 12px;border-radius:12px;text-align:center;font-size:13.5px;letter-spacing:.01em}.preview.hint{color:var(--muted)}.preview.good{background:var(--good-bg);color:var(--ink);font-family:var(--math);font-size:19px;box-shadow:inset 0 0 0 1px #2f7f6259}.preview .eqs{display:inline-flex;flex-wrap:wrap;gap:4px 12px;justify-content:center}.preview .sep{color:var(--muted);margin:0 6px}.preview .pill{display:inline-block;width:auto;height:auto;font-family:var(--sans);font-size:13px;font-weight:600;background:var(--good);color:var(--on-good);border-radius:999px;padding:3px 10px;letter-spacing:.02em}.preview .frac{font-size:.7em}.rack{display:flex;flex-wrap:wrap;justify-content:center;gap:16px 7px;padding:12px 0 14px;--ts: var(--rack-tile)}.slot{position:relative;width:var(--rack-tile);height:var(--rack-tile);transition:transform .12s}.slot:active:not(:disabled){transform:scale(.94)}.slot.selected{transform:translateY(-8px)}.slot.selected .tile{box-shadow:0 6px #00000047,0 0 0 3px var(--accent-hi),0 0 16px #d6b05a80}.slot.used{opacity:.18}.slot.free-eq .tile{outline:1.5px dashed var(--accent);outline-offset:3px}.slot.free-eq small{position:absolute;left:0;right:0;bottom:-15px;font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.actions{display:flex;gap:8px;align-items:stretch}.ghost{display:grid;place-items:center;gap:2px;min-width:54px;padding:7px 4px 6px;border-radius:12px;color:var(--ink);border:1px solid var(--line);background:var(--surface);transition:border-color .12s,transform .08s}.ghost .ic{width:20px;height:20px}.ghost small{font-size:10px;font-weight:500;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.ghost:hover:not(:disabled){border-color:var(--accent)}.ghost:active:not(:disabled){transform:translateY(1px)}.ghost:disabled{opacity:.4}.ghost.wide{padding:12px 18px;font-size:15px;font-weight:500;min-width:0;letter-spacing:.02em}.primary{flex:1;padding:14px 18px;border-radius:12px;background:linear-gradient(180deg,var(--accent-hi),var(--accent));color:var(--on-accent);font-weight:600;font-size:17px;letter-spacing:.04em;box-shadow:0 3px 0 var(--accent-edge),0 8px 18px #8f6e2440;transition:transform .08s,box-shadow .08s,opacity .15s,filter .12s}.primary:hover:not(:disabled){filter:brightness(1.06)}.primary:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px 0 var(--accent-edge)}.primary:disabled{opacity:.35;box-shadow:none}.primary.small{flex:0 0 auto;padding:12px 20px;font-size:15px}.watch-bar{display:flex;gap:10px;align-items:center;padding:10px 0}.segs{display:flex;margin-left:auto;border:1px solid var(--line);border-radius:12px;overflow:hidden}.seg{padding:10px 12px;font-size:13px;font-weight:500;letter-spacing:.04em;color:var(--muted);background:var(--surface)}.seg.on{background:var(--accent);color:var(--on-accent)}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#060e0c8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px;z-index:10}.scrim.enter{animation:fade .15s}.modal{width:100%;max-width:380px;background:var(--surface);border-radius:18px;border:1px solid var(--line);border-top:3px solid var(--accent);padding:24px 22px 20px;box-shadow:0 24px 60px #0006;max-height:90dvh;overflow:auto}.modal h2{font-family:var(--display);font-weight:700;font-size:32px;line-height:1.05;margin:0 0 8px;letter-spacing:.005em}.modal .muted{color:var(--muted);margin:0 0 16px;font-size:14.5px}.modal .primary{width:100%}.modal-actions{display:flex;gap:10px;margin-top:14px}.rules{padding-left:20px;margin:12px 0 18px;display:grid;gap:10px;font-size:14.5px;line-height:1.5}.rules li::marker{color:var(--accent-ink);font-weight:600}.eg{font-family:var(--math);font-size:1.1em;background:var(--bg);padding:1px 6px;border-radius:6px;white-space:nowrap}.rack.swap{--ts: 44px;padding:8px 0;gap:8px}.final{display:grid;gap:8px;margin:6px 0 14px}.final div{display:flex;justify-content:space-between;align-items:baseline;padding:10px 14px;border-radius:12px;background:var(--bg)}.final .win{background:linear-gradient(180deg,var(--accent-hi),var(--accent));color:var(--on-accent);box-shadow:0 2px 0 var(--accent-edge)}.final strong{font-family:var(--display);font-weight:700;font-size:30px;line-height:1;font-variant-numeric:lining-nums}@keyframes fade{0%{opacity:0}}.modal.enter{animation:rise .2s cubic-bezier(.2,1.2,.4,1)}@keyframes rise{0%{transform:translateY(18px) scale(.97);opacity:0}}.toast{position:fixed;left:50%;top:calc(64px + env(safe-area-inset-top));transform:translate(-50%,-10px);background:var(--ink);color:var(--bg);padding:10px 18px;border-radius:999px;font-size:14px;font-weight:500;letter-spacing:.02em;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:20;max-width:90vw;text-align:center;box-shadow:0 8px 24px #0000004d}.toast.show{opacity:1;transform:translate(-50%)}@media (max-width: 480px){:root{--cell-size: 42px;--rack-tile: min(37px, calc((100vw - 66px) / 9))}.rack{gap:14px 5px;padding:10px 0 12px}.score .who i{display:block;margin:0}.wordmark{font-size:33px}.home-tiles{gap:5px;padding:14px 12px}.home-tiles .tile{width:46px;height:46px}.home-tiles .tile.big{--ts: 46px}}@media (min-width: 900px){:root{--rack-tile: 52px}.bar{padding-inline:14px}}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}.lobby .muted{color:var(--muted);margin:0;font-size:15px}.home-top{position:absolute;top:calc(10px + env(safe-area-inset-top));right:14px}.chip{display:flex;align-items:center;gap:8px;padding:5px 14px 5px 5px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-size:14px;font-weight:500;letter-spacing:.02em;max-width:180px}.chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip:hover{border-color:var(--accent)}.chip.signin{padding:8px 18px}.avatar{width:28px;height:28px;border-radius:50%;object-fit:cover;flex:none}.avatar.letter{display:grid;place-items:center;background:linear-gradient(180deg,var(--accent-hi),var(--accent));color:var(--on-accent);font-family:var(--display);font-weight:700;font-size:17px}.account-head{display:flex;align-items:center;gap:12px;margin-bottom:10px}.account-head .avatar{width:48px;height:48px;font-size:24px}.account-head div{display:grid;min-width:0}.account-head strong{font-size:18px;font-weight:600}.account-head small{color:var(--muted);overflow:hidden;text-overflow:ellipsis}.ghost.full{width:100%;margin-top:10px}.center{text-align:center}.home .muted{color:var(--muted)}.muted.small{font-size:13px}.saved{width:100%;margin:-6px 0 18px;display:grid;gap:8px}.saved h3{margin:0 0 2px;font-size:11.5px;font-weight:500;text-transform:uppercase;letter-spacing:.16em;color:var(--accent-ink)}.saved-card{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.saved-card.turn{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset,0 4px 14px #c2993f29}.saved-main{flex:1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;text-align:left;min-width:0}.saved-text{display:grid;gap:1px;min-width:0}.saved-text strong{font-weight:600}.saved-text small{color:var(--muted);font-size:12.5px}.score-line{font-family:var(--display);font-weight:700;font-size:24px;font-variant-numeric:lining-nums tabular-nums;white-space:nowrap}.score-line i{font-style:normal;color:var(--muted);margin:0 3px;font-weight:500}.saved-del{width:40px;display:grid;place-items:center;color:var(--muted);border-left:1px solid var(--line)}.saved-del .ic{width:15px;height:15px}.saved-del:hover{color:var(--danger);background:var(--bg)}.stats{padding-top:14px}.stats-head{width:100%;display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.stats-head h2{font-family:var(--display);font-weight:700;font-size:30px;margin:0}.stats-head span{width:38px}.stat-grid{width:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat{display:grid;gap:2px;justify-items:center;padding:14px 6px;background:var(--surface);border:1px solid var(--line);border-radius:12px;text-align:center}.stat strong{font-family:var(--display);font-weight:700;font-size:32px;line-height:1.05;font-variant-numeric:lining-nums tabular-nums}.stat span{font-size:10.5px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted)}.recent-title{align-self:flex-start;margin:22px 0 8px;font-size:11.5px;font-weight:500;text-transform:uppercase;letter-spacing:.16em;color:var(--accent-ink)}.recent{width:100%;display:grid;gap:6px}.recent-row{display:grid;grid-template-columns:28px 1fr auto auto;gap:10px;align-items:center;padding:9px 12px;background:var(--surface);border:1px solid var(--line);border-radius:10px;font-size:14px}.recent-row small{color:var(--muted);font-size:12px;min-width:56px;text-align:right}.pill{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;font-weight:600;font-size:13px;background:var(--line)}.pill.win{background:var(--good);color:var(--on-good)}.pill.loss{background:var(--danger);color:var(--on-danger)}.pill.tie{background:var(--accent);color:var(--on-accent)}.bar-right{display:flex;align-items:center;gap:2px}.icon.flag{color:var(--muted)}.icon.flag .ic{width:20px;height:20px}.icon.flag:hover{color:var(--danger)}.primary.danger{background:linear-gradient(180deg,var(--danger-hi),var(--danger));color:var(--on-danger);box-shadow:0 3px 0 var(--danger-edge),0 8px 18px #5e1b2440}.modal.calc{max-width:440px}.ctable{border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:0 0 6px;font-family:var(--math);font-size:16px}.ct-row{display:grid;grid-template-columns:1fr 1.1fr 1.4fr;gap:8px;align-items:center;padding:7px 12px}.ct-row:nth-child(2n){background:var(--bg)}.ct-row>span{white-space:nowrap}.ct-head{font-family:var(--sans);font-size:12px;color:var(--muted);border-bottom:1px solid var(--line);background:transparent!important}.calc-rules{margin:14px 0 16px;font-size:13.5px}.icon.calc{font-family:var(--math);font-size:22px;line-height:1}.preview.bad{flex-direction:column;gap:2px;padding:6px 12px}.preview.bad .eqs{font-family:var(--math);font-size:17px;color:var(--ink);max-width:100%;overflow-wrap:anywhere}.preview.bad .why{font-size:12.5px}.icon.bell.on{color:var(--accent-ink)}.push-row{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 0 10px}.push-row .ic{width:20px;height:20px}.push-row small{color:var(--muted);margin-left:auto}.push-row.on{border-color:var(--accent)}@media (pointer: coarse){.zoom [data-act=zoom-in],.zoom [data-act=zoom-out]{display:none}}.push-test{display:block;margin:-2px auto 12px;font-size:13px}.legal{margin-top:auto;padding-top:28px;font-size:12px;letter-spacing:.02em;color:var(--muted);opacity:.8;text-align:center}.rack:not(.swap) .slot[data-i]{touch-action:none}.slot.lifted{opacity:.25}.slot.reorder-target{transform:translateY(-4px)}.slot.reorder-target .tile{box-shadow:0 0 0 2px var(--accent-hi),0 2px 0 var(--t-num-edge)}.rack-ghost{position:fixed;z-index:60;pointer-events:none;--ts: var(--rack-tile);filter:drop-shadow(0 8px 10px rgba(0,0,0,.35));transition:none}.tile.eq-ok{box-shadow:0 2px 0 var(--t-num-edge),0 0 0 3px var(--ring-ok),0 0 14px #6fd1a666}.preview .eqs{display:block;line-height:1.5}.preview .eq{display:inline}.preview .eq .term{display:inline-block;white-space:nowrap}.preview .eq .op{display:inline-block;margin:0 .4em;font-weight:600}.preview .eq .dot{font-style:normal;opacity:.5;margin:0 .22em}.preview .eqs .sep{display:block;height:4px}.actions .primary{white-space:nowrap}@media (max-width: 480px){.actions .primary{padding-inline:8px;font-size:16px;letter-spacing:.02em}}.load-error{display:grid;gap:10px;justify-items:center;text-align:center;padding:14px 16px;border-radius:14px;border:1px dashed var(--line);color:var(--muted);font-size:14px}.load-error p{margin:0}.load-error .primary,.load-error .ghost{flex:none;width:auto;padding:9px 22px}.ct-sub{font-family:var(--display);font-size:20px;margin:14px 0 0}.ct-sub+.calc-rules{margin-top:8px}.calc-rules .eg{white-space:normal}.eg .eq .term{display:inline-block;white-space:nowrap}.eg .eq .op{display:inline-block;margin:0 .3em}.eg .eq .dot{font-style:normal;opacity:.5;margin:0 .15em}.eq .sign{display:inline-block;margin-right:.08em}.board-scroll.panning,.board-scroll.panning *{cursor:grabbing;-webkit-user-select:none;user-select:none}.guest-note{margin:.75rem 0 0;padding:.4rem .7rem;border-radius:999px;background:color-mix(in srgb,currentColor 8%,transparent);font-size:.8rem;text-align:center;opacity:.85}.seat-picks{display:grid;gap:8px;margin-top:4px}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/cormorant-garamond-latin-600-normal-Co1r35X9.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-600-normal-2CBVLo0M.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/cormorant-garamond-latin-700-normal-DajfzrDU.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-700-normal-O25Qpphb.woff) format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/cormorant-garamond-latin-500-italic-Y14P-dkT.woff2) format("woff2"),url(/assets/cormorant-garamond-latin-500-italic-DhNIfkTX.woff) format("woff")}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jost-latin-400-normal-q-RKOgPK.woff2) format("woff2"),url(/assets/jost-latin-400-normal-C7S-3Ky6.woff) format("woff")}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jost-latin-500-normal-41lBe9I9.woff2) format("woff2"),url(/assets/jost-latin-500-normal-B-AtzreL.woff) format("woff")}@font-face{font-family:Jost;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jost-latin-600-normal-C497H-z9.woff2) format("woff2"),url(/assets/jost-latin-600-normal-Bv_M0d15.woff) format("woff")}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-latin-400-normal-Dm29J5Fl.woff2) format("woff2"),url(/assets/stix-two-text-latin-400-normal-rLRKR-Xb.woff) format("woff")}@font-face{font-family:STIX Two Text;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/stix-two-text-latin-400-italic-BLib6pG4.woff2) format("woff2"),url(/assets/stix-two-text-latin-400-italic-CPbPgQcn.woff) format("woff")}@font-face{font-family:STIX Two Text;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/stix-two-text-latin-600-normal-B8BS22os.woff2) format("woff2"),url(/assets/stix-two-text-latin-600-normal-CdpSAr85.woff) format("woff")}@font-face{font-family:STIX Two Text;font-style:italic;font-display:swap;font-weight:600;src:url(/assets/stix-two-text-latin-600-italic-CqqQidQW.woff2) format("woff2"),url(/assets/stix-two-text-latin-600-italic-BZwSg5RJ.woff) format("woff")}
