@font-face{font-family:Cinzel;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/cinzel-v26-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cinzel;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/cinzel-v26-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--color-bg: #f3e7c9;--color-bg-alt: #e9d9ae;--color-surface: #fbf4e2;--color-surface-2: #f3e9cf;--color-ink: #2c1e0f;--color-ink-muted: #6b5842;--color-border: #d3bd8b;--color-accent: #9c6b1f;--color-accent-strong: #7a4f14;--color-danger: #7a2e2e;--color-danger-bg: #f3dcd8;--color-good: #2e6b3a;--color-good-bg: #dcecdc;--color-mobius-seam: #6d74e8;--color-mana-single: #8b3fd4;--color-surface-muted: #f3f1ec;--color-surface-hover: rgba(127, 127, 127, .15);--font-display: "Cinzel", Georgia, "Iowan Old Style", serif;--font-body: "Iowan Old Style", Georgia, "Palatino Linotype", serif;--radius: 10px;--radius-lg: 16px;--top-opener-size: 34px;--top-opener-inset: 0px;--top-opener-clearance: calc(var(--top-opener-size) + var(--top-opener-inset) * 2);--top-strip-clearance: 16px;--turn-button-size: 60px;--shadow: 0 2px 6px rgba(44, 30, 15, .15), 0 1px 2px rgba(44, 30, 15, .1);--shadow-lg: 0 8px 24px rgba(44, 30, 15, .35);--color-stat-pip-off: #d6c69c;color-scheme:light}:root[data-theme=dark]{--color-bg: #221809;--color-bg-alt: #453419;--color-surface: #2e2210;--color-surface-2: #3a2b16;--color-ink: #f3e7c9;--color-ink-muted: #b0997a;--color-border: #4c3a1e;--color-accent: #d9a441;--color-accent-strong: #f0bd5c;--color-danger: #e0725f;--color-good: #6fbf7a;--color-danger-bg: color-mix(in srgb, var(--color-danger) 22%, var(--color-surface));--color-good-bg: color-mix(in srgb, var(--color-good) 22%, var(--color-surface));--color-surface-muted: color-mix(in srgb, var(--color-surface) 88%, var(--color-ink));--color-surface-hover: rgba(255, 255, 255, .09);--color-mobius-seam: #8f95ff;--color-mana-single: #b985ff;--color-stat-pip-off: #4f3f27;--shadow: 0 2px 6px rgba(0, 0, 0, .5), 0 1px 2px rgba(0, 0, 0, .4);--shadow-lg: 0 18px 48px rgba(0, 0, 0, .6);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0;overscroll-behavior:none}body{background:var(--color-bg);color:var(--color-ink);font-family:var(--font-body);font-size:17px;line-height:1.5;min-height:100vh;min-height:100dvh;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;background-image:radial-gradient(circle at 20% 20%,var(--color-bg-alt),transparent 60%),radial-gradient(circle at 80% 0%,var(--color-bg-alt),transparent 55%)}#root{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}h1,h2,h3{font-family:var(--font-display);font-weight:600;letter-spacing:.02em;margin:0}button{font-family:inherit}input{font-family:inherit;font-size:1rem}.app-shell{flex:1;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}.app-shell--center{align-items:center;justify-content:center;padding:1.5rem}.app-shell--start{background:url(/brand/linnus-hero.webp) center / cover no-repeat fixed,var(--color-bg);padding-top:calc(1.5rem + var(--top-bar-height, 0px))}.app-shell--start .join-card{background:color-mix(in srgb,var(--color-surface) 88%,transparent)}.dev-env .app-shell--start{background:linear-gradient(color-mix(in srgb,#e8890c 45%,transparent),color-mix(in srgb,#e8890c 45%,transparent)),url(/brand/linnus-hero.webp) center / cover no-repeat fixed,var(--color-bg)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:2rem}.join-card{width:100%;max-width:380px;text-align:center}.brand{font-size:1.75rem;color:var(--color-accent-strong)}.version-badge{font-family:var(--font-body);font-size:.7rem;color:var(--color-ink-muted);opacity:.6;letter-spacing:.04em;margin:-.75rem 0 0;font-style:normal}.version-badge--btn{background:none;border:none;padding:0;cursor:pointer;display:block;text-decoration:underline dotted;text-underline-offset:2px;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;touch-action:manipulation}.debug-toggle-note{position:fixed;top:calc(.5rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:3200;padding:.3rem .7rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-2);box-shadow:var(--shadow);color:var(--color-ink);font-family:var(--font-body);font-size:.8rem;letter-spacing:0;opacity:1;pointer-events:none;white-space:nowrap}.version-badge--btn:hover{opacity:1;color:var(--color-accent)}h1 .version-badge{font-size:.6em;vertical-align:middle;margin:0}.changelog-entry{margin-bottom:1.5rem}.changelog-entry:last-child{margin-bottom:0}.changelog-version{font-size:1rem;color:var(--color-accent-strong);display:flex;align-items:baseline;gap:.6em;margin-bottom:.3rem}.changelog-date{font-family:var(--font-body);font-size:.8rem;font-weight:400;color:var(--color-ink-muted)}.changelog-section{margin-top:.75rem}.changelog-section-title{font-family:var(--font-body);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-muted);margin:0 0 .3rem}.changelog-list{margin:0;padding-left:1.25rem;display:flex;flex-direction:column;gap:.2rem}.changelog-list li{font-size:.9rem;color:var(--color-ink)}.brand--sm{font-size:1.25rem}.tagline{color:var(--color-ink-muted);margin:.5rem 0 1.5rem;font-style:italic}.join-form{display:flex;flex-direction:column;gap:1rem}.field{display:flex;flex-direction:column;gap:.35rem;text-align:left}.field-label{font-size:.85rem;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.06em}.field input{padding:.65rem .75rem;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-ink)}:root[data-theme=dark] .field input{background:var(--color-bg)}.field input:focus{outline:2px solid var(--color-accent);outline-offset:1px}.field input.entry-name-locked{background:var(--color-surface-muted);color:var(--color-ink-muted);cursor:default}.account-show-name{margin-left:0;margin-top:.75rem}.field-hint{font-size:.75rem;color:var(--color-ink-muted)}.entry-signin{margin-top:.75rem;padding-top:.7rem;border-top:1px solid var(--color-border);line-height:1.45}.entry-signin-text{margin:0 0 .55rem;font-size:.75rem;color:var(--color-ink-muted)}.entry-signin-status{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.45rem;margin:0 0 .35rem;font-size:.75rem;color:var(--color-ink);text-align:center}.entry-signin-who{display:flex;flex-direction:column;align-items:center;min-width:0;overflow-wrap:anywhere}.entry-signin-email{font-size:.7rem;color:var(--color-ink-muted)}.entry-signin-note{margin:0;font-size:.7rem;color:var(--color-ink-muted);text-align:center}.entry-signin-provider{margin:.5rem 0 0;font-size:.7rem;color:var(--color-ink-muted);line-height:1.4}.entry-signin-google{display:inline-flex;align-items:center;gap:.5rem;margin-top:.4rem;padding:.4rem .9rem;border:none;border-radius:999px;background:#f2f2f2;color:#1f1f1f;font:inherit;font-size:.8rem;line-height:1.2;cursor:pointer}.entry-signin-google:hover{background:#e8e8e8}.entry-signin-google:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.google-mark{flex:0 0 auto}.entry-signin-action{background:none;border:none;padding:0;font:inherit;color:var(--color-accent, currentColor);text-decoration:underline;cursor:pointer}.entry-signin-action:hover,.entry-signin-action:focus-visible{text-decoration:none}.entry-delete-line{margin:.35rem 0 0;font-size:.7rem;text-align:center}.entry-delete-open{background:none;border:none;padding:0;font:inherit;color:var(--color-ink-muted);text-decoration:underline;cursor:pointer}.entry-delete-open:hover,.entry-delete-open:focus-visible{color:var(--color-danger)}.entry-delete-panel{margin-top:.6rem;padding:.7rem .8rem;border:1px solid var(--color-danger);border-radius:8px;background:var(--color-danger-bg);text-align:left}.entry-delete-title{margin:0 0 .3rem;font-size:.85rem;font-weight:600;color:var(--color-danger)}.entry-delete-warning{margin:0 0 .45rem;font-size:.75rem;font-weight:600;color:var(--color-danger)}.entry-delete-detail{margin:0 0 .4rem;font-size:.72rem;line-height:1.45;color:var(--color-ink)}.entry-delete-confirm{display:block;margin-top:.6rem;font-size:.72rem;color:var(--color-ink)}.entry-delete-input{display:block;width:100%;margin-top:.3rem;padding:.4rem .5rem;border:1px solid var(--color-danger);border-radius:6px;background:var(--color-surface);font:inherit;font-size:.85rem}.entry-delete-error{margin:.5rem 0 0;font-size:.72rem;line-height:1.4;color:var(--color-danger)}.entry-delete-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin:.7rem 0 0}.entry-delete-cancel,.entry-delete-go{padding:.4rem .9rem;border-radius:999px;font:inherit;font-size:.78rem;cursor:pointer}.entry-delete-cancel{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink)}.entry-delete-go{border:1px solid var(--color-danger);background:var(--color-danger);color:#fff}.entry-delete-go:disabled,.entry-delete-cancel:disabled{opacity:.5;cursor:not-allowed}.entry-delete-done{margin:0 0 .55rem;padding:.5rem .6rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2);font-size:.75rem;line-height:1.45;color:var(--color-ink)}.btn{border:none;border-radius:8px;padding:.7rem 1.25rem;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .05s ease,box-shadow .15s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--color-accent);color:#fff8ec;box-shadow:var(--shadow)}.btn-primary:hover{background:var(--color-accent-strong)}.btn-large{width:100%;padding:.9rem 1.5rem;font-size:1.1rem}.btn-secondary{background:var(--color-surface-2);color:var(--color-ink);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-bg-alt)}.btn-secondary.is-active{background:var(--color-bg-alt);border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.btn-danger{background:var(--color-danger);color:#fff2f0}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-block{width:100%}.btn-token-label{display:inline-flex;align-items:center;gap:.3em}.btn-ico{display:inline-flex;align-items:center;justify-content:center}.lobby-card{width:100%;max-width:420px}.lobby-ruleset-badges{display:flex;justify-content:center;gap:.4rem;margin:-.4rem 0 .6rem}.hot-seat-form{gap:.6rem;margin:0 0 1.5rem;padding:.9rem 1rem;border:1px dashed var(--color-border);border-radius:var(--radius);background:var(--color-surface-2)}.lobby-players{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;flex-direction:column;gap:.5rem}.lobby-players li{display:flex;align-items:center;gap:.6rem;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2)}.btn-remove-seat{margin-left:auto;padding:.1rem .45rem;font:inherit;font-size:.95rem;line-height:1.2;color:var(--color-ink-muted);background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer}.btn-remove-seat:hover,.btn-remove-seat:focus-visible{color:var(--color-danger);border-color:var(--color-danger);background:var(--color-danger-bg)}.lobby-players li.is-empty{color:var(--color-ink-muted);font-style:italic;border-style:dashed}.lobby-team-columns{display:flex;flex-wrap:wrap;gap:1.25rem;margin:0 0 1.5rem}.lobby-team-column{flex:1 1 220px;min-width:200px}.lobby-team-column .lobby-players{margin-bottom:0}.lobby-team-heading{display:flex;align-items:center;gap:.5rem;margin:0 0 .5rem;font-size:1rem}.lobby-team-swatch{display:inline-block;width:.75rem;height:.75rem;border-radius:50%}.lobby-team-select{margin-left:auto;font:inherit;font-size:.85rem;padding:.15rem .35rem;border:1px solid var(--color-border);border-radius:6px;background:var(--color-surface-2);color:inherit}.btn-claim-seat{margin-left:auto;padding:.25rem .7rem;font-size:.9rem}.lobby-seat-note{margin-left:auto;color:var(--color-ink-muted);font-style:italic;font-size:.9rem}.lobby-player-suffix{color:var(--color-ink-muted);font-style:italic;font-size:.95rem}.lobby-roster-rsvp{margin-left:auto;display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:.6rem;font-size:.9rem}.lobby-roster-rsvp-error{flex-basis:100%;text-align:right;font-size:.85em}.game-shell{flex:0 0 auto;display:flex;flex-direction:column;height:100vh;height:100svh;min-height:0;overflow:hidden;padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.game-header{position:fixed;top:0;left:0;right:0;z-index:420;transition:top .2s ease;padding:.85rem 1rem;padding-top:calc(.85rem + env(safe-area-inset-top));padding-left:calc(1rem + env(safe-area-inset-left));padding-right:calc(1rem + env(safe-area-inset-right));text-align:center;border-bottom:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-lg);display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.top-bar-handle{position:fixed;top:0;left:0;right:0;z-index:410;height:16px;display:flex;align-items:center;justify-content:center;padding:0;background:none;border:none;cursor:pointer}.top-bar-grip{width:46px;height:4px;border-radius:999px;background:var(--color-border);transition:opacity .15s ease,background-color .15s ease}.top-bar-handle:hover .top-bar-grip,.top-bar-handle:focus-visible .top-bar-grip{background:var(--color-ink-muted)}.top-bar-handle.is-hidden{pointer-events:none}.top-bar-handle.is-hidden .top-bar-grip{opacity:0}.top-bar-opener{position:fixed;top:calc(var(--top-opener-inset) + env(safe-area-inset-top));left:calc(var(--top-opener-inset) + env(safe-area-inset-left));z-index:415;width:var(--top-opener-size);height:var(--top-opener-size);display:flex;align-items:center;justify-content:center;padding:0;font-size:1.05rem;line-height:1;color:var(--color-ink-muted);border:1px solid var(--color-border);border-top:none;border-left:none;border-radius:0 0 10px;background:var(--color-surface-2);box-shadow:var(--shadow);cursor:pointer;transition:opacity .2s ease}.top-bar-opener.is-hidden{opacity:0;pointer-events:none}@media (prefers-reduced-motion: reduce){.top-bar-opener{transition:none}}@media (prefers-reduced-motion: reduce){.game-header{transition:none}}.game-header .brand{font-size:1.15rem;margin-right:auto}.brand-home{display:inline-flex;align-items:center;padding:0;margin:0;background:none;border:none;cursor:pointer}.brand-home:hover .brand-logo,.brand-home:focus-visible .brand-logo{filter:brightness(1.12)}.game-header-right{display:contents}.game-meta{margin:0;color:var(--color-ink-muted);font-size:.85rem}.peek-strip{flex:1 0 100%;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.5rem .75rem;margin-top:.6rem;padding-top:.6rem;border-top:1px solid var(--color-border)}.peek-strip-line{margin:0;color:var(--color-ink-muted);font-size:.85rem}.peek-strip-back.btn{padding:.25rem .7rem;font-size:.85rem}.peek-strip.is-mine{background:color-mix(in srgb,var(--color-accent) 18%,var(--color-surface));border-top-color:var(--color-accent);border-radius:.4rem;padding:.5rem .75rem;animation:peek-strip-mine 2.6s ease-in-out infinite}.peek-strip.is-mine .peek-strip-line{color:var(--color-ink);font-weight:600}@keyframes peek-strip-mine{0%,to{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent) 55%,transparent)}50%{box-shadow:inset 0 0 0 2px var(--color-accent-strong),inset 0 0 16px 4px color-mix(in srgb,var(--color-accent) 45%,transparent)}}@media (prefers-reduced-motion: reduce){.peek-strip.is-mine{animation:none;box-shadow:inset 0 0 0 2px var(--color-accent-strong),inset 0 0 12px 3px color-mix(in srgb,var(--color-accent) 40%,transparent)}}.game-main{flex:1;min-height:0;display:flex;flex-direction:column;gap:.75rem;padding:var(--top-strip-clearance) .75rem .75rem;max-width:1440px;width:100%;margin:0 auto}.notice-stack{grid-area:1 / 1;align-self:start;z-index:5;display:flex;flex-direction:column;gap:.3rem;pointer-events:none}.notice-stack>*{margin:0;box-shadow:var(--shadow)}.notice-stack .log-player{pointer-events:auto}.notice-stack .player-token--inline{--token-size: 1rem}.board-settings{position:relative}.settings-cog{border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:8px;padding:.25rem .45rem;font-size:1rem;line-height:1;cursor:pointer}.leave-door-glyph{width:1em;height:1em;vertical-align:-.125em}.settings-cog:hover{background:var(--color-bg-alt)}.settings-cog:disabled{opacity:.45;cursor:default}.settings-cog:disabled:hover{background:var(--color-surface-2)}.ios-nudge{display:flex;align-items:center;gap:.4rem;border:1px solid var(--color-border);background:var(--color-surface-2);border-radius:8px;padding:.25rem .3rem .25rem .55rem;font-size:.78rem;line-height:1.2;color:var(--color-ink-muted)}.ios-nudge-text{white-space:nowrap}.ios-nudge-dismiss{border:none;background:none;color:var(--color-ink-muted);font-size:1.1rem;line-height:1;padding:.1rem .3rem;cursor:pointer;border-radius:6px}.ios-nudge-dismiss:hover{background:var(--color-bg-alt);color:var(--color-ink)}.settings-popover{position:absolute;top:calc(100% + .4rem);right:0;z-index:300;width:min(320px,calc(100vw - 1.5rem));text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:.75rem}.settings-title{font-size:.95rem;margin-bottom:.25rem}.settings-title--stacked{margin-top:1.1rem}.settings-toggle{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:600}.settings-toggle input{width:1.05rem;height:1.05rem;accent-color:var(--color-accent);cursor:pointer}.hotkey-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .5rem;padding:.25rem 0}.hotkey-name{flex:1 1 5rem;font-weight:600}.keycap{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;box-sizing:border-box;min-width:2.1rem;height:2rem;padding:0 .55rem;font-family:inherit;font-size:.9rem;font-weight:700;color:var(--color-ink);border:1px solid var(--color-border);border-bottom-width:4px;border-radius:.4rem;background:linear-gradient(180deg,var(--color-surface-hover) 0%,var(--color-surface) 100%);box-shadow:inset 0 1px #ffffff2e,0 1px 2px #00000059;-webkit-user-select:none;user-select:none}.keycap--space{min-width:3.2rem;padding:0 .4rem}.hotkey-puppy{box-sizing:border-box;width:1.7em;height:1.7em;vertical-align:-.45em;padding:0;border-radius:50%;border:2px solid #ffe93b;background:var(--color-surface);object-fit:cover}.keycap.is-capturing{border-color:var(--color-accent);animation:keycap-wait 1s ease-in-out infinite alternate}@keyframes keycap-wait{to{transform:translateY(2px);border-bottom-width:2px}}.keycap--unbound{min-width:2.1rem;border-bottom-width:1px;box-shadow:none;opacity:.8;background:linear-gradient(to top right,transparent calc(50% - .5px),var(--color-ink-muted) 50%,transparent calc(50% + .5px)),linear-gradient(to bottom right,transparent calc(50% - .5px),var(--color-ink-muted) 50%,transparent calc(50% + .5px))}.hotkey-icon{display:block}.hotkey-row .hotkey-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;padding:0;font-size:1.1rem}@media (prefers-reduced-motion: reduce){.keycap.is-capturing{animation:none}}.hotkey-note{margin:.25rem 0;font-size:.8rem}.settings-popover--split{display:flex;gap:.6rem;padding:.5rem}.settings-rail{display:flex;flex-direction:column;gap:.35rem;padding-right:.5rem;border-right:1px solid var(--color-border)}.settings-rail-tab{border:1px solid transparent;background:none;border-radius:8px;font-size:1.05rem;line-height:1;padding:.4rem .45rem;cursor:pointer}.settings-rail-tab:hover{background:var(--color-bg-alt)}.settings-rail-tab.is-active{border-color:var(--color-accent);background:var(--color-surface-2)}.settings-pane{flex:1;min-width:0;padding:.25rem .25rem .25rem 0}.settings-reload-btn{margin-top:.6rem}.layout-choices{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.6rem}.layout-choice{display:flex;flex-direction:column;align-items:center;gap:.2rem;text-align:center;padding:.45rem .5rem .55rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2);cursor:pointer}.layout-choice:hover{background:var(--color-bg-alt)}.layout-choice.is-selected{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.layout-choice:focus-within{outline:2px solid var(--color-accent);outline-offset:1px}.layout-choice-name{font-weight:600;font-size:.85rem}.locale-dropdown{position:relative;display:inline-block}.locale-dropdown-btn{display:inline-flex;align-items:center;gap:.25rem;padding:.3rem .5rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2);cursor:pointer;font-size:1.1rem;line-height:1}.locale-dropdown-btn:hover{background:var(--color-bg-alt)}.locale-caret{font-size:.7rem;color:var(--color-ink-muted)}.locale-dropdown-menu{position:absolute;top:calc(100% + .3rem);right:0;z-index:420;min-width:10rem;display:flex;flex-direction:column;gap:.25rem;padding:.35rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-lg)}.locale-option{display:flex;align-items:center;gap:.5rem;padding:.45rem .6rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2);cursor:pointer;text-align:left}.locale-option:hover{background:var(--color-bg-alt)}.locale-option.is-selected{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.locale-flag{font-size:1.1rem;line-height:1}.locale-choice-name{font-weight:600;font-size:.9rem}.layout-mock{width:100%;height:auto;display:block}.layout-mock-frame{fill:var(--color-surface);stroke:var(--color-border);stroke-width:1.5}.layout-mock-board{fill:var(--color-bg-alt);stroke:var(--color-border);stroke-width:1}.layout-mock-chip{fill:none;stroke:var(--color-ink-muted);stroke-width:1}.layout-mock-token,.layout-mock-btn{fill:var(--color-ink-muted)}.layout-choice.is-selected .layout-mock-chip{stroke:var(--color-accent)}.layout-choice.is-selected .layout-mock-token,.layout-choice.is-selected .layout-mock-btn{fill:var(--color-accent)}.player-rail{display:flex;gap:.5rem;overflow-x:auto;padding:6px 6px .25rem;flex-shrink:0}.player-rail:not(.player-rail--side){align-items:center}.rail-leaders-portrait{flex-shrink:0;align-self:flex-end;margin-left:auto;position:sticky;right:0;z-index:1}.player-rail:not(.player-rail--side) .player-chip:not(.is-big){display:grid;grid-template-columns:auto auto;grid-template-rows:repeat(2,auto);align-items:center;column-gap:.4rem}.player-rail:not(.player-rail--side) .player-chip:not(.is-big) .player-chip-head{grid-column:1;grid-row:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem}.player-rail:not(.player-rail--side) .player-chip:not(.is-big) .player-chip-info{display:contents}.player-rail:not(.player-rail--side) .player-chip:not(.is-big) .player-chip-stats{display:grid;grid-column:2;justify-items:center;row-gap:.15rem;font-size:.78em}.player-rail:not(.player-rail--side) .player-chip:not(.is-big) .player-chip-line{display:flex;align-items:center;gap:.25rem}.player-rail:not(.player-rail--side) .player-chip.is-big .player-chip-head{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;--big-token-size: calc(2*clamp(20px, 2vw, 32px)) }.player-rail:not(.player-rail--side) .player-chip.is-big .player-chip-head .player-chip-networth{font-size:calc(var(--big-token-size) * .25)}.player-chip-wrapper{position:relative;flex-shrink:0}.player-chip{flex-shrink:0;display:flex;align-items:center;gap:.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:.35rem .65rem .35rem .35rem;box-shadow:var(--shadow);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease,border-color .15s ease}.player-chip:hover,.player-chip:focus-visible{background:var(--color-surface-2);border-color:var(--color-accent)}.player-chip.is-me{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent),var(--shadow)}.player-chip.is-active{outline:2px solid var(--color-good);outline-offset:1px}.player-chip.is-big{padding:.45rem .9rem .45rem .45rem;gap:.65rem}.player-chip.is-eliminated{opacity:.55}.player-chip.is-disconnected{border-color:var(--color-danger);opacity:.8}.player-chip.is-disconnected:hover,.player-chip.is-disconnected:focus-visible{border-color:var(--color-danger);opacity:1}.rip-box{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.05rem;background:var(--color-surface-muted);border:1px dashed var(--color-border);border-radius:var(--radius);padding:.2rem .4rem;opacity:.75}.rip-box-title{font-size:.55rem;font-weight:700;letter-spacing:.08em;color:var(--color-ink-muted);line-height:1}.rip-box-tokens{display:flex;flex-direction:column;align-items:center}.rip-box-row{display:flex;align-items:center}.rip-box-row+.rip-box-row{margin-top:calc(var(--token-size) * -.3)}.rip-box-row .player-token+.player-token{margin-left:calc(var(--token-size) * -.35)}.bot-roster{--token-size: clamp(34px, 9vw, 44px);display:flex;flex-direction:column;gap:.4rem;width:100%}.bot-roster .player-token:after{content:none}.bot-roster-row{display:flex;align-items:center;gap:.6rem;min-height:calc(var(--token-size) + 14px)}.bot-roster-row.is-later{opacity:.55}.bot-roster-add{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:none;padding:0;border-radius:12px;position:relative;display:grid;place-items:center;flex:0 0 auto;cursor:pointer}.bot-roster-add:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.bot-roster-add:disabled{cursor:not-allowed;opacity:.45}.bot-roster-face{color:#fffaf0f2}.bot-roster-plus{position:absolute;right:-4px;bottom:-3px;width:18px;height:18px;border-radius:50%;background:var(--color-good);color:#fff;font-weight:700;font-size:.8rem;line-height:18px;text-align:center;box-shadow:0 0 0 2px var(--color-surface)}.bot-roster-add:disabled .bot-roster-plus{background:var(--color-ink-muted)}.bot-roster-ribbon{position:absolute;left:50%;bottom:-9px;transform:translate(-50%);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:var(--color-ink-muted);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:999px;padding:0 .4rem}.bot-roster-label{flex:0 1 6.5rem;min-width:4rem;font-weight:600;line-height:1.15;overflow-wrap:break-word}.bot-roster-label small{display:block;font-weight:400;font-size:.78rem;color:var(--color-ink-muted)}.bot-roster-heap{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;flex:1 1 auto;min-width:0;min-height:var(--token-size)}.bot-roster-heap-row{display:flex;align-items:center}.bot-roster-heap-row+.bot-roster-heap-row{margin-top:calc(var(--token-size) * -.3)}.bot-roster-heap-row .player-token+.player-token{margin-left:calc(var(--token-size) * -.35)}.bot-roster-heap-empty{color:var(--color-ink-muted);opacity:.5;padding-left:.3rem}.bot-roster-minus{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:0 0 auto;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--color-danger);background:var(--color-surface);color:var(--color-danger);font-weight:700;font-size:.8rem;line-height:1;cursor:pointer}.bot-roster-minus:disabled{opacity:.3;cursor:not-allowed}.bot-roster-minus:hover:not(:disabled){background:var(--color-danger);color:var(--color-surface)}.bot-roster-minus:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.bot-roster-tally{margin:.5rem 0 0;padding-top:.5rem;border-top:1px dashed var(--color-border);font-size:.9rem;color:var(--color-ink-muted)}.player-token{position:relative;width:var(--token-size, 22px);height:var(--token-size, 22px);border-radius:50% 50% 20% 20%/58% 58% 16% 16%;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(160deg,color-mix(in srgb,var(--fill) 100%,white 32%),var(--fill) 52%,color-mix(in srgb,var(--fill) 100%,black 32%));border:1.5px solid rgba(20,12,4,.55);box-shadow:inset -3px 0 4px #00000040,inset 3px 1px 3px #ffffff4d,0 2px 3px #140c0466;font-size:calc(var(--token-size, 22px) * .58);line-height:1;text-shadow:0 1px 0 rgba(0,0,0,.3);font-family:Segoe UI Symbol,Apple Symbols,"Noto Sans Symbols 2",sans-serif;-webkit-user-select:none;user-select:none;vertical-align:middle}.player-token:after{content:"";position:absolute;left:50%;bottom:calc(var(--token-size, 22px) * -.1);transform:translate(-50%);width:calc(var(--token-size, 22px) * .78);height:calc(var(--token-size, 22px) * .22);border-radius:50%;background:radial-gradient(ellipse at center,rgba(20,12,4,.45),transparent 72%);pointer-events:none}.player-token-account{position:absolute;top:calc(var(--token-size, 22px) * -.12);left:calc(var(--token-size, 22px) * -.12);width:max(8px,calc(var(--token-size, 22px) * .42));height:max(8px,calc(var(--token-size, 22px) * .42));display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-good);color:#f6fbf7;border:1px solid rgba(255,255,255,.85);box-shadow:0 1px 2px #140c0473;font-size:max(6px,calc(var(--token-size, 22px) * .3));line-height:1;font-weight:700;text-shadow:none;pointer-events:none}:root[data-theme=dark] .player-token-account{color:#10301d;border-color:#140c048c}.player-token--chip{--token-size: clamp(20px, 2vw, 32px)}.player-chip.is-big .player-token--chip{--token-size: calc(2*clamp(20px, 2vw, 32px)) }.player-token--inline{--token-size: 1.05rem;border-width:1px;box-shadow:none;font-size:calc(var(--token-size) * .66);margin-top:calc(var(--token-size) * -.06);margin-bottom:calc(var(--token-size) * .06)}.player-token--chip:after,.player-token--inline:after{content:none}.player-token--ally-lead{--token-size: 1.6rem}.player-chip-info{display:flex;flex-direction:row;align-items:center;gap:.25rem;line-height:1.15}.player-chip.is-big .player-chip-info{flex-direction:column;align-items:flex-start;gap:.2rem}.player-chip-side{flex-shrink:0;min-width:1.05em;text-align:center;font-size:clamp(.66rem,.95vw,.8rem);font-weight:700;line-height:1;padding:.1em .2em;border-radius:4px;color:var(--color-mobius-seam);border:1px solid color-mix(in srgb,var(--color-mobius-seam) 45%,transparent);background:color-mix(in srgb,var(--color-mobius-seam) 10%,transparent)}.player-chip-networth{white-space:nowrap}.player-chip-worth{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;flex-wrap:wrap}.player-chip-lands{font-size:.78em;font-weight:600;color:var(--color-ink-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.player-popover-side{margin-top:.15rem;font-size:.82rem;font-weight:600;color:var(--color-mobius-seam)}.player-chip-stats{font-size:clamp(.7rem,1vw,.85rem);color:var(--color-ink-muted);display:flex;align-items:center;gap:.25rem}.player-chip-line,.player-chip-head{display:contents}.player-chip.is-big .player-chip-stats{font-size:clamp(.85rem,1.3vw,1rem);gap:.35rem}.player-chip.is-big .stat-badge{white-space:nowrap}.player-chip-disconnected{font-size:clamp(.68rem,1vw,.83rem);font-weight:600;color:var(--color-danger);white-space:nowrap}.player-details-popover{z-index:403;width:min(290px,calc(100vw - 1.5rem));max-height:min(78vh,620px);overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:.85rem;display:flex;flex-direction:column;gap:.65rem;text-align:left;animation:popoverFadeIn .15s ease-out}.player-details-popover--wide{width:min(600px,calc(100vw - 1.5rem));max-height:min(84vh,480px)}.player-details-popover--wide .player-popover-body{column-count:2;column-gap:1rem}.player-popover-body{display:block}.player-popover-body .player-popover-section{break-inside:avoid;margin-bottom:.65rem}.player-popover-body .player-popover-section:last-child{margin-bottom:0}@keyframes popoverFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.player-popover-header{display:flex;align-items:center;gap:.6rem;padding-bottom:.5rem;border-bottom:1px solid var(--color-border)}.player-popover-name{font-weight:600;font-size:.95rem;line-height:1.2}.player-popover-subtitle{font-size:.8rem;color:var(--color-ink-muted);margin-top:.1rem}.text-active{color:var(--color-good);font-weight:600}.text-danger{color:var(--color-danger);font-weight:600}.player-popover-section{display:flex;flex-direction:column;gap:.35rem}.popover-section-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-muted);font-weight:600}.popover-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.35rem}.popover-stat-item{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;padding:.25rem .4rem;display:flex;flex-direction:column;align-items:center;text-align:center}.popover-stat-item .stat-label{font-size:.68rem;color:var(--color-ink-muted);line-height:1;margin-bottom:.15rem}.popover-stat-item .stat-value{font-size:.82rem}.popover-stat-item .stat-badge--affliction,.popover-stat-item .stat-badge--debuff{margin-left:0}.defender-stat-badges{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.25rem}.defender-stat-badges .stat-badge{font-size:.75rem}.popover-attack-profile{display:flex;align-items:center;flex-wrap:wrap;gap:.3rem;font-size:.8rem;color:var(--color-ink);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;padding:.3rem .5rem}.popover-weapon-name{font-weight:600}.mana-badges-list{display:flex;flex-wrap:wrap;gap:.35rem}.mana-badge-income{margin-left:.3rem;font-size:.75em;opacity:.7}.mana-empty{font-size:.8rem;color:var(--color-ink-muted);font-style:italic}.popover-holdings{display:flex;flex-wrap:wrap;gap:.4rem .75rem;font-size:.82rem}.popover-equipment-list{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.2rem}.equipment-chip{font-size:.75rem;background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:4px;padding:.15rem .4rem;color:var(--color-ink)}.popover-companion{display:flex;flex-direction:column;gap:.3rem;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;padding:.4rem .5rem}.popover-companion-head{display:flex;align-items:center;justify-content:space-between;gap:.4rem}.popover-companion-name{font-size:.85rem;font-weight:600}.popover-companion-evolve{display:flex;flex-direction:column;gap:.2rem;margin-top:.1rem}.companion-xp-bar{display:block;height:5px;border-radius:999px;background:var(--color-border);overflow:hidden}.companion-xp-bar>span{display:block;height:100%;border-radius:999px;background:#5a3d8e;transition:width .25s ease-out}.companion-xp-label{font-size:.75rem;color:var(--color-ink-muted)}.popover-retinue{display:flex;flex-direction:column;gap:.25rem}.popover-retinue-line{display:flex;align-items:center;justify-content:space-between;gap:.4rem;flex-wrap:wrap;font-size:.8rem;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;padding:.4rem .5rem}.popover-retinue-name{font-weight:600}.popover-retinue-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem}.popover-retinue-meta .stat-badge{font-size:.75rem}.popover-effects-list{display:flex;flex-direction:column;gap:.25rem}.popover-effect-line{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;font-size:.8rem;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;padding:.35rem .5rem}.popover-effect-name{font-weight:600;flex:1 1 auto}.popover-effect-line .stat-badge{font-size:.75rem}.stat-badge--contract{border:2px solid var(--color-ink-muted);color:var(--color-ink-muted)}.stat-badge--permanent{font-weight:700;letter-spacing:.02em;line-height:1;padding-bottom:.1em}.player-chip-companion{margin-left:.25rem;font-size:.8rem;display:inline-flex;align-items:center}.player-chip-companion-img{display:block;width:1.5rem;height:1.5rem;border-radius:50%;object-fit:cover;border:1px solid var(--color-border);background:var(--color-surface)}.player-token .player-chip-companion{position:absolute;top:calc(var(--token-size, 22px) * -.14);right:calc(var(--token-size, 22px) * -.14);margin:0;z-index:2}.player-token .player-chip-companion-img{width:max(12px,calc(var(--token-size, 22px) * .5));height:max(12px,calc(var(--token-size, 22px) * .5));box-shadow:0 1px 2px #140c0473}.player-chip-buffed{margin-left:.25rem;font-size:.8rem}.stat-rows{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:.4rem;align-self:stretch;margin-top:.3rem}.stat-rows-blocks{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;min-width:0}.stat-rows-side{display:flex;flex-direction:column;justify-content:space-between;align-items:center;align-self:stretch}.player-rail--side .stat-rows{grid-column:1 / -1;justify-self:stretch}.stat-row-group{display:flex;align-items:center;gap:.3rem;width:100%}.stat-row-list{display:flex;flex-direction:column;gap:3px;flex:1 1 0;min-width:0}.stat-row{display:flex;align-items:center;gap:2px;background:var(--color-surface);padding:1px 2px;border-radius:3px}.stat-row.is-full+.stat-row{margin-top:-8px}.stat-row-pip{flex:1 1 0;min-width:3px;max-width:7px;height:7px;border-radius:2px;background:var(--color-stat-pip-off)}.player-chip.is-big .stat-row-pip{max-width:9px;height:9px}.player-chip.is-big .stat-row.is-full+.stat-row{margin-top:-10px}.stat-row-group--str .stat-row-pip.is-on{background:var(--color-accent-strong)}.stat-row-group--dex .stat-row-pip.is-on{background:var(--color-ink-muted)}.stat-row-overflow{font-size:.75em;color:var(--color-ink-muted);font-weight:700;margin-left:.2rem}.stat-row-ap-marker{font-size:.65em;color:var(--color-ink-muted);margin-left:.15rem;white-space:nowrap}.popover-empty-note{font-size:.8rem;color:var(--color-ink-muted);font-style:italic}.popover-link-button{display:block;width:100%;text-align:left;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-size:.85rem;color:var(--color-accent)}.popover-link-button:hover{text-decoration:underline}.tile-details-popover{width:min(300px,calc(100vw - 1.5rem));max-height:min(70vh,560px);overflow-y:auto}.tile-popover-icon{font-size:1.7rem;line-height:1;flex-shrink:0}.board-panel{flex:1;min-height:0;display:flex;flex-direction:column}.board-overview{flex:1;min-height:0;display:flex;flex-direction:column;gap:.5rem}.board-area{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:auto}.board-card{--board-sea: url(/board/sea-calm.webp);position:relative;flex-shrink:0;background:linear-gradient(color-mix(in srgb,var(--color-surface) 9%,transparent),color-mix(in srgb,var(--color-surface) 9%,transparent)),var(--board-sea) center / 512px repeat,var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow),inset 0 0 0 1px color-mix(in srgb,var(--color-accent) 18%,transparent);padding:1rem}:root[data-theme=dark] .board-card{background:linear-gradient(#2f4a72,#2f4a72),var(--board-sea) center / 512px repeat,var(--color-bg);background-blend-mode:multiply,normal,normal}@media (min-width: 640px){.board-card{padding:2rem}}.board-side-title{display:none;position:absolute;top:0;left:0;right:0;height:2.5rem;align-items:center;justify-content:center;pointer-events:none;z-index:2}@media (min-width: 640px){.board-side-title{display:flex}}.board-side-title span{font-family:var(--font-display);font-weight:700;font-size:1.1rem;line-height:1.8;text-transform:uppercase;letter-spacing:.3em;transform:scaleX(1.7);white-space:nowrap;background:linear-gradient(180deg,#ffe9a8,var(--color-accent-strong) 55%,var(--color-accent));-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 1px 3px rgba(0,0,0,.45)}.board-loop{position:relative;flex-shrink:0;background:var(--color-bg-alt);border:1px dashed var(--color-border);border-radius:12px;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-accent) 45%,transparent),0 0 16px 3px color-mix(in srgb,var(--color-accent-strong) 30%,transparent)}.board-loop-center{position:absolute;inset:var(--cell-h) var(--cell-w);display:flex;flex-direction:column;background:var(--color-surface);border:1px dashed var(--color-border);border-radius:10px;overflow:hidden}.board-notice-slot{position:relative;display:grid;grid-template-columns:minmax(0,1fr);flex:0 0 auto;padding:0}.board-notice-slot>.turn-panel,.board-notice-slot>.granted-visit-bar,.board-notice-slot>.winds-notice{grid-area:1 / 1}.turn-mode-pending{grid-area:2 / 1;margin:.15rem 0 0;text-align:center;font-size:.75rem;font-weight:600;color:var(--color-ink-muted)}.board-notice-measure{flex:0 0 auto}.board-overview>.board-notice-slot{padding:0 0 .5rem}.board-notice-slot .roll-callout,.board-notice-slot .error{padding:.7rem .6rem;font-size:.82rem;font-weight:600}.winds-notice{position:relative;margin:0;width:100%;display:flex;flex-direction:column;gap:.25rem;padding:.7rem 2.1rem .7rem .6rem;background:var(--color-bg-alt);border:1px solid var(--color-border);border-left:3px solid var(--color-accent);border-radius:var(--radius);font-size:.82rem;text-align:left}.winds-notice-line{margin:0;font-weight:600;line-height:1.35}.winds-notice .log-player{pointer-events:auto}.winds-notice .player-token--inline{--token-size: 1rem}.winds-notice-resist,.winds-notice-from{margin:0;font-size:.76rem;color:var(--color-ink-muted)}.winds-notice-glyph{margin-right:.3em}.winds-notice-dismiss{position:absolute;top:.35rem;right:.4rem;width:1.6rem;height:1.6rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-2);color:var(--color-ink-muted);cursor:pointer}.winds-notice-dismiss:hover,.winds-notice-dismiss:focus-visible{color:var(--color-ink)}.winds-notice-dismiss svg{width:.95rem;height:.95rem}.board-seam{position:absolute;width:3px;transform:translate(-50%);pointer-events:none;z-index:5;border-radius:2px;background:var(--color-mobius-seam);box-shadow:0 0 4px 1px color-mix(in srgb,var(--color-mobius-seam) 70%,transparent),0 0 12px 3px color-mix(in srgb,var(--color-mobius-seam) 35%,transparent)}.board-side-control{display:flex;justify-content:center;flex:0 0 auto}.board-side-control--sea{display:none;position:absolute;left:50%;bottom:.3rem;transform:translate(-50%);z-index:6}@media (min-width: 640px){.board-side-control--sea{display:flex}.board-side-control:not(.board-side-control--sea){display:none}}.board-side-flip{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .6rem;font-family:var(--font-display);font-size:.8rem;font-weight:700;line-height:1.6;color:var(--color-mobius-seam);background:var(--color-surface);border:1px solid color-mix(in srgb,var(--color-mobius-seam) 55%,transparent);border-radius:999px;cursor:pointer}.board-side-flip:hover{background:color-mix(in srgb,var(--color-mobius-seam) 12%,var(--color-surface))}.board-side-flip.is-away{border-style:dashed}.board-side-flip-glyph{font-size:.9em}.board-side-flip-next{opacity:.6;font-weight:500}.btn.btn--mobius{background:var(--color-mobius-seam);border-color:color-mix(in srgb,var(--color-mobius-seam) 70%,#000);color:#fff}.btn.btn--mobius:hover:not(:disabled){background:color-mix(in srgb,var(--color-mobius-seam) 85%,#fff)}.btn.btn--mobius-quiet{color:var(--color-mobius-seam);border-color:color-mix(in srgb,var(--color-mobius-seam) 55%,transparent);background:color-mix(in srgb,var(--color-mobius-seam) 8%,var(--color-surface))}.btn.btn--mobius-quiet:hover:not(:disabled){background:color-mix(in srgb,var(--color-mobius-seam) 16%,var(--color-surface))}.board-forts{position:absolute;top:0;left:0;pointer-events:none;z-index:4;--fort-stone: #8d8272;--fort-stone-dark: #5d5346}.board-fort-band{fill:none;stroke:var(--fort-stone);stroke-linejoin:round}.board-fort-notches{fill:none;stroke:var(--fort-stone-dark);stroke-linecap:butt}.board-fort-inner{fill:none;stroke:var(--fort-stone-dark);stroke-width:1;opacity:.7}.board-fort-drum{fill:var(--fort-stone);stroke:var(--fort-stone-dark);stroke-width:1}.board-fort-guardian-ring{fill:var(--color-surface);stroke:var(--fort-stone-dark);stroke-width:1.5}.board-markers{position:absolute;top:0;left:0;pointer-events:none;overflow:visible;z-index:6}.home-marker{opacity:.5;stroke:#2c1e0f73;stroke-width:1.5}.home-marker-rim{fill:none;pointer-events:none;stroke-linejoin:round;stroke-linecap:round}.home-marker-rim--outer{stroke-width:5}.home-marker-rim--inner{stroke-width:2.4}.board-whirlwind{position:absolute;width:calc(var(--tile-size) * .92);height:calc(var(--tile-size) * .92);transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;z-index:6;border:2px dashed color-mix(in srgb,var(--whirlwind-color) 75%,transparent);background:radial-gradient(circle,color-mix(in srgb,var(--whirlwind-color) 55%,transparent) 0%,color-mix(in srgb,var(--whirlwind-color) 22%,transparent) 55%,transparent 78%);animation:whirlwindSpin 6s linear infinite}@keyframes whirlwindSpin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}@media (prefers-reduced-motion: reduce){.board-whirlwind{animation:none}}.home-standee{position:absolute;transform:translate(-50%,-50%);pointer-events:none;z-index:7}.home-standee.is-collecting{animation:standeeArrive .5s ease-out both;animation-delay:.45s}@keyframes standeeArrive{0%{opacity:0;transform:translate(-50%,-80%) scale(.7)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.home-gift-gold{position:absolute;z-index:8;pointer-events:none;white-space:nowrap;font-family:var(--font-display);font-weight:700;font-size:clamp(.75rem,calc(var(--tile-size) * .3),1.1rem);color:#7a4f14;text-shadow:0 0 3px var(--color-surface),0 0 6px var(--color-surface),0 1px 0 rgba(255,255,255,.8);animation:giftGold 1.25s ease-out forwards;animation-delay:.35s}@keyframes giftGold{0%{opacity:0;transform:translate(-50%,-50%) scale(.75)}30%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(calc(-50% + var(--drift-x, 0px)),calc(-50% + var(--drift-y, -14px))) scale(1)}}@media (prefers-reduced-motion: reduce){.home-standee.is-collecting,.home-gift-gold{animation-duration:.01ms;animation-iteration-count:1}}.granted-visit-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem;margin:0;padding:.4rem .65rem;background:var(--color-surface-2);border:1px solid var(--color-accent);border-radius:var(--radius);font-size:.82rem;font-weight:600;box-shadow:var(--shadow)}.granted-visit-bar .player-token--inline{--token-size: 1rem}.lap-reward-head{flex-shrink:0}.lap-reward-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.35rem}.lap-reward-option{position:relative;display:flex;align-items:stretch;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2)}.lap-reward-option:hover,.lap-reward-option:focus-within{background:var(--color-bg-alt);border-color:var(--color-accent)}.lap-reward-option-main{display:flex;align-items:center;gap:.45rem;flex:1;min-width:0;padding:.4rem .5rem;text-align:left;border:none;background:none;cursor:pointer;font-family:inherit;color:inherit}.lap-reward-option-eye{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2rem;border:none;border-left:1px solid var(--color-border);background:none;cursor:pointer;font-size:.85rem}.lap-reward-option-eye:hover{background:var(--color-surface)}.lap-reward-option-side{position:absolute;top:-.4rem;left:-.4rem;font-size:.6rem;font-weight:700;line-height:1;padding:.12rem .32rem;border-radius:999px;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-ink-muted);pointer-events:none}.teleport-option-side{display:inline-flex;align-items:center;justify-content:center;margin-left:.35rem;font-size:.6rem;font-weight:700;line-height:1;padding:.12rem .32rem;border-radius:999px;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-ink-muted)}.lap-reward-icon{flex-shrink:0;width:1.9rem;height:1.9rem;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid rgba(44,30,15,.35)}.lap-reward-text{display:flex;flex-direction:column;min-width:0;line-height:1.2}.kings-gift,.lap-reward{position:fixed;z-index:402;top:50%;left:50%;transform:translate(-50%,-50%);width:min(30rem,calc(100vw - 2rem));max-height:calc(100vh - 3rem);overflow-y:auto;display:flex;flex-direction:column;gap:.6rem;padding:.9rem;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);box-shadow:0 10px 30px #00000059}.lap-reward{width:min(36rem,calc(100vw - 2rem))}.sheet-backdrop.lap-reward-backdrop{transition:background-color .45s ease}.sheet-backdrop.lap-reward-backdrop.is-clear{background:transparent}.sheet-backdrop.shop-stock-panel-backdrop{z-index:406}.shop-stock-panel{position:fixed;z-index:407;top:50%;left:50%;transform:translate(-50%,-50%);width:min(26rem,calc(100vw - 2rem));max-height:calc(100vh - 3rem);overflow-y:auto;display:flex;flex-direction:column;gap:.6rem;padding:.9rem;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);box-shadow:0 10px 30px #00000059}.shop-stock-panel-head{flex-shrink:0;display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.shop-stock-panel-title{margin:0;font-family:var(--font-display);font-size:1.05rem}.shop-stock-panel-list .entry-thumb{width:40px;height:40px}.kings-gift-head{flex-shrink:0}.kings-gift-entry{align-items:flex-start;gap:.5rem}.kings-gift-head-row{display:flex;align-items:flex-start;justify-content:flex-start;gap:.5rem}.kings-gift-head-row .kings-gift-title,.kings-gift-head-row .lap-reward-title{flex:1 1 auto;min-width:0}.kings-gift-title,.lap-reward-title{margin:0 0 .25rem;font-family:var(--font-display);font-size:1.05rem}.kings-gift-hide{flex-shrink:0}.battle-report{position:fixed;z-index:402;top:50%;left:50%;transform:translate(-50%,-50%);width:min(32rem,calc(100vw - 2rem));max-height:calc(100vh - 3rem);overflow-y:auto;display:flex;flex-direction:column;gap:.6rem;padding:.9rem;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);box-shadow:0 10px 30px #00000059}.equip-dialog{position:fixed;z-index:402;top:50%;left:50%;transform:translate(-50%,-50%);width:min(34rem,calc(100vw - 2rem));max-height:calc(100vh - 3rem);overflow-y:auto;display:flex;flex-direction:column;gap:.6rem;padding:.9rem;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);box-shadow:0 10px 30px #00000059}.sheet.media-viewer{position:fixed;z-index:425;top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(28rem,calc(100vw - 2rem));max-width:calc(100vw - 2rem);max-height:calc(100dvh - 2rem);overflow-y:auto;display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"close" "image" "name" "lore";gap:.6rem;padding:.9rem;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);box-shadow:0 10px 30px #00000059}.sheet-backdrop.media-viewer-backdrop{z-index:424;background:#1c130a59;pointer-events:auto}.media-viewer-close{justify-self:end}.media-viewer-image{width:100%;max-height:55dvh;aspect-ratio:1 / 1;object-fit:cover;border-radius:10px;border:1px solid var(--color-border);background:var(--color-surface)}.media-viewer-body{display:contents}.media-viewer-name{margin:0;font-size:1.15rem}.media-viewer-lore{margin:0;font-size:.85rem;color:var(--color-ink-muted);white-space:pre-line}.media-eye-btn{display:inline-flex;align-items:center;justify-content:center;width:1.6rem;height:1.6rem;padding:0;border:none;background:transparent;color:inherit;font-size:.85rem;cursor:pointer;border-radius:6px;vertical-align:middle}.media-eye-btn:hover,.media-eye-btn:focus-visible{background:var(--color-surface-hover)}.equip-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:.6rem}.equip-card{min-width:0;padding:.5rem .6rem;border:1px solid var(--color-border);border-radius:8px}.equip-card-label{margin:0 0 .3rem;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-muted)}.equip-card-body{display:flex;align-items:flex-start;gap:.5rem}.equip-delta{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}.equip-delta-row{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;padding:.15rem .35rem;border-radius:6px;font-size:.85rem}.equip-delta-row.is-gain{background:#3a7a4a1f}.equip-delta-row.is-loss{background:#8e2f2f1f}.equip-delta-label{color:var(--color-ink-muted)}.equip-delta-values{display:inline-flex;align-items:baseline;gap:.3rem;font-weight:700;font-variant-numeric:tabular-nums}.equip-delta-before{color:var(--color-ink-muted);font-weight:600}.equip-delta-arrow{color:var(--color-ink-muted)}.is-gain .equip-delta-after{color:#3a7a4a}.is-loss .equip-delta-after{color:#8e2f2f}.equip-delta-empty,.equip-dialog-note{margin:0}.equip-trade{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem .3rem;margin-top:.15rem}.equip-trade-worn{color:var(--color-ink-muted)}.equip-trade-chip{display:inline-flex;align-items:baseline;gap:.15rem;padding:.05rem .3rem;border-radius:6px;font-size:.78rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-ink-muted)}.equip-trade-chip.is-gain{background:#3a7a4a24}.equip-trade-chip.is-loss{background:#8e2f2f24}.equip-trade-stat{font-weight:500}.equip-trade-arrow{padding:0 .05rem}.equip-trade-chip.is-gain .equip-trade-after{color:#3a7a4a;font-weight:700}.equip-trade-chip.is-loss .equip-trade-after{color:#8e2f2f;font-weight:700}.equip-dialog-actions{display:flex;flex-wrap:wrap;gap:.4rem}.notif-dot{position:absolute;top:.15rem;right:.15rem;min-width:1.05rem;height:1.05rem;padding:0 .2rem;border-radius:999px;background:radial-gradient(circle at 40% 35%,#ff5a47,#f02718 55%,#ff8d7e);color:#fff;font-size:.7rem;font-weight:700;line-height:1.05rem;text-align:center;box-shadow:0 1px 2px #0000004d}.btn--notif{position:relative;overflow:visible}.battle-report-sides{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:.6rem}.battle-report-side{min-width:0;padding:.5rem .6rem;border:1px solid var(--color-border);border-radius:8px}.battle-report-side-title{margin:0 0 .3rem;font-family:var(--font-display);font-size:.95rem}.battle-report-damage{margin:0 0 .25rem;font-weight:600}.battle-report-thumb{width:1.15em;height:1.15em;border-radius:50%;object-fit:cover;vertical-align:-.2em;margin-right:.2em;border:1px solid var(--color-border);background:var(--color-surface)}.log-catalog-thumb{width:1.2em;height:1.2em;border-radius:3px;object-fit:cover;vertical-align:-.25em;margin-right:.15em;background:var(--color-surface)}.battle-report-name{display:inline-flex;align-items:center;margin-right:.4rem}.fight-steps-head{display:flex;align-items:baseline;gap:.3rem;margin:0 0 .3rem}.fight-steps-head .battle-report-side-title{margin:0}.fight-steps-count{margin-left:.15rem;font-size:.85em;opacity:.8}.fight-steps-list{max-height:min(18rem,34vh);overflow-y:auto;overscroll-behavior:contain;margin:0;padding:.4rem .6rem;list-style:none;border:1px solid var(--color-border);border-radius:8px}.fight-step+.fight-step{margin-top:.5rem}.fight-step-round{display:flex;align-items:center;gap:.35rem;margin:0 0 .15rem;padding-top:.3rem;border-top:1px solid var(--color-border);font-family:var(--font-display);font-size:.8rem;opacity:.8}.fight-step:first-child .fight-step-round{padding-top:0;border-top:none}.fight-step-actor{display:inline-flex;align-items:center}.fight-roster>summary{cursor:pointer}.fight-roster>.entry-list{margin-top:.35rem}.outcome-plate{display:block;width:100%;height:auto;max-height:9rem;object-fit:cover;border-radius:8px;border:1px solid var(--color-border)}.outcome-plate--winds{max-height:5rem;border-radius:6px}.outcome-plate--game-won{max-height:14rem;margin-bottom:.75rem}.outcome-splash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:450;display:flex;align-items:center;justify-content:center;pointer-events:none}.outcome-splash-img{width:min(18rem,70vw,50vh);height:auto;max-height:none;border-radius:12px;box-shadow:0 10px 30px #00000073;pointer-events:auto;cursor:pointer;animation:outcome-splash-fade 2.5s ease forwards}@keyframes outcome-splash-fade{0%{opacity:0;transform:scale(.96)}10%{opacity:1;transform:scale(1)}70%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion: reduce){.outcome-splash-img{animation:none}}.game-log{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;position:relative}.game-log-title{margin:0;padding:.4rem .6rem .2rem;font-family:var(--font-display);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-muted);flex-shrink:0}.game-log-list{flex:1;min-height:0;margin:0;padding:.3rem .6rem .6rem;list-style:none;overflow-y:auto;overflow-anchor:none;display:flex;flex-direction:column;gap:.2rem;font-size:.72rem;line-height:1.35;text-align:left}.game-log-entry{color:var(--color-ink-muted);display:flex;align-items:baseline;gap:.35rem}.game-log-stamp{flex:0 0 auto;color:var(--color-ink-muted);font-weight:400;font-variant-numeric:tabular-nums;white-space:nowrap;opacity:.8}.game-log-text{min-width:0}.log-player,.log-affliction-badge{white-space:nowrap}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.game-log-entry--combat-hit{color:var(--color-ink)}.game-log-entry--combat-outcome{color:var(--color-accent-strong);font-weight:600}.game-log-entry--horizon{font-weight:600;border-top:1px solid var(--color-border);padding-top:.25rem;margin-top:.25rem}.game-log-battle-line{all:unset;cursor:pointer;color:inherit;font:inherit;text-align:left}.game-log-battle-line:hover,.game-log-battle-line:focus-visible{text-decoration:underline}.game-log-jump-btn{position:absolute;left:50%;top:.5rem;transform:translate(-50%);padding:.3rem .8rem;font-size:.72rem;line-height:1;border-radius:999px;box-shadow:var(--shadow)}.game-log--compact{flex:0 0 auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:.5rem .6rem}.game-log--compact .game-log-list{max-height:110px;padding:0}.tile-chip{position:absolute;width:var(--tile-w);height:var(--tile-h);transform:translate(-50%,-50%);border-radius:6px;--chip-edge: rgba(44, 30, 15, .35);border:2px solid var(--chip-edge);--fuse-x: calc((var(--cell-w) - var(--tile-w)) / 2 + 2px);--fuse-y: calc((var(--cell-h) - var(--tile-h)) / 2 + 2px);display:flex;align-items:center;justify-content:center;font-size:calc(var(--tile-size) * .5);line-height:1;cursor:pointer;box-shadow:0 1px 2px #2c1e0f40;padding:0;--tile-base: var(--color-surface);--tile-ground: var(--tile-base);background-color:var(--tile-ground)}.tile-chip.is-crossing{background-image:url(/board/crossing.webp);background-size:cover;background-position:center}.tile-chip.is-portal-hole{background-image:url(/board/portal.webp);background-size:cover;background-position:center}.tile-portal-glimpse{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:1;opacity:.82;filter:brightness(.88)}.tile-portal-underside{width:calc(var(--token-size) * .9);height:calc(var(--token-size) * .9)}.tile-portal-underside:after{content:none}.tile-portal-underside-boots{position:absolute;left:50%;bottom:8%;transform:translate(-50%);width:60%;height:auto;filter:drop-shadow(0 1px 1px rgba(10,6,24,.35))}.tile-portal-glimpse .tile-portal-underside+.tile-portal-underside{margin-left:calc(var(--token-size) * -.3)}.tile-band{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:var(--terrain);--band: calc(var(--tile-size) / 10);--leg: calc(var(--band) * 2)}.tile-band--top{clip-path:inset(0 0 calc(100% - var(--band)) 0)}.tile-band--bottom{clip-path:inset(calc(100% - var(--band)) 0 0 0)}.tile-band--left{clip-path:inset(0 calc(100% - var(--band)) 0 0)}.tile-band--right{clip-path:inset(0 0 0 calc(100% - var(--band)))}.tile-band--tl{clip-path:polygon(100% calc(100% - var(--leg)),100% 100%,calc(100% - var(--leg)) 100%)}.tile-band--tr{clip-path:polygon(0 calc(100% - var(--leg)),var(--leg) 100%,0 100%)}.tile-band--bl{clip-path:polygon(calc(100% - var(--leg)) 0,100% 0,100% var(--leg))}.tile-band--br{clip-path:polygon(0 0,var(--leg) 0,0 var(--leg))}.tile-band.is-fused-left{left:calc(-1 * var(--fuse-x));border-top-left-radius:0;border-bottom-left-radius:0}.tile-band.is-fused-right{right:calc(-1 * var(--fuse-x));border-top-right-radius:0;border-bottom-right-radius:0}.tile-band.is-fused-top{top:calc(-1 * var(--fuse-y));border-top-left-radius:0;border-top-right-radius:0}.tile-band.is-fused-bottom{bottom:calc(-1 * var(--fuse-y));border-bottom-left-radius:0;border-bottom-right-radius:0}.tile-band.tile-far-band{background:var(--far-edge);--band: calc(var(--tile-size) / 8);--leg: calc(var(--band) * 2);z-index:1}.tile-band.tile-far-pulse{background:var(--color-mobius-seam);--band: calc(var(--tile-size) / 6);--leg: calc(var(--band) * 2);animation:far-side-pulse 1.4s ease-in-out infinite;z-index:1}@keyframes far-side-pulse{0%,to{opacity:.35}50%{opacity:1}}@media (prefers-reduced-motion: reduce){.tile-band.tile-far-pulse{animation:none;opacity:.85}}.tile-chip:hover,.tile-chip:focus-visible{outline:2px solid var(--color-accent-strong);z-index:5}.tile-chip.is-owned{--tile-ground: color-mix(in srgb, var(--owner) 60%, var(--tile-base))}.tile-chip.is-bonded-left{border-top-left-radius:0;border-bottom-left-radius:0}.tile-chip.is-bonded-right{border-top-right-radius:0;border-bottom-right-radius:0}.tile-chip.is-bonded-top{border-top-left-radius:0;border-top-right-radius:0}.tile-chip.is-bonded-bottom{border-bottom-left-radius:0;border-bottom-right-radius:0}.tile-bond{position:absolute;background-color:var(--tile-ground);border-style:solid;border-color:var(--chip-edge);border-width:0;pointer-events:none}.tile-bond--left,.tile-bond--right{top:-2px;bottom:-2px;width:var(--fuse-x);border-top-width:2px;border-bottom-width:2px}.tile-bond--left{right:100%}.tile-bond--right{left:100%}.tile-bond--top,.tile-bond--bottom{left:-2px;right:-2px;height:var(--fuse-y);border-left-width:2px;border-right-width:2px}.tile-bond--top{bottom:100%}.tile-bond--bottom{top:100%}.tile-chip.is-mine .tile-bond--left,.tile-chip.is-mine .tile-bond--right{box-shadow:0 -1px 0 0 var(--rim-dark),0 1px 0 0 var(--rim-dark)}.tile-chip.is-mine .tile-bond--top,.tile-chip.is-mine .tile-bond--bottom{box-shadow:-1px 0 0 0 var(--rim-dark),1px 0 0 0 var(--rim-dark)}.tile-chip.is-mine{--chip-edge: var(--rim-light);box-shadow:0 0 0 1px var(--rim-dark),0 1px 2px #2c1e0f40}.tile-chip.has-tokens{z-index:7}.tile-chip-icon{transition:opacity .12s ease;position:relative;z-index:1}.tile-chip.has-tokens .tile-chip-icon{opacity:.8}.tile-chip.has-defender-stand{align-items:flex-start;justify-content:flex-start;font-size:calc(var(--tile-size) * .4)}.tile-chip.has-defender-stand .tile-chip-icon{margin:calc(var(--tile-size) * .02) 0 0 calc(var(--tile-size) * .03)}.tile-defender-stand{position:absolute;right:calc(var(--tile-size) * -.02);bottom:calc(var(--tile-size) * .12);width:calc(var(--tile-size) * .62);height:calc(var(--tile-size) * .62);pointer-events:none}.tile-defender-patch{position:absolute;left:50%;bottom:calc(var(--tile-size) * .04);width:calc(var(--tile-size) * .42);height:calc(var(--tile-size) * .16);transform:translate(-50%);border-radius:50%;background:var(--terrain);opacity:.85;box-shadow:0 1px 3px #2c1e0f4d}.tile-defender-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}:root[data-theme=dark] .tile-defender-stand:before{content:"";position:absolute;top:-16%;right:-16%;bottom:-8%;left:-16%;background:radial-gradient(ellipse 50% 50% at 50% 50%,#f6edd6f5,#f6edd6ed 64%,#f6edd680 84%,#f6edd600)}:root[data-theme=dark] .tile-band--right:not(.tile-far-band):not(.tile-far-pulse)~.tile-defender-stand:before{clip-path:inset(0 26.78% 0 0)}:root[data-theme=dark] .tile-band--left:not(.tile-far-band):not(.tile-far-pulse)~.tile-defender-stand:before,:root[data-theme=dark] .tile-band--tr:not(.tile-far-band):not(.tile-far-pulse)~.tile-defender-stand:before{clip-path:inset(0 14.56% 0 0)}:root[data-theme=dark] .tile-band--bottom:not(.tile-far-band):not(.tile-far-pulse)~.tile-defender-stand:before{clip-path:inset(0 0 3.85% 0)}:root[data-theme=dark] .tile-band--tl:not(.tile-far-band):not(.tile-far-pulse)~.tile-defender-stand:before{clip-path:polygon(0 0,100% 0,100% 83.1%,85.44% 83.1%,69.6% 100%,0 100%)}:root[data-theme=dark] .tile-band--bl:not(.tile-far-band):not(.tile-far-pulse)~.tile-defender-stand:before{clip-path:polygon(0 0,80.6% 0,85.44% 5.1%,100% 5.1%,100% 100%,0 100%)}.tile-chip.has-tokens .tile-defender-art{opacity:.75}.tile-chip .tokens{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;z-index:2}.tile-chip .tokens .player-token+.player-token{margin-left:calc(var(--token-size) * var(--token-overlap, -.32))}.player-token.is-ghost{opacity:.55;border-style:dashed;box-shadow:none}.player-token.is-ghost:after{content:none}.tile-footprint{position:absolute;z-index:2;left:50%;top:50%;width:calc(var(--tile-size) * .2);height:calc(var(--tile-size) * .3);opacity:var(--print-hi);filter:drop-shadow(0 1px 1px rgba(28,19,10,.3));pointer-events:none;--print-hi: .92;--print-lo: .5;animation:footprint-blink 1.4s ease-in-out infinite;animation-delay:calc(var(--step, 0) * -.11s)}@keyframes footprint-blink{0%,to{opacity:var(--print-hi)}50%{opacity:var(--print-lo)}}@media (prefers-reduced-motion: reduce){.tile-footprint{animation:none;opacity:var(--print-hi)}}.tile-footprint-lane{display:contents}.tile-footprint.is-left{transform:translate(-50%,-50%) rotate(var(--heading, 0deg)) translate(calc(var(--tile-size) * -.19),calc(var(--tile-size) * var(--lane, 0) * .2)) rotate(-8deg)}.tile-footprint.is-right{transform:translate(-50%,-50%) rotate(var(--heading, 0deg)) translate(calc(var(--tile-size) * .19),calc(var(--tile-size) * var(--lane, 0) * .2)) rotate(8deg)}.tile-footprint.is-preview{--print-hi: .45;--print-lo: .16}.focus-tiles{flex:1;display:flex;gap:.4rem;overflow:hidden}.focus-tile{flex:1;min-width:0;border:1px solid color-mix(in srgb,var(--terrain, var(--color-border)) 45%,var(--color-border));border-radius:10px;--cell-ground: color-mix(in srgb, var(--terrain, var(--color-surface-2)) 16%, var(--color-surface-2));background:var(--cell-ground);padding:.5rem .4rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.15rem;opacity:.55;transform:scale(.92);transition:opacity .15s ease,transform .15s ease}.focus-tile.is-center{opacity:1;transform:scale(1);--cell-ground: color-mix(in srgb, var(--terrain, var(--color-surface)) 22%, var(--color-surface));border-color:var(--color-accent);box-shadow:var(--shadow)}.focus-tile-icon{font-size:1.4rem;display:inline-flex;align-items:center;justify-content:center;width:1.55em;height:1.55em;border-radius:7px;border:1px solid rgba(44,30,15,.35);background:var(--terrain, transparent);box-shadow:0 1px 2px #2c1e0f33;overflow:hidden}.tile-icon-thumb{width:1em;height:1em;border-radius:30%;object-fit:cover;display:block}.focus-tile-name{font-weight:600;font-size:.8rem}.focus-tile-sub{font-size:.68rem;color:var(--color-ink-muted)}.tile-strip{display:grid;grid-template-columns:22% 1fr 22%;gap:.4rem;overflow:hidden;margin-bottom:.6rem}.tile-strip .focus-tile{cursor:default}.tile-strip--navigable .focus-tile:not(.is-center){cursor:pointer;padding-bottom:2.75rem}.tile-strip>.focus-tile:nth-child(1){grid-area:1 / 1}.tile-strip>.focus-tile:nth-child(2){grid-area:1 / 2}.tile-strip>.focus-tile:nth-child(3){grid-area:1 / 3}.focus-tile{position:relative}.focus-tile-helper{position:absolute;right:.25rem;bottom:.3rem;width:2.6rem;height:2.6rem;pointer-events:none}.tile-strip--navigable .focus-tile:not(.is-center):hover,.tile-strip--navigable .focus-tile:not(.is-center):focus-visible{opacity:.85}.focus-tile.is-owned{background:color-mix(in srgb,var(--owner) 40%,var(--cell-ground))}.tile-strip-land-row{display:flex;align-items:flex-start;gap:.3rem;width:100%}.tile-strip-owner-col{display:flex;flex-direction:column;gap:.2rem;flex-shrink:0}.tile-strip-core{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:.15rem}.tile-strip-yield{display:flex;flex-direction:column;gap:.2rem;flex-shrink:0}.tile-strip-stat{flex-shrink:0;min-width:2.5rem;padding:.15rem .3rem}.tile-strip-stat .stat-label{font-size:.6rem}.tile-strip-owner-slot{min-height:1.3rem;display:flex;align-items:center;justify-content:center}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c130a59;z-index:400}.sheet{position:fixed;left:0;right:0;bottom:0;z-index:401;background:var(--color-surface);border-top:1px solid var(--color-border);border-radius:16px 16px 0 0;box-shadow:var(--shadow-lg);max-height:78vh;display:flex;flex-direction:column;transition:background-color .12s ease}.sheet.is-expanded{top:0;max-height:100vh;border-radius:0;left:0;right:0;width:auto;padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.sheet-head{display:flex;align-items:center;gap:.5rem;padding:.85rem 1rem .5rem;border-bottom:1px dashed var(--color-border)}.sheet-head h2{font-size:1.05rem}.sheet-head-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.sheet-head-actions .btn,.sheet-back{padding:.35rem .75rem;font-size:.85rem}.sheet-back{flex-shrink:0;display:inline-flex;align-items:center;gap:.6rem;padding-left:.6rem;padding-right:.6rem}.eye-glyph{font-size:1.2em;line-height:1}.tile-icon{font-size:1.15em;line-height:1}.sheet-close{display:inline-flex;align-items:center;gap:.35rem}.closed-eye-icon{display:block}.sheet-body{padding:.75rem 1rem 1.25rem;overflow-y:auto}@media (min-width: 640px){.sheet{left:auto;top:0;right:0;bottom:0;width:360px;max-height:none;border-radius:0;border-left:1px solid var(--color-border);border-top:none;background:color-mix(in srgb,var(--color-surface) 50%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.sheet:hover,.sheet:focus-within{background:color-mix(in srgb,var(--color-surface) 98%,transparent)}.sheet-backdrop{background:transparent;pointer-events:none}}@media (min-width: 640px){.sheet.bag-sheet{left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(32rem,calc(100vw - 2rem));max-width:calc(100vw - 2rem);max-height:calc(100dvh - 4rem);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 10px 30px #00000059;background:var(--color-surface)}.sheet.bag-sheet:hover,.sheet.bag-sheet:focus-within{background:var(--color-surface)}}@media (min-width: 640px){.sheet.build-sheet{left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(38rem,calc(100vw - 2rem));max-width:calc(100vw - 2rem);max-height:calc(100dvh - 4rem);border-radius:12px;border:1px solid var(--color-border);box-shadow:0 10px 30px #00000059;background:var(--color-surface)}.sheet.build-sheet:hover,.sheet.build-sheet:focus-within{background:var(--color-surface)}}.sheet-backdrop.build-backdrop{background:#1c130a59;pointer-events:auto}.sheet.build-sheet.is-peeking{opacity:.18;transition:opacity .25s ease}.sheet.build-sheet.is-peeking:hover,.sheet.build-sheet.is-peeking:focus-within{opacity:1}.sheet-backdrop.build-backdrop.is-peeking{opacity:0;transition:opacity .25s ease}.sheet-backdrop.bag-backdrop{background:#1c130a59;pointer-events:auto}.sheet-backdrop.death-report-backdrop{background:#1c130a8c;pointer-events:auto}.sheet-head-text{display:flex;flex-direction:column;gap:.15rem;min-width:0;flex:1}.landing-line{margin:0;display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.landing-verb{font-weight:400;font-size:.85em;color:var(--color-ink-muted)}.landing-who{font-weight:600}.landing-tile-icon{display:inline-flex;align-items:center;justify-content:center;width:1.4em;height:1.4em;border-radius:5px;font-size:.9em;border:1.5px solid rgba(44,30,15,.65);box-shadow:0 1px 2px #2c1e0f59}.info-tip{display:flex;align-items:baseline;gap:.3em;width:100%;min-width:0;margin-top:.15rem;padding:0;background:none;border:none;text-align:left;cursor:pointer;font-size:.76rem;line-height:1.35;color:var(--color-ink-muted)}.info-tip:hover,.info-tip.is-open{color:var(--color-ink)}.info-tip:focus-visible{outline:2px solid var(--color-ink-muted);outline-offset:2px;border-radius:4px}.info-tip-icon{flex:none;font-size:.9em}.info-tip-preview{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-tip-preview p{display:inline;margin:0;padding:0;font-size:inherit}.info-tip-preview p+p:before{content:" "}.info-tip .info-tip-preview p,.info-tip .info-tip-preview div{border:none;border-radius:0;background:none;box-shadow:none;padding:0;margin:0;text-indent:0;max-width:none;line-height:inherit}.info-tip.is-open>*{visibility:hidden}.info-tip-bubble{position:fixed;display:flex;align-items:baseline;gap:.3em;max-width:min(320px,calc(100vw - 24px));max-height:60vh;overflow-y:auto;z-index:405;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:.6rem .75rem;font-size:.8rem}.info-tip-bubble-body{flex:1 1 auto;min-width:0}.info-tip-bubble p{margin:0 0 .5rem}.info-tip-bubble p:last-child{margin-bottom:0}.sheet-actions{flex-shrink:0;padding:.5rem 1rem .75rem;border-top:1px dashed var(--color-border);background:var(--color-surface)}.panel-combat-log{max-height:9rem;overflow-y:auto}.sheet-body summary{cursor:pointer}.tile-panel-host--sheet,.tile-panel-host--overlay,.tile-panel-host--center{display:contents}@media (min-width: 640px){.tile-panel-host--center{display:block;position:absolute;top:calc(var(--cell-h) + max(var(--notice-h, 0px),.6 * var(--tile-size)));right:calc(var(--cell-w) + .6 * var(--tile-size));bottom:calc(var(--cell-h) + .6 * var(--tile-size));left:calc(var(--cell-w) + .6 * var(--tile-size));z-index:9;container:tile-panel / inline-size}.tile-panel-host--center.tile-panel-host--roomy{top:calc(var(--cell-h) + max(var(--notice-h, 0px),.05 * var(--tile-size)));right:calc(var(--cell-w) + .05 * var(--tile-size));bottom:calc(var(--cell-h) + .05 * var(--tile-size));left:calc(var(--cell-w) + .05 * var(--tile-size))}.tile-panel-host--center .sheet{position:static;width:auto;height:100%;max-height:none;border-radius:10px;box-shadow:var(--shadow);border:1px solid var(--color-border)}.tile-panel-host--center .sheet,.tile-panel-host--center .sheet:hover,.tile-panel-host--center .sheet:focus-within{background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none}.tile-panel-host--center .sheet-body{flex:1;min-height:0}.tile-panel-host--center .sheet-backdrop{display:none}.board-loop.has-center-panel .notice-stack{z-index:auto}.board-loop.has-center-panel .notice-stack .error{position:relative;z-index:10}.board-loop.has-center-panel .board-markers{z-index:6}.board-loop.has-center-panel .home-standee{z-index:7}.board-loop.has-center-panel .home-gift-gold{z-index:8}}.tile-panel-host--overlay .sheet-backdrop{background:#1c130a8c;pointer-events:auto}.tile-panel-host--overlay .sheet,.tile-panel-host--overlay .sheet:hover,.tile-panel-host--overlay .sheet:focus-within{left:0;right:0;bottom:0;top:calc(var(--top-strip-clearance) + env(safe-area-inset-top));padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);width:auto;max-height:none;border:none;border-top:1px solid var(--color-border);border-radius:0;background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none}.tile-panel-host--overlay .sheet-head{padding-right:calc(1rem + .5rem + var(--turn-button-size) * 1.5)}.tile-panel-host--overlay .sheet-body{flex:1;min-height:0;overflow-y:auto}.tile-panel-host--overlay .sheet-rest{column-count:2;column-gap:1.5rem;column-rule:1px dashed var(--color-border)}.tile-panel-host--overlay .sheet-rest>*{break-inside:avoid}.tile-panel-host--overlay .sheet-actions{padding-bottom:calc(.75rem + env(safe-area-inset-bottom))}@container tile-panel (min-width: 640px){.sheet--split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto}.sheet--split .sheet-head{grid-area:1 / 1 / 2 / 2}.sheet--split .sheet-body{display:contents}.sheet--split .sheet-body>.tile-strip{grid-area:2 / 1 / 3 / 2;align-self:start;margin:.75rem 1rem 1.25rem}.sheet--split .sheet-rest{grid-area:1 / 2 / 3 / 3;min-height:0;overflow-y:auto;padding:.75rem 1rem 1.25rem;border-left:1px dashed var(--color-border)}.sheet--split .sheet-actions{grid-area:3 / 1 / 4 / 3}}.entry-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.entry{display:flex;align-items:center;gap:.6rem;padding:.55rem .65rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2)}.entry--ally{box-shadow:inset 3px 0 0 var(--color-good)}.entry--joined-owner{box-shadow:inset 3px 0 0 var(--color-danger)}.entry.entry--target{border-color:var(--color-accent);box-shadow:inset 3px 0 0 var(--color-accent)}.combat-side-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-ink-muted);font-weight:600;margin:.75rem 0 .35rem}.ground-items{padding-bottom:.6rem;border-bottom:1px solid var(--color-border)}.stat-badge--lead{margin-left:.3rem}.hp-bar{display:block;height:5px;margin-top:.25rem;border-radius:999px;background:var(--color-border);overflow:hidden}.hp-bar>span{display:block;height:100%;border-radius:999px;background:var(--color-danger);transition:width .25s ease-out}.entry-body{flex:1;min-width:0;display:flex;flex-direction:column}.entry-name{font-weight:600;font-size:.9rem}.entry-sub{font-size:.75rem;color:var(--color-ink-muted)}.sheet-subhead{margin:.9rem 0 .25rem;font-size:.85rem;font-weight:600;color:var(--color-ink)}.entry-actions{display:flex;flex-wrap:wrap;gap:.35rem;flex-shrink:0}.slot-row{position:relative;overflow:hidden}.slot-glyph{position:absolute;top:50%;right:.6rem;transform:translateY(-50%);z-index:-1;font-size:3rem;line-height:1;color:var(--color-ink);opacity:.1;pointer-events:none}.slot-empties{display:block;padding:.4rem .5rem}.slot-empties .slot-empties-grid{width:100%}.slot-empties-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.4rem}.slot-empty-tile{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:.1rem;padding:.45rem .6rem;border:1px solid var(--color-border);border-radius:calc(var(--radius) - 2px);background:var(--color-surface);min-height:3.2rem;justify-content:center}.slot-empty-tile .slot-glyph{font-size:2rem;right:.4rem}.slot-empty-label{color:var(--color-ink-muted);font-weight:500;font-style:italic}.entry-actions--compact{gap:.3rem}.entry-actions--compact .btn{padding:.5rem .85rem;font-size:.88rem}.entry .entry-actions .btn{padding:.45rem .8rem;font-size:.88rem}.entry-actions--bag-item{flex-shrink:1;flex-direction:column;align-items:flex-end;max-width:40%;text-align:center}.entry--stacked{flex-direction:column;align-items:stretch}.entry--stacked .entry-actions{order:-1;align-self:flex-start}.entry--wrap-actions{flex-wrap:wrap}.entry--wrap-actions .entry-body{min-width:9rem}.entry--wrap-actions .entry-actions{margin-left:auto}.entry--wrap-actions .entry-foot{flex-basis:100%;margin-top:.15rem}.reference-split{flex:1;min-height:0;display:flex}.help-window{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;background:var(--color-bg);color:var(--color-ink)}.help-window-head{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;padding-top:calc(.5rem + env(safe-area-inset-top));padding-left:calc(.75rem + env(safe-area-inset-left));padding-right:calc(.75rem + env(safe-area-inset-right));border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-wrap:wrap}.help-window-head h1{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:0;font-family:var(--font-display);font-size:1.15rem;line-height:1.3}.help-window-head{position:relative;z-index:1}.help-window-split{flex:1;min-height:0}.help-window .reference-pane{max-width:72rem}.reference-rail{flex-shrink:0;width:4.75rem;display:flex;flex-direction:column;gap:.35rem;padding:.6rem .4rem;border-right:1px solid var(--color-border);overflow-y:auto}.reference-rail-tab{display:flex;flex-direction:column;align-items:center;gap:.2rem;border:1px solid transparent;border-radius:8px;background:none;padding:.4rem .2rem;color:var(--color-ink-muted);font-family:inherit;cursor:pointer}.reference-rail-tab:hover{background:var(--color-bg-alt)}.reference-rail-tab.is-active{border-color:var(--color-accent);background:var(--color-surface-2);color:var(--color-ink)}.reference-rail-icon{font-size:1.3rem;line-height:1}.reference-rail-label{font-size:.6rem;line-height:1.15;text-align:center}.reference-pane{flex:1;min-width:0}@media (min-width: 640px){.reference-sheet{width:min(480px,100vw);background:var(--color-surface)}.reference-sheet:hover,.reference-sheet:focus-within{background:var(--color-surface)}}.catalog-filter{position:sticky;top:-.75rem;z-index:1;display:flex;align-items:center;gap:.5rem;margin:.6rem 0;padding:.4rem 0;background:var(--color-surface)}.catalog-filter-input{flex:1;min-width:0;padding:.4rem .6rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2);font-family:inherit;font-size:.85rem;color:var(--color-ink)}.catalog-count{flex-shrink:0}.catalog-entry{align-items:flex-start}.catalog-portrait{flex-shrink:0;width:72px;height:72px;object-fit:cover;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface)}.catalog-portrait-btn{flex-shrink:0;padding:0;border:none;background:none;cursor:pointer;line-height:0;border-radius:8px}.catalog-portrait-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.bestiary-portrait-frame{animation:bestiary-portrait-bob 5.2s ease-in-out infinite}.bestiary-portrait{animation:bestiary-portrait-breathe 6.4s ease-in-out infinite;animation-delay:-2.1s}@keyframes bestiary-portrait-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes bestiary-portrait-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@media (prefers-reduced-motion: reduce){.bestiary-portrait-frame,.bestiary-portrait{animation:none}}.catalog-othername{margin-bottom:.15rem}.item-slot-heading{margin:.9rem 0 .35rem;font-size:.85rem;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.05em}.bestiary-chain{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;margin-top:.35rem}.bestiary-chain-step{display:inline-flex;align-items:center;gap:.25rem}.bestiary-chain-arrow{color:var(--color-ink-muted);font-size:.7rem}.bestiary-stage{border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);padding:.1rem .45rem;font-family:inherit;font-size:.72rem;color:var(--color-ink)}button.bestiary-stage{cursor:pointer}button.bestiary-stage:hover{background:var(--color-bg-alt);border-color:var(--color-accent)}.bestiary-stage.is-current{border-color:var(--color-accent);font-weight:600}.catalog-entry.is-jumped{border-color:var(--color-accent);box-shadow:inset 3px 0 0 var(--color-accent)}.reference-link{display:inline;margin:0;padding:0;border:none;background:none;font:inherit;color:inherit;text-align:left;cursor:pointer;text-decoration:underline dotted;text-decoration-color:var(--color-border);text-underline-offset:.15em}.inline-item-icon{width:1.6em;height:1.6em;vertical-align:-.4em;margin-right:.25rem;border-radius:4px}.log-catalog-link{text-decoration-color:transparent}.reference-link:hover,.reference-link:focus-visible{color:var(--color-accent);text-decoration-color:var(--color-accent)}.tile-help-section-title{margin:1rem 0 .35rem;font-size:.95rem}.tile-help-section-title:first-child{margin-top:0}.tile-help-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:6px;border:1px solid rgba(44,30,15,.35);font-size:1.1rem;line-height:1}.tile-help-stats{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.15rem}.stat-help-group+.stat-help-group{margin-top:1.1rem}.stat-help-entry{align-items:flex-start}.stat-help-icon{background:var(--color-surface-3, var(--color-surface-2))}.stat-help-sources{list-style:none;margin:.35rem 0 0;padding:0;display:flex;flex-direction:column;gap:.25rem}.stat-help-source{display:flex;align-items:baseline;gap:.4rem;font-size:.85rem;line-height:1.35}.stat-help-chip{flex-shrink:0;width:1.35rem;text-align:center;font-size:.8rem;cursor:help}.stat-help-chip--permanent{filter:none}.stat-help-chip--threshold,.stat-help-chip--gear,.stat-help-chip--buff,.stat-help-chip--holdings{opacity:.85}.quick-start-row{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.75rem}.friends-invite-row{flex-wrap:wrap;align-items:flex-end;justify-content:flex-start}.friends-invite-row .field{flex:1 1 11rem;min-width:0}@media (max-width: 520px){.friends-invite-row .btn{flex:1 1 100%}}.tile-type-grid{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.tile-type-chip{display:flex;align-items:center;gap:.4rem;padding:.35rem .55rem;font-size:.82rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2);cursor:pointer}.tile-type-chip:hover{background:var(--color-bg-alt)}.tile-type-chip.is-selected{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.tile-type-chip-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:5px;border:1px solid rgba(44,30,15,.35);font-size:.9rem;line-height:1}.tile-type-chip-order{font-weight:700;font-size:.7rem;color:var(--color-accent)}.tile-type-chip--toggle{width:100%;margin-top:.6rem}.tile-type-chip--toggle input{margin:0}.sheet-foot{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem 1rem;border-top:1px dashed var(--color-border);background:var(--color-surface);flex-shrink:0}.dice-picker{display:flex;align-items:flex-end;gap:.6rem;margin-top:.6rem;flex-wrap:wrap}.dice-picker .field{width:4.5rem}.dice-picker .field input{width:100%}.coin-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.6em;height:1.6em;padding:0 .35em;border-radius:999px;background:radial-gradient(circle at 30% 30%,#ffe28a,#d4a017 65%,#b8860b);color:#3a2a00;font-size:.85em;font-weight:700;line-height:1;box-shadow:inset 0 0 0 1px #0003,0 1px 1px #00000040;vertical-align:middle}.player-chip .coin-badge{flex:none;white-space:nowrap}.player-chip-team-swatch{display:inline-block;width:.55em;height:.55em;margin-left:.2em;border-radius:50%;background:var(--team-swatch-color, transparent);box-shadow:inset 0 0 0 1px #00000059;vertical-align:middle}.popover-stat-sublabel{color:var(--color-ink-muted, var(--color-ink));font-weight:400}.net-worth-mark{display:inline-flex;align-items:stretch;line-height:1;font-size:.85em;vertical-align:middle;height:var(--net-worth-mark-height, 1.7em)}.net-worth-mark-side{height:100%;width:auto;display:block;flex:none}.net-worth-mark-side--flip{transform:scaleX(-1)}.net-worth-mark-mid{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:.5em}.net-worth-mark-mid--canopy{align-items:flex-end;padding-bottom:.09em}.net-worth-mark-bridge{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.net-worth-mark-crown{position:absolute;left:50%;top:0;transform:translate(-50%);height:.42em;width:auto;display:block}.net-worth-mark-num{position:relative;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-ink);padding:0 .18em}.tooltip-anchor{cursor:pointer}.tooltip-bubble{z-index:405;max-width:min(240px,calc(100vw - 1.5rem));background:var(--color-ink);color:#fff;font-size:.8rem;font-weight:500;line-height:1.35;border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:.5rem .65rem;animation:popoverFadeIn .15s ease-out}:root[data-theme=dark] .tooltip-bubble{background:#2c1e0f}.stat-badge{display:inline-flex;align-items:center;gap:.15em;min-width:1.6em;flex:none;height:1.6em;padding:0 .4em;border-radius:999px;background:#fff8f0;font-size:.85em;font-weight:700;line-height:1;box-shadow:0 1px 1px #0003;vertical-align:middle}.stat-badge--stacked{flex-direction:column;height:auto;line-height:1.05;padding:.12em .4em;white-space:nowrap}.stat-badge--stacked .stat-badge-stacked-count{font-size:.85em}:root[data-theme=dark] .stat-badge{--color-ink: #2c1e0f;--color-ink-muted: #6b5842;--color-good: #2e6b3a;--color-danger: #7a2e2e;--color-accent: #9c6b1f;--color-accent-strong: #7a4f14;background:#d8cbb0;color:#2c1e0f}.stat-badge--hp{border:2px solid var(--color-danger);color:var(--color-danger)}.stat-badge--heal{border:2px solid var(--color-good);color:var(--color-good)}.stat-badge--risk-low{border:2px solid #5a7a4a;color:#4a6a3c}.stat-badge--risk-mid{border:2px solid #a2762a;color:#8a621e}.stat-badge--risk-high{border:2px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-bg)}.stat-badge--affliction,.stat-badge--debuff{margin-left:.25em;border:2px solid #8e2f2f;background:#ffeaea;color:#8e2f2f}.stat-badge--buff{margin-left:.25em;border:2px solid var(--color-good);background:var(--color-good-bg);color:var(--color-good)}.stat-badge--rider{margin-left:.25em;border:2px dashed #8e2f2f;background:transparent;color:#8e2f2f}.stat-badge--immune{margin-left:.25em;border:2px dashed #3d5a73;background:transparent;color:#3d5a73}.stat-badge--resist{border:2px solid #3d5a73;background:transparent;color:#3d5a73}.stat-badge--effect{border:1px solid currentColor;background:transparent}.item-effect,.item-effect-line{display:block}.item-effect-line+.item-effect-line{margin-top:.2em}.media-viewer-lore-text{margin:0}.media-viewer-effect{margin-top:.6em;color:var(--color-ink)}.immune-slash{margin-left:-.55em;font-size:.85em;opacity:.85}.defender-tiers{display:flex;flex-direction:column;gap:.4rem}.defender-tier{display:flex;align-items:flex-start;gap:.5rem;padding:.4rem .5rem;border:1px solid var(--color-border);border-radius:8px}.defender-tier--next{border-color:var(--color-accent-strong)}.defender-tier-portrait{flex-shrink:0;border-radius:var(--radius);background:var(--color-bg-alt);object-fit:cover}.defender-tier-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.defender-tier-label{margin-right:.35rem;padding:0 .35em;border-radius:999px;background:var(--color-bg-alt);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--color-ink-muted)}.defender-tier-badges{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem}.odds-hint{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.2rem;vertical-align:top}.defeat-cost-note{max-width:24rem;margin-top:.35rem;line-height:1.7}.stat-badge--str{border:2px solid var(--color-accent-strong);color:var(--color-accent-strong)}.stat-badge--dex{border:2px solid var(--color-ink-muted);color:var(--color-ink-muted)}.stat-badge.stat-badge--negative{border:2px solid var(--color-danger);color:var(--color-danger)}.stat-badge--mana{border:2px solid #5a3d8e;color:#5a3d8e}.stat-badge--mana-arcane{border:2px solid currentColor}.school-glyph--arcane{color:#c96a12}.school-glyph--single{display:inline-flex;align-items:center;color:var(--color-mana-single)}.school-glyph--single svg{display:block;vertical-align:-.12em}.stat-badge--armor{border:2px solid #3d5a73;color:#3d5a73}.stat-badge--power{border:2px solid #b8541f;color:#b8541f}.stat-badge--damage{border:2px solid var(--color-ink-muted);color:var(--color-ink)}.stat-badge--requirement{background:transparent;font-weight:600}.item-portrait{flex-shrink:0;border-radius:var(--radius);background:var(--color-bg-alt);object-fit:cover}.item-detail{display:flex;flex-direction:column;gap:.15rem}.item-detail-badges{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem}.item-spell-line{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;font-size:.8rem}.item-spell-icon{flex-shrink:0;border-radius:4px;background:var(--color-bg-alt);object-fit:cover}.item-spell-name{font-weight:600}.roll-callout{background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius);padding:.6rem 1rem;text-align:center;margin:0 0 1rem}.disconnected-notice{color:var(--color-danger);border-color:var(--color-danger);font-weight:600}.disconnected-countdown{font-weight:600;color:var(--color-danger);white-space:nowrap}.error{background:var(--color-danger-bg);color:var(--color-danger);border:1px solid var(--color-danger);border-radius:var(--radius);padding:.6rem 1rem;text-align:center;font-weight:600}.game-over-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;display:flex;align-items:center;justify-content:center;background:#1c130a99;padding:1.5rem}.game-over-card{width:100%;max-width:380px;text-align:center}.game-over-card h2{font-size:1.6rem;margin-bottom:.5rem}.game-over-card .player-token--inline{--token-size: 1rem}.game-over-card .entry-actions{justify-content:center}@media (orientation: landscape) and (max-height: 560px){.game-over-card--hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:1rem;align-items:center;max-width:min(720px,96vw);text-align:left}.game-over-card--hero .game-over-hero{align-self:stretch;display:flex;align-items:center}.game-over-card--hero .outcome-plate--game-won{max-height:min(70vh,18rem);height:100%;margin-bottom:0}.game-over-card--hero .entry-actions{justify-content:flex-start}}.final-board-peek{position:fixed;z-index:500;left:50%;transform:translate(-50%);bottom:calc(1rem + env(safe-area-inset-bottom));box-shadow:var(--shadow)}.action-bar{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:stretch;gap:.5rem;padding:.65rem .75rem calc(.65rem + env(safe-area-inset-bottom));background:var(--color-surface);border-top:1px solid var(--color-border);box-shadow:0 -2px 6px #2c1e0f1a}.action-buttons{flex:0 0 100%;display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.shared-tile-wait{grid-column:1 / -1;flex:0 0 100%;text-align:center;font-size:.82rem;font-weight:600;opacity:.85}.shared-wait-notice{position:fixed;top:4rem;left:50%;transform:translate(-50%);z-index:250;width:min(22rem,calc(100vw - 2rem));background:var(--color-surface, #1f2430);color:var(--color-text, #f2f2f2);border:1px solid var(--color-border, rgba(255, 255, 255, .2));border-radius:.6rem;box-shadow:0 4px 16px #00000059;font-size:.85rem}.shared-wait-notice.is-minimised{width:auto;max-width:calc(100vw - 2rem)}.shared-wait-notice__head{display:flex;align-items:center;gap:.4rem;width:100%;padding:.5rem .75rem;background:none;border:0;color:inherit;font:inherit;font-weight:600;text-align:left;cursor:pointer}.shared-wait-notice__chevron{margin-left:auto;padding-left:.6rem;opacity:.7}.shared-wait-notice__body{margin:0;padding:0 .75rem .65rem;line-height:1.35;opacity:.9}.keep-reroll-actions{display:flex;gap:.5rem;grid-column:1 / -1}.keep-reroll-actions>.btn,.keep-reroll-actions>.suggestion-action-button{flex:1 1 0;min-width:0}.keep-reroll-actions>.suggestion-action-button>.btn{width:100%}.action-stack .keep-reroll-actions{flex-direction:column-reverse;width:100%}.action-stack .action-buttons--icons .keep-reroll-actions{flex-direction:row}.btn--debut{animation:btnDebut 1.4s ease-out 1}@keyframes btnDebut{0%{box-shadow:0 0 #ffe05200}30%{box-shadow:0 0 18px 6px #ffe63ccc}to{box-shadow:0 0 4px 1px #ffe05200}}@media (prefers-reduced-motion: reduce){.btn--debut{animation:none}}.btn--fight-target{animation:fightPulse 1.4s ease-out 1 forwards}@keyframes fightPulse{0%{box-shadow:0 0 #d6282800}30%{box-shadow:0 0 20px 7px #d62828e6}to{box-shadow:0 0 0 2px #d6282899}}@media (prefers-reduced-motion: reduce){.btn--fight-target{animation:none;box-shadow:0 0 0 2px #d6282899}}.attack-target-thumb{flex-shrink:0;border-radius:4px;background:var(--color-bg-alt);object-fit:cover}.action-buttons--icons .btn-txt{display:none}@media (max-width: 560px){.btn-txt--dice{display:none}}.action-buttons--icons .btn .btn-token-label{justify-content:center}.turn-panel{margin:0;width:100%;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:.35rem;padding:.7rem .6rem;background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius);font-size:.82rem;font-weight:600;text-align:center}.turn-panel .player-token--inline{--token-size: 1rem}.parallel-day-line{flex-basis:100%}.roll-popup{position:fixed;top:0;right:0;bottom:0;left:0;z-index:340;display:flex;align-items:center;justify-content:center;padding:1rem;pointer-events:none}.roll-popup__card{position:relative;pointer-events:none;width:max-content;max-width:min(24rem,calc(100vw - 2rem));box-sizing:border-box;padding:1rem 1.4rem;display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center;background:var(--color-surface, #1f2430);color:var(--color-text, #f2f2f2);border:1px solid var(--color-border, rgba(255, 255, 255, .2));border-radius:.9rem;box-shadow:0 8px 28px #00000073;animation:rollPopupIn .18s ease-out}@keyframes rollPopupIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion: reduce){.roll-popup__card{animation:none}}.roll-popup__close{position:absolute;top:.3rem;right:.3rem;min-height:1.8rem;padding:0 .5rem;display:inline-flex;align-items:center;justify-content:center;gap:.25rem;background:none;border:0;border-radius:999px;color:inherit;font:inherit;opacity:.7;cursor:pointer;pointer-events:auto}.roll-popup__close:hover,.roll-popup__close:focus-visible{opacity:1;background:var(--color-bg-alt, rgba(255, 255, 255, .1))}.roll-popup__roll{display:flex;flex-direction:column;align-items:center;gap:.35rem}.roll-popup__label{font-size:.95rem;font-weight:600;opacity:.85}.roll-popup__dice{display:inline-flex;align-items:center;gap:.6rem}.roll-popup__die-pair{height:3.4rem;width:auto}.roll-popup__total{font-size:2.4rem;line-height:1;font-variant-numeric:tabular-nums}.roll-popup__doubles{font-size:1rem;font-weight:600}.roll-popup__wait{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding-top:.6rem;border-top:1px solid var(--color-border, rgba(255, 255, 255, .2));font-size:.85rem}.roll-popup__text,.roll-popup__elapsed{margin:0}.roll-popup__text{opacity:.85}.roll-popup__elapsed{font-variant-numeric:tabular-nums;opacity:.75}.roll-popup__seats{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem .6rem}.action-sync-clock{flex-basis:100%;display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.25rem .5rem;font-size:.9em;font-variant-numeric:tabular-nums;opacity:.75}.parallel-day-label{opacity:.7;font-weight:500}.parallel-day-seat{display:inline-flex;align-items:center;gap:.15rem}.parallel-day-seat.is-mine{outline:1px solid var(--color-border);outline-offset:2px;border-radius:999px}.parallel-day-seat.is-next{font-weight:700}.parallel-day-mark{font-size:.75em;line-height:1}.parallel-day-ordinal{font-variant-numeric:tabular-nums;opacity:.7}.parallel-day-hint{flex-basis:100%;font-weight:500;opacity:.7}.board-loop-center .turn-panel,.board-loop-center .roll-callout,.board-loop-center .error{border-top:none;border-left:none;border-right:none;border-radius:0}.board-loop-center .winds-notice{border-top:none;border-right:none;border-radius:0}@media (min-width: 640px){.action-bar{box-shadow:none;border-top:none;background:transparent;padding:0 1rem 1rem;justify-content:center}.action-buttons{display:flex;flex-wrap:wrap;justify-content:center}.action-buttons .btn{flex:0 0 auto;min-width:160px}.action-buttons>.suggestion-action-button>.btn{width:auto;min-width:160px}.action-buttons .keep-reroll-actions>.suggestion-action-button{flex:0 0 auto}.action-buttons .keep-reroll-actions>.suggestion-action-button>.btn{width:auto}}.game-main--side{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"rail board";align-items:stretch;padding-bottom:calc(.75rem + env(safe-area-inset-bottom))}.game-main--side>.side-rail{grid-area:rail}.game-main--side>.board-panel{grid-area:board;min-width:0;min-height:0}.side-rail{display:flex;flex-direction:column;gap:.5rem;min-height:0;width:clamp(150px,13vw,210px)}.side-rail>.player-rail--side{flex:1 1 0;min-height:0}.side-rail--split>.action-stack{flex:0 0 var(--rail-button-half)}.player-rail--side{flex-direction:column;flex-wrap:wrap;align-content:flex-start;gap:.4rem;min-height:0;padding:6px;overflow-x:auto;overflow-y:hidden}.player-rail--side:not(.rail-others):has(>.chip-slot~.chip-slot~.chip-slot~.chip-slot~.chip-slot){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;overflow-x:hidden;overflow-y:auto}.player-rail--side:not(.rail-others):has(>.chip-slot~.chip-slot~.chip-slot~.chip-slot~.chip-slot) .player-chip-wrapper,.player-rail--side:not(.rail-others):has(>.chip-slot~.chip-slot~.chip-slot~.chip-slot~.chip-slot) .player-chip{min-width:0}.player-rail--side .player-chip{display:grid;grid-template-columns:auto auto;justify-content:center;align-items:center;column-gap:.3rem;padding:.4rem .55rem}.player-rail--side .player-chip:not(.is-big) .player-chip-head{display:flex;align-items:center;gap:.3rem}.player-rail--side .player-chip-info{grid-column:1 / -1}.player-rail--side .player-chip-info,.player-rail--side .player-chip-stats{display:flex;flex-direction:column;align-items:center;gap:.15rem}.player-rail--side .player-chip:not(.is-big) .player-chip-stats{font-size:.78em}.player-rail--side .player-chip:not(.is-big) .player-chip-line{display:flex;align-items:center;gap:.25rem}.player-rail--side .player-chip.is-big{grid-template-columns:auto minmax(0,1fr);justify-content:normal;align-self:stretch;padding:.55rem .5rem .55rem .7rem;row-gap:.4rem}.player-rail--side .player-chip.is-big .player-chip-info{display:contents}.player-rail--side .player-chip.is-big .player-chip-stats{grid-column:2;justify-self:end;display:grid;grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:max-content;column-gap:.5rem;row-gap:.15rem}.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)){--chip-side-w: 4.2rem}.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats{display:grid;grid-template-columns:auto minmax(var(--chip-side-w),auto);grid-template-rows:none;grid-auto-flow:row dense;grid-auto-columns:auto;justify-self:stretch;justify-content:end;align-content:start;align-items:center;row-gap:.15rem;column-gap:.3rem;min-width:0}.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .player-chip-line>*{grid-column:1;justify-self:center}.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .player-chip-worth,.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .stat-badge--hp,.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .coin-badge,.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .player-chip-side{grid-column:2;grid-row:auto;justify-self:center}.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .player-chip-worth{order:-1}.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .stat-badge--affliction,.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .player-chip-buffed{grid-row:auto}.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .stat-rows{grid-template-columns:minmax(0,1fr) var(--chip-side-w)}.player-rail--side .player-chip.is-big .player-chip-stats .stat-badge--power,.player-rail--side .player-chip.is-big .player-chip-stats .player-chip-side{justify-self:end}.player-rail--side .player-chip.is-big .player-chip-stats .player-chip-worth{grid-row:3;grid-column:1 / span 2;justify-self:center}.player-chip-sep{color:var(--color-ink-muted)}.player-rail--side .player-chip-sep{display:none}.action-stack{position:relative;flex:1 1 0;min-height:0}.action-stack-flap{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:.5rem;min-height:0}.action-stack-flap.is-expanded{top:auto;max-height:calc(200% + .5rem);z-index:6;padding:.4rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg)}.action-stack .action-buttons{flex:1 1 0;min-height:0;display:flex;flex-direction:column-reverse;flex-wrap:nowrap;justify-content:flex-start;align-items:stretch;gap:.5rem;overflow:hidden}.action-stack-flap.is-expanded .action-buttons{flex:0 1 auto;overflow-y:auto}.action-stack .action-buttons.action-buttons--icons{flex-flow:row wrap-reverse;align-content:flex-start}.action-stack .action-buttons.action-buttons--icons .btn{width:calc(50% - .25rem);padding:.55rem .3rem}.action-stack .action-buttons.action-buttons--icons>.suggestion-action-button{width:calc(50% - .25rem)}.action-stack .action-buttons .btn{flex:0 0 auto;min-width:0;width:100%}.action-buttons>.suggestion-action-button{min-width:0}.action-buttons>.suggestion-action-button>.btn{width:100%}.action-stack .action-buttons>.suggestion-action-button{flex:0 0 auto;min-width:0;width:100%}.action-stack .action-buttons>.suggestion-action-button>.btn{width:100%}.action-stack-toggle{flex:0 0 auto;padding:.15rem .4rem;border:1px dashed var(--color-border);border-radius:8px;background:transparent;color:var(--color-ink-muted);font-size:.72rem;font-weight:600;line-height:1.4;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-stack-toggle:hover,.action-stack-toggle:focus-visible{border-style:solid;border-color:var(--color-accent);color:var(--color-ink)}@media (pointer: coarse){.player-rail,.player-rail--side{padding-top:env(safe-area-inset-top)}}.lobby-players li.is-bot{opacity:.9}.lobby-players li.is-invite-pending{opacity:.82;border-style:dashed}.lobby-players li.is-away{opacity:.6;border-style:dashed}.lobby-seat-note--away{font-style:normal;letter-spacing:.02em}.lobby-seat-note--danger{font-style:normal;font-weight:600;color:var(--color-danger)}.player-token.is-bot{background:none;border:0;border-radius:0;box-shadow:none}.player-token-robot{width:100%;height:100%;pointer-events:none}.player-token.is-ghost .player-token-head{stroke-dasharray:2.4 1.8}.player-chip.is-bot-thinking .player-token-spark,.player-token.is-bot-thinking .player-token-spark{animation:bot-thinking 1.4s ease-in-out infinite}@keyframes bot-thinking{0%,to{opacity:.45}50%{opacity:1}}@media (prefers-reduced-motion: reduce){.player-chip.is-bot-thinking .player-token-spark,.player-token.is-bot-thinking .player-token-spark{animation:none}}.watch-banner{position:fixed;top:calc(.35rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:440;pointer-events:none;max-width:calc(100vw - 1.5rem);background:var(--color-surface);border:1px solid var(--color-border);border-radius:999px;box-shadow:var(--shadow);padding:.25rem .75rem;font-size:.78rem;color:var(--color-ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.watch-banner-own{pointer-events:auto;white-space:normal;overflow:visible;border-radius:var(--radius);border-color:var(--color-accent);background:var(--color-bg-alt);color:var(--color-ink);text-align:center;display:flex;align-items:center;gap:.6rem;padding:.35rem .6rem .35rem .8rem}.offline-grace-banner{pointer-events:auto;white-space:normal;overflow:visible;max-width:min(34rem,calc(100vw - 1.5rem));border-radius:var(--radius);border-color:var(--color-accent);background:var(--color-bg-alt);color:var(--color-ink);text-align:center;line-height:1.35;padding:.4rem .8rem}.update-banner{pointer-events:auto;white-space:normal;overflow:visible;max-width:min(26rem,calc(100vw - 1.5rem));border-radius:var(--radius);border-color:var(--color-accent);background:var(--color-bg-alt);color:var(--color-ink);text-align:center;line-height:1.35;padding:.4rem .8rem}.seat-takeover{position:fixed;top:calc(2.2rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:441;width:min(22rem,calc(100vw - 1.5rem));max-height:min(60vh,26rem);overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.6rem;box-shadow:var(--shadow);padding:.6rem .75rem;text-align:center}.seat-takeover-line{margin:0 0 .4rem;font-size:.85rem;color:var(--color-ink)}.seat-takeover-name{display:flex;flex-direction:column;gap:.2rem;align-items:stretch;margin-bottom:.5rem;font-size:.78rem;color:var(--color-ink-muted);text-align:left}.seat-takeover .vote-roster li{justify-content:space-between;width:100%}.stop-poll{position:fixed;top:calc(2.6rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:442;width:min(22rem,calc(100vw - 1.5rem));max-height:min(60vh,26rem);overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.6rem;box-shadow:var(--shadow);padding:.6rem .75rem;text-align:center}.stop-poll-line{margin:0 0 .4rem;font-size:.85rem;color:var(--color-ink)}.stop-poll .vote-roster li{justify-content:space-between;width:100%}.stop-poll .quick-start-row{flex-wrap:wrap;justify-content:center;gap:.35rem}.stop-poll .quick-start-row .btn{flex:0 1 auto;font-size:.8rem;padding:.3rem .6rem}.declared-vote{position:fixed;top:calc(2.6rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:441;width:min(22rem,calc(100vw - 1.5rem));max-height:min(60vh,26rem);overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-accent);border-radius:.6rem;box-shadow:var(--shadow);padding:.6rem .75rem;text-align:center}.declared-vote-line{margin:0 0 .4rem;font-size:.85rem;color:var(--color-ink)}.declared-team-members{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.2rem}.declared-team-member{display:inline-flex;align-items:center;gap:.25rem;font-size:.8rem}.declared-vote .vote-roster li{justify-content:space-between;width:100%}.declared-vote .quick-start-row{flex-wrap:wrap;justify-content:center;gap:.35rem}.declared-vote .quick-start-row .btn{flex:0 1 auto;font-size:.8rem;padding:.3rem .6rem}.declared-mark{position:fixed;top:calc(2.6rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:440;display:flex;align-items:center;gap:.3rem;margin:0;max-width:min(24rem,calc(100vw - 1.5rem));padding:.15rem .55rem;border-radius:999px;background:var(--color-surface);border:1px solid var(--color-border);font-size:.75rem;color:var(--color-ink-muted, var(--color-ink));opacity:.9;pointer-events:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reclaim-notice{position:fixed;top:calc(3.2rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:440;width:min(420px,calc(100vw - 1.5rem));background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:.85rem;display:flex;flex-direction:column;gap:.5rem;animation:popoverFadeIn .15s ease-out}.reclaim-notice-title{font-weight:700}.turn-button-root{--turn-ribbon-reach: calc(var(--turn-button-size) * .225);--turn-ribbon-side-reach: calc(var(--turn-button-size) * .25);position:fixed;top:calc(env(safe-area-inset-top) + var(--turn-ribbon-reach));right:calc(.5rem + env(safe-area-inset-right) + var(--turn-ribbon-side-reach));z-index:600;color:var(--turn-button-fill);display:flex;flex-direction:column;align-items:center;pointer-events:none}:root:has(.game-header.is-open) .turn-button-root{z-index:419}.turn-button-frame-ribbon{position:absolute;left:50%;transform:translate(-50%);z-index:2;display:block;width:calc(var(--turn-button-size) * 1.5);height:auto;filter:drop-shadow(0 1px 2px rgba(0,0,0,.3))}.turn-button-frame-ribbon--top{top:calc(var(--turn-ribbon-reach) * -1)}.turn-button-frame-ribbon--bottom{bottom:calc(var(--turn-ribbon-reach) * -1)}.turn-button-frame-ribbon text{fill:var(--turn-button-ink)}.btn-die-pair{display:block;height:1.15em;width:calc(1.15em * 32 / 18);flex:0 0 auto}.btn-reroll{display:block;height:1.35em;width:1.35em;flex:0 0 auto;color:#3f9f57}.turn-button{position:relative;width:var(--turn-button-size);height:var(--turn-button-size);border-radius:50%;display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;pointer-events:auto;border:2px solid var(--turn-button-fill);background:var(--color-surface-2);box-shadow:var(--shadow)}.turn-button:before{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:50%;background:conic-gradient(var(--turn-ap-wedges, transparent 0deg 360deg));-webkit-mask:radial-gradient(closest-side,transparent 0 78%,#000 80% 100%);mask:radial-gradient(closest-side,transparent 0 78%,#000 80% 100%);pointer-events:none}.turn-button-dice,.turn-button-cog{display:block;width:62%;height:62%}.turn-button-number{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:calc(var(--turn-button-size) * .4);line-height:1;transform:translateY(-.07em);color:#2f6fdb;text-shadow:0 0 2px #fff,0 0 4px rgba(255,255,255,.9)}.turn-button-timer{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-weight:800;font-variant-numeric:tabular-nums;font-size:calc(var(--turn-button-size) * .3);line-height:1;color:var(--color-danger)}.turn-button-token{--token-size: calc(var(--turn-button-size) * .42);position:absolute;left:calc(var(--turn-button-size) * -.25 - var(--token-size) * .15);top:50%;transform:translateY(-50%);z-index:3;pointer-events:none}.turn-button-root.is-mine .turn-button{animation:turn-button-mine 2.6s ease-in-out infinite}@keyframes turn-button-mine{0%,to{box-shadow:0 0 #fff0,var(--shadow)}50%{box-shadow:0 0 0 7px #ffffff52,var(--shadow)}}@media (prefers-reduced-motion: reduce){.turn-button-root.is-mine .turn-button{animation:none;box-shadow:0 0 0 5px #ffffff4d,var(--shadow)}}.turn-button-panel{position:absolute;top:100%;right:0;margin-top:.35rem;pointer-events:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow);padding:.4rem .7rem;font-size:.85rem;white-space:nowrap;animation:popoverFadeIn .15s ease-out}.turn-button-watchers{position:absolute;top:50%;left:calc(100% - .5rem);transform:translateY(-50%);z-index:-1;width:1.4rem;box-sizing:border-box;padding:.2rem .1rem .2rem .5rem;display:flex;flex-direction:column;align-items:center;gap:1px;font:inherit;font-size:.65rem;font-weight:700;line-height:1;color:var(--color-ink);background:var(--color-surface);border:1px solid var(--turn-button-fill);border-radius:0 999px 999px 0;box-shadow:var(--shadow);cursor:pointer;pointer-events:auto}.turn-button-watchers-icon{width:.85rem;height:.85rem}.turn-button-panel--watchers{white-space:normal;width:max-content;max-width:min(19rem,calc(100vw - 2rem));max-height:min(60vh,22rem);overflow-y:auto;overflow-x:hidden;box-sizing:border-box}.turn-button-panel-text{overflow-wrap:anywhere}.turn-button-watchers-line{margin-top:.4rem;padding-top:.4rem;border-top:1px solid var(--color-border);font-weight:600}.turn-button-watchers-list{list-style:none;margin:.3rem 0 0;padding:0;display:flex;flex-direction:column;gap:.25rem}.turn-button-watcher{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .5rem;min-width:0}.turn-button-watcher-name{min-width:0;overflow-wrap:anywhere}.turn-button-watcher-status{font-size:.75rem;opacity:.75}.turn-button-watcher-invite{margin-left:auto;font:inherit;font-size:.75rem;padding:.15rem .5rem;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-ink);cursor:pointer}.leaders-strip{display:flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--color-ink);line-height:1.5;flex-shrink:0;padding:.05rem .5rem;border-radius:999px;background:linear-gradient(90deg,#f3b3ad,#f6cf9c,#f3e6a0,#bfe0b0,#b6d4ec,#d2c2e8);box-shadow:inset 0 0 0 1px #00000014}:root[data-theme=dark] .leaders-strip{--color-ink: #2c1e0f;--color-ink-muted: #6b5842;--color-accent: #9c6b1f;--color-accent-strong: #7a4f14;--color-good: #2e6b3a;--color-danger: #7a2e2e}.leaders-strip-day{font-weight:600;color:var(--color-ink);white-space:nowrap}.leaders-strip-race{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}.leaders-strip-value{color:var(--color-ink);font-variant-numeric:tabular-nums}.leaders-strip-worth{vertical-align:baseline}.leaders-strip-sep{color:var(--color-ink-muted)}.leaders-strip-tokens{display:inline-flex;align-items:center;flex-shrink:0}.leaders-strip-tokens .player-token--inline+.player-token--inline{margin-left:calc(var(--token-size, 22px) * -.34)}.leaders-strip--stacked{border-radius:.75rem}.leaders-strip--inline{overflow-x:auto;margin-top:-.35rem}.leaders-strip--stacked{flex-direction:column;align-items:flex-start;gap:.1rem;padding:.2rem .1rem;min-width:0}.leaders-strip--stacked .leaders-strip-sep{display:none}.player-rail--side.player-rail--leaders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;overflow-x:hidden;overflow-y:auto}.player-rail--side.player-rail--leaders .player-chip-wrapper,.player-rail--side.player-rail--leaders .player-chip{min-width:0}@media (max-width: 560px){:root{--turn-button-size: 46px}.turn-button-root{top:env(safe-area-inset-top);right:calc(.25rem + env(safe-area-inset-right))}.rail-leaders-portrait .leaders-strip{padding-right:.5rem;max-width:min(34vw,11rem);font-size:.72rem}.rail-leaders-portrait .leaders-strip-race{white-space:normal;flex-wrap:wrap;min-width:0}.rail-leaders-portrait .leaders-strip-tokens{flex-wrap:wrap;flex-shrink:1;max-width:4.6rem}}@media (orientation: landscape) and (max-height: 560px){:root{--turn-button-size: 42px}.side-rail{width:clamp(190px,26vw,280px)}}@media (min-width: 1400px) and (min-height: 561px){.side-rail{width:clamp(210px,14.5vw,280px)}}.log-pie{display:inline-block;width:.85em;height:.85em;border-radius:50%;vertical-align:-.08em;border:1px solid var(--color-border);background-color:var(--color-surface-2)}.log-pie--morning{background-image:conic-gradient(#f5ae12,#f5ae12 360deg)}.log-pie--noon{background-image:conic-gradient(transparent 0deg 60deg,#f5ae12 60deg 300deg,transparent 300deg 360deg)}.log-pie--evening{background-image:conic-gradient(transparent 0deg 90deg,#f5ae12 90deg 210deg,transparent 210deg 360deg)}.tile-lore{font-style:italic;color:var(--color-ink-muted);font-size:.85rem;line-height:1.45;margin:.15rem 0 .35rem}.tile-whirlwind-note{font-size:.85rem;line-height:1.45;color:var(--color-ink);margin:.15rem 0 .4rem;padding-inline-start:.5rem;border-inline-start:2px solid var(--color-ink-muted)}.tile-lore--line{display:block;width:100%;text-align:left;background:none;border:none;padding:0;cursor:pointer;font-family:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tile-lore--line.is-open{white-space:normal}.board-glyph-icon{width:1.15em;height:1.15em}.sheet.training-moment,.sheet.adoption-moment,.sheet.mourning-moment,.sheet.death-moment,.sheet.envenom-moment,.sheet.smithy-moment{position:fixed;top:50%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(24rem,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow-y:auto;background:var(--color-surface)}.sheet.training-moment:hover,.sheet.training-moment:focus-within,.sheet.adoption-moment:hover,.sheet.adoption-moment:focus-within,.sheet.mourning-moment:hover,.sheet.mourning-moment:focus-within,.sheet.death-moment:hover,.sheet.death-moment:focus-within,.sheet.envenom-moment:hover,.sheet.envenom-moment:focus-within,.sheet.smithy-moment:hover,.sheet.smithy-moment:focus-within{background:var(--color-surface)}.pet-moment-body{display:flex;flex-direction:column;align-items:center;gap:.6rem;text-align:center}.pet-moment-portrait{width:min(14rem,60vw);aspect-ratio:1 / 1;object-fit:cover;border-radius:12px;border:1px solid var(--color-border);background:var(--color-surface)}.pet-moment-portrait--small{width:min(8rem,40vw)}.pet-moment-portrait--mourning{width:min(10rem,45vw);filter:grayscale(1) brightness(.85)}.mourning-moment-plate{width:100%;max-height:40vh;object-fit:cover;border-radius:12px}.pet-moment-name{margin:0}.comrade-plate{width:100%;max-height:40vh;object-fit:cover;border-radius:12px}.comrade-list{list-style:none;margin:.5rem 0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:center}.comrade-list li{display:flex;align-items:center;gap:.4rem}.comrade-list img{width:2.5rem;height:2.5rem;object-fit:contain;border-radius:6px}.comrade-list--fallen img,.comrade-single--fallen img{filter:grayscale(1) brightness(.85)}.train-next-form{display:flex;flex-direction:column;align-items:center;gap:.35rem;margin-top:.6rem;text-align:center}.train-next-form-label{font-size:.85rem;color:var(--color-ink-muted)}.stat-badge--knowledge{border:2px solid #3d5a80;color:#33506f}.scroll-upgrade-hint{font-weight:600}.scroll-mechanic-note{margin-top:.5rem}.game-intro{max-width:38rem;display:flex;flex-direction:column;gap:.35rem}.game-intro-lead{font-weight:600;margin:0 0 .35rem}.game-intro h4{margin:.5rem 0 .15rem}.game-intro-more{margin-top:.75rem;font-style:italic}.media-viewer-close{grid-area:close}.sheet.media-viewer .media-viewer-image{grid-area:image}.media-viewer-name{grid-area:name}.media-viewer-lore,.media-viewer-body>.entry-sub{grid-area:lore}@media (orientation: landscape) and (max-height: 560px){.player-rail--side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;overflow-x:hidden;overflow-y:auto}.player-rail--side .player-chip-wrapper,.player-rail--side .player-chip{min-width:0}.player-rail--side .player-chip{padding:.35rem .3rem}}@media (orientation: landscape) and (max-height: 560px){.sheet.media-viewer{width:min(46rem,calc(100vw - 2rem));grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 1fr auto;grid-template-areas:"name image" "lore image" "close image";align-items:start}.sheet.media-viewer .media-viewer-image{width:auto;height:calc(100dvh - 4.5rem);max-height:calc(100dvh - 4.5rem);justify-self:end}.media-viewer-close{align-self:end;justify-self:start}.media-viewer-lore,.media-viewer-body>.entry-sub{overflow-y:auto;max-height:100%;min-height:0}}.brand--logo{display:flex;align-items:center;gap:.5rem}.brand-logo{width:min(22rem,80vw);height:auto}.brand-logo--bar{width:auto;height:2rem}.brand-logo--night{display:none}:root[data-theme=dark] .brand-logo--day{display:none}:root[data-theme=dark] .brand-logo--night{display:block}.settings-suboption{margin-left:1.6rem;display:flex;align-items:center;gap:.4rem}.settings-suboption:has(input:disabled){opacity:.5}.turn-timer-overlay{position:fixed;z-index:460;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.1rem 1.6rem;border:2px solid var(--color-danger);border-radius:12px;background:var(--color-surface);box-shadow:0 10px 30px #0006;text-align:center}.turn-timer-title{margin:0;font-weight:700}.turn-timer-remaining{font-size:2.4rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-danger)}.stat-badge--requirement{border-style:dashed}.hero-wear-badge .hero-silhouette-icon{width:1em;height:1em;flex:0 0 auto}.hero-wear-badge .hero-wear-ap{display:inline-flex;align-items:center;gap:.1em}.hero-wear-badge .hero-wear-delta{font-variant-numeric:tabular-nums;padding:0 .25em;border-radius:4px}.hero-wear-badge .hero-wear-delta.is-gain{background:#3a7a4a2e}.hero-wear-badge .hero-wear-delta.is-loss{background:#8e2f2f2e}.hero-wear-badge .hero-wear-cog{width:1em;height:1em;flex:0 0 auto}.hero-wear-badge .hero-wear-sep{font-weight:400;color:var(--color-ink-muted)}.legal-links{margin:1rem 0 0;font-size:.8rem;opacity:.65}.legal-links a{color:inherit}.install-tip{margin:.75rem 0 0;font-size:.85rem;opacity:.8}.install-tip.is-flashing{opacity:1;font-weight:600;color:var(--color-accent-strong);animation:fill-countdown-pulse 1.1s ease-in-out 2;border-radius:var(--radius)}@media (prefers-reduced-motion: reduce){.install-tip.is-flashing{animation:none}}.btn-inline{padding:.15rem .6rem;font-size:.85rem;vertical-align:baseline}.media-thumb-btn{padding:0;border:none;background:none;cursor:pointer;line-height:0;border-radius:8px;vertical-align:middle}.media-thumb-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.media-thumb-img{width:40px;height:40px;object-fit:cover;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface)}.pet-thumb-btn{flex-shrink:0;padding:0;border:none;background:none;cursor:pointer;line-height:0;border-radius:8px}.pet-thumb-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.pet-thumb-img{object-fit:cover;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface)}.reload-btn{border:none;background:none;cursor:pointer;font-size:1rem;padding:.1rem .3rem;vertical-align:middle;opacity:.75}.reload-btn:hover,.reload-btn:focus-visible{opacity:1}.entry-thumb-btn{flex-shrink:0;align-self:stretch;display:flex;align-items:center;padding:0;border:none;background:none;cursor:pointer;border-radius:8px}.entry-thumb-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.entry-thumb{width:64px;height:64px;object-fit:cover;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface)}@media (max-width: 639px){.entry-thumb{width:44px;height:44px}}.table-size-row{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.btn-toggle{min-width:2.5rem;padding:.35rem 0}.btn-toggle.is-active{background:var(--color-accent);color:#fff8ec;border-color:var(--color-accent)}.open-tables{margin-top:.75rem}.open-tables-list{list-style:none;margin:.35rem 0 0;padding:0;display:flex;flex-direction:column;gap:.4rem}.open-tables-list li{display:flex;align-items:center;gap:.6rem}.open-table-name{font-weight:600}.open-table-group-badge{font-size:.8em;padding:.05rem .45rem;border-radius:999px;border:1px solid var(--color-accent);background:var(--color-bg-alt);opacity:.85;white-space:nowrap}.open-table-seats{opacity:.75;font-size:.85em;margin-left:auto}.entry-saved-table-warning{opacity:1}.saved-tables{overflow-x:auto}.saved-tables-table{width:100%;min-width:26rem;margin-top:.35rem;border-collapse:collapse;font-size:.85em}.saved-tables-table th,.saved-tables-table td{padding:.22rem .45rem;text-align:left;white-space:nowrap}.saved-tables-table thead th{border-bottom:1px solid var(--color-accent);font-weight:500}.saved-tables-table tbody tr:nth-child(2n){background:color-mix(in srgb,var(--color-accent) 9%,transparent)}.saved-tables-num,.saved-tables-table td.saved-tables-num{text-align:right}.saved-tables-when{text-decoration:underline dotted;text-underline-offset:.2em;text-decoration-color:color-mix(in srgb,currentColor 40%,transparent);cursor:help}.saved-tables-players{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:.2em;text-decoration-color:color-mix(in srgb,currentColor 45%,transparent)}.saved-tables-players:hover,.saved-tables-players:focus-visible,.saved-tables-players.is-open{text-decoration-color:currentColor}.saved-tables-roster{z-index:403;max-width:min(16rem,calc(100vw - 1.5rem));padding:.5rem .65rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow-lg);font-size:.85rem;text-align:left}.saved-tables-roster-title{display:block;opacity:.7;font-size:.85em;margin-bottom:.2rem}.saved-tables-roster ul{list-style:none;margin:0;padding:0}.saved-tables-roster li{padding:.05rem 0}.saved-tables-roster li.is-you{font-weight:600}.saved-tables-roster-empty{opacity:.75}.saved-tables-search{width:100%;margin-top:.35rem;font-size:.85em;padding:.25rem .45rem}.saved-tables-empty{display:block;margin-top:.4rem;opacity:.75;font-size:.85em}.saved-tables-actions{display:flex;align-items:center;gap:.5rem;justify-content:flex-end}.saved-tables-confirm{display:flex;align-items:center;gap:.5rem;white-space:normal}.entry-offline-games tr.is-finished{opacity:.7}.entry-offline-frozen{font-size:.85rem;font-style:italic;color:var(--color-ink-muted)}.entry-offline-notice{margin-top:.5rem;text-align:center}.entry-took-offline{margin-top:.5rem;text-align:center;border-left:3px solid var(--color-accent);padding-left:.6rem}.entry-art-warmup{display:flex;flex-direction:column;align-items:center;gap:.4rem;margin:.75rem 0}.entry-art-warmup .vote-note{margin:0;text-align:center}.watch-board{overflow-x:auto}.watch-board-table{width:100%;min-width:22rem;margin-top:.35rem;border-collapse:collapse;font-size:.9em}.watch-board-table th,.watch-board-table td{padding:.3rem .5rem;text-align:left;white-space:nowrap}.watch-board-table thead th{border-bottom:1px solid var(--color-accent)}.watch-board-table tbody tr+tr td{border-top:1px solid color-mix(in srgb,var(--color-accent) 25%,transparent)}.watch-board-num,.watch-board-table td.watch-board-num{text-align:right}.watch-board-sort{display:inline-flex;align-items:center;gap:.25rem;background:none;border:0;padding:0;font:inherit;color:inherit;opacity:.75;cursor:pointer}.watch-board-sort:hover,.watch-board-sort:focus-visible{opacity:1}.watch-board-sort.is-active{opacity:1;font-weight:600}.watch-board-caret{display:inline-block;min-width:.7em;font-size:.8em}.watch-board-pager{display:flex;align-items:center;justify-content:center;gap:.6rem;margin-top:.5rem}.watch-board-page-count{opacity:.75;font-size:.85em}.front-board-waiting-row,.front-board-invited-row{border-left:2px solid var(--color-accent)}.front-board-planned-row{border-left:2px solid color-mix(in srgb,var(--color-accent) 30%,transparent)}.front-board-planned-row.is-mine{border-left-color:var(--color-accent)}.front-board-pill.is-planned{background:color-mix(in srgb,var(--color-accent) 18%,transparent)}.front-board-planned-detail>td{padding:0 .4rem .4rem}.planned-row-glyph{margin-right:.35rem}.planned-row-mine{opacity:.75;font-size:.9em;margin-left:.35rem}.planned-detail{margin:.4rem 0 .6rem;padding:.5rem .6rem;border:1px solid color-mix(in srgb,var(--color-accent) 35%,transparent);border-radius:6px}.planned-detail-head{display:flex;align-items:baseline;justify-content:space-between;gap:.6rem}.planned-detail-actions{margin-top:.5rem}.planned-locked,.planned-voids{opacity:.95}.when-step-choices{display:flex;flex-wrap:wrap;gap:.3rem 1.2rem}.when-step-field{margin-top:.4rem;max-width:18rem}.when-step-datetime{display:flex;flex-wrap:wrap;gap:.4rem}.when-step-datetime>select{flex:1 1 8rem;min-width:0}.when-step-notice{opacity:.95}.when-marked{color:var(--color-accent)}.bot-vote{margin-top:.5rem}.tutorial-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#0a08048c;display:flex;align-items:center;justify-content:center;padding:1rem}.tutorial-card{max-width:26rem;max-height:80vh;overflow-y:auto}.tutorial-title-row{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}.tutorial-narrator{flex:0 0 auto;width:44px;height:44px;pointer-events:none}.tutorial-title{margin:0;font-size:1.15rem;min-width:0}.tutorial-body{margin:0 0 .6rem;line-height:1.45}.tutorial-actions{display:flex;gap:.6rem;margin-top:.4rem}.tutorial-help-fab{position:fixed;right:.75rem;bottom:.75rem;z-index:60;width:2.2rem;height:2.2rem;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#1e180cd9;color:#f0e6c8;font-size:1.1rem;font-weight:700;cursor:pointer}.tutorial-help-fab:hover{background:#3c3018f2}.beginner-toggle{margin-top:.4rem}.entry-thumb-btn--chip{flex:0 0 auto}.entry-thumb-btn--chip .entry-thumb{width:40px;height:40px}.popover-companion-head,.popover-retinue-line{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.popover-companion-name{min-width:0}.catalog-entry .entry-name .stat-badge--mana{margin-left:.45rem}.tile-chip.is-destination{animation:destination-pulse 1.1s ease-in-out infinite;z-index:5}@keyframes destination-pulse{0%,to{box-shadow:0 0 4px 1px #ffe05280}50%{box-shadow:0 0 22px 8px #ffe63c,0 0 44px 14px #ffe05273}}@media (prefers-reduced-motion: reduce){.tile-chip.is-destination{animation:none;box-shadow:0 0 18px 6px #ffe63ccc}}.tile-chip.is-land-flash{animation:land-flash-pulse 1.1s ease-in-out infinite;z-index:4}@keyframes land-flash-pulse{0%,to{box-shadow:0 0 4px 1px #39ff1480}50%{box-shadow:0 0 22px 8px #39ff14,0 0 44px 14px #39ff1473}}@media (prefers-reduced-motion: reduce){.tile-chip.is-land-flash{animation:none;box-shadow:0 0 18px 6px #39ff14cc}}.tile-chip.is-fight{animation:rival-fight-pulse 1.1s ease-in-out infinite;z-index:3}@keyframes rival-fight-pulse{0%,to{box-shadow:0 0 3px 1px #d6303159}50%{box-shadow:0 0 12px 4px #d63031bf}}@media (prefers-reduced-motion: reduce){.tile-chip.is-fight{animation:none;box-shadow:0 0 10px 3px #d6303199}}.btn--gold-pulse{animation:gold-button-pulse 1.1s ease-in-out infinite}@keyframes gold-button-pulse{0%,to{box-shadow:var(--shadow),inset 0 0 0 1px #ffe05280,inset 0 0 6px 2px #ffe05280}50%{box-shadow:var(--shadow),inset 0 0 0 2px #ffe63c,inset 0 0 18px 6px #ffe63c,inset 0 0 30px 10px #ffe05273}}@media (prefers-reduced-motion: reduce){.btn--gold-pulse{animation:none;box-shadow:var(--shadow),inset 0 0 0 2px #ffe63ccc,inset 0 0 14px 4px #ffe63ccc}}.btn--good-glow{box-shadow:var(--shadow),inset 0 0 0 2px color-mix(in srgb,var(--color-good) 85%,transparent),inset 0 0 14px 4px color-mix(in srgb,var(--color-good) 55%,transparent)}.building-tree .building-row{margin-top:.35rem}.building-branch{opacity:.45;margin-right:.3rem}.building-row .coin-badge{margin-left:.45rem}.ap-cost-badge{position:relative;display:inline-flex;width:1.4em;height:1.4em;margin-block:-.13em;vertical-align:-.2em;margin-left:.25em;flex:0 0 auto}.ap-cost-cog{width:100%;height:100%;display:block}.ap-cost-number{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.76em;color:#2f6fdb;text-shadow:0 0 2px #fff,0 0 3px rgba(255,255,255,.9)}.build-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin:.6rem 0}.build-tab{display:inline-flex;align-items:center;justify-content:center;min-width:2.75rem;padding:.35rem .4rem;font-size:1.6rem;line-height:1}.build-card{flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden}.build-card-main{display:flex;align-items:center;gap:.6rem;padding:.55rem .65rem}.build-card--nested{box-shadow:inset 3px 0 0 var(--color-border)}.build-card-bar{display:flex;border-top:1px solid var(--color-border)}.build-card-build{flex:1;border-radius:0;border:none;padding:.6rem .8rem;font-size:.9rem}.build-card-built{flex:1;padding:.5rem .8rem;text-align:center;background:var(--color-surface-2)}.building-fold{flex:0 0 auto;width:1.2rem;background:none;border:none;color:inherit;opacity:.7;cursor:pointer;padding:0;font-size:.9em}.building-fold--leaf{cursor:default;opacity:.4}.build-card .building-fold{align-self:stretch;width:1.5rem;font-size:1.05em;display:flex;align-items:center;justify-content:center}.build-card .building-fold--leaf{align-items:flex-start;padding-top:.15rem}.build-card button.building-fold:hover{opacity:1}.build-card .entry-thumb-btn:hover .entry-thumb{border-color:var(--color-accent)}.tutorial-btn-mini{display:inline-flex;align-items:center;gap:.25em;font-size:.78em;line-height:1;padding:.12em .5em;vertical-align:middle;pointer-events:none;white-space:nowrap}.btn-inline-link{background:none;border:none;padding:0;color:#7fb2e5;text-decoration:underline;cursor:pointer;font:inherit}.knowledge-primer{margin:.5rem 0 .9rem}.tutorial-ap-mini{width:1.35em;height:1.35em;vertical-align:-.28em;margin-left:0}.tutorial-turn-mini{display:inline-flex;align-items:center;justify-content:center;width:1.95em;height:1.95em;border-radius:50%;border:1.5px solid var(--color-border);background:var(--color-surface-2);vertical-align:-.55em;pointer-events:none}.tutorial-turn-mini .tutorial-ap-mini{vertical-align:baseline}.entry-card{position:relative}.entry-card--full{max-width:76rem;width:100%;padding:clamp(1.5rem,4vw,3rem)}.entry-card--wide{max-width:min(100%,120rem);width:100%;padding:clamp(1.5rem,4vw,3rem)}.entry-title{font-size:1.15rem;color:var(--color-accent-strong);margin:.25rem 0 .75rem}.entry-activity{margin:.6rem 0 0}.entry-back{display:block;text-align:left;margin-bottom:.25rem;color:var(--color-ink-muted)}.entry-intro-layout{display:flex;align-items:center;gap:clamp(1.5rem,4vw,3.5rem);text-align:left}.entry-intro-portrait{position:relative;flex:0 0 33.333%;max-width:33.333%}.entry-intro-portrait img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:var(--radius-lg);-webkit-mask-image:radial-gradient(ellipse 76% 76% at 50% 50%,#000 60%,transparent 100%);mask-image:radial-gradient(ellipse 76% 76% at 50% 50%,#000 60%,transparent 100%)}.entry-intro-portrait:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--radius-lg);box-shadow:inset 0 0 3rem #2c1e0f47;pointer-events:none}.entry-intro-text{flex:1 1 0%;min-width:0}.entry-intro-text .entry-title{font-size:1.5rem}.entry-intro-body{margin:0 0 1rem;color:var(--color-ink);line-height:1.55}@media (max-width: 560px){.entry-intro-layout{flex-direction:column;text-align:center}.entry-intro-portrait{flex:0 0 auto;max-width:50vw;margin:0 auto}}@media (max-width: 560px) and (orientation: portrait){.entry-card--full,.entry-card--wide{width:calc(100% + 1.5rem);max-width:calc(100% + 1.5rem);margin-inline:-.75rem}.entry-intro-portrait{width:calc(100% + clamp(1.5rem,4vw,3rem));max-width:calc(100% + clamp(1.5rem,4vw,3rem));margin-inline:calc(clamp(1.5rem,4vw,3rem)/-2)}}.entry-intro-actions{display:flex;flex-direction:column;align-items:center;gap:.6rem;margin-top:.5rem}.entry-intro-note{display:flex;align-items:flex-end;justify-content:flex-end;gap:.75rem;margin-top:1.25rem;text-align:left}.entry-intro-note-art{flex:0 0 auto;width:96px;height:96px;border-radius:var(--radius-lg);object-fit:cover}.entry-intro-note-bubble{flex:0 1 26rem;margin:0;padding:.6rem .85rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) .25rem var(--radius-lg);box-shadow:var(--shadow);font-size:.85rem;line-height:1.45;color:var(--color-ink)}@media (max-width: 560px){.entry-intro-note{flex-direction:column;align-items:center;text-align:center}.entry-intro-note-bubble{flex:1 1 auto}}.entry-tiles-guide{display:flex;align-items:center;gap:1rem;margin:0 0 1.25rem;text-align:left}@media (max-width: 560px){.entry-tiles-guide{flex-direction:column;text-align:center}}.emissary-portrait{position:relative}.emissary-portrait img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;-webkit-mask-image:radial-gradient(circle at 50% 50%,#000 60%,transparent 100%);mask-image:radial-gradient(circle at 50% 50%,#000 60%,transparent 100%)}.emissary-portrait:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:inset 0 0 1.1rem #2c1e0f47;pointer-events:none}.entry-tiles-guide-portrait{flex:0 0 auto;width:clamp(90px,9vw,120px);height:clamp(90px,9vw,120px);padding:0;margin:0;background:none;border:none;border-radius:50%;cursor:pointer;transition:transform .15s ease}.entry-tiles-guide-portrait:hover,.entry-tiles-guide-portrait:focus-visible{transform:scale(1.05)}@media (prefers-reduced-motion: reduce){.entry-tiles-guide-portrait{transition:none}}.entry-tiles-guide-text{margin:0;color:var(--color-ink);font-size:1.1rem;line-height:1.55}.entry-section{margin:0 0 1.75rem}.entry-section>.ruleset-strip,.entry-section>.mode-tile-grid{margin-bottom:0}.entry-section-title{margin:0 0 .7rem;font-family:var(--font-display);font-size:.95rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-muted);text-align:left}.entry-section-head{display:flex;align-items:center;gap:.5rem;margin:0 0 .7rem}.entry-section-head>.entry-section-title{margin:0}.entry-section-head:last-child{margin-bottom:0}.entry-section-toggle{padding:.15rem .4rem;font-size:.95rem;color:var(--color-ink-muted);position:relative}.entry-section-toggle[aria-expanded=true],.entry-section-toggle[aria-selected=true]{background:var(--color-bg-alt);color:var(--color-ink)}.entry-section-glyph{display:block;width:1em;height:1em}.entry-section-toggle.is-filtered:after{content:"";position:absolute;top:-.2rem;right:-.2rem;width:.5rem;height:.5rem;border-radius:50%;background:var(--color-accent, var(--color-danger))}.lobby-icon-toggles{display:flex;align-items:center;gap:.4rem;margin-bottom:.6rem}.lobby-tabpanel{margin-bottom:1rem}.lobby-tabpanel>.field-label{margin:0 0 .5rem;display:block}.entry-find-table-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.75rem}.entry-find-table-field{flex:1 1 14rem;min-width:0}.entry-find-table-notice{margin:.45rem 0 0;color:var(--color-danger);font-size:.9rem;text-align:left}.entry-find-table-notice:empty{margin:0}.front-board-count{font-family:var(--font-body);font-weight:400;letter-spacing:0;text-transform:none}.front-board-quiet{margin:0;color:var(--color-ink-muted);font-style:italic}.front-board-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1rem;margin-bottom:.5rem;font-size:.9rem;color:var(--color-ink-muted)}.front-board-controls label{display:inline-flex;align-items:center;gap:.35rem}.front-board-controls select{font:inherit;color:var(--color-ink);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;padding:.15rem .35rem}.front-board-scroll{overflow-x:auto}.front-board-table{min-width:34rem}.front-board-pill{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .45rem;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);font-size:.8em;line-height:1;white-space:nowrap}.front-board-game.is-full,.front-board-difficulty.is-hard{border-color:var(--color-accent)}.front-board-game.is-mobius{border-color:var(--color-mobius-seam);color:var(--color-mobius-seam)}.front-board-difficulty.is-easy{border-color:color-mix(in srgb,var(--color-mana-single) 45%,var(--color-border));color:var(--color-mana-single)}.front-board-pill.is-no-difficulty{border-style:dashed;color:var(--color-ink-muted)}.front-board-pill.is-waiting{background:var(--color-good-bg);border-color:color-mix(in srgb,var(--color-good) 40%,var(--color-border));color:var(--color-good)}.front-board-pill.is-invited{background:color-mix(in srgb,var(--color-accent) 12%,var(--color-surface));border-color:var(--color-accent);color:var(--color-accent-strong)}.front-board-pill.is-starting{background:color-mix(in srgb,var(--color-accent) 12%,var(--color-surface));border-color:var(--color-accent);color:var(--color-accent-strong);font-weight:600}.front-board-day{font-weight:600;white-space:nowrap}.front-board-group,.front-board-parallel{display:block;font-size:.78em;font-weight:400;color:var(--color-ink-muted)}.front-board-seats{display:inline-flex;align-items:center;gap:.15rem;flex-wrap:wrap}.front-board-seat{position:relative;display:inline-grid;place-items:center;width:1.4rem;height:1.4rem;border:1px solid var(--color-border);border-radius:5px;background:var(--color-surface);font-size:.8rem;line-height:1}.front-board-seat.is-human{background:var(--color-bg-alt)}.front-board-seat.is-empty{border-style:dashed;color:var(--color-ink-muted)}.front-board-seat-account{position:absolute;top:-.3rem;left:-.3rem;width:.65rem;height:.65rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-good);color:#f6fbf7;border:1px solid rgba(255,255,255,.85);box-shadow:0 1px 2px #140c0473;font-size:.5rem;line-height:1;font-weight:700;pointer-events:none}:root[data-theme=dark] .front-board-seat-account{color:#10301d;border-color:#140c048c}.front-board-seat.is-awaited{border-style:dashed;border-color:color-mix(in srgb,var(--color-ink-muted) 55%,var(--color-border));background:var(--color-surface);opacity:.55}.front-board-seat-rsvp{position:absolute;top:-.3rem;right:-.3rem;width:.65rem;height:.65rem;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-accent);color:#2a1c05;border:1px solid rgba(255,255,255,.85);box-shadow:0 1px 2px #140c0473;font-size:.5rem;line-height:1;font-weight:700;opacity:1;pointer-events:none}:root[data-theme=dark] .front-board-seat-rsvp{border-color:#140c048c}.front-board-answer{position:relative;display:inline-flex;flex-wrap:wrap;justify-content:flex-end;gap:.3rem}.front-board-answer-menu{min-width:9rem}.front-board-answer-error{display:block;flex-basis:100%;max-width:16rem;font-size:.8em;text-align:right}.front-board-actions{display:flex;gap:.3rem;flex-wrap:wrap;justify-content:flex-end}.front-board-actions .btn{padding:.25rem .6rem;font-size:.85em;white-space:nowrap}.front-board-held{max-width:16rem;color:var(--color-ink-muted);font-size:.8em;font-style:italic;text-align:right;line-height:1.25}.front-board-none{margin:.6rem 0 0;color:var(--color-ink-muted);font-style:italic;text-align:center}.front-board-foot{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem;margin-top:.45rem;font-size:.85rem;color:var(--color-ink-muted)}.entry-steps{display:grid;grid-template-columns:repeat(3,1fr);margin:0 0 1.25rem;border:1px solid var(--color-border);border-radius:10px;overflow:hidden;background:var(--color-surface-2)}.entry-step{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.1rem .6rem;min-height:4rem;padding:.6rem .75rem;border:0;border-right:1px solid var(--color-border);background:transparent;color:inherit;font:inherit;text-align:left;position:relative}.entry-step:last-child{border-right:0}.entry-step:disabled{cursor:default}.entry-step-n{grid-row:span 2;display:grid;place-items:center;width:1.9rem;height:1.9rem;border:2px solid var(--color-border);border-radius:50%;background:var(--color-surface);color:var(--color-ink-muted);font-family:var(--font-display);font-weight:700;font-size:.85rem}.entry-step-label{font-family:var(--font-display);font-size:.7rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink-muted)}.entry-step-change{margin-left:.4rem;color:var(--color-accent-strong);font-size:.9em;letter-spacing:.04em;text-transform:none}.entry-step-value{display:flex;align-items:center;gap:.4rem;min-height:1.3em;font-size:.92rem}.entry-step-thumb{width:28px;height:28px;border:1px solid var(--color-border);border-radius:5px;object-fit:cover}.entry-step-thumb--wide{width:42px;height:25px}.entry-step-hint{color:var(--color-ink-muted);font-style:italic;font-size:.88rem}.entry-step.is-done .entry-step-n{border-color:var(--color-good);background:var(--color-good);color:var(--color-surface)}.entry-step.is-done:hover{background:color-mix(in srgb,var(--color-accent) 10%,var(--color-surface))}.entry-step.is-done:hover .entry-step-value{text-decoration:underline;text-underline-offset:3px}.entry-step.is-current{background:color-mix(in srgb,var(--color-accent) 8%,var(--color-surface))}.entry-step.is-current:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--color-accent)}.entry-step.is-current .entry-step-n{border-color:var(--color-accent-strong);background:color-mix(in srgb,var(--color-accent) 35%,var(--color-surface));color:var(--color-ink)}.entry-step.is-current .entry-step-label{color:var(--color-accent-strong)}.entry-step.is-pending{opacity:.65}.entry-step.is-skipped .entry-step-n{border-style:dashed}@media (max-width: 760px){.entry-steps{grid-template-columns:1fr}.entry-step{min-height:0;border-right:0;border-bottom:1px solid var(--color-border)}.entry-step:last-child{border-bottom:0}.front-board-controls{font-size:.85rem}.front-board-scroll{overflow-x:visible}.front-board-table{min-width:0;display:block}.front-board-table thead{display:none}.front-board-table tbody{display:block}.front-board-table tbody tr{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .6rem;padding:.5rem 0}.front-board-table tbody tr+tr{border-top:1px solid color-mix(in srgb,var(--color-accent) 25%,transparent)}.front-board-table tbody td,.front-board-table tbody tr+tr td{padding:0;border-top:0}.front-board-table tbody td:nth-child(1){order:1;flex:1 1 auto;min-width:0;white-space:normal}.front-board-table tbody td:nth-child(4){order:2}.front-board-table tbody td.front-board-actions{order:3}.front-board-table tbody tr:after{content:"";order:4;flex-basis:100%;height:0}.front-board-table tbody td:nth-child(2){order:5}.front-board-table tbody td:nth-child(3){order:6}.front-board-table tbody td.watch-board-num{order:7;text-align:left}.front-board-table tbody td:nth-child(6){order:8}.front-board-table tbody tr.front-board-planned-detail td{flex:1 1 100%;white-space:normal}.front-board-table tbody tr.front-board-planned-detail:after{display:none}}.ruleset-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));gap:1rem}.ruleset-strip{position:relative;--ruleset-card-w: min(62%, 34rem);margin-bottom:1rem}.ruleset-row--strip{display:flex;grid-template-columns:none;gap:1rem;padding-block:.4rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;position:relative}.ruleset-row--strip::-webkit-scrollbar{display:none}.ruleset-row--strip:before,.ruleset-row--strip:after{content:"";flex:0 0 calc((100% - var(--ruleset-card-w)) / 2 - 1rem)}.ruleset-row--strip>.ruleset-choice{flex:0 0 var(--ruleset-card-w);scroll-snap-align:center}.ruleset-jump{position:absolute;top:50%;transform:translateY(-50%);z-index:3;display:flex;align-items:center;justify-content:center;width:2.4rem;height:2.4rem;padding:0 0 .15rem;border:1px solid var(--color-border);border-radius:50%;background:#140d05b8;color:#f7cf6b;font-family:var(--font-display);font-size:1.7rem;line-height:1;cursor:pointer;box-shadow:var(--shadow);transition:background-color .12s ease,opacity .12s ease}.ruleset-jump--prev{left:max(.15rem,calc(50% - var(--ruleset-card-w) / 2 - 2.7rem))}.ruleset-jump--next{right:max(.15rem,calc(50% - var(--ruleset-card-w) / 2 - 2.7rem))}.ruleset-jump:hover:not(:disabled),.ruleset-jump:focus-visible{background:#140d05e6}.ruleset-jump:disabled{opacity:.28;cursor:default}@media (prefers-reduced-motion: reduce){.ruleset-row--strip{scroll-behavior:auto}.ruleset-jump{transition:none}}.ruleset-row>.ruleset-choice:only-child{max-width:32rem;justify-self:center}.ruleset-choice{position:relative;container-type:inline-size;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:16 / 9;padding:.6rem .75rem;text-align:left;border:1px solid var(--color-border);border-radius:var(--radius);clip-path:inset(0 round var(--radius));background:var(--color-surface-2);color:#fff8f0;cursor:pointer;box-shadow:var(--shadow);transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.ruleset-choice-shot{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:filter .18s ease}.ruleset-choice:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#1c130a0a 28%,#1c130abd);pointer-events:none}.ruleset-choice-body{position:relative;z-index:1;display:flex;flex-direction:column;gap:.2rem;text-shadow:0 1px 2px rgba(0,0,0,.55);transition:opacity .18s ease}.ruleset-choice:hover,.ruleset-choice:focus-visible{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.ruleset-choice.is-active{border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent) inset,var(--shadow)}.ruleset-choice:not(.is-active) .ruleset-choice-shot{filter:grayscale(.6) brightness(.5)}.ruleset-choice:not(.is-active) .ruleset-choice-body{opacity:.75}.ruleset-choice:not(.is-active):hover .ruleset-choice-shot,.ruleset-choice:not(.is-active):focus-visible .ruleset-choice-shot{filter:none}.ruleset-choice:not(.is-active):hover .ruleset-choice-body,.ruleset-choice:not(.is-active):focus-visible .ruleset-choice-body{opacity:1}.ruleset-choice-banner{position:relative;z-index:2;margin:auto 0;padding:.55rem .4rem;text-align:center;font-family:var(--font-display);font-weight:700;font-size:clamp(.95rem,4.9cqw,1.5rem);line-height:1.15;color:#f7cf6b;text-shadow:0 1px 0 #5c3d0c,0 2px 6px rgba(0,0,0,.85),0 0 18px rgba(0,0,0,.55);background:radial-gradient(ellipse at center,#140c048c,#140c0400 72%);opacity:0;transition:opacity .18s ease;pointer-events:none}.ruleset-choice.is-active .ruleset-choice-banner{opacity:1}.ruleset-choice-title{font-weight:700;font-size:clamp(.8rem,3.43cqw,1.05rem)}.ruleset-choice-checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.12rem;font-size:clamp(.62rem,2.61cqw,.8rem);font-weight:600}.ruleset-choice-checks li{display:flex;align-items:center;gap:.35rem}.ruleset-choice-time,.ruleset-choice-device{opacity:.95}@media (max-width: 640px){.ruleset-row{grid-template-columns:1fr}.ruleset-strip{--ruleset-card-w: 86%}}.ruleset-strip-footer{margin-top:.6rem;min-height:1.25rem;text-align:center}.mobius-explainer-link{font-size:.85rem}.difficulty-choice{text-align:center}.difficulty-row{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem 1.5rem}.difficulty-option{display:flex;flex-direction:row;align-items:center;text-align:left;gap:.75rem;width:auto;max-width:22rem;padding:.4rem;border:0;border-radius:var(--radius-lg);background:none;color:inherit;font:inherit;cursor:pointer;opacity:.55;transition:opacity .14s ease}.difficulty-option:hover,.difficulty-option:focus-visible{opacity:.85}.difficulty-option.is-active{opacity:1}.difficulty-option.is-active .difficulty-portrait:after{box-shadow:0 0 0 3px var(--color-accent),inset 0 0 2rem #2c1e0f3d}.difficulty-portrait{position:relative;display:block;flex-shrink:0;width:7rem;height:7rem}@media (min-width: 640px){.difficulty-portrait{width:9rem;height:9rem}}.difficulty-portrait img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;-webkit-mask-image:radial-gradient(ellipse 76% 76% at 50% 50%,#000 60%,transparent 100%);mask-image:radial-gradient(ellipse 76% 76% at 50% 50%,#000 60%,transparent 100%)}.difficulty-portrait:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:inset 0 0 2rem #2c1e0f3d;pointer-events:none;transition:box-shadow .14s ease}.difficulty-option-text{display:flex;flex-direction:column;gap:.3rem;min-width:0}.difficulty-option-label{font-size:.95rem;font-weight:700;line-height:1.2}.difficulty-option-note{font-size:.8rem;line-height:1.35;color:var(--color-ink-muted)}@media (prefers-reduced-motion: reduce){.difficulty-option,.difficulty-portrait:after{transition:none}}.account-menu.mobius-explainer-dialog{width:min(24rem,calc(100vw - 1.2rem))}.mobius-explainer-body{display:flex;flex-direction:column;align-items:center;gap:.7rem}.mobius-explainer-frame{position:relative;width:auto;height:min(60vh,32rem);aspect-ratio:9 / 16;border-radius:.5rem;overflow:hidden;background:#000}.mobius-explainer-frame iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.mobius-explainer-fallback{margin:0;flex-shrink:0;font-size:.95rem;text-align:center}@media (max-width: 640px){.account-menu.mobius-explainer-dialog{top:0;right:0;bottom:0;left:0;transform:none;width:100%;max-width:none;height:100vh;height:100dvh;max-height:none;border:0;border-radius:0}.account-menu.mobius-explainer-dialog .account-menu-head{padding-top:calc(.75rem + env(safe-area-inset-top));padding-right:calc(1rem + env(safe-area-inset-right));padding-left:calc(1rem + env(safe-area-inset-left))}.account-menu.mobius-explainer-dialog .account-menu-body{padding-bottom:calc(1rem + env(safe-area-inset-bottom))}.account-menu.mobius-explainer-dialog .sheet-close{min-width:2.75rem;min-height:2.75rem;font-size:1.4rem}.mobius-explainer-body{flex:1;min-height:0}.mobius-explainer-frame{flex:1;min-height:0;width:100%;height:auto;aspect-ratio:auto}}.mode-tile-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1rem}@media (max-width: 1000px){.mode-tile-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.mode-tile-grid{grid-template-columns:1fr}}.mode-tile{position:relative;aspect-ratio:1;padding:0;border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden;cursor:pointer;background:var(--color-surface-2);box-shadow:var(--shadow);transition:transform .12s ease,box-shadow .12s ease}.mode-tile:hover,.mode-tile:focus-visible{transform:translateY(-3px);box-shadow:var(--shadow-lg)}.mode-tile.is-dark .mode-tile-art,.mode-tile.is-dark .mode-tile-fallback{filter:grayscale(.85) brightness(.6)}.mode-tile.is-dark .mode-tile-caption{background:linear-gradient(to top,#140c04d9,#140c0440)}.mode-tile-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.mode-tile-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:3.25rem}.mode-tile-caption{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;gap:.2rem;padding:1.1rem .6rem .6rem;font-family:var(--font-display);font-size:1.45rem;font-weight:600;color:#fff8ec;text-shadow:0 1px 2px rgba(0,0,0,.7);background:linear-gradient(to top,rgba(20,12,4,.75),transparent)}.mode-tile-waiting{font-family:var(--font-body);font-size:.92rem;font-weight:400;font-style:italic}.entry-have-table{color:var(--color-accent-strong);font-size:1.05rem}.entry-utility-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.4rem}.entry-shelf-links,.entry-scores-row{margin-top:.75rem}.entry-utility-links+.entry-utility-links{margin-top:.75rem}.entry-shelf-back{margin-top:.9rem}.entry-testing{margin-top:1rem}.entry-testing-card{margin-top:.6rem;padding:.75rem;border:1px dashed var(--color-border);border-radius:var(--radius);background:var(--color-surface-2)}.lobby-table-tools{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem}.lobby-rename-form{gap:.6rem}.invite-only-control{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;line-height:1.2;color:var(--color-ink-muted);cursor:pointer;max-width:14rem}.invite-only-control input[type=checkbox]{flex-shrink:0;margin:0;cursor:pointer}.lobby-open-seats{display:flex;align-items:center;justify-content:center;gap:.4rem;flex-wrap:wrap}.mode-tile-sub{font-family:var(--font-body);font-size:1.02rem;font-weight:400;line-height:1.3}.lobby-notice{margin:0 0 1rem;padding:.5rem .9rem;text-align:center;font-size:.85rem;color:var(--color-ink-muted);background:var(--color-bg-alt);border:1px solid var(--color-border);border-radius:var(--radius)}.lobby-fill-countdown{margin:0 0 1rem;padding:.6rem .9rem;text-align:center;font-weight:600;color:var(--color-accent-strong);background:var(--color-bg-alt);border:1px solid var(--color-accent);border-radius:var(--radius);animation:fill-countdown-pulse 2s ease-in-out infinite}@keyframes fill-countdown-pulse{0%,to{box-shadow:0 0 #9c6b1f59}50%{box-shadow:0 0 0 4px #9c6b1f00}}.open-tables-list li.is-starting{padding:.25rem .5rem;border:1px solid var(--color-accent);border-radius:8px;background:var(--color-bg-alt)}.open-table-starting{opacity:1;font-weight:600;color:var(--color-accent-strong)}.mode-tile-waiting.is-starting{font-style:normal;font-weight:600}.vote-roster{list-style:none;margin:.25rem 0 0;padding:0;display:flex;flex-direction:column;align-items:center;gap:.3rem}.vote-roster li{display:flex;align-items:center;gap:.4rem}.vote-roster li.has-agreed .vote-mark{color:var(--color-good)}.vote-mark{font-weight:700;color:var(--color-ink-muted)}.vote-note{margin:.35rem 0 .5rem;text-align:center;font-size:.8rem;color:var(--color-ink-muted)}.is-report-picking [data-uikey]{cursor:crosshair;outline:1px dashed var(--color-accent);outline-offset:1px}.is-report-picking [data-uikey]:hover{outline:2px solid var(--color-accent-strong);background:var(--color-good-bg)}.is-report-open .player-chip,.is-report-open .player-token,.is-report-open .version-badge--btn{user-select:text;-webkit-user-select:text}.report-picking-bar{position:fixed;left:50%;bottom:1rem;transform:translate(-50%);z-index:1200;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;justify-content:center;max-width:min(38rem,calc(100vw - 2rem));padding:.6rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:0 6px 20px #00000040;font-size:.9rem}.report-sheet .sheet-body{display:flex;flex-direction:column;gap:.9rem}.report-kinds{display:flex;flex-direction:column;gap:.6rem}.report-kind{display:flex;flex-direction:column;gap:.2rem;text-align:left;padding:.7rem .9rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);color:var(--color-ink);cursor:pointer}.report-kind:hover{border-color:var(--color-accent)}.report-kind span{font-size:.85rem;color:var(--color-ink-muted)}.report-form{display:flex;flex-direction:column;gap:.75rem}.report-field{display:flex;flex-direction:column;gap:.25rem;font-size:.9rem}.report-field textarea,.report-field input{width:100%;padding:.45rem .55rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-ink);font:inherit;resize:vertical}.report-account-row{display:flex;align-items:center;gap:.45rem}.report-account .report-account-row input[type=checkbox]{width:auto;flex:none;margin:0;padding:0}.report-was{display:block;padding:.45rem .55rem;border:1px dashed var(--color-border);border-radius:var(--radius);background:var(--color-surface-2);color:var(--color-ink-muted)}.report-note{margin:0;font-size:.8rem;color:var(--color-ink-muted)}.report-breadcrumb{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;word-break:break-all}.report-error{margin:0;padding:.45rem .55rem;border-radius:var(--radius);background:var(--color-danger-bg);color:var(--color-danger);font-size:.85rem}.report-preview{display:flex;flex-direction:column;gap:.4rem;padding:.6rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2)}.report-preview img{max-width:100%;max-height:40vh;object-fit:contain;border:1px solid var(--color-border);border-radius:calc(var(--radius) / 2);background:var(--color-bg)}.report-actions{display:flex;gap:.6rem;justify-content:flex-end}.report-secondary,.report-send{padding:.5rem .9rem;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-ink);font:inherit;cursor:pointer}.report-send{background:var(--color-accent);border-color:var(--color-accent-strong);color:#fff;font-weight:600}.report-send:disabled{opacity:.5;cursor:not-allowed}.report-sent{display:flex;flex-direction:column;gap:.8rem;align-items:flex-start}.tile-chip[data-tower-tier="3"]:after,.tile-chip[data-tower-tier="4"]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none}.tile-chip[data-tower-tier="3"]:after{box-shadow:inset 0 0 0 2px #8a4fd080,inset 0 0 5px 1px #8a4fd038}.tile-chip[data-tower-tier="4"]:after{box-shadow:inset 0 0 0 2px #8a4fd09e,inset 0 0 6px 1px #8a4fd047,0 0 6px 1px #b98cff8c;animation:arcane-tower-charge 3.4s ease-in-out infinite}@keyframes arcane-tower-charge{0%,to{box-shadow:inset 0 0 0 2px #8a4fd080,inset 0 0 5px 1px #8a4fd038,0 0 4px 1px #b98cff66}50%{box-shadow:inset 0 0 0 2px #8a4fd0cc,inset 0 0 7px 1px #8a4fd059,0 0 8px 2px #b98cffb3}}.arcane-tower-mote{transform-box:fill-box;transform-origin:center;animation:arcane-tower-mote-drift 4.6s ease-in-out infinite}.arcane-tower-mote:nth-child(2){animation-delay:-1.15s}.arcane-tower-mote:nth-child(3){animation-delay:-2.3s}.arcane-tower-mote:nth-child(4){animation-delay:-3.45s}@keyframes arcane-tower-mote-drift{0%,to{transform:translateY(0);opacity:.55}50%{transform:translateY(-9%);opacity:1}}@media (prefers-reduced-motion: reduce){.tile-chip[data-tower-tier="4"]:after{animation:none}.arcane-tower-mote{animation:none;opacity:.85}}.walkthrough-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:700;pointer-events:none}.walkthrough-spotlight{position:fixed;border-radius:10px;box-shadow:0 0 0 100vmax #1c130a8c;pointer-events:none}.walkthrough-bubble{position:fixed;display:flex;gap:.55rem;align-items:flex-start;max-width:min(21rem,calc(100vw - 1.25rem));background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;box-shadow:var(--shadow-lg);padding:.65rem .75rem;pointer-events:auto}.walkthrough-puppy{flex:0 0 auto;width:2.6rem;height:2.6rem}.walkthrough-puppy img{width:100%;height:100%;border-radius:50%;object-fit:cover}.walkthrough-text{margin:0 0 .5rem;font-size:.9rem;line-height:1.35}.walkthrough-actions{display:flex;gap:.4rem;flex-wrap:wrap}.walkthrough-actions .btn{padding:.3rem .7rem;font-size:.85rem}.walkthrough-count{opacity:.65;font-size:.8em}.suggestion-badge{position:absolute;top:-.55rem;right:-.55rem;display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;padding:0;border-radius:50%;border:2px solid #ffe93b;background:var(--color-surface);-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;color:inherit;box-shadow:0 0 6px 1px #ffe93bcc;animation:suggestion-blink 2.2s ease-in-out infinite;z-index:5;pointer-events:auto;cursor:pointer}.suggestion-badge:focus-visible{outline:2px solid var(--color-accent-strong);outline-offset:2px}.suggestion-badge img{width:100%;height:100%;display:block;border-radius:50%;object-fit:cover}.suggestion-host{position:relative}.suggestion-action-button{position:relative;display:inline-flex}.suggestion-action-button--beside-sack .suggestion-badge{right:2.3rem}.lap-reward-options>.suggestion-action-button{width:100%}.lap-reward-options>.suggestion-action-button>.lap-reward-option{width:100%}@keyframes suggestion-blink{0%,to{box-shadow:0 0 4px 1px #ffe93b8c}50%{box-shadow:0 0 12px 4px #ffe93bf2}}@media (prefers-reduced-motion: reduce){.suggestion-badge{animation:none;box-shadow:0 0 6px 2px #ffe93bcc}}.stat-badge--fleeing{border:2px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-bg);cursor:help}.btn--let-flee{border-color:var(--color-danger);color:var(--color-danger)}.tile-looted-mark{position:absolute;top:1px;right:1px;z-index:2;pointer-events:none;line-height:1;font-size:clamp(9px,calc(var(--tile-size) * .26),18px);filter:drop-shadow(0 0 2px var(--color-surface)) drop-shadow(0 0 3px var(--color-surface))}.tile-chip:has(.tile-band--bl) .tile-looted-mark{right:auto;left:1px}.tile-chip.is-looted{box-shadow:0 1px 2px #2c1e0f40,inset 0 0 0 2px color-mix(in srgb,var(--color-danger) 55%,transparent)}.tile-looted-note{color:var(--color-danger)}.home-payout{position:absolute;z-index:7;transform:translate(-50%,-50%);pointer-events:none;display:inline-flex;align-items:center;gap:.2em;padding:.05em .4em;border:1px solid var(--color-border);border-radius:999px;background:color-mix(in srgb,var(--color-surface) 88%,transparent);white-space:nowrap;font-family:var(--font-display);font-weight:700;font-size:clamp(.6rem,calc(var(--tile-size) * .22),.95rem);color:var(--color-accent-strong);box-shadow:0 1px 2px #2c1e0f33}.rolling-number{position:relative;display:inline-flex;align-items:center;transition:color .4s ease-out}.rolling-number.is-rolling-up{color:var(--color-good)}.rolling-number.is-rolling-down{color:var(--color-danger)}.rolling-number-delta{position:absolute;left:100%;bottom:60%;margin-left:.15em;font-size:.8em;color:var(--color-ink-muted);animation:rolling-number-delta 3.2s ease-out forwards}.rolling-number-delta.is-rolling-up{color:var(--color-good)}.rolling-number-delta.is-rolling-down{color:var(--color-danger)}@keyframes rolling-number-delta{0%{opacity:0;transform:translateY(.3em)}15%{opacity:1;transform:translateY(0)}70%{opacity:1;transform:translateY(-.15em)}to{opacity:0;transform:translateY(-.5em)}}@media (prefers-reduced-motion: reduce){.rolling-number-delta{animation:none}}.moving-tokens{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:7}.moving-token{position:absolute;transform:translate(-50%,-50%);pointer-events:none;--token-size: max(18px, calc(var(--tile-size) * .55));line-height:0}.moving-token.is-held{animation:movingTokenHold 1.6s ease-in-out infinite}.moving-token.is-wind-spun{will-change:transform}@keyframes movingTokenHold{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-52%) scale(1.06)}}.moving-token-tag{position:absolute;left:calc(50% + var(--token-size) * .18);top:calc(50% - var(--token-size) * .62);transform:translate(-50%);padding:0 .28em;border-radius:999px;border:1px solid rgba(255,250,240,.72);background:#181008db;color:#fffaf0;font-size:max(9px,calc(var(--token-size) * .42));font-weight:700;font-variant-numeric:tabular-nums;line-height:1.35;white-space:nowrap;pointer-events:none}.moving-token.is-pointed .player-token{box-shadow:0 0 0 2px #fffaf0d9,0 0 10px #fffaf073}@keyframes tokenFall{0%{transform:translate(-50%,-50%) rotate(0) scale(1);opacity:1}to{transform:translate(-50%,-50%) rotate(360deg) scale(0);opacity:0}}@keyframes tokenEmerge{0%{transform:translate(-50%,-50%) rotate(0) scale(0);opacity:0}to{transform:translate(-50%,-50%) rotate(-360deg) scale(1);opacity:1}}.moving-token.is-falling{animation:tokenFall .48s ease-in forwards}.moving-token.is-emerging{animation:tokenEmerge .48s ease-out forwards}@keyframes tokenPortalDrop{0%{transform:translate(-50%,-50%) rotate(0) scale(1);opacity:1}50%{transform:translate(-50%,-50%) rotate(180deg) scale(.85);opacity:1}to{transform:translate(-50%,-50%) rotate(360deg) scale(1);opacity:0}}@keyframes tokenPortalRise{0%{transform:translate(-50%,-50%) rotate(0) scale(1);opacity:0}50%{transform:translate(-50%,-50%) rotate(-180deg) scale(.85);opacity:1}to{transform:translate(-50%,-50%) rotate(-360deg) scale(1);opacity:1}}.moving-token.is-portal-dropping{animation:tokenPortalDrop .48s ease-in forwards}.moving-token.is-portal-rising{animation:tokenPortalRise .48s ease-out forwards}@media (prefers-reduced-motion: reduce){.moving-token.is-held,.moving-token.is-falling,.moving-token.is-emerging,.moving-token.is-portal-dropping,.moving-token.is-portal-rising{animation:none}}.sound-popover{right:auto;width:min(260px,calc(100vw - 1rem))}.sound-toggle-row-grid{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}.sound-toggle-btn{--sound-icon-carve: var(--color-surface-2);flex:1 1 4.6rem;min-width:4.6rem;display:flex;flex-direction:column;align-items:center;gap:.3rem;padding:.5rem .25rem .4rem;border:1px solid var(--color-border);border-radius:10px;background:var(--color-surface-2);color:var(--color-ink);font-size:.68rem;line-height:1.15;text-align:center;cursor:pointer}.sound-toggle-btn .sound-icon{width:24px;height:24px}.sound-toggle-btn:not(.is-off){border-color:var(--color-accent)}.sound-toggle-btn.is-off{color:var(--color-ink-muted);background:var(--color-bg-alt);--sound-icon-carve: var(--color-bg-alt)}.sound-toggle-btn:hover:not(:disabled){background:var(--color-bg-alt);--sound-icon-carve: var(--color-bg-alt)}.sound-toggle-btn:disabled{opacity:.45;cursor:default}.sound-toggle-caption{display:block;overflow-wrap:anywhere}.sound-toggle-btn--wide{flex:1 1 100%;flex-direction:row;justify-content:center;gap:.55rem;padding:.55rem .75rem;font-size:.82rem;font-weight:700}.sound-toggle-btn--wide .sound-icon{width:28px;height:28px}.sound-bar-btn{display:inline-flex;align-items:center;justify-content:center;--sound-icon-carve: var(--color-surface-2)}.sound-bar-btn:hover{--sound-icon-carve: var(--color-bg-alt)}.sound-bar-btn .sound-icon{width:1.15rem;height:1.15rem}.sound-bar-btn .sound-icon.is-off{color:var(--color-ink-muted)}.stop-poll-result{padding-left:2.2rem}.stop-poll-walk-out{display:block;width:100%;margin-top:.5rem}.stop-poll-result-dismiss{position:absolute;top:.35rem;left:.4rem;width:1.6rem;height:1.6rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-2);color:var(--color-ink-muted);cursor:pointer}.stop-poll-result-dismiss:hover,.stop-poll-result-dismiss:focus-visible{color:var(--color-ink)}.stop-poll-result-dismiss svg{width:1rem;height:1rem}.horizon-plate{position:fixed;top:calc(3.2rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:443;width:min(24rem,calc(100vw - 1.5rem));max-height:min(70vh,34rem);overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.8rem;box-shadow:var(--shadow-lg);padding:0 0 .8rem;display:flex;flex-direction:column;align-items:center;gap:.4rem;animation:popoverFadeIn .15s ease-out}.outcome-plate--horizon{width:100%;height:6.5rem;object-fit:cover;object-position:center 40%;border-radius:.8rem .8rem 0 0;margin:0}.horizon-plate-dismiss{position:absolute;top:.35rem;left:.4rem;width:1.6rem;height:1.6rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-2);color:var(--color-ink-muted);cursor:pointer}.horizon-plate-dismiss:hover,.horizon-plate-dismiss:focus-visible{color:var(--color-ink)}.horizon-plate-dismiss svg{width:1rem;height:1rem}.horizon-plate-title{margin:.2rem 1rem 0;font-family:Cinzel,Georgia,serif;font-size:1.05rem;text-align:center}.horizon-plate-subtitle{margin:0 1.2rem;font-size:.8rem;line-height:1.35;color:var(--color-ink-muted);text-align:center}.horizon-standings{list-style:none;margin:.2rem 0 0;padding:0 .9rem;width:100%;display:flex;flex-direction:column;gap:.25rem}.horizon-standing{display:flex;align-items:center;gap:.4rem;font-size:.9rem}.horizon-rank{min-width:1.2rem;text-align:right;color:var(--color-ink-muted);font-variant-numeric:tabular-nums}.horizon-name{flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.horizon-out{font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--color-ink-muted)}.horizon-standing.is-eliminated{opacity:.7}.horizon-worth{font-variant-numeric:tabular-nums}.horizon-plate-board-link:empty{display:none}.horizon-plate-board-link{margin-top:.6rem;text-align:center}.exploration-outcome{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:444;width:min(26rem,calc(100vw - 1.5rem));max-height:min(72vh,36rem);overflow-y:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.8rem;box-shadow:var(--shadow-lg);padding:.9rem .9rem .8rem;display:flex;flex-direction:column;gap:.3rem;animation:popoverFadeIn .15s ease-out}.exploration-outcome-dismiss{position:absolute;top:.35rem;left:.4rem;width:1.6rem;height:1.6rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface-2);color:var(--color-ink-muted);cursor:pointer}.exploration-outcome-dismiss:hover,.exploration-outcome-dismiss:focus-visible{color:var(--color-ink)}.exploration-outcome-dismiss svg{width:1rem;height:1rem}.exploration-outcome-title{margin:0 0 .2rem 2rem;font-family:Cinzel,Georgia,serif;font-size:1.05rem}.exploration-outcome-body{display:flex;flex-direction:column;gap:.25rem}.exploration-outcome-plate{display:block;width:min(20rem,80vw);height:auto;aspect-ratio:1 / 1;object-fit:cover;border-radius:.5rem;margin:0 auto}.exploration-outcome-scene-title{margin:.3rem 0 0;text-align:center;font-family:Cinzel,Georgia,serif;font-size:.95rem}.exploration-outcome-check{font-weight:600}.exploration-fork-img{display:block;width:100%;height:auto;aspect-ratio:16 / 10;object-fit:cover;border-radius:.6rem;margin-bottom:.3rem}.exploration-fork-title{margin:0 0 .3rem;font-family:Cinzel,Georgia,serif;font-size:1rem}.exploration-option-thumb{flex-shrink:0;width:56px;height:56px;object-fit:cover;border-radius:8px;border:1px solid var(--color-border);background:var(--color-surface)}@media (max-width: 639px){.exploration-option-thumb{width:44px;height:44px}}.exploration-outcome .equip-cards{grid-template-columns:1fr;margin:.2rem 0}.wall-plate{position:relative;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.8rem;padding:0 0 .9rem;display:flex;flex-direction:column;align-items:center;gap:.4rem}.wall-plate--overlay{position:fixed;top:calc(3.2rem + env(safe-area-inset-top));left:50%;transform:translate(-50%);z-index:443;width:min(26rem,calc(100vw - 1.5rem));max-height:min(80vh,40rem);overflow-y:auto;box-shadow:var(--shadow-lg);animation:popoverFadeIn .15s ease-out}.wall-plate--screen{width:100%;max-width:28rem;margin:0 auto}.wall-waits{margin:.5rem 1.2rem 0;font-size:.88rem;line-height:1.4;text-align:center}.wall-notice{margin:.2rem 1.2rem 0;font-size:.78rem;line-height:1.4;color:var(--color-ink-muted);text-align:center}.wall-notice p{margin:0 0 .25rem}.wall-sign-in{display:flex;flex-direction:column;align-items:center;gap:.4rem;margin:.4rem 1rem 0}.wall-sign-in .entry-sub{margin:0;text-align:center}.wall-keys{list-style:none;margin:.5rem 0 0;padding:0 .9rem;width:100%;display:flex;flex-direction:column;gap:.5rem}.wall-keys li{display:flex;flex-direction:column;align-items:stretch;gap:.15rem}.wall-keys .btn{width:100%}.wall-key-note{font-size:.75rem;line-height:1.35;color:var(--color-ink-muted);padding:0 .2rem}.wall-home{margin-top:.4rem}.score-board{text-align:left}.score-board-title{margin:0 0 .3rem;font-family:var(--font-display);font-size:1.3rem}.score-board-blurb{margin:0 0 .4rem;opacity:.85;font-size:.92em}.score-board-declaration{margin:0 0 .8rem;font-weight:600;font-size:.92em}.score-board-tabs{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.4rem}.score-board-tab{padding:.3rem .8rem;border:1px solid var(--color-border);border-radius:999px;background:none;color:inherit;font:inherit;cursor:pointer;opacity:.8}.score-board-tab:hover,.score-board-tab:focus-visible{opacity:1}.score-board-tab.is-active{opacity:1;font-weight:600;border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 18%,transparent)}.score-board-span{margin:0 0 .3rem;font-size:.85em;opacity:.7}.score-board-status{margin:.8rem 0;opacity:.85}.score-board-name{font-weight:600;width:100%}.score-board-score{font-variant-numeric:tabular-nums;font-weight:600}.score-board-actions,.entry-scores-line{margin-top:.8rem}.score-board-dialog{width:min(44rem,calc(100vw - 1.2rem))}.ruleset-tops{margin-top:1.2rem;padding-top:1rem;border-top:1px solid color-mix(in srgb,var(--color-accent) 25%,transparent);text-align:left}.ruleset-tops-title{margin:0 0 .5rem;font-family:var(--font-display);font-size:1.1rem}.ruleset-tops-more{margin-top:.5rem}.account-section{margin:1.1rem 0 0;text-align:left}.account-section-title{font-family:var(--font-display);font-size:1rem;margin:0 0 .35rem}.account-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.account-list li{padding:.45rem .6rem;border:1px solid var(--color-border);border-radius:.4rem;background:var(--color-surface-2);font-size:.88rem}.account-list li.is-revoked{opacity:.5}.account-row-sub{display:block;color:var(--color-ink-muted);font-size:.8rem}.account-ladder{margin-top:.9rem}.account-ladder-earned{color:var(--color-accent);font-weight:600}.account-ladder-rung{margin-top:.6rem}.friends-note{display:block}.friends-note-text{margin-right:.35rem}.friends-note-pencil,.friends-note-add{font-size:.8rem}.friends-note-editing{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.friends-note-input{flex:1 1 12rem;min-width:8rem;padding:.15rem .35rem;border:1px solid var(--color-border);border-radius:.3rem;background:var(--color-surface);color:var(--color-ink);font:inherit;font-size:.8rem}.friends-note-hint{flex:1 0 100%}.friend-label-chips{flex-wrap:wrap;margin:.5rem 0}.friend-label-chip{display:inline-flex;align-items:center;gap:.2rem;padding:.15rem .55rem;border:1px solid var(--color-border);border-radius:999px;background:none;color:var(--color-ink-muted);font:inherit;font-size:.78rem;cursor:pointer}.friend-label-chip.is-active{background:#7fb2e529;border-color:#7fb2e5;color:var(--color-ink);font-weight:600}.friends-labels{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem;margin-top:.2rem}.friends-label-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.05rem .4rem;border-radius:999px;background:#7fb2e51f;color:var(--color-ink-muted);font-size:.75rem}.friends-label-remove{font-size:.75rem;line-height:1;padding:0}.friends-labels-editing{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-top:.2rem}.friends-label-input{flex:1 1 10rem;min-width:7rem;padding:.15rem .35rem;border:1px solid var(--color-border);border-radius:.3rem;background:var(--color-surface);color:var(--color-ink);font:inherit;font-size:.8rem}.account-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.06em}.account-copy{margin-left:.4rem;padding:.1rem .45rem;border:1px solid var(--color-border);border-radius:.3rem;background:var(--color-surface);color:var(--color-ink);font:inherit;font-size:.78rem;cursor:pointer;text-decoration:none;display:inline-block;line-height:1.5}.account-invitation-code{margin:.3rem 0 .5rem;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.45rem;letter-spacing:.14em;color:var(--color-ink)}.account-invitation-link{font-size:.8rem;color:var(--color-ink-muted);word-break:break-all}.invitation-qr-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3300;background:#1c130a8c}.invitation-qr-card{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3301;display:flex;flex-direction:column;align-items:center;gap:.75rem;width:min(26rem,calc(100vw - 1.2rem));max-height:calc(100dvh - 1.2rem);overflow-y:auto;padding:1rem 1.25rem 1.5rem;border:1px solid var(--color-border);border-radius:.8rem;background:var(--color-surface);box-shadow:0 .6rem 2rem #00000073;color:var(--color-ink);text-align:center}.invitation-qr-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%}.invitation-qr-head h2{margin:0;font-family:var(--font-display);font-size:1.1rem}.invitation-qr-square{width:min(70vmin,22rem);aspect-ratio:1 / 1;padding:.9rem;background:#fff;border-radius:.5rem;display:flex;align-items:center;justify-content:center}.invitation-qr-svg{width:100%;height:100%}.invitation-qr-svg svg{width:100%;height:100%;display:block}.invitation-qr-code{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.6rem;letter-spacing:.14em;color:var(--color-ink)}.invitation-qr-link{margin:0;font-size:.75rem;color:var(--color-ink-muted);word-break:break-all}.redeem-for{margin:.4rem 0 .2rem;font-family:var(--font-display);font-size:1.15rem;color:var(--color-ink)}.redeem-promise{margin:.5rem 0;padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:.45rem;background:var(--color-surface-2);text-align:left}.redeem-promise p{margin:0 0 .35rem}.redeem-promise p:last-child{margin-bottom:0}.redeem-code-field{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.12em;text-transform:uppercase}.redeem-done{margin:.6rem 0;font-weight:600}.referral-reward{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3200;width:min(26rem,calc(100vw - 1.2rem));display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:0 0 1rem;border:1px solid var(--color-border);border-radius:.8rem;overflow:hidden;background:var(--color-surface-2);box-shadow:0 .6rem 2rem #00000073;text-align:center}.referral-reward .outcome-plate{width:100%;height:auto;max-height:55vh;aspect-ratio:1 / 1;object-fit:cover;border-radius:0;margin:0}.referral-reward-title{margin:.4rem 1rem 0;font-family:Cinzel,Georgia,serif;font-size:1.15rem}.referral-reward-line{margin:0 1.2rem;font-size:.95rem;line-height:1.35}.referral-reward-dismiss{margin-top:.3rem}.slot-ready-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3200;width:min(26rem,calc(100vw - 1.2rem));display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:1.3rem 1.2rem 1rem;border:1px solid var(--color-border);border-radius:.8rem;background:var(--color-surface-2);box-shadow:0 .6rem 2rem #00000073;text-align:center}.slot-ready-modal-title{margin:0;font-family:Cinzel,Georgia,serif;font-size:1.15rem}.slot-ready-modal-line{margin:0;font-size:.95rem;line-height:1.35}.account-control--avatar{width:1.9rem;height:1.9rem;padding:0;border-radius:999px;font-family:var(--font-display);font-weight:600;text-transform:uppercase;text-align:center}.account-control--signin{max-width:100%;font-size:.85rem;line-height:1.2;text-align:center}.account-menu{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:3100;width:min(32rem,calc(100vw - 1.2rem));max-height:min(88vh,calc(100dvh - 1.2rem));display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:.8rem;overflow:hidden;background:var(--color-surface);box-shadow:0 .6rem 2rem #00000073;color:var(--color-ink);text-align:left}.account-menu-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem 1rem .5rem;border-bottom:1px dashed var(--color-border)}.account-menu-title{margin:0;font-family:var(--font-display);font-size:1.15rem}.account-menu-body{overflow-y:auto;padding:.5rem 1rem 1rem}@media (min-width: 640px){.account-menu{width:min(64rem,calc(100vw - 1.2rem));height:min(48rem,calc(100dvh - 1.2rem));max-height:min(88vh,calc(100dvh - 1.2rem))}.account-menu-body{flex:1 1 auto;min-height:0}}.account-menu-body .account-section:first-child{margin-top:.5rem}.account-menu-tabs-wrap{overflow-x:auto;overflow-y:hidden;margin:.4rem 0 0;padding-bottom:.15rem}.account-menu-tabs{display:flex;gap:.4rem;width:max-content;min-width:100%}.account-menu-tab{flex:0 0 auto;padding:.3rem .8rem;border:1px solid var(--color-border);border-radius:999px;background:none;color:inherit;font:inherit;font-size:.88rem;white-space:nowrap;cursor:pointer;opacity:.8}.account-menu-tab:hover,.account-menu-tab:focus-visible{opacity:1}.account-menu-tab.is-active{opacity:1;font-weight:600;border-color:var(--color-accent);background:color-mix(in srgb,var(--color-accent) 18%,transparent)}.account-menu-tabs-wrap+*{margin-top:.9rem}.account-notifications-grid{width:100%;border-collapse:collapse;margin:.4rem 0 .6rem;font-size:.9rem}.account-notifications-grid th,.account-notifications-grid td{padding:.35rem .5rem;border-bottom:1px solid var(--color-border);text-align:left}.account-notifications-grid th:not(:first-child),.account-notifications-grid td:not(:first-child){width:6.5rem;text-align:center}.account-notifications-grid th[scope=row]{font-weight:400}.account-notifications-grid input[disabled]{opacity:.45;cursor:not-allowed}.account-notifications-failure{color:var(--color-danger)}.account-notifications-notes{margin:.6rem 0 0;padding-left:1.1rem}.account-notifications-notes li{margin:.2rem 0}.account-menu-lead{margin:.5rem 0 .6rem;font-weight:600;line-height:1.4}.account-status{margin-top:.4rem;justify-content:flex-start;text-align:left}.account-status .entry-signin-who{align-items:flex-start}.account-subsection-title{margin:.6rem 0 .2rem;font-size:.9rem;font-weight:600}.account-buy-row{margin:.6rem 0}.account-signout{text-align:left}.account-offline-note{margin:.6rem 0}.btn-tactics{display:inline-flex;align-items:stretch;padding:0;overflow:hidden;gap:0}.btn.btn-tactics,.entry-actions--compact .btn.btn-tactics,.entry .entry-actions .btn.btn-tactics{padding:0}.btn-tactics-seg{display:inline-flex;align-items:center;gap:.25em;padding:.45rem .55rem;font-weight:700;font-size:.85rem;white-space:nowrap}.btn-tactics-seg--attack{background:var(--color-accent);color:#fff8ec}.btn-tactics-seg--flee{background:var(--color-danger);color:#fff8f0}.btn-tactics-seg--mana{background:#6a4a86;color:#fff8f0;font-size:.78rem}.btn-tactics-sack-host{position:relative;display:inline-flex}.tactics-sack{position:absolute;top:0;right:0;transform:translate(30%,-90%);display:inline-flex;align-items:flex-start;z-index:2}.tactics-sack-grip{display:inline-flex;align-items:center;justify-content:center;gap:.1em;min-width:1.7rem;height:1.7rem;padding:0 .3rem;border-radius:999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink);font-size:.8rem;line-height:1;cursor:pointer}.tactics-sack-grip:hover,.tactics-sack-grip:focus-visible{border-color:var(--color-accent);outline:none}.tactics-sack-body{position:fixed;z-index:452}.tactics-sack-rest{display:inline-flex;border-radius:999px;overflow:hidden;border:1px solid var(--color-border);white-space:nowrap}.tactics-sack-menu{display:flex;flex-direction:column;min-width:12rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);box-shadow:var(--shadow-lg);overflow:hidden}.tactics-sack-row{display:flex;align-items:center;gap:.5em;padding:.5rem .6rem;border:none;background:transparent;text-align:left;cursor:pointer;font:inherit;color:var(--color-ink)}.tactics-sack-row+.tactics-sack-row{border-top:1px solid var(--color-border)}.tactics-sack-row:hover,.tactics-sack-row:focus-visible{background:var(--color-surface-muted);outline:none}.tactics-sack-row-glyph{font-size:1.1rem}.tactics-sack-row-text{display:flex;flex-direction:column;flex:1;min-width:0}.tactics-sack-row-name{font-weight:700;font-size:.88rem}.tactics-sack-row-sub{font-size:.75rem;color:var(--color-ink-muted)}.tactics-sack-row-segs{display:inline-flex;flex-shrink:0;overflow:hidden;border-radius:4px}.tactics-sack-row-segs .btn-tactics-seg{padding:.16rem .34rem;font-size:.7rem}.tactics-sack-row-segs .btn-tactics-seg--mana{font-size:.66rem}.tactics-sack-row-check{color:var(--color-good);font-weight:700}.sheet.tactics-sheet{left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(1200px,96vw);height:min(880px,96vh);max-height:96vh;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none}.sheet.tactics-sheet:hover,.sheet.tactics-sheet:focus-within{background:var(--color-surface)}.sheet-backdrop.tactics-backdrop,.sheet-backdrop.dialog-backdrop{background:#1c130a73;pointer-events:auto}.sheet.sheet-dialog{left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(600px,96vw);height:auto;max-height:92vh;border:1px solid var(--color-border);border-radius:16px;background:var(--color-surface);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:var(--shadow-lg)}.sheet.sheet-dialog:hover,.sheet.sheet-dialog:focus-within{background:var(--color-surface)}.sheet-dialog .sheet-body{overflow-y:auto}.countdown-pill{display:inline-flex;align-items:center;gap:.25em;margin-left:auto;padding:.15rem .6rem;border-radius:999px;border:1px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-bg);font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.offer-deadline{display:block;font-variant-numeric:tabular-nums;font-weight:600}.offer-deadline--row{grid-column:1 / -1;text-align:center}.offer-deadline-last{display:block;color:var(--color-danger);font-weight:700}.tactics-sheet .sheet-body{flex:1;min-height:0;display:flex;overflow:hidden}.tactics-panes{flex:1;min-width:0;min-height:0;display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}.tactics-pane{min-width:0;min-height:0;overflow-y:auto;padding-bottom:.75rem}.tactics-pane+.tactics-pane{border-left:1px solid var(--color-border);padding-left:1rem}@media (max-width: 900px){.tactics-sheet .sheet-body{display:block;overflow-y:auto}.tactics-panes{grid-template-columns:1fr}.tactics-pane{overflow-y:visible}.tactics-pane+.tactics-pane{border-left:none;padding-left:0;border-top:1px solid var(--color-border);padding-top:.75rem;margin-top:.75rem}}.btn-tactics-reopen{display:inline-flex;align-items:center;gap:.4em}.tactics-pill{display:inline-flex;border-radius:999px;overflow:hidden;border:1px solid var(--color-border)}.tactics-pill-half{display:inline-flex;align-items:center;padding:.08rem .38rem;font-size:.85em;line-height:1}.tactics-pill-half--attack{background:var(--color-accent)}.tactics-pill-half--flee{background:var(--color-danger)}.ap-cost-badge--plus{width:calc(1.4em * 31 / 24)}.ap-cost-badge--plus .ap-cost-number{inset:0 calc(100% * 7 / 31) 0 0}.tactics-pane-head{display:flex;align-items:baseline;gap:.5rem;margin:.25rem 0 .5rem}.tactics-pane-head h3{margin:0;font-family:var(--font-display);font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.tactics-pane-head .tactics-count{font-size:.8rem;color:var(--color-ink-muted)}.tactics-mode-cards{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.tactics-mode-card{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.7rem .75rem;text-align:left;border-radius:var(--radius);border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-ink);font-family:var(--font-body);cursor:pointer}.tactics-mode-card .tactics-mode-glyph{font-size:1.5rem;line-height:1.1}.tactics-mode-card .tactics-mode-label{font-family:var(--font-display);font-weight:700;font-size:.95rem}.tactics-mode-card .tactics-mode-sub{font-size:.78rem;color:var(--color-ink-muted)}.tactics-mode-card[aria-pressed=true]{border-color:var(--color-accent);background:var(--color-surface);box-shadow:inset 0 0 0 1px var(--color-accent)}.tactics-mode-note{margin:.6rem 0 0;padding:.55rem .7rem;border-radius:var(--radius);border:1px dashed var(--color-border);background:var(--color-surface);font-size:.85rem;color:var(--color-ink-muted)}.tactics-knobs{margin-top:.7rem;display:flex;flex-direction:column;gap:.8rem}.tactics-knob-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;font-size:.9rem;font-weight:600}.tactics-knob-value{font-family:var(--font-display);font-weight:700;color:var(--color-accent-strong);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:999px;padding:.05rem .55rem;min-width:3.4em;text-align:center}.tactics-knob input[type=range]{width:100%;margin:.3rem 0 .1rem;accent-color:var(--color-accent);cursor:pointer}.tactics-knob-hint{font-size:.78rem;color:var(--color-ink-muted);line-height:1.35}.tactics-knob-info{font-size:.9em}@media (max-width: 640px){.tactics-knob-hint{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}.tactics-policy-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.85rem;font-weight:600}.tactics-seg{display:inline-flex;border:1px solid var(--color-border);border-radius:999px;background:var(--color-surface);overflow:hidden}.tactics-seg button{border:none;background:transparent;color:var(--color-ink-muted);font-family:var(--font-body);font-size:.8rem;font-weight:600;padding:.28rem .65rem;cursor:pointer;white-space:nowrap}.tactics-seg button+button{border-left:1px solid var(--color-border)}.tactics-seg button[aria-pressed=true]{background:var(--color-accent);color:#fff8ec}.tactics-seg button:disabled{opacity:.5;cursor:default}.tactics-unit{display:grid;grid-template-columns:96px 1fr;gap:.15rem .7rem;align-items:start;padding:.6rem .65rem;margin-bottom:.55rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-2)}.tactics-unit--foe{box-shadow:inset 3px 0 0 var(--color-danger)}.tactics-unit--ours{box-shadow:inset 3px 0 0 var(--color-accent)}.tactics-unit-main{min-width:0}.tactics-unit-name{font-family:var(--font-display);font-weight:700;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.tactics-unit-tag{display:inline-flex;border-radius:999px;padding:.02rem .5rem;font-size:.68rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;border:1px solid var(--color-border);color:var(--color-ink-muted);background:var(--color-surface)}.tactics-unit-tag--flee{border-color:var(--color-danger);color:var(--color-danger);background:var(--color-danger-bg)}.order-ring{position:relative;width:88px}.order-ring svg{display:block;width:88px;height:88px;overflow:visible}.order-ring .ring-half{fill:none;stroke:var(--color-border);stroke-width:7;stroke-linecap:round;transition:stroke .15s ease,stroke-width .15s ease}.order-ring .ring-hit{fill:none;stroke:transparent;stroke-width:22;cursor:pointer;pointer-events:stroke}.order-ring[data-choice=attack] .ring-half--attack{stroke:var(--color-accent);stroke-width:9}.order-ring[data-choice=retreat] .ring-half--retreat{stroke:var(--color-danger);stroke-width:9}.order-ring .ring-portrait{position:absolute;top:14px;left:14px;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle at 32% 28%,var(--color-surface),var(--color-bg-alt));border:1px solid var(--color-border);pointer-events:none}.order-ring .ring-portrait img{width:100%;height:100%;object-fit:cover}.order-ring .ring-glyph{position:absolute;top:44px;transform:translateY(-50%);font-size:.85rem;line-height:1;pointer-events:none;opacity:.45}.order-ring .ring-glyph--left{left:-4px}.order-ring .ring-glyph--right{right:-4px}.order-ring[data-choice=retreat] .ring-glyph--left,.order-ring[data-choice=attack] .ring-glyph--right{opacity:1}.order-ring .ring-caption{display:block;width:88px;margin-top:.2rem;font-size:.66rem;text-align:center;color:var(--color-ink-muted);text-transform:uppercase;letter-spacing:.04em}.order-ring--dim{filter:grayscale(1);opacity:.6}.order-ring--dim .ring-hit{pointer-events:none;cursor:default}.tactics-orders{grid-column:2;margin-top:.5rem;display:flex;flex-direction:column;gap:.4rem}.tactics-order-row{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.tactics-order-label{font-size:.78rem;font-weight:700;color:var(--color-ink-muted);min-width:4.4em}.tactics-order-sub{width:100%;font-size:.75rem;color:var(--color-ink-muted)}.tactics-retreat-note{grid-column:2;margin-top:.45rem;font-size:.8rem;color:var(--color-danger);font-weight:600}.tactics-chips{grid-column:2;margin-top:.45rem;display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.tactics-chips-label{font-size:.75rem;color:var(--color-ink-muted)}.tactics-chip{width:28px;height:28px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;font-size:.95rem;font-weight:700;background:var(--color-surface);border:2px solid var(--color-accent)}.tactics-chip img{width:100%;height:100%;object-fit:cover}.tactics-chip--random{border-style:dashed;border-color:var(--color-border);color:var(--color-ink-muted)}.tactics-chip--chasing{border-color:var(--color-danger)}.tactics-untargeted{grid-column:2;margin-top:.45rem;font-size:.78rem;color:var(--color-ink-muted);font-style:italic}.tactics-sheet[data-mode=b] .tactics-knobs,.tactics-sheet[data-mode=b] .tactics-retreat-note,.tactics-sheet[data-mode=a] .tactics-mode-note--manual{display:none}.tactics-sheet[data-mode=b] .tactics-manual-foe-note{display:block}.duel-odds{display:flex;gap:1.25rem;margin:.5rem 0 .75rem;flex-wrap:wrap}.duel-odds-col{display:flex;flex-direction:column;gap:.15rem;font-size:.85rem;padding:.4rem .6rem;border:1px solid var(--color-border);border-radius:8px;min-width:10.5rem}.duel-odds-head{font-weight:700;font-size:.8rem;margin-bottom:.15rem}.duel-mode-toggle{display:inline-flex;gap:.25rem}.join-choice{display:inline-flex;flex-direction:column;gap:.15rem;align-items:stretch}.btn--join-side{display:inline-flex;flex-direction:column;align-items:center;gap:.1rem}.join-choice-odds{font-size:.78rem;text-align:center;opacity:.85}.tactics-window-note{margin-top:.75rem;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.tactics-manual-foe-note{display:none;grid-column:2;margin-top:.45rem;font-size:.78rem;color:var(--color-ink-muted);font-style:italic}.tactics-odds{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;font-size:.85rem;color:var(--color-ink-muted)}.tactics-odds b{color:var(--color-ink)}.tactics-odds .tactics-odds-warn{color:var(--color-danger);font-weight:600}.btn--auto-battle{display:inline-flex;flex-direction:column;align-items:center;gap:.1rem}.auto-battle-odds{font-size:.72rem;font-weight:600;opacity:.85;line-height:1;white-space:nowrap}.auto-battle-warn{display:block;margin-top:.15rem;font-size:.72rem;font-weight:700;line-height:1.15;color:var(--color-danger);white-space:normal}.tactics-steer{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.55rem 1rem;border-top:1px dashed #b9a06a;background:var(--color-surface-2)}.tactics-ask{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;padding:.55rem 1rem;border-top:1px dashed #b9a06a;background:var(--color-danger-bg)}.tactics-ask-text{flex:1;min-width:12rem;font-weight:600}.side-rail>.rail-chips{display:flex;flex-direction:column;gap:.4rem;flex:1 1 0;min-height:0;padding:6px;overflow-x:hidden;overflow-y:auto}@media (pointer: coarse){.side-rail>.rail-chips{padding-top:env(safe-area-inset-top)}}.player-rail--side.rail-pinned{display:flex;flex-direction:column;flex-wrap:nowrap;align-content:stretch;flex:none;padding:0;overflow:visible}.player-rail--side.rail-others{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;align-content:start;flex:none;height:var(--others-window, auto);min-height:0;padding:3px;overflow-x:hidden;overflow-y:auto;scroll-padding-top:3px;scrollbar-width:thin}.player-rail--side.rail-others .player-chip-wrapper,.player-rail--side.rail-others .player-chip{min-width:0}.player-rail--side.rail-others.rail-others--grow{flex:1 1 auto;height:auto}.player-rail--side.rail-others:empty{display:none}.player-rail--side.rail-others[data-window-more=true]:not(:has(.is-popover-open)){-webkit-mask-image:linear-gradient(to bottom,#000 78%,transparent 100%);mask-image:linear-gradient(to bottom,#000 78%,transparent 100%)}.rail-leaders{flex:none;min-width:0}.rail-leaders .leaders-strip--stacked{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;justify-content:center;column-gap:.6rem;row-gap:.1rem;text-align:center}.rail-leaders .leaders-strip--stacked .leaders-strip-day{grid-column:1;grid-row:1 / 3;align-self:center;display:flex;flex-direction:column;align-items:center;line-height:1.15}.rail-leaders .leaders-strip--stacked .leaders-strip-race{grid-column:2;justify-self:center;min-width:0;white-space:normal;flex-wrap:wrap;justify-content:center}.rail-leaders .leaders-strip--stacked .leaders-strip-tokens{flex-wrap:wrap;flex-shrink:1;justify-content:center}.rail-leaders .leaders-strip--stacked .leaders-strip-day+.leaders-strip-race{grid-row:1}.rail-leaders .leaders-strip--stacked .leaders-strip-race~.leaders-strip-race{grid-row:2}.player-rail--side.rail-others--wide{grid-template-columns:minmax(0,1fr)}.player-rail--side.rail-others--wide .player-chip:not(.is-big){display:grid;grid-template-columns:auto auto;grid-template-rows:auto;align-items:center;justify-content:center;column-gap:.45rem;padding:.3rem .55rem}.player-rail--side.rail-others--wide .player-chip:not(.is-big) .player-token--chip{--token-size: clamp(30px, 3.4vw, 38px)}.player-rail--side.rail-others--wide .player-chip:not(.is-big) .player-chip-head{grid-column:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem}.player-rail--side.rail-others--wide .player-chip:not(.is-big) .player-chip-info{display:contents}.player-rail--side.rail-others--wide .player-chip:not(.is-big) .player-chip-head{display:grid;grid-template-columns:auto auto;grid-auto-rows:auto;column-gap:.2rem;row-gap:.1rem}.player-rail--side.rail-others--wide .player-chip:not(.is-big) .player-chip-head .player-token--chip{grid-column:1;grid-row:1 / span 2}.player-rail--side.rail-others--wide .player-chip:not(.is-big) .player-chip-head .player-chip-side{grid-column:2;justify-self:center;margin-left:0}.player-rail--side.rail-others--wide .player-chip:not(.is-big) .player-chip-stats{display:grid;grid-column:2;grid-template-columns:auto auto;justify-items:center;align-items:center;gap:.1rem .4rem;font-size:.72em}.player-rail--side.rail-others--wide .player-chip:not(.is-big) .player-chip-stats .player-chip-line:nth-child(3){grid-column:1 / -1}.player-rail--side.rail-pinned{container-type:inline-size}@container (max-width: 176px){.player-rail--side .player-chip.is-big{column-gap:.35rem}.player-rail--side .player-chip.is-big .player-token--chip{--token-size: calc(1.6*clamp(20px, 2vw, 32px)) }.player-rail--side .player-chip.is-big .player-chip-stats{column-gap:.25rem;row-gap:.1rem;font-size:.72rem}}@container (max-width: 176px){.player-rail--side .player-chip.is-big{padding-left:.45rem;padding-right:.4rem}.player-rail--side .player-chip.is-big .stat-rows,.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .stat-rows{grid-template-columns:minmax(0,1fr) min-content;column-gap:.25rem}.player-rail--side .player-chip.is-big .stat-rows-side{align-items:flex-end}.player-rail--side .player-chip.is-big .stat-rows-side>*,.player-rail--side .player-chip.is-big .stat-rows-blocks .stat-badge{font-size:.8em;padding-left:.3rem;padding-right:.3rem}.player-rail--side .player-chip.is-big .stat-row-group{gap:.2rem}.player-rail--side .player-chip.is-big .stat-row-list{flex:1 1 auto;min-width:0}.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats{grid-template-columns:auto auto;column-gap:.2rem}.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .player-chip-worth,.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .stat-badge--hp,.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .coin-badge,.player-rail--side .player-chip.is-big:not(:has(.stat-badge--power)) .player-chip-stats .player-chip-side{justify-self:end}}.player-rail--side .player-chip.is-big .player-chip-stats .stat-badge--affliction,.player-rail--side .player-chip.is-big .player-chip-stats .player-chip-buffed{grid-row:4;justify-self:end}.table-mark{position:fixed;z-index:350;font-size:10px;line-height:1.2;letter-spacing:.04em;font-variant-numeric:tabular-nums;color:var(--color-ink-muted);opacity:.55;pointer-events:none;white-space:nowrap;max-width:60vw;overflow:hidden;text-overflow:ellipsis}.table-mark--top{top:calc(env(safe-area-inset-top) + 3px);left:calc(var(--top-opener-clearance) + env(safe-area-inset-left) + .35rem)}.table-mark--bottom{right:calc(.5rem + env(safe-area-inset-right));bottom:calc(.1rem + env(safe-area-inset-bottom))}.table-qr-tile{position:absolute;top:.3rem;right:.3rem;z-index:7;display:flex;flex-direction:column;align-items:center;gap:2px;padding:0;border:none;background:none;line-height:1;cursor:pointer}.table-qr-square{width:48px;height:48px;padding:3px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--color-border);border-radius:4px}.table-qr-svg,.table-qr-svg svg{display:block;width:100%;height:100%}.table-qr-caption{max-width:5.5rem;font-family:var(--font-display);font-size:.6rem;letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.table-qr-tile:hover .table-qr-square,.table-qr-tile:focus-visible .table-qr-square{border-color:var(--color-accent)}.table-qr-card-square{width:min(60vmin,15rem)}.popover-friend-invite{display:flex;justify-content:flex-start}.btn-small{padding:.25rem .6rem;font-size:.75rem}.blocked-list{margin-top:.75rem;font-size:.8rem}.blocked-list-rows{list-style:none;margin:.4rem 0 0;padding:0;display:flex;flex-direction:column;gap:.3rem}.blocked-list-row{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.blocked-list-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ap-split{position:relative;display:inline-flex;align-items:stretch}.ap-split-main{border-top-right-radius:0;border-bottom-right-radius:0}.ap-split-caret{border-top-left-radius:0;border-bottom-left-radius:0;border-left:1px solid color-mix(in srgb,currentColor 35%,transparent);padding-left:.5rem;padding-right:.5rem;min-width:2rem}.ap-split-menu{position:absolute;top:calc(100% + .3rem);right:0;z-index:420;min-width:11rem;max-width:calc(100vw - 2rem);display:flex;flex-direction:column;gap:.25rem;padding:.35rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;box-shadow:var(--shadow-lg)}.ap-split-item{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .7rem;min-height:2.5rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-2);color:var(--color-ink);cursor:pointer;text-align:left;font:inherit}.ap-split-item:hover,.ap-split-item:focus-visible{background:var(--color-bg-alt)}.training-scene{position:fixed;top:16%;left:50%;transform:translate(-50%);z-index:444;width:min(20rem,80vw);background:var(--color-surface);border:1px solid var(--color-border);border-radius:.8rem;box-shadow:var(--shadow-lg);padding:.5rem;display:flex;flex-direction:column;gap:.4rem;cursor:pointer;animation:popoverFadeIn .15s ease-out}.training-scene-img{display:block;width:100%;height:auto;aspect-ratio:1 / 1;object-fit:cover;border-radius:.5rem}.training-scene-caption{margin:0;text-align:center;font-weight:600}
