body.feedback-armed,body.feedback-armed *{cursor:crosshair!important}.feedback-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none}.feedback-layer>*{pointer-events:auto}.feedback-dock{position:fixed;right:16px;bottom:16px;display:flex;flex-direction:column;align-items:flex-end;gap:8px;max-width:calc(100vw - 12px)}.feedback-dock.is-moved{right:auto;bottom:auto}.feedback-buttons{display:flex;align-items:center;gap:8px}.fb-grip{padding:7px 9px;color:var(--fb-muted, #93a6c4);line-height:1;cursor:grab;touch-action:none}.fb-grip:active{cursor:grabbing}.fb-btn{padding:7px 12px;border:1.5px solid var(--fb-line, #33507f);border-radius:9px;background:var(--fb-ink-600, #1d2e4a);color:var(--fb-paper, #e7ecf3);font-family:var(--fb-display, "Space Grotesk", "Trebuchet MS", system-ui, sans-serif);font-size:12.5px;cursor:pointer}.fb-btn:hover:not(:disabled){background:var(--fb-ink-500, #27395a)}.fb-btn:disabled{opacity:.4;cursor:not-allowed}.fb-round-wrap{position:relative;display:inline-flex}.fb-corner{position:absolute;top:-6px;width:17px;height:17px;padding:0;display:grid;place-items:center;border-radius:50%;border:1.5px solid #0e1622;font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:9.5px;font-weight:700;line-height:1;cursor:pointer}.fb-corner-working{left:-6px;background:var(--fb-warn, #6b4a12);border-color:var(--fb-warn-line, #b98a2a);color:var(--fb-paper, #e7ecf3)}.fb-corner-review{right:-6px;background:var(--fb-accent, #35c2b1);color:var(--fb-accent-ink, #0e1622)}.fb-primary{background:var(--fb-accent, #35c2b1);border-color:#0e1622;color:var(--fb-accent-ink, #0e1622);font-weight:700}.fb-main{padding:10px 16px;border-radius:999px;box-shadow:0 6px 20px #00000073}.fb-main.is-armed{background:var(--fb-hot, #ff6b52);border-color:#0e1622;color:#17110f;font-weight:700}.fb-round{width:34px;height:34px;padding:0;border-radius:50%;font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace)}.feedback-pin{position:fixed;display:grid;place-items:center;width:22px;height:22px;margin:-11px 0 0 -11px;border:2px solid #0e1622;border-radius:50% 50% 50% 2px;background:var(--fb-hot, #ff6b52);color:#17110f;font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:11px;font-weight:700;cursor:grab;touch-action:none;transition:opacity .15s ease}.feedback-pin:active{cursor:grabbing}.feedback-box{position:fixed;width:300px;padding:12px;border:1.5px solid var(--fb-accent, #35c2b1);border-radius:12px;background:var(--fb-ink-800, #101a2c);box-shadow:0 12px 34px #0000008c}.feedback-target{cursor:grab;touch-action:none;display:flex;justify-content:space-between;gap:8px;margin:0 0 8px;font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:11px;color:var(--fb-muted, #93a6c4)}.feedback-box textarea{width:100%;padding:8px;border:1.5px solid var(--fb-ink-500, #27395a);border-radius:8px;background:var(--fb-ink-900, #0a1120);color:var(--fb-paper, #e7ecf3);font-family:var(--fb-body, "IBM Plex Sans", "Segoe UI", system-ui, sans-serif);font-size:13px;resize:vertical}.feedback-check{display:flex;align-items:center;gap:6px;margin:8px 0;font-size:11.5px;color:var(--fb-muted, #93a6c4)}.feedback-actions{display:flex;justify-content:flex-end;gap:8px}.feedback-list{width:330px;max-height:50vh;overflow-y:auto;padding:12px;border:1.5px solid var(--fb-ink-500, #27395a);border-radius:12px;background:var(--fb-ink-800, #101a2c);box-shadow:0 12px 34px #0000008c}.feedback-list header{cursor:grab;touch-action:none;display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-family:var(--fb-display, "Space Grotesk", "Trebuchet MS", system-ui, sans-serif)}.feedback-list ol{list-style:none;margin:0;padding:0;display:grid;gap:8px}.feedback-list li{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:8px;padding:8px;border:1px solid var(--fb-ink-500, #27395a);border-radius:9px}.feedback-list p{margin:0 0 4px;font-size:12.5px}.feedback-list code{font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:10.5px;color:var(--fb-muted, #93a6c4);overflow-wrap:anywhere}.feedback-index{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--fb-hot, #ff6b52);color:#17110f;font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:11px}.feedback-empty{margin:0;font-size:12px;color:var(--fb-muted, #93a6c4)}.feedback-note{position:fixed;right:16px;bottom:62px;margin:0;padding:8px 12px;border:1.5px solid var(--fb-accent, #35c2b1);border-radius:9px;background:var(--fb-ink-800, #101a2c);font-size:12px}.feedback-pin.is-proposed{background:var(--fb-accent, #35c2b1);color:var(--fb-accent-ink, #0e1622);animation:pin-wait 1.6s ease-in-out infinite}@keyframes pin-wait{0%,to{box-shadow:0 0 #35c2b18c}50%{box-shadow:0 0 0 6px #35c2b100}}.feedback-list li.is-proposed{border-color:var(--fb-accent, #35c2b1);background:#35c2b112}.feedback-index.is-proposed{background:var(--fb-accent, #35c2b1);color:var(--fb-accent-ink, #0e1622)}.feedback-body{display:grid;gap:6px;min-width:0}.feedback-proposal{margin:0;padding:7px 8px;border-left:3px solid var(--fb-accent, #35c2b1);border-radius:0 7px 7px 0;background:#35c2b11a;font-size:12.5px}.feedback-proposal strong{display:block;margin-bottom:2px;font-family:var(--fb-display, "Space Grotesk", "Trebuchet MS", system-ui, sans-serif);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--fb-accent, #35c2b1)}.feedback-body textarea{width:100%;padding:6px 8px;border:1.5px solid var(--fb-ink-500, #27395a);border-radius:8px;background:var(--fb-ink-900, #0a1120);color:var(--fb-paper, #e7ecf3);font-family:var(--fb-body, "IBM Plex Sans", "Segoe UI", system-ui, sans-serif);font-size:12.5px;resize:vertical}.feedback-row{display:flex;align-items:center;justify-content:flex-end;gap:6px}.feedback-state{margin-right:auto;font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:10.5px;color:var(--fb-muted, #93a6c4)}.feedback-thread{list-style:none;margin:2px 0 0;padding:0;display:grid;gap:3px}.feedback-thread li{display:block;padding:4px 6px;border:0;border-left:2px solid var(--fb-ink-500, #27395a);border-radius:0;font-size:11.5px;color:var(--fb-muted, #93a6c4)}.feedback-thread li span{margin-right:5px;font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:10px;text-transform:uppercase}.feedback-thread li.from-claude{border-left-color:var(--fb-accent, #35c2b1)}.fb-round{position:relative}.feedback-proposal{cursor:pointer}.feedback-fix{display:flex;align-items:center;gap:6px;font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:10.5px;text-transform:uppercase;letter-spacing:.1em;color:var(--fb-muted, #93a6c4)}.feedback-fix .fb-switch{position:relative;width:30px;height:16px;padding:0;border:1.5px solid var(--fb-ink-500, #27395a);border-radius:999px;background:var(--fb-ink-900, #0a1120);cursor:pointer;transition:background .15s ease,border-color .15s ease}.feedback-fix .fb-switch:after{content:"";position:absolute;top:1px;left:1px;width:11px;height:11px;border-radius:50%;background:var(--fb-muted, #93a6c4);transition:transform .15s ease,background .15s ease}.feedback-fix .fb-switch[aria-checked=true]{border-color:var(--fb-accent, #35c2b1);background:#35c2b140}.feedback-fix .fb-switch[aria-checked=true]:after{transform:translate(14px);background:var(--fb-accent, #35c2b1)}.feedback-fix .fb-fixlabel{color:var(--fb-paper, #e7ecf3)}.feedback-fix.is-off .fb-fixlabel{color:#e0a35a}.feedback-pin.is-preview-off{background:#e0a35a;color:#21160a;animation:none}.feedback-list li.is-elsewhere{opacity:.5}.feedback-screen{font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--fb-muted, #93a6c4)}.feedback-where{display:flex;align-items:center;justify-content:space-between;gap:6px}.fb-go{padding:1px 8px;font-size:10.5px}.feedback-row-end{display:flex;align-items:center;gap:4px}.fb-dismiss{padding:1px 6px;border:0;background:none;color:var(--fb-muted, #93a6c4);font-family:var(--fb-display, "Space Grotesk", "Trebuchet MS", system-ui, sans-serif);font-size:10.5px;cursor:pointer}.fb-dismiss:hover{color:var(--fb-hot, #ff6b52)}.fb-dismiss.is-confirming{color:var(--fb-hot, #ff6b52);font-weight:700}.feedback-list li.feedback-group{display:block;padding:3px 2px 0;border:0;font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:9.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--fb-muted, #93a6c4)}.feedback-working{display:flex;align-items:center;gap:6px;margin:0;font-size:12px;color:var(--fb-muted, #93a6c4)}.fb-pulse{width:7px;height:7px;border-radius:50%;background:var(--fb-accent, #35c2b1);animation:pin-wait 1.6s ease-in-out infinite}.feedback-list li.is-highlighted{opacity:1;border-color:var(--fb-accent, #35c2b1);box-shadow:0 0 0 1px var(--fb-accent, #35c2b1)}.feedback-pin.is-highlighted{animation:pin-wait 1.6s ease-in-out infinite;box-shadow:0 0 0 4px #35c2b159}.feedback-resolved{margin-top:10px;padding-top:10px;border-top:1px solid var(--fb-ink-500, #27395a)}.feedback-resolved-header{width:100%;padding:4px 2px;border:0;background:none;color:var(--fb-muted, #93a6c4);font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:11px;letter-spacing:.06em;text-align:left;cursor:pointer}.feedback-resolved-header:hover{color:var(--fb-paper, #e7ecf3)}.feedback-resolved-list{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:4px}.feedback-resolved-row{display:block;padding:0;border:1px solid var(--fb-resolved, #a78bfa);border-radius:8px;background:#a78bfa12;opacity:.7}.feedback-resolved-row.is-highlighted{opacity:1;border-color:var(--fb-accent, #35c2b1);box-shadow:0 0 0 1px var(--fb-accent, #35c2b1)}.feedback-index.is-resolved{background:var(--fb-resolved, #a78bfa);color:var(--fb-resolved-ink, #1c1330)}.feedback-resolved-line{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer}.feedback-resolved-screen{flex-shrink:0;font-family:var(--fb-mono, "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--fb-muted, #93a6c4)}.feedback-resolved-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.feedback-resolved-full{padding:0 8px 8px}:root{--ink-900: #0a1120;--ink-800: #101a2c;--ink-700: #16233a;--ink-600: #1d2e4a;--ink-500: #27395a;--line: #33507f;--paper: #e7ecf3;--muted: #93a6c4;--accent: #35c2b1;--accent-ink: #0e1622;--hot: #ff6b52;--warn: #f2b441;--seat: var(--accent);--display: "Space Grotesk", "Trebuchet MS", system-ui, sans-serif;--body: "IBM Plex Sans", "Segoe UI", system-ui, sans-serif;--mono: "IBM Plex Mono", "SFMono-Regular", ui-monospace, monospace;--radius: 10px;--plate: 3px;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--body);font-size:14px;line-height:1.45;color:var(--paper);background:var(--ink-900);background-image:repeating-linear-gradient(112deg,rgba(255,255,255,.014) 0 2px,transparent 2px 5px);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--display);font-weight:700;letter-spacing:-.02em;margin:0}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.btn{position:relative;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1.5px solid var(--line);border-radius:var(--radius);background:var(--ink-600);color:var(--paper);font-family:var(--display);font-size:13px;font-weight:500;letter-spacing:.01em;cursor:pointer;box-shadow:var(--plate) var(--plate) 0 #060b16d9;transition:transform .08s ease,background .15s ease}.btn:hover:not(:disabled){background:var(--ink-500);transform:translate(-1px,-1px);box-shadow:4px 4px #060b16d9}.btn:active:not(:disabled){transform:translate(2px,2px);box-shadow:1px 1px #060b16d9}.btn:disabled{cursor:not-allowed;box-shadow:none;color:#e7ecf366;border-color:#27395a99;background:#1d2e4a80}.btn-primary:disabled,.btn-end:disabled{background:#1d2e4a80;border-color:#27395a99;color:#e7ecf366}.btn:disabled .count-badge{background:#0a112059}.btn:disabled .btn-cost{opacity:1;border-left-color:#27395ab3}.btn-primary{background:var(--accent);border-color:#0e1622;color:var(--accent-ink);font-weight:700}.btn-primary:hover:not(:disabled){background:#4ad9c7}.btn-end{background:var(--warn);border-color:#0e1622;color:var(--accent-ink);font-weight:700}.btn-end:hover:not(:disabled){background:#ffc95f}.btn-lg{padding:12px 22px;font-size:15px}.btn-quiet{background:transparent;border-color:var(--ink-500);box-shadow:none;color:var(--muted)}.btn.on{background:var(--accent);color:var(--accent-ink);border-color:#0e1622}.btn-seat{width:100%;justify-content:flex-start;border-left:5px solid var(--seat)}.btn-note{margin-left:auto;color:var(--muted);font-family:var(--mono);font-size:11px}.count-badge{min-width:20px;padding:1px 5px;border-radius:7px;background:#0a11208c;font-family:var(--mono);font-size:11px;text-align:center}.btn-primary .count-badge,.btn-end .count-badge,.btn.on .count-badge{background:#0a112038}.eyebrow{margin:0 0 6px;font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--accent)}.panel{position:relative;padding:12px;border:1.5px solid var(--ink-500);border-radius:var(--radius);background:var(--ink-700);box-shadow:var(--plate) var(--plate) 0 #060b16b3;min-height:0}.panel-title{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.panel-note,.field-note{font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:0;text-transform:none;color:var(--muted)}.sub-title{margin:14px 0 6px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.empty-note{margin:4px 0;color:var(--muted);font-size:12px}.seat-glyph{color:var(--seat);font-size:13px}.start-screen{min-height:100%;display:grid;place-items:center;padding:28px 16px;background:radial-gradient(1100px 620px at 50% -10%,rgba(53,194,177,.16),transparent 70%),var(--ink-900)}.start-panel{width:min(560px,100%);padding:30px;border:1.5px solid var(--ink-500);border-radius:16px;background:var(--ink-800);box-shadow:8px 8px #35c2b12e}.start-title{font-size:clamp(44px,8vw,68px);line-height:.94;letter-spacing:-.045em;margin-bottom:10px}.start-title span,.wordmark span{color:var(--accent)}.start-lead{margin:0 0 22px;max-width:42ch;color:var(--muted)}.field{margin-bottom:20px}.field-title{margin-bottom:8px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.segmented{display:inline-flex;border:1.5px solid var(--ink-500);border-radius:var(--radius);overflow:hidden}.seg{padding:8px 16px;border:0;background:var(--ink-700);font-family:var(--display);font-size:13px;cursor:pointer}.segmented.small .seg{padding:6px 10px;font-size:12px}.seg.on{background:var(--accent);color:var(--accent-ink);font-weight:700}.seat-setup{list-style:none;margin:0;padding:0;display:grid;gap:8px}.seat-setup li{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1.5px solid var(--ink-500);border-left:5px solid var(--seat);border-radius:var(--radius);background:var(--ink-700)}.name-input,.seed-input{flex:1;padding:7px 10px;border:1.5px solid var(--ink-500);border-radius:8px;background:var(--ink-900);color:var(--paper);font-family:var(--body);font-size:14px}.seed-input{width:100%;font-family:var(--mono)}.start-btn{width:100%;justify-content:center;margin-top:4px}.start-panel .disclaimer{margin:18px 0 0;text-align:center}.game-screen{height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:8px;padding:8px 12px 10px}.topbar{display:flex;align-items:center;gap:12px;min-height:26px}.wordmark{padding:0;border:0;background:none;color:var(--paper);font-family:var(--display);font-size:20px;font-weight:700;letter-spacing:-.03em;cursor:pointer}.wordmark:hover span{color:#4ad9c7}.wordmark-overlay{position:absolute;top:10px;left:14px;z-index:2;line-height:1;text-shadow:0 1px 0 rgba(6,11,22,.8)}.hint-chip,.turn-chip,.seed-chip{padding:3px 10px;border:1.5px solid var(--ink-500);border-radius:999px;font-family:var(--mono);font-size:11px;color:var(--muted)}.hint-chip{border-color:#35c2b180;color:var(--accent)}.topbar .btn-quiet{margin-left:auto}.stage{display:grid;grid-template-columns:minmax(0,1fr) 296px;gap:10px;min-height:0}.stage.has-side{grid-template-columns:190px minmax(0,1fr) 296px}.dock-side{flex-direction:column;align-items:stretch;min-height:0}.dock-side .hand-dock{flex:1 1 auto;min-height:0;overflow:auto}.dock-side .dock-head{flex-wrap:wrap;justify-content:flex-start}.dock-side .dock-cards{justify-content:flex-start;align-items:flex-start}.dock-side .dock-split{width:100%;height:1.5px;align-self:auto}.dock-side .action-bar:not(:empty){flex-direction:column;align-items:stretch;margin:10px 0 0}.dock-side .action-bar .btn{width:100%}.dock-side .bar-split{width:100%;height:1.5px}.board-column{min-height:0}.board-frame{position:relative;height:100%;min-height:380px;border:1.5px solid var(--ink-500);border-radius:14px;overflow:hidden;background:#16283f;box-shadow:var(--plate) var(--plate) 0 #060b16b3}.board{display:block;width:100%;height:100%}.token-value{font-family:var(--display);font-size:23px;font-weight:700}.token.hot .token-value{font-size:25px}.harbor-rate{font-family:var(--display);font-size:15px;font-weight:700}.harbor-any{font-family:var(--mono);font-size:22px;letter-spacing:.06em}.hex-live{cursor:pointer}.hex-target{stroke:var(--accent);stroke-width:4;stroke-dasharray:10 8;animation:crawl 3s linear infinite}.hex-target.on{stroke-dasharray:none;stroke-width:6}@keyframes crawl{to{stroke-dashoffset:-36}}.target{cursor:pointer}.vertex-ghost,.edge-ghost{fill:#35c2b13d;stroke:var(--accent);stroke-width:2.5;animation:knob 2.4s ease-in-out infinite}.vertex-hit{fill:transparent;stroke:none}.vertex-ghost.on,.edge-ghost.on{fill:#35c2b180;animation:none}@keyframes knob{0%,to{opacity:.55}50%{opacity:1}}.confirm-chip{cursor:pointer}.chip-text{font-family:var(--display);font-size:14px;font-weight:700}.dice-dock{position:absolute;top:12px;right:12px;padding:8px 10px;border:1.5px solid var(--ink-500);border-radius:12px;background:#0a1120c7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dice{display:flex;align-items:center;gap:8px}.dice-dock .dice-roll{min-height:42px}.die{width:42px;height:42px}.die-small{width:17px;height:17px;vertical-align:-3px}.dice-total{font-family:var(--display);font-size:22px;font-weight:700;min-width:26px;text-align:center}.dice.is-rolling .die:first-child{animation:tumble .5s ease-in-out}.dice.is-rolling .die:nth-child(2){animation:tumble .5s ease-in-out .06s}@keyframes tumble{0%{transform:rotate(0) translateY(0)}35%{transform:rotate(-140deg) translateY(-14px)}70%{transform:rotate(120deg) translateY(4px)}to{transform:rotate(0) translateY(0)}}.instruction-card{position:absolute;left:12px;bottom:12px;max-width:300px;display:flex;gap:10px;padding:10px 12px;border:1.5px solid var(--ink-500);border-left:4px solid var(--accent);border-radius:12px;background:#0a1120d9;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.instruction-card p{margin:0;font-size:12.5px;color:#cfdaea}.instruction-icon{font-size:18px;line-height:1.2;color:var(--accent)}.turn-pill{position:absolute;left:50%;bottom:12px;transform:translate(-50%);display:flex;align-items:center;gap:9px;padding:8px 18px;border:2px solid var(--seat);border-radius:999px;background:#0a1120e6;font-family:var(--display);font-size:14px;font-weight:500;white-space:nowrap;box-shadow:0 6px 22px #00000073}.turn-pill.is-you{background:var(--seat);color:var(--accent-ink);font-weight:700}.pill-mark{color:var(--seat)}.turn-pill.is-you .pill-mark{color:var(--accent-ink)}.thinking{display:inline-flex;gap:3px}.thinking i{width:4px;height:4px;border-radius:50%;background:var(--seat);animation:blink 1.1s infinite ease-in-out}.thinking i:nth-child(2){animation-delay:.15s}.thinking i:nth-child(3){animation-delay:.3s}@keyframes blink{0%,to{opacity:.25}50%{opacity:1}}.trade-overlay{position:absolute;top:12px;left:50%;transform:translate(-50%);width:min(420px,calc(100% - 140px));padding:12px 14px;border:2px solid var(--seat);border-radius:14px;background:#0a1120ed;box-shadow:0 10px 30px #00000080}.trade-head{display:flex;align-items:center;gap:8px;margin:0 0 8px;font-family:var(--display);font-weight:700}.trade-rows{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.trade-arrow{color:var(--accent);font-size:20px}.bundle-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:6px;border:1px solid var(--ink-500);border-radius:10px;background:var(--ink-700)}.bundle-label{width:100%;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.bundle-card{display:grid;place-items:center;width:28px;height:34px;border:1px solid var(--ink-500);border-radius:5px;background:var(--ink-800)}.trade-status{display:flex;flex-wrap:wrap;gap:6px;list-style:none;margin:10px 0 0;padding:0}.answer{display:flex;align-items:center;gap:5px;padding:3px 8px;border:1px solid var(--ink-500);border-radius:999px;font-size:12px}.answer-accept{border-color:var(--accent);color:var(--accent)}.answer-decline{opacity:.45;text-decoration:line-through}.answer-mark{font-family:var(--mono)}.trade-wait{margin:8px 0 0;font-family:var(--mono);font-size:12px;color:var(--muted)}.trade-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.rail-right{display:grid;grid-template-rows:minmax(120px,1fr) auto auto minmax(0,auto);gap:10px;min-height:0;overflow:hidden}.log{display:flex;flex-direction:column;min-height:0}.log-list{flex:1;overflow-y:auto;list-style:none;margin:0;padding:0 4px 0 0;display:flex;flex-direction:column;gap:4px;scrollbar-width:thin}.log-item{display:flex;gap:7px;padding:4px 6px;border-left:3px solid var(--seat, var(--ink-500));border-radius:0 6px 6px 0;background:#ffffff05;font-size:12.5px;animation:slide-in .25s ease}@keyframes slide-in{0%{opacity:0;transform:translateY(4px)}}.log-mark{color:var(--seat, var(--muted))}.log-name{color:var(--seat);font-weight:600}.log-res{display:inline-flex;align-items:center;gap:2px;white-space:nowrap}.log-res .res-icon{vertical-align:-2px}.log-dice{display:inline-flex;gap:3px;margin-left:5px}.tone-roll{background:#35c2b114}.tone-robber{background:#ff6b521a}.tone-win,.tone-award{background:#f2b4411f;font-weight:600}.bank-row{display:flex;justify-content:space-between;gap:4px;list-style:none;margin:0;padding:0}.bank-row li{display:flex;align-items:center;gap:4px;font-family:var(--mono);font-size:12px}.seats{display:grid;gap:6px;align-content:start;min-height:0;overflow-y:auto}.seat-row{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2px 6px;padding:5px 8px;border:1.5px solid var(--ink-500);border-left:5px solid var(--seat);border-radius:9px;background:var(--ink-800);transition:opacity .2s ease}.seat-row.is-dim{opacity:.62}.seat-row.is-turn{background:var(--ink-600);box-shadow:0 0 0 1.5px var(--seat)}.seat-row.is-waiting:after{content:"";position:absolute;right:8px;top:8px;width:7px;height:7px;border-radius:50%;background:var(--seat);animation:blink 1.1s infinite}.seat-row.is-own{position:sticky;bottom:0;padding:8px 9px;border-width:2px;background:var(--ink-700)}.seat-name{font-family:var(--display);font-weight:500}.seat-kind{margin-left:6px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.seat-vp{display:grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:7px;background:var(--seat);color:var(--accent-ink);font-family:var(--display);font-weight:700}.seat-stats{grid-column:1 / -1;display:flex;gap:9px;list-style:none;margin:0;padding:0;font-family:var(--mono);font-size:11px;line-height:1.2;color:var(--muted)}.seat-stats li{display:flex;align-items:center;gap:3px}.stat-glyph{color:var(--seat)}.badges{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:4px}.badge{padding:1px 7px;border:1px solid var(--warn);border-radius:999px;font-size:10.5px;letter-spacing:.06em;color:var(--warn)}.badge-warn{border-color:var(--hot);color:var(--hot)}.vp-pop{position:absolute;right:12px;top:4px;font-family:var(--display);font-weight:700;color:var(--accent);animation:float-up 1.4s ease-out forwards;pointer-events:none}@keyframes float-up{0%{opacity:1;transform:translateY(6px)}to{opacity:0;transform:translateY(-22px)}}.dock{display:flex;align-items:center}.dock .hand-dock{flex:1 1 320px;min-width:0}.dock .action-bar:not(:empty){margin-left:14px}.hand-dock{padding:8px 12px;border:1.5px solid var(--ink-500);border-radius:12px;background:var(--ink-700);box-shadow:var(--plate) var(--plate) 0 #060b16b3}.dock-head{display:flex;align-items:baseline;justify-content:flex-end;gap:10px;margin-bottom:6px}.dock-name{font-family:var(--display);font-weight:700;color:var(--seat)}.dock-note{font-family:var(--mono);font-size:11px;color:var(--muted)}.dock-cards{display:flex;align-items:flex-end;justify-content:flex-end;flex-wrap:wrap;gap:8px}.dock-split{width:1.5px;align-self:stretch;background:var(--ink-500)}.card-stack{position:relative;width:62px;height:76px}.stack-layer,.stack-face{position:absolute;top:0;right:0;bottom:0;left:0;border:1.5px solid var(--ink-900);border-radius:8px;background:var(--ink-600)}.stack-face{display:grid;place-items:center;gap:2px;background:linear-gradient(160deg,#223451,#182740)}.stack-name{font-family:var(--mono);font-size:10px;color:var(--muted)}.card-stack.empty{opacity:.4}.card-stack .count-badge{position:absolute;right:-5px;bottom:-5px;background:var(--accent);color:var(--accent-ink);font-weight:700;border:1.5px solid var(--ink-900)}.card-stack.empty .count-badge{background:var(--ink-500);color:var(--muted)}.dev-card{position:relative;display:grid;justify-items:center;gap:2px;width:78px;height:76px;padding:6px 4px;border:1.5px solid var(--ink-900);border-radius:8px;background:#cdd8e8;color:var(--ink-900);cursor:pointer}.dev-card:disabled{opacity:.45;cursor:not-allowed}.dev-card.is-playable{background:var(--paper);box-shadow:0 0 0 2px var(--accent)}.dev-name{font-family:var(--display);font-size:11px;font-weight:700}.dev-card .count-badge{position:absolute;right:-5px;bottom:-5px;background:var(--ink-900);color:var(--paper);border:1.5px solid var(--ink-600)}.hand-hidden{margin:6px 0;color:var(--muted);font-style:italic}.action-bar{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px}.bar-split{width:1.5px;height:26px;background:var(--ink-500)}.waiting-note{font-family:var(--mono);font-size:12px;color:var(--muted)}.disclaimer{margin:0;padding-bottom:4px;text-align:center;font-size:10.5px;color:#5f7292}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#060b16bd;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:20;animation:fade .18s ease}@keyframes fade{0%{opacity:0}}.modal{width:min(520px,100%);max-height:88vh;overflow-y:auto;padding:22px;border:1.5px solid var(--line);border-radius:16px;background:var(--ink-800);box-shadow:8px 8px #35c2b129}.modal-wide{width:min(780px,100%)}.modal-alert{box-shadow:8px 8px #ff6b5238}.modal-title{font-size:24px;margin-bottom:6px}.modal-lead{margin:0 0 16px;color:var(--muted)}.modal-warn{color:var(--hot);font-size:12.5px}.modal-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:18px}.modal-count{margin-right:auto;font-family:var(--mono);font-size:12px;color:var(--muted)}.stepper-grid{display:grid;gap:6px}.stepper{display:grid;grid-template-columns:auto 1fr auto auto auto;align-items:center;gap:8px;padding:5px 8px;border:1.5px solid var(--ink-500);border-radius:9px;background:var(--ink-700)}.stepper-name{font-size:12.5px}.stepper-hint{margin-left:6px;font-family:var(--mono);font-size:10.5px;color:var(--muted)}.stepper button{width:28px;height:28px;border:1.5px solid var(--ink-500);border-radius:7px;background:var(--ink-600);cursor:pointer;font-size:15px}.stepper button:disabled{opacity:.35;cursor:not-allowed}.stepper-value{min-width:20px;text-align:center;font-family:var(--mono);font-size:15px}.trade-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.pick-row,.target-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.pick{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:10px;width:100%;padding:8px 10px;border:1.5px solid var(--ink-500);border-radius:9px;background:var(--ink-700);cursor:pointer;text-align:left}.pick:disabled{opacity:.35;cursor:not-allowed}.pick.on{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.pick-rate{font-family:var(--display);font-weight:700;color:var(--accent)}.pick-have{font-family:var(--mono);font-size:11px;color:var(--muted)}.win-title{font-size:34px;color:var(--seat);margin-bottom:16px}.win-note{margin:-8px 0 12px;font-family:var(--mono);font-size:11px;color:var(--muted)}.score-table{width:100%;border-collapse:collapse;font-size:13px}.score-table th{padding:6px 8px;border-bottom:1.5px solid var(--ink-500);font-family:var(--mono);font-size:10.5px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:right}.score-table th:first-child,.score-table td:first-child{text-align:left}.score-table td{padding:8px;border-bottom:1px solid var(--ink-600);text-align:right;font-family:var(--mono)}.score-table td:first-child{font-family:var(--body);color:var(--seat)}.score-total{font-family:var(--display);font-weight:700;font-size:16px}.is-winner{background:#35c2b11a}@media (max-width: 1080px){.game-screen{height:auto;min-height:100%}.stage{grid-template-columns:minmax(0,1fr)}.rail-right{grid-template-rows:none}.log-list{max-height:220px}.board-frame{min-height:62vh}.dock{grid-template-columns:minmax(0,1fr)}.action-bar{justify-content:flex-start}}@media (max-width: 640px){.trade-overlay{width:calc(100% - 24px)}.instruction-card{max-width:190px}.card-stack{width:52px;height:66px}}html[data-fix-off~=c005] .game-screen{gap:10px;padding:10px 14px 6px}html[data-fix-off~=c005] .stage{grid-template-columns:minmax(0,1fr) 350px;gap:12px}html[data-fix-off~=c007] .seat-row{gap:3px 8px;padding:5px 9px}html[data-fix-off~=c009] .game-screen{grid-template-rows:auto minmax(0,1fr) auto}html[data-fix-off~=c009] .topbar{min-height:0}html[data-fix-off~=c009] .wordmark{font-size:22px;cursor:default}html[data-fix-off~=c013] .dock{display:grid;grid-template-columns:minmax(320px,1fr) auto;gap:14px}html[data-fix-off~=c013] .dock .action-bar:not(:empty){margin-left:0}html[data-fix-off~=c012] .dock-head,html[data-fix-off~=c012] .dock-cards{justify-content:flex-start}.crash{height:100%;display:grid;place-items:center;padding:24px;overflow-y:auto}.crash-panel{width:min(640px,100%);padding:22px 24px 20px;border:1.5px solid var(--ink-500);border-left:5px solid #e0a35a;border-radius:14px;background:var(--ink-800);box-shadow:var(--plate) var(--plate) 0 #060b16b3}.crash-mark{margin:0 0 10px;font-family:var(--display);font-size:15px;font-weight:700;letter-spacing:-.03em}.crash-mark span{color:var(--accent)}.crash h1{margin:0 0 8px;font-family:var(--display);font-size:21px}.crash-lead{margin:0 0 12px;max-width:60ch;color:var(--muted);font-size:13px}.crash-message{margin:0 0 12px;padding:9px 11px;border-radius:9px;background:var(--ink-900);font-family:var(--mono);font-size:12px;color:#f0b878;overflow-wrap:anywhere}.crash-where{margin-bottom:8px;font-size:12px}.crash-where summary{cursor:pointer;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.crash-where pre{margin:6px 0 0;max-height:190px;overflow:auto;padding:9px 11px;border-radius:9px;background:var(--ink-900);font-family:var(--mono);font-size:11px;color:var(--muted)}.crash-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.panel-fold{display:flex;align-items:baseline;justify-content:space-between;width:100%;padding:0;border:0;background:none;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.panel-fold:hover{color:var(--accent)}.fold-mark{font-family:var(--mono);font-size:14px;line-height:1}.cost-list{display:grid;gap:5px;list-style:none;margin:0;padding:0}.cost-list li{display:flex;align-items:center;gap:8px;font-size:12.5px}.cost-label{flex:1 1 auto;color:var(--muted)}.cost-icons{display:inline-flex;align-items:center;gap:2px}.cost-words{display:none}.cost-list-wide li{gap:12px;padding:6px 10px;border:1px solid var(--ink-500);border-radius:var(--radius);background:var(--ink-700)}.cost-list-wide .cost-label{flex:0 0 108px;color:var(--paper)}.cost-list-wide .cost-icons{flex:0 0 auto}.cost-list-wide .cost-words{display:inline;flex:1 1 auto;font-family:var(--mono);font-size:11.5px;color:var(--muted);text-align:right}.rules-overlay{position:absolute;right:12px;bottom:12px;z-index:2;background:#0a1120d9;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.rules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:4px 22px;margin-top:4px}.rules-list{margin:0;padding-left:18px;font-size:12.5px;color:var(--muted)}.rules-list li{margin-bottom:3px}.rules-list li::marker{color:var(--accent)}.fly-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;pointer-events:none}.fly-card{position:absolute;top:0;left:0;display:grid;place-items:center;width:46px;height:46px;margin:-23px 0 0 -23px;border:1.5px solid var(--line);border-radius:8px;background:var(--ink-700);box-shadow:2px 2px #060b16b3;animation:fly var(--fly-ms, .62s) cubic-bezier(.35,0,.25,1) both}@keyframes fly{0%{transform:translate(var(--fx),var(--fy)) scale(.6);opacity:0}16%{transform:translate(calc(var(--fx) + (var(--tx) - var(--fx)) * .16),calc(var(--fy) + (var(--ty) - var(--fy)) * .16 - 26px)) scale(1.1);opacity:1}82%{opacity:1}to{transform:translate(var(--tx),var(--ty)) scale(.6);opacity:0}}@media (prefers-reduced-motion: reduce){.fly-card{display:none}}.is-trading .dock,.is-trading .costs{position:relative;z-index:30;pointer-events:none}.badge-deck{background:none;border:1.5px solid var(--line);color:var(--muted)}.room-link{position:absolute;left:50%;top:12px;transform:translate(-50%);z-index:2;background:#0a1120d9;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);font-family:var(--mono);font-size:11.5px}.field-note.warn{color:var(--hot)}.phone-bar,.phone-log,.btn-cost{display:none}.lobby-panel{max-width:720px}.lobby-build{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.room-list{display:grid;gap:6px;list-style:none;margin:0;padding:0}.room-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1.1fr) auto;align-items:center;gap:12px;padding:9px 12px;border:1.5px solid var(--ink-500);border-radius:var(--radius);background:var(--ink-700)}.room-row.is-mine{border-color:var(--accent)}.room-name{display:flex;align-items:baseline;gap:8px;font-family:var(--mono);font-size:12.5px}.room-tag{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.room-note{font-family:var(--mono);font-size:11.5px;color:var(--muted)}.room-acts{display:flex;gap:6px}.seat-dots{display:inline-flex;gap:4px}.seat-dot{width:10px;height:10px;border-radius:3px;border:1.5px solid var(--seat)}.seat-dot.is-taken{background:var(--seat)}.seat-dot.is-bot{background:var(--ink-500);border-color:var(--ink-500)}.seat-dot.is-open{background:none}@media (max-width: 620px){.room-row{grid-template-columns:minmax(0,1fr) auto;row-gap:8px}}.seat-dot.is-away{background:repeating-linear-gradient(45deg,var(--seat) 0 2px,transparent 2px 4px)}.turn-clock{position:absolute;right:12px;bottom:52px;z-index:2;padding:5px 11px;border:1.5px solid var(--warn);border-radius:999px;background:#0a1120e0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);font-family:var(--mono);font-size:11.5px;color:var(--warn)}.turn-clock.is-low{border-color:var(--hot);color:var(--hot)}.room-tag.is-quiet{color:var(--muted)}@media (max-width: 760px){.btn,.seg,.stepper button{min-height:40px}.name-input,.seed-input{font-size:16px}.start-screen{padding:14px 10px calc(28px + env(safe-area-inset-bottom));align-content:start}.start-panel{padding:18px 16px;border-radius:14px;box-shadow:3px 3px #35c2b12e}.start-title{font-size:clamp(34px,12vw,48px)}.segmented{display:flex;flex-wrap:wrap;gap:6px;border:0;overflow:visible}.segmented .seg{flex:1 1 auto;border:1.5px solid var(--ink-500);border-radius:var(--radius)}.seat-setup li{flex-wrap:wrap;gap:8px}.name-input{min-width:0;flex:1 1 120px}.lobby-build{gap:6px}.lobby-build>.btn{width:100%}.room-row{grid-template-columns:minmax(0,1fr) auto;row-gap:8px}.room-name{min-width:0}.room-note,.room-acts{grid-column:1 / -1}.room-acts .btn{flex:1 1 auto}.game-screen{height:100dvh;min-height:0;grid-template-rows:minmax(0,1fr);padding:0;gap:0}.topbar,.disclaimer{display:none}.stage,.stage.has-side{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto minmax(0,1fr) auto;gap:0;min-height:0;padding:calc(6px + env(safe-area-inset-top)) 8px calc(6px + env(safe-area-inset-bottom))}.phone-bar{display:flex;align-items:center;gap:8px;order:1;padding-bottom:6px}.board-column{order:2;display:flex;flex-direction:column;min-width:0;min-height:0}.phone-log{display:block;order:3;min-height:62px;padding-top:6px}.phone-log .log{height:100%}.phone-log .log-list{max-height:none}.rail-right .log{display:none}.stage.has-side .dock-side,.dock{order:4;padding-top:6px}.seat-strip{display:flex;flex:1 1 auto;gap:6px;list-style:none;margin:0;padding:0;min-width:0}.seat-chip{display:flex;align-items:center;gap:4px;flex:1 1 0;min-width:0;padding:4px 6px;border:1.5px solid var(--ink-500);border-radius:8px;background:var(--ink-700);font-family:var(--mono);font-size:11.5px;color:var(--muted)}.seat-chip.is-turn{border-color:var(--seat);color:var(--paper)}.seat-chip.is-own{background:var(--ink-600)}.seat-chip .seat-glyph{color:var(--seat)}.seat-chip b{color:var(--paper);font-size:13px}.chip-cards{margin-left:auto;display:inline-flex;align-items:center;gap:2px}.phone-bar .btn{flex:0 0 auto;min-height:34px;padding:4px 10px}.board-frame{flex:0 1 auto;height:auto;min-height:0;display:flex;flex-direction:column;gap:6px;padding:6px;overflow:visible}.board{flex:0 1 auto;height:auto;min-height:0;max-height:48dvh}.instruction-card{position:static;max-width:none;margin:0;padding:6px 9px;border-radius:9px;font-size:12px}.instruction-card p{font-size:12.5px}.turn-pill{display:none}.rail-right{position:fixed;left:0;right:0;bottom:0;z-index:30;display:none;grid-template-rows:none;gap:8px;max-height:76dvh;overflow-y:auto;padding:12px 12px calc(12px + env(safe-area-inset-bottom));border-top:1.5px solid var(--line);border-radius:16px 16px 0 0;background:var(--ink-800);box-shadow:0 -12px 32px #060b1699;animation:rise .18s ease}.rail-right.is-open{display:grid}.seats{overflow:visible}.dock-side{display:block;min-height:0}.dock-side .hand-dock,.hand-dock{flex:0 0 auto;overflow:visible;padding:6px 8px}.dock-head{font-size:12px}.wordmark-overlay{font-size:14px;top:10px;left:12px}.room-link{top:30px;left:12px;right:auto;transform:none;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rules-overlay{top:8px;right:10px;bottom:auto}.dice-dock{position:static;padding:0;border:0;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;display:flex;justify-content:center}.dice-dock .dice-roll{width:100%}.die{width:30px;height:30px}.turn-clock{position:static;align-self:center}.dock-cards{justify-content:flex-start;flex-wrap:nowrap;overflow-x:auto;gap:6px;scrollbar-width:none}.dock-cards::-webkit-scrollbar{display:none}.card-stack{width:44px;height:54px;flex:0 0 auto}.stack-name{display:none}.stack-face .res-icon{width:22px;height:22px}.dev-card{flex:0 0 auto}.action-bar,.dock-side .action-bar:not(:empty){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:6px 0 0}.dock-side .action-bar .btn,.action-bar .btn{width:100%;justify-content:center}.action-bar .btn-lg,.action-bar .btn-end,.action-bar .waiting-note{grid-column:1 / -1}.bar-split,.badge-deck{display:none}.btn-cost{display:inline-flex;align-items:center;gap:1px;margin-left:2px;padding-left:6px;border-left:1px solid var(--ink-500);opacity:.9}.btn-cost .res-icon{width:13px;height:13px}.action-bar .btn{gap:5px;padding:8px;font-size:12.5px}.scrim{padding:0;place-items:end stretch}.modal{width:100%;max-height:92vh;padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;box-shadow:none;animation:rise .18s ease}.modal-title{font-size:20px}.is-trading .dock,.is-trading .costs{position:static;z-index:auto}.scrim{z-index:40}.modal-actions{flex-wrap:wrap}.modal-actions .btn{flex:1 1 auto;justify-content:center}.rules-grid{grid-template-columns:minmax(0,1fr);gap:0}.cost-list-wide li{flex-wrap:wrap;row-gap:2px}.cost-list-wide .cost-label{flex:0 0 auto}.cost-list-wide .cost-words{flex:1 1 100%;text-align:left}.stepper-grid{grid-template-columns:minmax(0,1fr)}.trade-overlay{left:8px;right:8px;width:auto;transform:none}.score-table{font-size:12px}}@keyframes rise{0%{transform:translateY(14px)}}@media (max-width: 900px) and (orientation: landscape) and (max-height: 520px){.board-frame{height:78vh;min-height:240px}.start-screen{padding-top:8px}}
