.board{-webkit-user-select:none;user-select:none;touch-action:none;width:100%;height:100%;box-shadow:var(--e2);border-radius:5px;position:relative;overflow:hidden;container-type:inline-size}.board--dragging{cursor:grabbing}.squares{grid-template-columns:repeat(var(--files), 1fr);grid-template-rows:repeat(var(--ranks), 1fr);display:grid;position:absolute;inset:0}.sq{background:var(--sq-light);position:relative}.sq--dark{background:var(--sq-dark)}.sq:before{content:"";background-image:var(--sq-texture,none);pointer-events:none;position:absolute;inset:0}.coord{pointer-events:none;color:var(--label-light);-webkit-user-select:none;user-select:none;font-size:clamp(8px,1.55cqw,13px);font-weight:700;line-height:1;position:absolute}.sq--dark .coord{color:var(--label-dark)}.coord--file{bottom:3px;right:4px}.coord--rank{top:3px;left:4px}.layer{pointer-events:none;position:absolute;inset:0}.cell{width:calc(100% / var(--files));height:calc(100% / var(--ranks));position:absolute;top:0;left:0}.cell--last{background:var(--hl-move)}.cell--select{background:var(--hl-select)}.cell--premove{background:var(--hl-premove)}.cell--check{background:var(--hl-check)}.cell--target{box-shadow:inset 0 0 0 max(3px, .85cqw) var(--hl-target);border-radius:2px}.cell--pick{box-shadow:inset 0 0 0 max(3px, .8cqw) var(--acc);background:color-mix(in srgb, var(--acc) 26%, transparent);cursor:pointer;border-radius:3px}.cell--pick.cell--pick-takes{box-shadow:inset 0 0 0 max(4px, 1.1cqw) var(--danger)}.cell--preview{background:color-mix(in srgb, var(--acc) 20%, transparent);box-shadow:inset 0 0 0 max(2px, .5cqw) color-mix(in srgb, var(--acc) 60%, transparent)}.cell--mark{box-shadow:inset 0 0 0 max(3px, .7cqw) var(--mark-tone);opacity:.85;border-radius:3px;place-items:center;font-size:clamp(10px,3.4cqw,26px);line-height:1;display:grid}.cell--mark-w{--mark-tone:#f2f6fa}.cell--mark-b{--mark-tone:#1b2129}.cell--mark-goal{--mark-tone:#e0a83c}.cell--mark-hazard{--mark-tone:#f0662f;opacity:1;animation:burn-in .62s var(--ease-out);background:linear-gradient(150deg,#7c1d05c7,#24120ce0);box-shadow:inset 0 0 max(6px,1.6cqw) #ff8a3d8c}.cell--mark-warn{--mark-tone:#f0a13f;opacity:1;background:#f0662f24;animation:1.7s ease-in-out infinite ring-warn}.cell--mark-spent{--mark-tone:#8a8f98;opacity:.6;animation:burn-in .48s var(--ease-out)}@keyframes burn-in{0%{opacity:0;filter:brightness(2.4);scale:1.35}60%{filter:brightness(1.5)}}@keyframes ring-warn{0%,to{box-shadow:inset 0 0 0 max(2px, .5cqw) color-mix(in srgb, var(--mark-tone) 35%, transparent)}50%{box-shadow:inset 0 0 0 max(4px, 1.1cqw) var(--mark-tone)}}.cell--badge{place-items:start end;padding:3%;display:grid}.cell--badge span{background:var(--danger,#d9596e);color:#fff;text-align:center;min-width:34%;animation:hint-in .16s var(--ease-out);border-radius:999px;padding:0 .4em;font-size:clamp(8px,2.4cqw,15px);font-weight:800;line-height:1.5;box-shadow:0 1px 3px #00000073}.cell--hint{place-items:center;display:grid}.cell--hint:after{content:"";background:var(--hint);width:28%;height:28%;animation:hint-in .13s var(--ease-out);border-radius:50%}.cell--hint.cell--takes:after{width:100%;height:100%;box-shadow:inset 0 0 0 max(4px, .95cqw) var(--hint);background:0 0}@keyframes hint-in{0%{opacity:0;scale:.3}}.pieces{position:absolute;inset:0}.piece{width:calc(100% / var(--files));height:calc(100% / var(--ranks));will-change:translate;transition:translate var(--anim-ms) var(--ease-out), scale .11s var(--ease-out);cursor:grab;position:absolute;top:0;left:0}.piece--idle{cursor:default}.piece--drag{transition:scale .11s var(--ease-out);z-index:9;cursor:grabbing;scale:1.09}.piece--drag svg{filter:drop-shadow(0 8px 12px #00000080)}.piece--ghost{opacity:.24;z-index:1;transition:none}.piece svg{width:100%;height:100%;filter:var(--pc-shadow);pointer-events:none;display:block}.piece svg [stroke-width]{stroke-width:calc(1.5px * var(--pc-stroke-scale))}.shapes{pointer-events:none;z-index:6;position:absolute;inset:0}.shapes .ring{fill:none;stroke:#f0a63c;stroke-opacity:.9}.shapes .arrow{stroke:#f0a63c;stroke-opacity:.82;fill:#f0a63c;fill-opacity:.82}.promo-veil{z-index:10;background:#00000080;position:absolute;inset:0}.promo{width:calc(100% / var(--files));z-index:11;animation:promo-in .13s var(--ease-out);background:#f4f3f0;border-radius:5px;flex-direction:column;display:flex;position:absolute;overflow:hidden;box-shadow:0 10px 34px #0009}.promo--up{flex-direction:column-reverse}@keyframes promo-in{0%{opacity:0;scale:.9}}.promo button{aspect-ratio:1;cursor:pointer;transition:background var(--m-fast) var(--ease);background:0 0;border:none;padding:7%}.promo button:hover{background:var(--acc)}.promo button svg{width:100%;height:100%;display:block}.promo .promo-x{aspect-ratio:auto;color:#56534e;font-weight:800;font-size:var(--t-md);background:#dcdad6;padding:5px}.promo .promo-x:hover{background:#cbc9c4}:root{--bg:#0a0e13;--bg-side:#070b0f;--surf-1:#111820;--surf-2:#172029;--surf-3:#1e2933;--surf-4:#27343f;--line:#ffffff0f;--line-2:#ffffff1f;--ink:#e9eff5;--ink-2:#93a1b0;--ink-3:#6b7987;--acc:#a3d158;--acc-hi:#b6de70;--acc-lo:#86b53f;--on-acc:#10190a;--acc-glow:#a3d15838;--danger:#e0625c;--warn:#e0a83c;--info:#5b8dd6;--hl-move:#ffe25c70;--hl-select:#ffe25c8c;--hl-premove:#d65c4e80;--hl-target:#ffffffb3;--hl-check:radial-gradient(circle at 50% 50%, #ff3e30f2 0%, #e0281cb8 34%, #be180e00 74%);--hint:#0c101442;--t-xs:11.5px;--t-sm:13px;--t-md:14.5px;--t-lg:17px;--t-xl:22px;--t-2xl:28px;--t-3xl:38px;--t-4xl:54px;--g1:4px;--g2:8px;--g3:12px;--g4:16px;--g5:20px;--g6:24px;--g7:32px;--g8:44px;--g9:60px;--r-sm:6px;--r:10px;--r-lg:16px;--r-xl:22px;--e1:0 1px 2px #0006;--e2:0 6px 20px #0006;--e3:0 18px 48px #00000080;--e4:0 32px 80px #0000009e;--m-fast:90ms;--m-base:.16s;--ease:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(.16, .9, .3, 1);--ease-spring:cubic-bezier(.18, .9, .28, 1.12);--anim-ms:.17s;--side-w:274px;--side-slot:34px;--side-pad:var(--g3);--side-rail:72px;--font:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--t-md);-webkit-font-smoothing:antialiased;margin:0;line-height:1.5;overflow:hidden}h1,h2,h3,h4{letter-spacing:-.02em;margin:0;font-weight:750;line-height:1.14}h1{font-size:var(--t-3xl);letter-spacing:-.032em}h2{font-size:var(--t-xl)}h3{font-size:var(--t-lg)}p{margin:0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}::selection{background:var(--acc);color:var(--on-acc)}:focus-visible{outline:2px solid var(--acc);outline-offset:2px;border-radius:var(--r-sm)}*{scrollbar-width:thin;scrollbar-color:var(--surf-4) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--surf-4);background-clip:padding-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#33424f padding-box padding-box}.app{grid-template-columns:var(--side-w) minmax(0, 1fr);height:100dvh;display:grid;overflow:hidden}.app[data-side=rail],.app[data-side=open]{grid-template-columns:var(--side-rail) minmax(0, 1fr)}.side{padding:var(--g5) var(--g3) var(--g4);background:var(--bg-side);border-right:1px solid var(--line);width:var(--side-w);z-index:40;transition:width var(--m) var(--ease-out), box-shadow var(--m) var(--ease-out);flex-direction:column;grid-area:1/1;display:flex;overflow:hidden}.main{grid-area:1/2}.app[data-side=rail] .side,.app[data-side=open] .side{position:fixed;inset:0 auto 0 0}.app[data-side=rail] .side{width:var(--side-rail)}.app[data-side=open] .side{box-shadow:22px 0 48px #00000080}.side-top{align-items:center;gap:var(--g2);padding:0 0 var(--g6);flex:none;display:flex}.side-logo{align-items:center;gap:var(--g3);min-width:0;padding:0 var(--side-pad);flex:1;display:flex}.side-mark{width:var(--side-slot);height:var(--side-slot);object-fit:cover;background:#0c0f13;border-radius:11px;flex:none;box-shadow:0 4px 16px #00000073,inset 0 0 0 1px #ffffff12}.side-word b{letter-spacing:.1em;font-size:18px;font-weight:800;line-height:1;display:block}.side-word span{letter-spacing:.34em;color:var(--ink-3);margin-top:3px;font-size:11px;display:block}.side-pin{width:30px;height:30px;color:var(--ink-3);cursor:pointer;transition:background var(--m-fast) var(--ease), color var(--m-fast) var(--ease);background:0 0;border:0;border-radius:9px;flex:none;place-items:center;display:grid}.side-pin:hover{color:var(--ink);background:#ffffff0f}.side-pin[aria-pressed=true]{color:var(--acc)}.side-pin svg{width:17px;height:17px}.side-nav{gap:var(--g1);flex-direction:column;min-height:0;display:flex}.side-item{align-items:center;gap:var(--g3);padding:12px var(--side-pad);border-radius:var(--r);width:100%;color:var(--ink-2);text-align:left;cursor:pointer;transition:background var(--m-fast) var(--ease), color var(--m-fast) var(--ease);white-space:nowrap;background:0 0;border:0;font-size:15px;font-weight:600;display:flex;position:relative}.side-item>svg{width:var(--side-slot);opacity:.9;flex:none;height:19px}.side-item:hover{color:var(--ink);background:#ffffff0b}.side-item[aria-current=page]{color:var(--ink);box-shadow:inset 2px 0 0 var(--acc);background:linear-gradient(90deg,#a3d15824,#a3d1580a)}.side-item[aria-current=page]>svg{color:var(--acc);opacity:1}.side-user{gap:var(--g3);padding:9px var(--side-pad)}.side-user .avatar{flex:none}.side-user b{font-size:14px;line-height:1.2;display:block}.side-label{min-width:0;transition:opacity var(--m-fast) var(--ease)}.side-short{text-overflow:ellipsis;min-width:0;display:none;overflow:hidden}.app[data-side=rail] .side-word,.app[data-side=rail] .side-label{opacity:0;pointer-events:none}.app[data-side=rail]{--side-pad:7px}.app[data-side=rail] .side-pin{display:none}.side-foot{padding-top:var(--g4);gap:var(--g1);flex:none;margin-top:auto;display:grid}.main{flex-direction:column;min-width:0;display:flex;overflow:hidden}.dotlive{background:var(--acc);border-radius:50%;flex:none;width:7px;height:7px}.view{min-height:0;padding:var(--g5) var(--g8) var(--g8);flex:1;overflow:hidden auto}.view--fixed{padding:var(--g4) var(--g6) var(--g6);display:flex;overflow:hidden}.view--center{display:block}.page{width:100%;max-width:1240px;margin:0 auto}.page--narrow{max-width:780px}.eyebrow{font-size:var(--t-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);margin-bottom:var(--g2);font-weight:750}.page-title{margin-bottom:var(--g2)}.page-sub{color:var(--ink-2);max-width:64ch;font-size:15px}.page-head{margin-bottom:var(--g6)}.back{color:var(--ink-2);font-weight:600;font-size:var(--t-md);margin-bottom:var(--g5);transition:color var(--m-fast) var(--ease);align-items:center;gap:6px;display:inline-flex}.back:hover{color:var(--ink)}.card{background:var(--surf-1);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--g5)}.card--flush{padding:0;overflow:hidden}.stack{gap:var(--g3);flex-direction:column;display:flex}.row{align-items:center;gap:var(--g2);display:flex}.row-b{justify-content:space-between;align-items:center;gap:var(--g3);display:flex}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.muted{color:var(--ink-2)}.dim{color:var(--ink-3)}.sm{font-size:var(--t-sm)}.xs{font-size:var(--t-xs)}.mono{font-family:var(--mono)}.nowrap{white-space:nowrap}.ellip{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.btn{justify-content:center;align-items:center;gap:var(--g2);padding:11px var(--g5);border-radius:var(--r);background:var(--surf-3);min-height:44px;color:var(--ink);font-weight:650;font-size:var(--t-md);cursor:pointer;white-space:nowrap;transition:background var(--m-fast) var(--ease), transform var(--m-fast) var(--ease), border-color var(--m-fast) var(--ease), opacity var(--m-fast) var(--ease), box-shadow var(--m-fast) var(--ease);border:1px solid #0000;display:inline-flex}.btn svg{flex:none;width:17px;height:17px}.btn:hover:not(:disabled){background:var(--surf-4)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn--primary{background:var(--acc);color:var(--on-acc);box-shadow:0 3px 14px var(--acc-glow)}.btn--primary:hover:not(:disabled){background:var(--acc-hi);box-shadow:0 5px 20px var(--acc-glow)}.btn--danger{background:var(--danger);color:#fff}.btn--quiet{border-color:var(--line-2);color:var(--ink-2);background:0 0}.btn--quiet:hover:not(:disabled){color:var(--ink);background:#ffffff0d}.btn--bare{color:var(--ink-2);background:0 0}.btn--bare:hover:not(:disabled){color:var(--ink);background:#ffffff0f}.btn--lg{min-height:52px;padding:14px var(--g6);border-radius:12px;font-size:16px}.btn--sm{min-height:34px;padding:6px var(--g3);font-size:var(--t-sm)}.btn--block{width:100%}.btn--icon{width:40px;min-height:40px;padding:0}.input,.select{width:100%;min-height:46px;padding:11px var(--g4);background:var(--bg);border:1px solid var(--line-2);border-radius:var(--r);transition:border-color var(--m-fast) var(--ease)}.input:focus,.select:focus{border-color:var(--acc);outline:none}.input::placeholder{color:var(--ink-3)}.input--lg{min-height:54px;font-size:var(--t-lg)}.input--code{font-family:var(--mono);font-size:var(--t-2xl);letter-spacing:.3em;text-align:center;text-transform:uppercase;min-height:68px;font-weight:700}.field{gap:var(--g2);flex-direction:column;display:flex}.field>label{font-size:var(--t-sm);color:var(--ink-2);letter-spacing:.01em;font-weight:700}.field-note{font-size:var(--t-xs);color:var(--ink-3)}.opts{gap:var(--g2);display:grid}.opts--6{grid-template-columns:repeat(6,1fr)}.opts--5{grid-template-columns:repeat(5,1fr)}.opts--3{grid-template-columns:repeat(3,1fr)}.opts--auto{grid-template-columns:repeat(auto-fill,minmax(104px,1fr))}.opt{min-height:50px;padding:10px var(--g2);border:1px solid var(--line-2);border-radius:var(--r);background:var(--surf-1);color:var(--ink);font-weight:650;font-size:var(--t-md);cursor:pointer;text-align:center;transition:background var(--m-fast) var(--ease), border-color var(--m-fast) var(--ease), color var(--m-fast) var(--ease)}.opt:hover{background:var(--surf-2);border-color:var(--line-2)}.opt[aria-pressed=true]{border-color:var(--acc);color:var(--acc-hi);background:#a3d1581a}.opt-sub{font-size:var(--t-xs);color:var(--ink-3);margin-top:2px;font-weight:500;display:block}.opt[aria-pressed=true] .opt-sub{color:var(--acc-lo)}.opt-n{font-size:var(--t-lg);font-weight:750;line-height:1.1;display:block}.choice{align-items:center;gap:var(--g3);padding:var(--g4);border:1px solid var(--line-2);border-radius:var(--r);background:var(--surf-1);cursor:pointer;text-align:left;transition:background var(--m-fast) var(--ease), border-color var(--m-fast) var(--ease);display:flex}.choice:hover{background:var(--surf-2)}.choice[aria-pressed=true]{border-color:var(--acc);background:#a3d15814}.choice-ic{background:var(--surf-3);width:36px;height:36px;color:var(--ink-2);border-radius:9px;flex:none;place-items:center;display:grid}.choice[aria-pressed=true] .choice-ic{color:var(--acc-hi);background:#a3d1582e}.choice b{font-weight:700;display:block}.choice span{font-size:var(--t-xs);color:var(--ink-3);display:block}.tag{font-size:var(--t-xs);color:var(--ink-2);white-space:nowrap;letter-spacing:.04em;background:#ffffff0f;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-weight:700;display:inline-flex}.tag--ready{color:var(--acc-hi);background:#a3d15829}.tag--soon{color:var(--warn);background:#e0a83c29}.tag--info{color:#9dbdf0;background:#5b8dd62e}.tag--danger{color:#f09a95;background:#e0625c2e}.hr{background:var(--line);height:1px}.note{padding:11px var(--g4);border-radius:var(--r);color:#f0a29d;font-size:var(--t-sm);background:#e0625c1a;border:1px solid #e0625c52}.note--info{color:#a8c4ee;background:#5b8dd61a;border-color:#5b8dd64d}.spinner{border:2px solid #ffffff29;border-top-color:var(--acc);border-radius:50%;flex:none;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{rotate:360deg}}.empty{padding:var(--g9) var(--g5);text-align:center;color:var(--ink-3)}.empty h3{color:var(--ink-2);margin-bottom:var(--g2)}.avatar{color:#2a2413;width:34px;height:34px;font-weight:800;font-size:var(--t-sm);background:linear-gradient(150deg,#d8c9a0,#b9a473);border-radius:50%;flex:none;place-items:center;display:grid}.avatar--sq{border-radius:9px}.avatar--bot{color:#0b1420;background:linear-gradient(150deg,#7fa5dd,#4e74ad)}.scrim{z-index:200;padding:var(--g5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade var(--m-base) var(--ease-out);background:#030609b8;place-items:center;display:grid;position:fixed;inset:0}.dialog{width:min(460px,100%);max-height:calc(100dvh - 2 * var(--g5));padding:var(--g6);background:var(--surf-1);border:1px solid var(--line-2);border-radius:var(--r-xl);box-shadow:var(--e4);animation:rise var(--m-base) var(--ease-spring);overflow-y:auto}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;translate:0 14px;scale:.97}}.tabs{gap:var(--g2);scrollbar-width:none;--fade:34px;padding-bottom:2px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs[data-start=true]{-webkit-mask-image:linear-gradient(90deg, transparent 0, #000 var(--fade), #000 100%);mask-image:linear-gradient(90deg, transparent 0, #000 var(--fade), #000 100%)}.tabs[data-end=true]{-webkit-mask-image:linear-gradient(90deg, #000 0, #000 calc(100% - var(--fade)), transparent 100%);mask-image:linear-gradient(90deg, #000 0, #000 calc(100% - var(--fade)), transparent 100%)}.tabs[data-start=true][data-end=true]{-webkit-mask-image:linear-gradient(90deg, transparent 0, #000 var(--fade), #000 calc(100% - var(--fade)), transparent 100%);mask-image:linear-gradient(90deg, transparent 0, #000 var(--fade), #000 calc(100% - var(--fade)), transparent 100%)}.tab{align-items:center;gap:var(--g2);border:1px solid var(--line);background:var(--surf-1);color:var(--ink-2);font-weight:650;font-size:var(--t-sm);cursor:pointer;transition:border-color var(--m-fast) var(--ease), color var(--m-fast) var(--ease), background var(--m-fast) var(--ease);border-radius:999px;flex:none;padding:8px 14px 8px 9px;display:inline-flex}.tab:hover{color:var(--ink);border-color:var(--line-2)}.tab[aria-selected=true]{color:var(--ink);border-color:color-mix(in srgb, var(--v-accent,var(--acc)) 60%, transparent);background:color-mix(in srgb, var(--v-accent,var(--acc)) 14%, var(--surf-1))}.tab-n{text-align:center;background:#ffffff14;border-radius:999px;min-width:20px;padding:0 6px;font-size:10.5px;font-weight:750}.tab[aria-selected=true] .tab-n{background:color-mix(in srgb, var(--v-accent,var(--acc)) 30%, transparent)}.vglyph{background:color-mix(in srgb, var(--v-accent,var(--acc)) 20%, transparent);width:26px;height:26px;color:var(--v-accent,var(--acc));border-radius:7px;flex:none;place-items:center;font-size:14px;line-height:1;display:grid}.vglyph--lg{border-radius:12px;width:46px;height:46px;font-size:22px}.vglyph--sm{border-radius:6px;width:22px;height:22px;font-size:12px}.gt{border-collapse:collapse;width:100%}.gt thead th{text-align:left;padding:0 var(--g4) var(--g2);font-size:var(--t-xs);letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);font-weight:750}.gt tbody td{padding:var(--g3) var(--g4);border-top:1px solid var(--line)}.gt tbody tr{transition:background var(--m-fast) var(--ease)}.gt tbody tr:hover{background:#ffffff07}.gt td:last-child{text-align:right}.gt .g-name{font-weight:700}.gt .g-meta{font-size:var(--t-xs);color:var(--ink-3)}.livedot{background:var(--acc);border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 3px #a3d15829}.vlist{gap:var(--g4);flex-direction:column;display:flex}.vrow{gap:var(--g5);padding:var(--g5) var(--g6);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surf-1);transition:border-color var(--m-base) var(--ease), background var(--m-base) var(--ease);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;display:grid;position:relative;overflow:hidden}.vrow:before{content:"";background:linear-gradient(100deg, var(--v-accent,transparent) 0%, transparent 42%);opacity:.1;pointer-events:none;transition:opacity var(--m-base) var(--ease);position:absolute;inset:0}.vrow:hover{border-color:var(--line-2);background:var(--surf-2)}.vrow:hover:before{opacity:.17}.vrow-head{align-items:center;gap:var(--g3);flex-wrap:wrap;margin-bottom:6px;display:flex}.vrow-head h3{font-size:var(--t-lg)}.vrow p{color:var(--ink-2);font-size:var(--t-md);max-width:74ch}.vrow-actions{gap:var(--g2);flex-direction:column;min-width:168px;display:flex}.stage{gap:var(--g5);grid-template-columns:minmax(0,1fr) 348px;width:100%;min-height:0;display:grid}.stage-board{gap:var(--g2);flex-direction:column;min-width:0;min-height:0;display:flex}.board-holder{flex:1;place-items:center;min-width:0;min-height:0;display:grid;container-type:size}.board-frame{width:min(100cqw, calc(100cqh * var(--board-ar,1)));aspect-ratio:var(--board-ar,1);max-height:100cqh}.seat{align-items:center;gap:var(--g3);flex:none;min-height:48px;display:flex}.seat-name{align-items:center;gap:7px;font-weight:700;display:flex}.seat-dot{background:var(--ink-3);border-radius:50%;flex:none;width:7px;height:7px}.seat-dot--on{background:var(--acc)}.taken{align-items:center;min-height:17px;display:flex}.taken svg{opacity:.9;width:17px;height:17px;margin-right:-6px}.taken .lead{font-size:var(--t-xs);color:var(--ink-3);margin-left:10px;font-weight:700}.clock{font-family:var(--mono);font-variant-numeric:tabular-nums;padding:5px var(--g4);text-align:center;border-radius:var(--r);background:var(--surf-1);min-width:118px;color:var(--ink-2);border:1px solid var(--line);transition:background var(--m-base) var(--ease), color var(--m-base) var(--ease);font-size:26px;font-weight:700}.clock--live{color:#0d1319;background:#eef3f7;border-color:#0000}.clock--live.clock--dark{background:var(--surf-4);color:#fff}.clock--low{color:#f0918b}.clock--live.clock--low{background:var(--danger);color:#fff}.clock--out{opacity:.45}.panel{background:var(--surf-1);border:1px solid var(--line);border-radius:var(--r-lg);flex-direction:column;min-height:0;display:flex;overflow:hidden}.panel-head{justify-content:space-between;align-items:center;gap:var(--g2);padding:var(--g3) var(--g4);border-bottom:1px solid var(--line);flex:none;display:flex}.panel-tabs{padding:var(--g2) var(--g2) 0;flex:none;gap:2px;display:flex}.panel-tabs button{min-height:34px;color:var(--ink-3);font-weight:650;font-size:var(--t-sm);cursor:pointer;transition:color var(--m-fast) var(--ease), border-color var(--m-fast) var(--ease);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:7px 7px 0 0;flex:1;padding:8px}.panel-tabs button:hover{color:var(--ink-2)}.panel-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--acc)}.panel-body{flex:1;min-height:0;overflow-y:auto}.panel-foot{border-top:1px solid var(--line);padding:var(--g2);gap:var(--g2);flex:none;display:flex}.panel-slot{padding:var(--g4);border-bottom:1px solid var(--line);flex:none}.vactions{padding:var(--g3) var(--g4);border-bottom:1px solid var(--line);flex:none}.vactions-label{font-size:var(--t-xs);letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);margin-bottom:var(--g2);font-weight:750}.vactions-row{flex-wrap:wrap;gap:6px;display:flex}.vaction{border:1px solid var(--line-2);border-radius:var(--r);background:var(--surf-2);min-height:34px;color:var(--ink);font-weight:700;font-size:var(--t-md);font-variant-numeric:tabular-nums;cursor:pointer;transition:background var(--m-fast) var(--ease), border-color var(--m-fast) var(--ease);padding:5px 12px}.vaction:hover{background:var(--surf-3);border-color:var(--acc)}.nav-strip{padding:var(--g2);border-top:1px solid var(--line);flex:none;gap:2px;display:flex}.nav-btn{border-radius:var(--r-sm);min-height:36px;color:var(--ink-2);cursor:pointer;transition:background var(--m-fast) var(--ease), color var(--m-fast) var(--ease);background:0 0;border:none;flex:1;place-items:center;display:grid}.nav-btn svg{width:18px;height:18px}.nav-btn:hover:not(:disabled){color:var(--ink);background:#ffffff12}.nav-btn:disabled{opacity:.3;cursor:not-allowed}.moves{padding:var(--g2) 0}.move-pair{grid-template-columns:42px 1fr 1fr;align-items:stretch;display:grid}.move-pair:nth-child(odd){background:#ffffff06}.move-no{padding-left:var(--g4);color:var(--ink-3);font-size:var(--t-sm);font-variant-numeric:tabular-nums;align-items:center;display:flex}.move{padding:7px var(--g3);color:var(--ink);text-align:left;font-weight:650;font-size:var(--t-md);cursor:pointer;border-radius:var(--r-sm);transition:background var(--m-fast) var(--ease);background:0 0;border:none}.move:hover{background:#ffffff12}.move[aria-current=true]{background:var(--surf-3)}.chat-log{padding:var(--g3) var(--g4);gap:var(--g2);font-size:var(--t-sm);flex-direction:column;display:flex}.chat-line b{color:var(--ink-2);margin-right:6px}.chat-form{gap:var(--g2);padding:var(--g2);border-top:1px solid var(--line);display:flex}.result{padding:var(--g4);border-bottom:1px solid var(--line);background:linear-gradient(#a3d1581f,#0000);flex:none}.result h3{margin-bottom:2px}.share{align-items:center;gap:var(--g2);padding:var(--g3);background:var(--bg);border:1px dashed var(--line-2);border-radius:var(--r);display:flex}.share code{font-family:var(--mono);font-size:var(--t-2xl);letter-spacing:.2em;color:var(--acc-hi);flex:1;font-weight:700}.set-row{justify-content:space-between;align-items:center;gap:var(--g5);padding:var(--g3) 0;border-bottom:1px solid var(--line);display:flex}.set-row:last-child{border-bottom:none}.set-row .set-label{font-weight:650}.set-row .set-help{font-size:var(--t-xs);color:var(--ink-3);margin-top:1px}.switch{background:var(--surf-4);cursor:pointer;width:44px;height:25px;transition:background var(--m-base) var(--ease);border:none;border-radius:999px;flex:none;position:relative}.switch:after{content:"";width:19px;height:19px;transition:translate var(--m-base) var(--ease-spring);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.switch[aria-checked=true]{background:var(--acc)}.switch[aria-checked=true]:after{translate:19px}.seg{background:var(--bg);border:1px solid var(--line);border-radius:var(--r);gap:3px;padding:3px;display:flex}.seg button{padding:8px var(--g3);min-height:36px;color:var(--ink-2);font-weight:650;font-size:var(--t-sm);cursor:pointer;white-space:nowrap;transition:background var(--m-fast) var(--ease), color var(--m-fast) var(--ease);background:0 0;border:none;border-radius:6px;flex:1}.seg button:hover{color:var(--ink)}.seg button[aria-pressed=true]{background:var(--surf-3);color:var(--ink)}.swatches{gap:var(--g2);grid-template-columns:repeat(auto-fill,minmax(92px,1fr));display:grid}.swatch{border-radius:var(--r);background:var(--bg);cursor:pointer;transition:border-color var(--m-fast) var(--ease), translate var(--m-fast) var(--ease-out);border:2px solid #0000;padding:4px}.swatch:hover{translate:0 -2px}.swatch[aria-pressed=true]{border-color:var(--acc)}.swatch-mini{aspect-ratio:1;border-radius:4px;grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.swatch-pieces{aspect-ratio:3/1.7;background:var(--sq-light,#eeeed2);border-radius:4px;grid-template-columns:repeat(3,1fr);align-items:center;padding:3px;display:grid}.swatch-name{font-size:var(--t-xs);color:var(--ink-2);margin-top:5px;display:block}@media (width<=1240px){.view{padding:var(--g5) var(--g6) var(--g6)}}@media (width<=1100px){:root{--side-w:82px}.side-pin{display:none}.side{padding:var(--g5) var(--g2) var(--g4);align-items:center}.side-logo{padding:0 0 var(--g6)}.side-word{display:none}.side-item{text-align:center;flex-direction:column;align-items:center;gap:4px;width:100%;padding:9px 4px;font-size:10.5px}.stage{gap:var(--g3);grid-template-columns:minmax(0,1fr) 300px}.opts--6{grid-template-columns:repeat(3,1fr)}.vrow{grid-template-columns:auto minmax(0,1fr)}.vrow-actions{flex-direction:row;grid-column:1/-1}}@media (width<=860px){.app,.app[data-side=rail],.app[data-side=open]{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr)}.main{grid-area:1/1}.app[data-side] .side{width:auto;box-shadow:none;padding:var(--g1) var(--g2) calc(var(--g1) + env(safe-area-inset-bottom));border-right:none;border-top:1px solid var(--line);flex-direction:row;grid-area:2/1;justify-content:space-around;align-items:center;position:static}.side-top{display:none}.side-nav,.side-foot{display:contents}.side-user{display:none}.side-item{flex:1 1 0;min-width:0}.side-label{display:none}.side-short{display:block}.app[data-side=rail] .side-short{opacity:1;pointer-events:auto}.view,.view--fixed{padding:var(--g4) var(--g4) var(--g6);display:block;overflow-y:auto}.stage{gap:var(--g4);grid-template-columns:minmax(0,1fr)}.board-holder{display:block;container-type:normal}.board-frame{width:100%;max-height:none}.panel-body{min-height:96px;max-height:46vh}.empty{padding:var(--g6) var(--g4)}.opts--6,.opts--5{grid-template-columns:repeat(3,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.home{gap:var(--g5);display:grid}.brandbar{border-radius:var(--r-lg);height:clamp(148px,26vh,208px);box-shadow:inset 0 0 0 1px var(--line), 0 14px 34px #0000005c;background:radial-gradient(120% 190% at 12% 0,#16202b,#0b0e13 70%);position:relative;overflow:hidden}.brand-wide{object-fit:cover;object-position:center 24%;width:100%;height:100%;display:block}.brandbar--fallback{align-items:center;gap:var(--g5);padding:0 var(--g6);display:flex}.brandbar--fallback:after{content:"";aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#a3d15829,#0000 62%);width:38%;position:absolute;inset:-60% -8% auto auto}.brand-logo{aspect-ratio:1;object-fit:cover;border-radius:14px;flex:none;height:72%;box-shadow:0 8px 22px #00000080}.brand-copy h1{letter-spacing:-.03em;font-size:clamp(22px,3.1vw,38px);line-height:1}.brand-copy h1 em{color:var(--acc);font-style:normal}.brand-copy p{color:var(--ink-2);letter-spacing:.18em;text-transform:uppercase;margin-top:6px;font-size:clamp(10px,1vw,12px)}.deck{gap:var(--g4);grid-template-columns:minmax(0,1fr) minmax(220px,268px);align-items:stretch;display:grid}.deck>.card{flex-direction:column;min-height:0;display:flex}.deck-modes{padding:0}.deck-head{justify-content:space-between;align-items:baseline;gap:var(--g3);padding:var(--g4) var(--g5) var(--g3);flex:none;display:flex}.deck-head h2{font-size:var(--t-lg)}.deck-actions{padding:var(--g4);gap:var(--g2);justify-content:center}.deck-actions .btn{justify-content:flex-start;width:100%;min-height:46px}.deck-actions .btn svg{width:17px;height:17px}.strip-wrap{flex:1;min-height:0;display:flex;position:relative}.strip{gap:var(--g3);padding:0 var(--g5) var(--g4);scroll-snap-type:x proximity;width:100%;scroll-padding-inline:var(--g5);overscroll-behavior-x:contain;scrollbar-width:none;align-items:stretch;display:flex;overflow:auto hidden}.strip::-webkit-scrollbar{display:none}.tile{scroll-snap-align:start;text-align:center;width:132px;padding:var(--g4) var(--g3) var(--g3);border-radius:var(--r-lg);background:var(--surf-2);box-shadow:inset 0 0 0 1px var(--line);transition:background var(--m-fast) var(--ease), box-shadow var(--m-fast) var(--ease), transform var(--m-fast) var(--ease-out);flex-direction:column;flex:none;align-items:center;gap:5px;display:flex}.tile:hover{background:var(--surf-3);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--v-accent) 60%, var(--line)), 0 10px 22px #00000057;transform:translateY(-3px)}.tile .vglyph{margin-bottom:2px}.tile-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:13.5px;font-weight:700;line-height:1.2;overflow:hidden}.tile-tag{color:var(--ink-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;flex:1;font-size:10.5px;line-height:1.35;display:-webkit-box;overflow:hidden}.tile-actions{gap:5px;width:100%;margin-top:4px;display:flex}.tile-actions .btn{padding-inline:var(--g2);min-height:30px}.tile-actions .btn--icon{padding-inline:7px}.strip-arrow{border:1px solid var(--line-2);background:var(--surf-3);width:30px;height:30px;color:var(--ink);cursor:pointer;opacity:0;pointer-events:none;transition:opacity var(--m-fast) var(--ease), background var(--m-fast) var(--ease), transform var(--m-fast) var(--ease);z-index:2;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;translate:0 -50%}.strip-arrow:hover{background:var(--surf-4);scale:1.08}.strip-arrow svg{width:15px;height:15px}.strip-arrow--prev{left:6px}.strip-arrow--next{right:6px}.strip-wrap[data-loop=true] .strip-arrow{opacity:1;pointer-events:auto}.strip-wrap:before,.strip-wrap:after{content:"";top:0;bottom:var(--g4);pointer-events:none;opacity:0;width:46px;transition:opacity var(--m-fast) var(--ease);z-index:1;position:absolute}.strip-wrap:before{background:linear-gradient(90deg, var(--surf-1), transparent);left:0}.strip-wrap:after{background:linear-gradient(270deg, var(--surf-1), transparent);right:0}.strip-wrap[data-loop=true]:before,.strip-wrap[data-loop=true]:after{opacity:1}@media (width<=900px){.deck{grid-template-columns:minmax(0,1fr)}}
