:root{color:#f4dfb8;--serif-font:"Songti SC", "STSong", "Noto Serif CJK SC", "Source Han Serif SC", SimSun, Georgia, "Times New Roman", serif;font-family:var(--serif-font);font-synthesis:none;text-rendering:optimizelegibility;--ink:#1c130b;--parchment:#f1dfb3;--parchment-deep:#d3ad65;--brass:#c99a45;--brass-bright:#f2d58a;--felt:#102d2a;--felt-deep:#071915;--oxblood:#4a1e18;--wood:#32190d;--wood-dark:#160a05;--shadow:#00000075;background:#120b07}*{box-sizing:border-box}html{background:#120b07}body{background:#120b07;min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}.game-icon{background-image:url(/assets/game-icons-sprite-D6xbvYhw.png);background-position:var(--game-icon-position);filter:drop-shadow(0 1px 1px #24120647);vertical-align:middle;background-repeat:no-repeat;background-size:400% 400%;flex:none;width:1.12em;height:1.12em;line-height:1;display:inline-block}.person-role-icon{width:1.08em;height:1.08em}button{color:#fff6d8;cursor:pointer;letter-spacing:0;text-shadow:0 1px 1px #281204b3;background:radial-gradient(circle at 34% 22%,#fff6cd9e,#0000 28%),linear-gradient(#d6ad56,#80501d 58%,#4f2a11);border:1px solid #ffe69fc2;border-radius:999px;min-height:42px;padding:0 16px;font-weight:900;transition:transform .16s,filter .16s,box-shadow .16s;box-shadow:inset 0 2px #fff4be6b,inset 0 -3px #2a130773,0 9px 16px #00000052}button:hover:not(:disabled){filter:saturate(1.08)brightness(1.04);transform:translateY(-2px)}button:active:not(:disabled){transform:translateY(1px);box-shadow:inset 0 1px #fff4be57,inset 0 -2px #2a130770,0 4px 10px #00000057}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #82d3dbe6}button:disabled{cursor:not-allowed;opacity:.55;transform:none}.primary{color:#fffbed;background:radial-gradient(circle at 35% 22%,#dbffed80,#0000 28%),linear-gradient(#3c9d75,#145943 58%,#0b312a);border-color:#9be0cadb}.secondary{background:radial-gradient(circle at 35% 22%,#fff7ce8c,#0000 28%),linear-gradient(#e3bc68,#8b5520 58%,#512a10)}.danger{color:#fff8e8;background:radial-gradient(circle at 34% 22%,#ffd2b980,#0000 28%),linear-gradient(#bb5845,#7e2b20 58%,#42140e);border-color:#ef977adb}.ghost{color:#f8e5b7;background:radial-gradient(circle at 34% 22%,#ffefb43d,#0000 28%),linear-gradient(#4d3116db,#1c1108eb);border-color:#efcb84b8}.table-shell{isolation:isolate;min-height:100vh;position:relative;overflow-x:clip}.table-shell:before{z-index:-3;content:"";background:radial-gradient(ellipse at 15% 10%, #ffc6692e, transparent 28%), radial-gradient(ellipse at 90% 18%, #c46a3024, transparent 26%), linear-gradient(115deg, #281308e6, #100805f0 42%, #2f1609eb), var(--harbor-bg);background-position:50%;background-size:cover;position:fixed;inset:0}.table-shell:after{z-index:-2;content:"";pointer-events:none;mix-blend-mode:multiply;background:linear-gradient(90deg,#00000073,#0000 16% 84%,#0000008a),linear-gradient(#00000070,#0000 18% 73%,#00000080),repeating-linear-gradient(90deg,#ffd68809 0 1px,#0000 1px 74px);position:fixed;inset:0}.setup-shell,.app-shell{width:100%;margin:0 auto;padding:20px 28px 32px}.game-shell{padding-bottom:126px}.setup-shell{place-items:center;display:grid}.setup-panel{background:linear-gradient(180deg, #16332ded, #0d1f1cf0), var(--felt);border:6px solid #3f210ef0;border-radius:18px;gap:22px;width:min(880px,100%);padding:26px;display:grid;box-shadow:inset 0 0 0 2px #e6b35375,0 0 0 12px #0f07039e,0 26px 70px #00000094}.online-panel{width:min(960px,100%)}.compact-panel{place-items:start}.auth-panel{min-height:560px}.auth-mode-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.online-form{gap:16px;width:min(480px,100%);display:grid}.error-banner{color:#ffe0c5;background:radial-gradient(circle at 20% 20%,#ffd7aa2e,#0000 30%),#581a12d1;border:1px solid #ffb08d9e;border-radius:999px;width:fit-content;max-width:100%;margin:0;padding:10px 14px;font-weight:850;box-shadow:inset 0 0 16px #ffb56f14,0 10px 18px #0000003d}.lobby-shell{min-height:100vh}.lobby-board{background:radial-gradient(at 72% 18%,#f0b7581a,#0000 34%),linear-gradient(#143731f2,#081b18f5);border-radius:28px;grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:24px;margin-top:18px;padding:24px;display:grid;position:relative;box-shadow:0 0 0 3px #2e1b0cf5,0 0 0 7px #b679306b,0 0 0 13px #0e0704b3,inset 0 0 46px #ffb34714,0 30px 70px #0000008c}.lobby-board:before{content:"";pointer-events:none;border:1px solid #eab55933;border-radius:20px;position:absolute;inset:18px}.create-room-panel,.room-list{z-index:1;position:relative}.create-room-panel{background:linear-gradient(#553013e6,#201108eb);border-radius:18px;align-self:start;gap:16px;padding:20px;display:grid;box-shadow:inset 0 0 0 1px #ffdb8740,0 15px 28px #0000004d}.room-list{align-content:start;gap:14px;display:grid}.room-section{gap:10px;display:grid}.room-section+.room-section{border-top:1px solid #e7b35a2e;margin-top:8px;padding-top:16px}.room-section-header{justify-content:space-between;align-items:center;gap:12px;min-height:34px;display:flex}.room-section-header h3{color:#fff1c4;margin:0;font-size:1rem}.room-section-header span{color:#d7b879;font-size:.8125rem;font-weight:900}.room-section-empty{color:#ead9b8;background:#120c0747;border:1px dashed #dca85257;border-radius:14px;margin:0;padding:14px 16px;font-weight:850;line-height:1.55}.room-list-header,.room-card,.room-heading,.waiting-actions{justify-content:space-between;align-items:center;gap:16px;display:flex}.room-list-header{min-height:58px}.room-card{background:linear-gradient(135deg,#613a19e6,#25160bf0);border:1px solid #ebbd6447;border-radius:16px;min-height:92px;padding:16px 18px;box-shadow:inset 0 0 0 1px #ffe6a41f,0 12px 20px #00000042}.room-card.playing,.room-card.finished{opacity:.72}.room-card.full{opacity:.62}.room-card.waiting{border-color:#8be2bc66;box-shadow:inset 0 0 0 1px #9be0ca33,0 0 24px #59ca9914,0 12px 20px #00000042}.room-card h3,.room-card p,.waiting-note{margin-bottom:0}.room-title-row,.room-waiting-title,.room-card-actions,.room-password-form{align-items:center;display:flex}.room-title-row,.room-waiting-title{flex-wrap:wrap;gap:10px}.room-waiting-title h1{margin-bottom:0}.room-lock-badge{color:#ffe7ad;background:#25160bb8;border:1px solid #ffd68b75;border-radius:999px;justify-content:center;align-items:center;min-height:28px;padding:4px 10px;font-size:.82rem;font-weight:950;display:inline-flex}.room-card-actions{gap:10px}.room-card.password-open{flex-wrap:wrap}.room-password-form{flex:0 0 100%;grid-template-columns:minmax(220px,1fr) auto auto;align-items:end;gap:12px;padding-top:4px;display:grid}.room-card p,.waiting-note{color:#ead9b8}.room-status{color:#fff0bc;background:radial-gradient(circle at 30% 20%,#ffeba852,#0000 26%),#0e2a25d1;border-radius:999px;place-items:center;min-width:76px;min-height:32px;padding:4px 10px;font-size:.82rem;font-weight:900;display:inline-grid}.waiting-room{align-content:start;min-height:560px}.room-heading{align-items:flex-start}.room-heading h1{font-size:clamp(2rem,4vw,3.6rem)}.seat-board{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;display:grid}.seat-token{text-align:center;background:radial-gradient(circle at 50% 42%,#ffdc8b1a,#0000 58%),#0c1f1c99;border:1px dashed #e2b25c61;border-radius:50%;align-content:center;gap:7px;min-height:118px;padding:16px;display:grid;position:relative}.seat-token.occupied{background:radial-gradient(circle at 35% 22%,#ffeeac4d,#0000 28%),linear-gradient(#8c6226,#3b2310 72%);border-style:solid}.seat-token.you{box-shadow:inset 0 0 0 2px #82d3b38f,0 0 22px #5dd6a929}.seat-token span{color:#f5d38b;font-size:.8125rem;font-weight:900}.seat-token strong{color:#fff8db;font-size:1.05rem}.waiting-setup-summary{background:radial-gradient(circle at 10% 18%,#ffde8b21,#0000 30%),#0f0a0657;border:1px solid #e4b8683d;border-radius:16px;grid-template-columns:minmax(140px,.62fr) minmax(130px,.5fr) minmax(230px,1fr) minmax(260px,1.18fr);align-items:stretch;gap:12px;padding:12px;display:grid;box-shadow:inset 0 1px #ffecb014,0 12px 22px #00000038}.waiting-setup-summary>div{background:linear-gradient(#4b2d12b8,#1c120abd);border:1px solid #e0b3622e;border-radius:12px;align-content:center;gap:5px;min-height:82px;padding:12px 14px;display:grid}.waiting-setup-summary span{color:#d6b674;font-size:.8125rem;font-weight:950}.waiting-setup-summary strong{color:#fff1bd;font-size:1.04rem;line-height:1.18}.waiting-setup-summary p{color:#ead8ad;margin:3px 0 0;font-size:.82rem;font-weight:800;line-height:1.45}.setup-summary-status.ready{background:radial-gradient(circle at 18% 24%,#adffd229,#0000 32%),linear-gradient(#19533fb8,#0d211bc7);border-color:#8be2bc61}.setup-summary-status.ready span{color:#dfffea}.setup-summary-status.waiting{border-color:#f1be6f57}.setup-rule-summary{position:relative}.turn-waiting{color:#efd8a6;background:#120c077a;border:1px solid #edc98261;border-radius:999px;place-items:center;min-height:42px;padding:0 14px;font-weight:900;display:inline-grid}.table-error{margin:2px 0 12px auto}.setup-hero{grid-template-columns:minmax(0,1fr) 230px;align-items:stretch;gap:22px;display:grid}.setup-art{background:linear-gradient(135deg,#ffde9014,#0000 28%),linear-gradient(#0b292ae0,#051412f5);border-radius:14px;min-height:180px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ecc26f6b,inset 0 0 42px #ffb55329}.setup-art:before{content:"";background-image:var(--token-sheet);filter:drop-shadow(0 16px 22px #0000006b);opacity:.92;background-position:50%;background-repeat:no-repeat;background-size:430px;position:absolute;inset:-34px -54px}.token-cardback,.token-coin{background-image:var(--token-sheet);filter:drop-shadow(0 12px 18px #00000073);background-repeat:no-repeat;display:block;position:absolute}.token-cardback{background-position:-12px -28px;background-size:300px;border-radius:8px;width:86px;height:118px;bottom:16px;left:22px;transform:rotate(-7deg)}.token-coin{background-position:-126px -20px;background-size:300px;width:96px;height:66px;bottom:18px;right:16px}.eyebrow{color:#e5ba64;letter-spacing:0;text-transform:uppercase;margin:0 0 6px;font-size:.8125rem;font-weight:900}h1,h2,h3,p{margin-top:0}h1{color:#f6d789;font-family:var(--serif-font);text-shadow:0 2px #52300f,0 7px 18px #00000094;margin-bottom:8px;font-size:clamp(2.35rem,5vw,4.6rem);font-weight:900;line-height:1}h2{color:#ffe6a5;font-family:var(--serif-font);margin-bottom:0;font-size:1.12rem;font-weight:900}h3{margin-bottom:4px;font-size:1rem}.setup-copy{color:#ead7ad;max-width:58ch;margin-bottom:0;line-height:1.7}.field{color:#efd18a;gap:8px;font-size:.92rem;font-weight:850;display:grid}.field input,.field select{color:#1e140b;background:linear-gradient(#fff6d6fa,#e8cb8ff5);border:1px solid #683f16b8;border-radius:10px;min-height:46px;padding:0 12px;box-shadow:inset 0 2px 5px #3923122e,0 3px #00000026}.name-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.setup-actions,.action-row,.status-strip,.topbar-actions,.auth-mode-row,.mini-stats,.tag-list{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.topbar{grid-template-columns:minmax(230px,auto) minmax(0,1fr) auto;align-items:center;gap:18px;margin-bottom:12px;padding:0;display:grid;position:relative}.brand-lockup{background:linear-gradient(#482c13f0,#160d07f5);border-radius:12px;align-items:center;gap:13px;min-height:72px;padding:10px 22px 12px 14px;display:flex;position:relative;box-shadow:inset 0 0 0 2px #eabe6194,0 0 0 5px #160a04ad,0 16px 28px #0000006b}.brand-lockup:after{content:"";pointer-events:none;border:1px solid #ffe69a3b;border-radius:8px;position:absolute;inset:8px}.brand-medallion{background-color:#0d302f;background-image:var(--token-sheet);background-position:-117px -102px;background-repeat:no-repeat;background-size:300px;border:1px solid #ffde8bc7;border-radius:50%;flex:none;width:50px;height:50px;box-shadow:inset 0 0 18px #ffb7562e,0 8px 18px #00000052}.topbar h1{margin:0;font-size:1.92rem}.status-strip{justify-content:center;gap:12px}.topbar-actions{justify-content:flex-end}.topbar-actions button{white-space:nowrap}.status-pill{background:radial-gradient(circle at 35% 25%,#ffeeac75,#0000 28%),linear-gradient(#8c6226,#3b2310 72%);border-radius:50%;align-content:center;justify-items:center;min-width:94px;min-height:58px;padding:8px 12px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffde899e,0 0 0 5px #11080440,0 12px 18px #00000061}.status-pill span,.player-panel p,.zone-header span,.muted{color:#f5d38b;font-size:.8125rem;font-weight:900}.status-pill strong{color:#fff8db;text-align:center;margin-top:2px;font-size:.98rem;display:block}.lobby-topbar .status-pill,.game-status-strip .status-pill{background:radial-gradient(circle at 28% 20%,#ffeeac57,#0000 28%),linear-gradient(#7c5222f5,#2f1c0cf5);border-radius:15px;min-width:86px;min-height:48px;padding:7px 11px}.lobby-topbar .status-pill strong,.game-status-strip .status-pill strong{text-overflow:ellipsis;white-space:nowrap;max-width:132px;font-size:.9rem;line-height:1.12;overflow:hidden}.connection-badge{color:#f7dfaa;background:radial-gradient(circle at 24% 25%,#ffefb42e,#0000 30%),#120c079e;border:1px solid #eeca846b;border-radius:999px;align-items:center;gap:8px;min-height:42px;padding:0 13px;font-size:.82rem;font-weight:900;display:inline-flex;box-shadow:inset 0 0 14px #ffc26414,0 9px 15px #00000040}.connection-dot{background:#c9a45d;border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 3px #c9a45d29}.connection-badge.connected .connection-dot{background:#77d9a9;box-shadow:0 0 0 3px #77d9a92e,0 0 16px #77d9a96b}.connection-badge.connecting .connection-dot,.connection-badge.reconnecting .connection-dot{background:#f0c56d;animation:1.15s ease-in-out infinite signalPulse}.connection-badge.offline{color:#ffd7c6;border-color:#ff9d827a}.connection-badge.offline .connection-dot{background:#d66c55;box-shadow:0 0 0 3px #d66c5529,0 0 14px #d66c5557}.sound-control{flex:none;display:inline-flex;position:relative}.sound-toggle{color:#f8e5b7;background:radial-gradient(circle at 34% 22%,#ffefb438,#0000 30%),linear-gradient(#402b16e6,#130d08f0);border-color:#eeca8485;place-items:center;width:42px;min-width:42px;padding:0;display:grid}.sound-toggle.muted{color:#ffd7c6;border-color:#ff9d8280}.sound-icon{filter:drop-shadow(0 1px 1px #1e0c0494);width:23px;height:23px;display:block;overflow:visible}.sound-panel{z-index:40;color:#f8e5b7;background:radial-gradient(circle at 18% 16%,#ffe9a52e,#0000 34%),linear-gradient(#2b1c0efa,#100a06fa);border:1px solid #eeca847a;border-radius:12px;gap:11px;width:min(292px,100vw - 28px);padding:13px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:inset 0 1px #ffeeb51f,0 16px 28px #00000070}.sound-panel-heading,.sound-mute-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.sound-panel-heading span,.sound-select-row span,.sound-slider-row span,.sound-mute-row span{color:#f5d38b;font-size:.8125rem;font-weight:900}.sound-panel-heading strong{color:#fff8db;font-size:.88rem}.sound-slider-row,.sound-select-row{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:10px;display:grid}.sound-select-row select{color:#fff8db;width:100%;min-width:0;font:inherit;background:#100a06d1;border:1px solid #eeca846b;border-radius:8px;outline:none;padding:8px 10px;font-size:.82rem;font-weight:800}.sound-select-row select:focus-visible{border-color:#f8e5b7d1;box-shadow:0 0 0 3px #f2d58a2e}.sound-slider-row input[type=range]{accent-color:#f2d58a;width:100%}.sound-mute-row{min-height:36px;padding:0 2px}.sound-mute-row input[type=checkbox]{accent-color:#3c9d75;width:20px;height:20px;margin:0}.debug-shell{min-height:100vh}.debug-board{background:linear-gradient(#112d28e6,#0c1b18eb),#091512e6;border:1px solid #eeca8457;border-radius:8px;gap:18px;width:min(1380px,100%);margin:8px auto 0;padding:18px;display:grid;box-shadow:inset 0 1px #ffefb41a,0 20px 42px #00000061}.debug-section-heading{border-bottom:1px solid #eeca8433;justify-content:space-between;align-items:end;gap:18px;padding-bottom:14px;display:flex}.debug-section-heading h2{margin:0;font-size:1.42rem}.debug-section-heading>span{color:#f5d38b;font-size:.88rem;font-weight:900}.debug-sound-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.debug-sound-card{background:linear-gradient(#2c1d0ed1,#120b06e0);border:1px solid #eeca843d;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:92px;padding:13px;display:grid;box-shadow:inset 0 1px #ffeeb514,0 10px 20px #00000040}.debug-sound-card.active{border-color:#82d3dbb8;box-shadow:inset 0 1px #ffeeb514,0 0 0 3px #82d3db24,0 12px 24px #00000047}.debug-sound-card-main{gap:7px;min-width:0;display:grid}.debug-term-label{color:#fff8db;text-underline-offset:4px;align-items:center;width:fit-content;max-width:100%;font-size:.98rem;font-weight:950;line-height:1.2;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:1px;display:inline-flex}.debug-sound-card-main>span{color:#e8c982;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.8125rem;font-weight:850;line-height:1.25;overflow:hidden}.debug-play-button{justify-content:center;align-items:center;gap:8px;min-width:94px;display:inline-flex}.debug-play-icon{width:20px;height:20px}.winner-banner{color:#241305;background:linear-gradient(#f1d694f5,#bb8031f5);border-radius:18px;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);align-items:center;gap:18px;margin:8px 0 18px;padding:17px 20px;display:grid;box-shadow:inset 0 0 0 2px #522e0e61,0 18px 32px #0006}.winner-copy span{color:#6c3e12;margin-bottom:5px;font-size:.8125rem;font-weight:950;display:block}.winner-banner h2{color:#2b1707;text-shadow:none}.winner-banner p{color:#4e2f12;margin-bottom:0;font-weight:850}.final-standings{gap:7px;margin:0;padding:0;list-style:none;display:grid}.final-standings li{background:#fff8d85c;border:1px solid #5d36122e;border-radius:10px;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:38px;padding:7px 10px;display:grid}.final-standings li.winner{background:radial-gradient(circle at 8%,#ffeca080,#0000 34%),#fffbe094;border-color:#5a380f52}.final-standings span{color:#815014;font-size:.8125rem;font-weight:950}.final-standings strong{color:#2b1707;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.final-standings em{color:#5a3614;white-space:nowrap;font-style:normal;font-weight:900}.event-notice-layer{z-index:40;pointer-events:none;position:fixed}.event-notice-layer.modal{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:radial-gradient(at 50% 28%,#ffd58029,#0000 38%),#060302a3;place-items:center;padding:24px;display:grid;inset:0}.event-notice-layer.dock{width:min(430px,100vw - 28px);bottom:22px;right:22px}.event-notice{pointer-events:auto;color:#2b1909;background:linear-gradient(90deg,#75411814,#0000 8% 92%,#7541181a),linear-gradient(#fff6d4fc,#debe7cfc);border:4px solid #4e2c11eb;border-radius:13px;grid-template-columns:178px minmax(0,1fr);gap:20px;width:min(820px,100%);max-height:calc(100vh - 48px);padding:22px 58px 22px 22px;animation:.24s ease-out eventModalIn;display:grid;position:relative;overflow:auto;box-shadow:inset 0 0 0 1px #ffe8a18a,0 0 0 10px #0e070380,0 34px 88px #000000a8}.event-notice.tax{border-color:#754d1af2}.event-notice.bust{background:radial-gradient(circle at 16% 20%,#be322033,#0000 28%),linear-gradient(#ffedd5fc,#da9e70fc);border-color:#7d2418f2;animation:.24s ease-out eventModalIn,.56s cubic-bezier(.36,.07,.19,.97) .13s bustShake}.turn-notice-layer{z-index:45;pointer-events:none;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(at 50% 30%,#69d2aa2e,#0000 36%),#0603026b;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.turn-notice{pointer-events:auto;color:#2b1909;background:radial-gradient(circle at 12% 12%,#ebffde47,#0000 30%),linear-gradient(#fff5cffc,#d2b574fc);border:3px solid #7bd3b1bd;border-radius:10px;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:18px;width:min(580px,100%);padding:18px 20px;animation:.22s ease-out turnNoticeIn;display:grid;box-shadow:inset 0 0 0 1px #fff6ccb3,0 0 0 8px #08050357,0 28px 70px #0009}.turn-notice-mark{background:radial-gradient(circle at 35% 25%,#ffffe6c2,#0000 30%),linear-gradient(#5fb88d,#155f48);border:1px solid #355d4747;border-radius:50%;place-items:center;width:64px;height:64px;display:grid;box-shadow:0 0 0 4px #ffeeb194,0 12px 24px #20150847}.turn-notice-mark .game-icon{filter:drop-shadow(0 2px 2px #0f241a59);width:34px;height:34px}.turn-notice-copy{min-width:0}.turn-notice-copy h2{color:#201106;font-family:var(--serif-font);margin:0 0 8px;font-size:2.35rem;line-height:1}.turn-notice-copy>p:not(.eyebrow){color:#4a3017;margin:0;font-size:1rem;font-weight:850;line-height:1.5}.turn-notice-copy strong{color:#1f1107;font-weight:950}.turn-notice-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;display:flex}.turn-notice-term{color:#4a3017;white-space:nowrap;background:#fffae294;border:1px solid #58411a2e;border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:30px;padding:5px 10px;font-size:.84rem;font-weight:900;line-height:1;display:inline-flex}.turn-notice-term .game-icon{width:1.08em;height:1.08em}.turn-notice-close{white-space:nowrap;min-width:112px}.event-flash{pointer-events:none;border:1px solid #65381229;border-radius:8px;position:absolute;inset:11px}.event-notice.bust .event-flash{border-color:#9e2a1947;animation:.9s ease-in-out 2 warningPulse;box-shadow:inset 0 0 32px #b72e1c2e,0 0 38px #b72e1c3d}.event-card-preview{z-index:1;place-items:center;display:grid;position:relative}.event-card-preview .game-card{width:168px;min-height:0}.event-copy{z-index:1;min-width:0;position:relative}.event-copy h2{color:#2b1707;font-family:var(--serif-font);text-shadow:0 1px #fff6d5b3;margin:0 0 10px;font-size:clamp(2rem,5vw,3.5rem);line-height:1}.event-copy>p:not(.eyebrow){color:#513318;margin-bottom:16px;font-weight:850;line-height:1.55}.event-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.event-detail-list{background:#fffbe27a;border:1px solid #5c35122e;border-radius:8px;min-height:112px;padding:13px}.event-detail-list h3{color:#2b1707;margin-bottom:8px}.event-detail-list p,.event-detail-list ul{color:#4a3017;margin:0;font-weight:800;line-height:1.48}.event-detail-list ul{gap:5px;padding-left:18px;display:grid}.event-close{z-index:2;min-width:74px;min-height:38px;padding:0 12px;position:absolute;top:14px;right:14px}.event-notice-layer.dock .event-notice{border-width:3px;border-radius:12px;grid-template-columns:82px minmax(0,1fr);gap:12px;width:100%;max-height:min(420px,100vh - 44px);padding:14px 48px 14px 14px;animation:.22s ease-out eventDockIn;box-shadow:inset 0 0 0 1px #ffe8a173,0 18px 46px #0000008a}.event-notice-layer.dock .event-card-preview .game-card{border-width:2px;width:76px;min-height:106px;padding:5px}.event-notice-layer.dock .event-card-preview .card-body{display:none}.event-notice-layer.dock .event-card-preview .card-illustration{min-height:92px}.event-notice-layer.dock .event-copy h2{margin-bottom:6px;font-size:1.45rem}.event-notice-layer.dock .event-copy>p:not(.eyebrow){margin-bottom:9px;font-size:.9rem}.event-notice-layer.dock .event-detail-grid{grid-template-columns:1fr;gap:8px}.event-notice-layer.dock .event-detail-list{min-height:0;padding:9px}.event-notice-layer.dock .event-detail-list h3{margin-bottom:4px;font-size:.9rem}.event-notice-layer.dock .event-detail-list li,.event-notice-layer.dock .event-detail-list p{font-size:.82rem}.event-notice-layer.dock .event-close{text-indent:999px;width:34px;min-width:34px;min-height:34px;padding:0;top:10px;right:10px;overflow:hidden}.event-notice-layer.dock .event-close:after{content:"×";text-indent:0;place-items:center;font-size:1.1rem;display:grid;position:absolute;inset:0}.action-panel{background:radial-gradient(at 15% 24%,#ffd57e1f,#0000 34%),linear-gradient(#362211b8,#100a07a8);border:1px solid #ecbe6638;border-radius:18px;margin:0 0 12px;padding:14px 18px 16px;animation:.42s ease-out tablePulse;display:block;position:relative;box-shadow:inset 0 0 0 1px #ffe8a614,0 12px 22px #00000047}.action-panel:before{z-index:0;content:"";pointer-events:none;border:1px solid #ffe2931a;border-radius:13px;position:absolute;inset:7px}.action-copy{z-index:1;position:relative}.action-panel h2{background:linear-gradient(#b47d31,#583212);border-radius:999px;place-items:center;min-width:118px;min-height:34px;margin:0 0 8px;padding:4px 17px;display:inline-grid;box-shadow:inset 0 0 0 1px #ffdf8ba6,0 8px 18px #00000057}.action-kicker{color:#f7dda5;background:#0e0a0675;border:1px solid #efcf8752;border-radius:999px;width:fit-content;margin:0 0 7px;padding:4px 11px;font-size:.82rem;font-weight:900}.action-panel.is-your-turn .action-kicker{color:#dfffea;background:#18563e7a;border-color:#8be2bc9e;box-shadow:0 0 18px #60d7a11f}.action-panel p:not(.action-kicker),.turn-status-panel>p:not(.action-kicker){color:#ead9b8;text-shadow:0 2px 8px #000000a6;max-width:78ch;margin:0;line-height:1.6}.final-round-strip{background:radial-gradient(circle at 12% 18%,#fff1a547,#0000 34%),linear-gradient(#61390fe0,#261608eb);border:1px solid #ffd97480;border-radius:999px;flex-wrap:wrap;align-items:center;gap:8px;width:fit-content;max-width:100%;margin-top:10px;padding:6px 8px;display:inline-flex;box-shadow:inset 0 1px #fff4c429,0 8px 18px #00000047}.final-round-strip.active{background:radial-gradient(circle at 12% 18%,#b6ffd833,#0000 34%),linear-gradient(#1c573ddb,#0c231beb);border-color:#8be2bc80}.final-round-strip span,.final-round-strip strong,.final-round-strip em{white-space:nowrap;border-radius:999px;align-items:center;min-height:28px;font-size:.8125rem;font-style:normal;font-weight:950;line-height:1;display:inline-flex}.final-round-strip span{color:#ffe7a0;background:#ffd35e24;padding:0 9px}.final-round-strip strong{color:#fff7d5;padding:0 6px}.final-round-strip em{color:#f6e1a7;background:#0f0a064d;border:1px solid #ffe59638;padding:0 9px}.final-round-strip.active em{color:#dfffea;border-color:#8be2bc4d}.trade-status-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.trade-progress-badge{background:radial-gradient(circle at 18% 22%,#ffee9e3d,#0000 32%),linear-gradient(#583612db,#23170be6);border:1px solid #ffda807a;border-radius:999px;align-items:center;gap:8px;width:fit-content;max-width:100%;margin:0;padding:6px 9px;display:inline-flex;box-shadow:inset 0 1px #fff4c429,0 8px 16px #00000040}.trade-progress-badge strong,.trade-progress-badge span{white-space:nowrap;border-radius:999px;align-items:center;min-height:28px;font-size:.8125rem;font-weight:950;display:inline-flex}.trade-progress-badge strong{color:#ffe6a3;background:#ffd87129;padding:0 10px}.trade-progress-badge span{color:#e8f7cb;background:#24674461;padding:0 9px}.trade-progress-badge.full{opacity:.88;border-color:#d2b47652}.trade-progress-badge.full span{color:#e5d5b2;background:#4b351f6b}.trade-queue-badge{background:radial-gradient(circle at 14% 18%,#91d2ea29,#0000 34%),linear-gradient(#18323ac7,#0c1416d6);border:1px solid #8cc6de61;border-radius:999px;flex-wrap:wrap;align-items:center;gap:7px;width:fit-content;max-width:100%;margin:0;padding:6px 8px;display:inline-flex;box-shadow:inset 0 1px #e6fbff1f,0 8px 16px #0000003d}.trade-queue-badge.active{background:radial-gradient(circle at 14% 18%,#8fe8bb2b,#0000 34%),linear-gradient(#174533c2,#0b1c17db);border-color:#8be2bc80}.trade-queue-badge>span,.trade-queue-badge strong,.trade-queue-names em{white-space:nowrap;border-radius:999px;align-items:center;min-height:28px;font-size:.8125rem;font-style:normal;font-weight:950;line-height:1;display:inline-flex}.trade-queue-badge>span{color:#bfefff;background:#74b3cc24;padding:0 9px}.trade-queue-badge strong{color:#effcff;padding:0 8px}.trade-queue-names{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.trade-queue-names em{color:#d8f5ff;text-overflow:ellipsis;background:#f0fdff14;border:1px solid #daf4ff29;max-width:96px;padding:0 8px;overflow:hidden}.trade-queue-names em.current{color:#e7ffef;background:#5ec58f2e;border-color:#8be2bc70}.risk-strip{white-space:nowrap;width:fit-content;max-width:100%;box-shadow:none;background:0 0;border:0;border-radius:0;flex-wrap:wrap;flex:none;align-items:center;gap:8px;margin-top:10px;padding:0;display:flex;overflow:visible}.risk-strip.danger{border-color:#efb7636b}.risk-strip.safe{border-color:#8be2bc5c}.risk-label-pill,.risk-keep,.risk-swords{border-radius:999px;align-items:center;gap:5px;min-height:28px;font-size:.8125rem;font-weight:950;display:inline-flex}.risk-label-pill{color:#f2c76c;background:radial-gradient(circle at 16% 22%,#ffe29629,#0000 30%),#0c090680;border:1px solid #e7b85f47;padding:0 10px}.risk-empty-text{color:#dfffea}.risk-color-text{font-weight:950}.risk-color-text.yellow{color:#ffd65a}.risk-color-text.blue{color:#73c7ff}.risk-color-text.green{color:#8be2bc}.risk-color-text.red{color:#ff9a83}.risk-color-text.black{color:#d8d1c4}.risk-keep{color:#f5ddac;background:#120c077a;border:1px solid #edc98242;padding:0 10px}.risk-keep.danger{color:#ffd9bd;background:radial-gradient(circle at 20% 22%,#ffd19f2e,#0000 30%),#5c1c1394;border-color:#ef977a7a}.risk-keep.safe{color:#dfffea;background:radial-gradient(circle at 20% 22%,#d5ffe724,#0000 30%),#14493880;border-color:#8be2bc59}.risk-swords{color:#f5ddac;background:#120c077a;border:1px solid #edc98242;padding:0 10px}.harbor-header-row{justify-content:center;align-items:center;gap:10px;width:100%;max-width:100%;margin:0 auto 14px;display:flex;overflow:auto hidden}.harbor-header-row .zone-header,.harbor-header-row .risk-strip{margin:0}.bottom-action-dock{z-index:35;min-height:104px;padding:28px 32px calc(14px + env(safe-area-inset-bottom));box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(#120a0600 0%,#120a06c7 48%,#0b0705f5 100%);border:0;border-radius:0;justify-content:center;align-items:center;gap:12px;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-action-dock.is-your-turn{background:linear-gradient(#12180f00 0%,#12180fc7 48%,#0a0805f5 100%)}.bottom-action-status{gap:4px;min-width:min(320px,38vw);display:grid}.bottom-action-status span{color:#d9b66d;font-size:.8125rem;font-weight:950}.bottom-action-status strong{color:#fff3c8;font-size:1rem;line-height:1.22}.bottom-action-resource{left:32px;bottom:calc(18px + env(safe-area-inset-bottom));color:#f4ddaddb;white-space:nowrap;pointer-events:none;text-shadow:0 2px 12px #000000b8;align-items:center;gap:10px;min-width:0;padding:0;font-size:.84rem;font-weight:950;line-height:1;display:inline-flex;position:absolute}.bottom-action-resource span{align-items:center;gap:4px;line-height:1;display:inline-flex}.bottom-action-resource-prefix{color:#e5c583c7}.bottom-action-buttons{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;width:100%;min-width:0;display:flex}.bottom-action-buttons .turn-waiting{min-width:0;min-height:auto;box-shadow:none;color:#f4ddad;pointer-events:none;text-shadow:0 2px 12px #000000b8;background:0 0;border:0;border-radius:0;padding:0;font-size:.95rem;line-height:1.35}.bottom-action-buttons .empty-action-prompt{text-align:center;width:min(620px,100%);margin:0 auto;display:block}.bottom-action-buttons button{min-width:94px;min-height:52px}.player-command-row{align-items:stretch;gap:14px;margin:0 0 14px;display:flex}.player-command-row>.deck-status-panel{flex:0 0 286px}.player-summary-rail{scrollbar-width:thin;scrollbar-color:#e2b25c85 #0c080547;flex-wrap:nowrap;flex:auto;gap:10px;min-width:0;margin:0;padding:0 2px 8px;display:flex;overflow:auto hidden}.player-summary-chip{background:linear-gradient(135deg,#533216e0,#1d120ae6);border:1px solid #ebbd643d;border-radius:14px;flex:0 0 clamp(330px,30vw,430px);gap:10px;min-width:0;padding:12px 14px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffe6a414,0 10px 18px #00000040}.player-summary-chip.active{background:linear-gradient(135deg,#18533feb,#1e2517eb);border-color:#8be2bc61;box-shadow:inset 0 0 0 1px #a4edcb3d,0 0 22px #65d1a91a,0 10px 18px #00000040}.player-summary-chip.you{border-color:#82d3b380}.player-summary-chip.trader{background:linear-gradient(135deg,#70431af0,#262315f0);border-color:#efcb846b}.player-summary-chip.ready,.player-summary-chip.final{border-color:#f1d27d94;box-shadow:inset 0 0 0 1px #ffe6a433,0 0 24px #f1bc581f,0 10px 18px #00000040}.player-summary-chip.blocked{border-color:#eeaa6c70}.summary-main{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.summary-status{color:#f2c76c;white-space:nowrap;background:#0c090642;border:1px solid #f2c76c42;border-radius:999px;align-items:center;min-height:24px;padding:2px 8px;font-size:.8125rem;font-weight:950;display:inline-flex}.summary-main strong{color:#fff5d2;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.98rem;line-height:1.18;display:block;overflow:hidden}.summary-resources{gap:8px;display:grid}.summary-resource-group{grid-template-columns:max-content minmax(0,1fr);align-items:center;gap:2px 5px;min-width:0;min-height:24px;display:grid}.summary-resource-group h4{color:#f4d99f;text-align:left;white-space:nowrap;margin:0;font-size:.8125rem;font-weight:950;line-height:1.1}.summary-resource-icons{flex-wrap:wrap;place-content:flex-start;align-items:center;gap:2px;min-height:22px;display:flex}.summary-resource-icon{width:20px;height:20px}.summary-target-pill{color:#ead7ad;text-overflow:ellipsis;white-space:nowrap;background:#0c09064d;border:1px solid #ddb2682e;border-radius:999px;align-items:center;width:fit-content;max-width:100%;min-height:26px;padding:3px 9px;font-size:.8125rem;font-weight:900;display:inline-flex;overflow:hidden}.player-summary-chip.ready .summary-target-pill,.player-summary-chip.final .summary-target-pill{color:#ffe6a5;border-color:#f1d27d52}.player-summary-chip.blocked .summary-target-pill{color:#ffd1a1;border-color:#eeaa6c4d}.summary-assets{gap:6px;display:grid}.summary-asset-group{gap:5px;display:grid}.summary-asset-group h4{color:#f5d38b;white-space:nowrap;margin:0;font-size:.8125rem;font-weight:950;line-height:1.1}.summary-asset-list{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.summary-empty-asset{color:#efd7a394;align-items:center;min-height:24px;font-size:.8125rem;font-weight:850;display:inline-flex}.summary-asset-pill{color:#f4d99f;background:#0d0a0761;border:1px solid #ddb26838;border-radius:999px;align-items:center;gap:6px;max-width:100%;min-height:28px;padding:3px 8px;font-size:.8125rem;font-weight:900;display:inline-flex}.summary-asset-pill span,.summary-asset-pill em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.summary-asset-pill span{color:#fff1bd;align-items:center;gap:5px;display:inline-flex}.summary-asset-pill em{color:#d8c39a;font-style:normal;font-weight:820}.summary-asset-pill.person-asset{background:#22365f52;border-color:#9dbcf547}.summary-asset-pill.expedition-asset{background:#58371461;border-color:#efb86352}.deck-display{filter:drop-shadow(0 20px 18px #0000007a);flex:none;width:86px;height:118px;position:relative;transform:rotate(-3deg)}.deck-display:before,.deck-display:after,.deck-card{background-color:#0d302f;background-image:var(--token-sheet);background-position:-13px -30px;background-repeat:no-repeat;background-size:300px;border:1px solid #f4d591c7;border-radius:9px;display:block;position:absolute;inset:0}.deck-display:before{content:"";opacity:.72;transform:translate(12px,7px)rotate(5deg)}.deck-display:after{content:"";opacity:.9;transform:translate(6px,3px)rotate(2deg)}.deck-card{z-index:1}.deck-count{z-index:2;color:#fff1c4;text-align:center;background:radial-gradient(circle at 35% 25%,#fff1b46b,#0000 28%),#1d1710;border:1px solid #ffe5a8d1;border-radius:999px;min-width:38px;padding:6px 8px;font-size:.8125rem;font-weight:900;position:absolute;bottom:-8px;right:-12px;box-shadow:0 8px 13px #0006}.side-rail{z-index:1;align-content:start;gap:14px;display:grid;position:relative}.turn-status-panel{background:radial-gradient(at 15% 24%,#ffd57e21,#0000 34%),linear-gradient(#362211c7,#100a07d1);border:1px solid #ecbe663d;border-radius:16px;gap:9px;padding:15px 16px 16px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffe8a617,0 14px 24px #0000004d}.turn-status-panel:before{content:"";pointer-events:none;border:1px solid #ffe2931a;border-radius:12px;position:absolute;inset:7px}.turn-status-panel>*{z-index:1;position:relative}.turn-status-panel.is-your-turn .action-kicker{color:#dfffea;background:#18563e7a;border-color:#8be2bc9e;box-shadow:0 0 18px #60d7a11f}.turn-status-panel h2{background:linear-gradient(#b47d31,#583212);border-radius:999px;place-items:center;width:fit-content;min-width:118px;min-height:34px;margin:0;padding:4px 17px;display:inline-grid;box-shadow:inset 0 0 0 1px #ffdf8ba6,0 8px 18px #00000057}.deck-status-panel{background:radial-gradient(circle at 16% 14%,#ffe19324,#0000 34%),linear-gradient(#4c2e14e0,#180f09f0);border:1px solid #ebbd6447;border-radius:16px;gap:13px;padding:16px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffe8a614,0 14px 24px #0000004d}.deck-status-visual{align-items:center;gap:14px;display:flex}.deck-status-visual .deck-display{filter:drop-shadow(0 14px 14px #00000070);width:64px;height:88px;margin:0}.deck-status-visual span{color:#d6b674;font-size:.8125rem;font-weight:950;display:block}.deck-status-visual strong{color:#fff1bd;margin-top:3px;font-size:1.3rem;line-height:1.05;display:block}.deck-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.deck-status-grid span{color:#e9d3a6;text-align:center;background:#0d0a0761;border:1px solid #e2b25c33;border-radius:10px;place-items:center;gap:3px;min-height:58px;padding:7px 6px;font-size:.8125rem;font-weight:900;display:grid}.deck-status-grid strong{color:#fff4c9;font-size:1.08rem}.deck-status-panel p{color:#ead8ad;margin:0;font-size:.8125rem;font-weight:820;line-height:1.5}.board-grid{background:radial-gradient(at 68% 22%,#c99a4514,#0000 35%),linear-gradient(#173731f0,#0a1e1af2);border-radius:28px;grid-template-columns:minmax(0,1fr) 300px;gap:24px;padding:20px 22px;display:grid;position:relative;box-shadow:0 0 0 3px #2e1b0cf5,0 0 0 7px #b679306b,0 0 0 13px #0e0704b3,inset 0 0 42px #ffb34714,0 30px 70px #0000008c}.board-grid:before{content:"";pointer-events:none;background:linear-gradient(90deg,#e1a64e3d 0 1px,#0000 1px calc(100% - 1px),#e1a64e3d calc(100% - 1px)),linear-gradient(#e1a64e2e 0 1px,#0000 1px calc(100% - 1px),#e1a64e2e calc(100% - 1px)),radial-gradient(circle at 76% 34%,#ecc26f0f,#0000 24%);border-radius:20px;position:absolute;inset:18px}.board-grid:after{z-index:0;content:"";pointer-events:none;opacity:0;border-radius:22px;position:absolute;inset:14px}.game-shell.event-afterglow-tax .board-grid:after{background:radial-gradient(circle at 76% 28%,#ffdc833d,#0000 28%),radial-gradient(circle at 24% 70%,#ffbe5b29,#0000 34%);animation:1.4s ease-out tableTaxAfterglow}.game-shell.event-afterglow-bust .board-grid:after{background:radial-gradient(circle at 50% 28%,#cf3f274d,#0000 32%),radial-gradient(circle at 22% 72%,#ff975e29,#0000 34%);animation:1.1s ease-out tableBustAfterglow}.table-zone{z-index:1;align-content:start;gap:22px;display:grid;position:relative}.zone{min-height:268px;padding:4px 4px 18px;position:relative}.zone.empty-zone{min-height:104px}.zone.empty-zone .empty-state{border-radius:14px;min-height:60px;margin:6px 0 0}.zone:before{content:"";background:linear-gradient(90deg,#0000,#e8b85f47,#0000);height:1px;position:absolute;bottom:10px;left:8px;right:8px}.zone-header{color:#fff0bc;background:linear-gradient(#b5853d,#563316);border-radius:999px;justify-content:center;align-items:center;gap:12px;width:max-content;max-width:100%;margin:0 auto 14px;padding:6px 18px 7px;display:flex;position:relative;box-shadow:inset 0 0 0 1px #ffe69c9e,0 8px 18px #0000005c}.zone-header h2{color:#1d1108;text-shadow:0 1px #ffe6a06b;font-size:1.12rem}.zone-header span{color:#fff0bc}.card-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));align-items:start;gap:20px;display:grid}.card-with-action{justify-items:center;gap:10px;display:grid}.card-with-action>button{width:auto;min-width:116px;max-width:244px}.pending-ship-actions{flex-wrap:wrap;justify-content:center;gap:8px;width:min(100%,244px);display:flex}.pending-ship-actions button{flex:96px;min-width:96px;min-height:46px}.card-with-action>button:disabled,.pending-ship-actions button:disabled{opacity:.86;color:#f8e7be;text-shadow:0 1px 2px #140a04c2;background:radial-gradient(circle at 32% 20%,#ffedb038,#0000 28%),linear-gradient(#70522beb,#3e2b18eb);border-color:#f0cd897a;box-shadow:inset 0 1px #fff4be24,inset 0 -2px #1f120957,0 7px 14px #00000040}.trade-bonus-note{color:#f8f2c4;text-shadow:0 1px 2px #092118a6;background:radial-gradient(circle at 22% 16%,#ffeea666,#0000 34%),linear-gradient(#25664af0,#113a2dfa);border:1px solid #ffe38f94;border-radius:999px;margin:-2px 0;padding:5px 11px 6px;font-size:.8125rem;font-weight:950;line-height:1;box-shadow:inset 0 1px #ffffdd38,0 7px 16px #0000003d}.expedition-action-note{color:#f1d8a7;text-align:center;text-shadow:0 1px 2px #0c0703a3;background:radial-gradient(circle at 16% 18%,#ffeba42e,#0000 32%),#150f0980;border:1px solid #d5b26f52;border-radius:10px;width:min(100%,244px);margin:-2px 0 0;padding:7px 10px;font-size:.8125rem;font-weight:850;line-height:1.35}.expedition-action-note.ready{color:#ddffe8;background:radial-gradient(circle at 16% 18%,#d6ffe424,#0000 32%),#15453475;border-color:#8be2bc57}.expedition-action-note.waiting{color:#f0d6aa}.expedition-action-note.blocked{color:#ffd9b4;background:radial-gradient(circle at 16% 18%,#ffc48e1f,#0000 32%),#5127146b;border-color:#e097684d}.game-card{aspect-ratio:5/7;color:#2a1a0c;background:linear-gradient(145deg,#fff9e5fc,#e1c482fa),#fff2c3;border:4px solid #b88b4b;border-radius:9px;grid-template-rows:minmax(0,1fr) auto;gap:10px;width:min(100%,246px);min-height:344px;padding:10px;display:grid;position:relative;overflow:visible;transform:rotate(-.4deg);box-shadow:inset 0 0 22px #5c32121f,inset 0 3px #ffffff3d,0 18px 24px #00000061}.card-with-action:nth-child(2n) .game-card{transform:rotate(.8deg)}.card-with-action:nth-child(3n) .game-card{transform:rotate(-1deg)}.game-card:after{content:"";pointer-events:none;background:linear-gradient(115deg,#ffffff29,#0000 18% 78%,#683e141f),radial-gradient(at 50% 115%,#54290e2e,#0000 48%);border-radius:5px;position:absolute;inset:0}.card-illustration{background:radial-gradient(circle at 50% 24%,#ffdc882e,#0000 42%),linear-gradient(#0c3a3e,#071d1d);border:1px solid #633a124d;border-radius:7px 7px 5px 5px;min-height:166px;position:relative;overflow:hidden;box-shadow:inset 0 0 22px #00000061,inset 0 1px #ffffff26}.card-illustration:after{content:"";pointer-events:none;background:linear-gradient(#ffecad0d,#0000 46%,#00000038),radial-gradient(circle at 50% 42%,#0000 48%,#0000004d);position:absolute;inset:0}.card-body{z-index:1;gap:8px;padding:0 3px 2px;display:grid;position:relative}.game-card p{color:#4a3219;overflow-wrap:anywhere;margin-bottom:0;line-height:1.35;position:relative}.card-title-row{justify-content:flex-start;align-items:center;gap:8px;min-width:0;display:flex;position:relative}.card-title-row h3{align-items:center;gap:8px;min-width:0;display:inline-flex}.card-art-image{object-fit:contain;object-position:center;width:100%;height:100%;display:block;position:absolute;inset:0;transform:none}.card-art-image.ship{object-position:center 48%}.card-art-image.person{object-position:center 35%}.card-art-image.expedition{object-position:center 52%}.card-art-image.tax{object-position:center 36%}.card-art-image.coin{object-position:center 48%}.game-card h3{color:#241509;font-family:var(--serif-font);overflow-wrap:anywhere;margin:0;font-size:1.08rem;font-weight:900;line-height:1.18;position:relative}.color-seal{color:#fff8df;border:1px solid #321f0b47;border-radius:50%;place-items:center;min-width:28px;min-height:28px;font-size:.8125rem;font-weight:900;display:inline-grid;box-shadow:inset 0 2px 8px #ffffff2e}.color-seal.yellow{background:#bd8e16}.color-seal.blue{background:#236f9f}.color-seal.green{background:#347f4c}.color-seal.red{background:#aa4438}.color-seal.black{background:#202020}.ship.yellow{border-color:#e1b82d}.ship.blue{border-color:#2f92c7}.ship.green{border-color:#55a366}.ship.red{border-color:#c75c47}.ship.black{border-color:#252525}.person{border-color:#8c73ad}.expedition{border-color:#bf8034}.tax{border-color:#a53f30}.coin{border-color:#e1b82d}.card-meta{color:#25180c;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;width:100%;font-size:.82rem;font-weight:900;display:flex;position:relative}.card-icon-token{isolation:isolate;width:fit-content;color:inherit;cursor:help;justify-content:center;align-items:center;gap:4px;line-height:1;display:inline-flex;position:relative}.card-icon-value{color:#2b1909;text-align:center;text-shadow:0 1px #ffefb880;min-width:100%;font-size:1.18rem;font-weight:1000;line-height:1;display:block}.card-meta .card-icon-token{flex-direction:column;align-items:center;gap:3px;min-width:44px}.game-card .card-token-icon{vertical-align:middle;width:34px;height:34px}.card-meta .card-token-icon{width:38px;height:38px}.requirement-list .card-token-icon{vertical-align:middle;width:28px;height:28px}.game-card .stat-icon,.game-card .requirement-icon,.game-card .person-role-icon{vertical-align:middle;width:22px;height:22px}.person-name-inline{vertical-align:middle;align-items:center;gap:6px;line-height:1;display:inline-flex}.person-name-inline .person-role-icon{flex:none}.requirement-list{white-space:nowrap;vertical-align:middle;flex-wrap:nowrap;align-items:center;gap:0;display:inline-flex}.requirement-entry{white-space:nowrap;flex:none;align-items:center;gap:2px;line-height:1;display:inline-flex}.requirement-icon{width:1.08em;height:1.08em}.requirement-separator{color:#7b5427;margin:0 1px;font-weight:900}.term-pill,.card-icon-token{isolation:isolate;cursor:help;position:relative}.game-tooltip-popup{z-index:80;color:#fff2c3;max-width:min(280px,100vw - 32px);font-family:var(--serif-font);text-align:left;white-space:pre-line;pointer-events:none;background:radial-gradient(circle at 18% 10%,#ffe29a21,#0000 34%),#1e1209f5;border:1px solid #ffdc9161;border-radius:8px;padding:9px 11px;font-size:.8125rem;font-weight:850;line-height:1.45;animation:.14s ease-out game-tooltip-in;box-shadow:inset 0 0 18px #ffca6f14,0 12px 24px #00000061}.game-tooltip-popup[data-ending-style]{animation:.1s ease-in forwards game-tooltip-out}.game-tooltip-arrow{place-items:center;width:12px;height:12px;display:grid}.game-tooltip-arrow:before{content:"";background:#1e1209f5;width:10px;height:10px;transform:rotate(45deg);box-shadow:0 0 0 1px #ffdc913d}@keyframes game-tooltip-in{0%{opacity:0;transform:translateY(4px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes game-tooltip-out{0%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(4px)scale(.98)}}.term-pill:focus-visible,.card-icon-token:focus-visible{outline-offset:3px;outline:2px solid #82d3dbeb}.stat-icon{vertical-align:middle;width:17px;height:17px}.empty-state{color:#efd7a3c7;background:radial-gradient(circle,#e1ab521f,#0000 48%);border:1px dashed #d4a1476b;border-radius:18px;place-items:center;min-height:138px;margin:8px 0;font-weight:850;display:grid}.log-panel{color:#38210e;background:linear-gradient(90deg,#57301321,#0000 8% 92%,#57301324),linear-gradient(#f0d6a0,#c99f5a);border-radius:7px;align-self:start;min-height:380px;padding:42px 22px 28px;position:relative;box-shadow:inset 0 0 28px #5c2f0d2e,0 18px 28px #0000006b}.game-shell.event-afterglow-tax .log-panel{animation:1s ease-out logSealFlash}.game-shell.event-afterglow-bust .log-panel{animation:.62s ease-out logBustRattle}.log-panel:before,.log-panel:after{content:"";background:linear-gradient(#8d5520,#3c1f0d);border-radius:999px;height:22px;position:absolute;left:-8px;right:-8px;box-shadow:inset 0 0 0 1px #efcd8247,0 7px 14px #00000047}.log-panel:before{top:0}.log-panel:after{bottom:0}.log-heading{justify-items:center;gap:2px;display:grid;position:relative}.log-heading span{color:#76501f;letter-spacing:.08em;font-size:.8125rem;font-weight:950}.log-panel h2{color:#3c210b;text-align:center;text-shadow:0 1px #ffefc480;margin:0}.latest-log{background:radial-gradient(circle at 12% 14%,#fff4b973,#0000 26%),linear-gradient(#fff2c49e,#9961252e);border:1px solid #572f0e42;border-radius:12px;gap:6px;margin:18px 0 16px;padding:13px 14px 14px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #fff7d547,0 10px 18px #532a0a29}.latest-log:after{content:"";opacity:.62;border:2px solid #7e301733;border-radius:50%;width:34px;height:34px;position:absolute;bottom:9px;right:12px;transform:rotate(-12deg)}.latest-log span{color:#7d4316;font-size:.8125rem;font-weight:950}.latest-log p{color:#2d1a09;margin:0;font-size:.98rem;font-weight:850;line-height:1.5}.log-history{color:#41270f;gap:9px;margin:0;padding-left:24px;line-height:1.48;display:grid}.log-history li::marker{color:#885318;font-weight:950}.log-empty{color:#41270fb3;text-align:center;margin:18px 0 0;font-weight:850}.players-grid{z-index:1;background:linear-gradient(#4a2812b8,#190d06db);border-radius:22px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:22px;padding:14px;display:grid;position:relative;box-shadow:inset 0 0 0 2px #dea14d42,0 16px 28px #0000005c}.player-panel{background:linear-gradient(135deg,#6b411ceb,#2b180cf5);border-radius:16px;gap:12px;min-height:146px;padding:14px;display:grid;position:relative;box-shadow:inset 0 0 0 1px #ffda8d40,0 10px 20px #00000052}.player-panel:before{content:"";pointer-events:none;border:1px solid #ffd98929;border-radius:11px;position:absolute;inset:8px}.player-panel.active{background:linear-gradient(135deg,#1f5e49f0,#212a1afa);box-shadow:inset 0 0 0 1px #a4edcb5c,0 0 24px #65d1a924,0 10px 20px #00000052}.player-panel.you{box-shadow:inset 0 0 0 2px #82d3b36b,0 0 24px #65d1a91f,0 10px 20px #00000052}.player-panel.trader{background:linear-gradient(135deg,#804c1df0,#302a18f5)}.player-panel.you.trader{background:linear-gradient(135deg,#7d581ef5,#1c4634f5)}.player-summary-chip.event-tax-gain{border-color:#ffe07ebd;animation:1.18s ease-out summaryCoinAfterglow}.player-summary-chip.event-tax-pay{border-color:#ffac6ea3;animation:1.18s ease-out summaryTaxPayAfterglow}.player-summary-chip.event-bust-active{border-color:#e85e40bd;animation:.82s ease-out summaryBustAfterglow}.player-summary-chip.event-bust-jester{border-color:#ffd77bbd;animation:1.18s ease-out summaryJesterAfterglow}@keyframes eventModalIn{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes eventDockIn{0%{opacity:0;transform:translate(18px,18px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes turnNoticeIn{0%{opacity:0;transform:translateY(16px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes bustShake{10%,90%{transform:translate(-1px)rotate(-.2deg)}20%,80%{transform:translate(2px)rotate(.3deg)}30%,50%,70%{transform:translate(-4px)rotate(-.4deg)}40%,60%{transform:translate(4px)rotate(.4deg)}}@keyframes warningPulse{0%,to{opacity:.45}50%{opacity:1}}@keyframes signalPulse{0%,to{opacity:.78;transform:scale(1)}50%{opacity:1;transform:scale(1.42)}}@keyframes tablePulse{0%{filter:brightness(1.12);transform:translateY(-1px)}to{filter:brightness();transform:translateY(0)}}@keyframes tableTaxAfterglow{0%{opacity:.95;transform:scale(.992)}to{opacity:0;transform:scale(1)}}@keyframes tableBustAfterglow{0%{opacity:.92;transform:translate(-3px)rotate(-.15deg)}18%{transform:translate(3px)rotate(.18deg)}36%{transform:translate(-2px)rotate(-.12deg)}to{opacity:0;transform:translate(0)rotate(0)}}@keyframes logSealFlash{0%{filter:brightness(1.15)saturate(1.08);transform:translateY(-1px)}to{filter:brightness()saturate();transform:translateY(0)}}@keyframes logBustRattle{0%,to{transform:translate(0)rotate(0)}18%{transform:translate(-2px)rotate(-.2deg)}36%{transform:translate(2px)rotate(.2deg)}54%{transform:translate(-1px)rotate(-.1deg)}}@keyframes summaryCoinAfterglow{0%{box-shadow:inset 0 0 0 1px #ffe6a442,0 0 30px #ffd16357,0 10px 18px #00000040}to{box-shadow:inset 0 0 0 1px #ffe6a414,0 10px 18px #00000040}}@keyframes summaryTaxPayAfterglow{0%{filter:saturate(1.08);transform:translateY(1px)}to{filter:saturate();transform:translateY(0)}}@keyframes summaryBustAfterglow{0%,to{transform:translate(0)}20%{transform:translate(-3px)}40%{transform:translate(3px)}60%{transform:translate(-1px)}}@keyframes summaryJesterAfterglow{0%{transform:translateY(-2px);box-shadow:inset 0 0 0 1px #ffe6a442,0 0 26px #ffd56c47,0 10px 18px #00000040}to{transform:translateY(0)}}.player-panel header{justify-content:space-between;gap:12px;display:flex}.player-panel h3,.player-panel p{margin-bottom:0}.player-stats{text-align:right;min-width:70px}.player-stats strong{color:#fff1c4;font-size:1.5rem;display:block}.player-stats span,.mini-stats>span,.tag-list>span{font-size:.82rem;font-weight:900}.player-stats span,.mini-stats>span{align-items:center;gap:5px;display:inline-flex}.mini-stats>span,.tag-list>span{color:#f4d99f;background:#0d0a0761;border:1px solid #ddb26847;border-radius:999px;padding:5px 8px}.ability-strip{background:radial-gradient(circle at 12% 18%,#ffe0911a,#0000 32%),#09070547;border:1px solid #e2b15b2e;border-radius:12px;flex-wrap:wrap;align-self:start;align-items:center;gap:6px;width:fit-content;max-width:100%;padding:8px;display:flex}.ability-badge{color:#f6dfab;white-space:nowrap;background:#140e096b;border:1px solid #e4b96a3d;border-radius:999px;align-items:center;min-height:28px;padding:4px 8px;font-size:.8125rem;font-weight:950;line-height:1.1;display:inline-flex;box-shadow:inset 0 1px #ffeeb017}.ability-badge.trade{color:#ffe19b;background:#5c3e1594;border-color:#ffd96f57}.ability-badge.hire{color:#ffd2e5;background:#59223a61;border-color:#f4abca42}.ability-badge.turn{color:#dfffea;background:#19523e7a;border-color:#8be2bc57}.ability-badge.event{color:#ffd6aa;background:#5c2a137a;border-color:#f19d6757}.ability-badge.expedition{color:#d9e7ff;background:#22365f6b;border-color:#9dbcf552}.player-assets{gap:10px;display:grid}.asset-section{gap:6px;display:grid}.asset-section-label{color:#f5d38b;font-size:.8125rem;font-weight:950}.asset-pill{border-radius:8px;align-items:center;gap:7px;max-width:100%;display:inline-flex}.asset-pill .asset-name,.asset-pill .asset-effect{min-width:0;color:inherit;background:0 0;border:0;padding:0}.asset-pill .asset-name{color:#fff1c4;align-items:center;gap:5px;display:inline-flex}.asset-role-icon{width:1.08em;height:1.08em}.asset-pill .asset-effect{color:#dfbe77;white-space:normal;font-size:.8125rem}.expedition-asset{background:radial-gradient(circle at 14% 20%,#ffdb8f29,#0000 32%),#46260f85;border-color:#e0a6506b}.asset-empty{color:#f4d99fad}.tutorial-overlay{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:radial-gradient(at 50% 24%,#e4ac502e,#0000 42%),linear-gradient(#0604039e,#040201db);place-items:center;padding:22px;display:grid;position:fixed;inset:0}.tutorial-sheet{color:#2c1a0b;background:linear-gradient(90deg,#70411814,#0000 7% 93%,#7041181a),linear-gradient(#fff9dcfa,#e6ca8ffa);border:4px solid #533012e0;border-radius:12px;width:min(1120px,100%);max-height:calc(100vh - 44px);padding:26px;position:relative;overflow:auto;box-shadow:inset 0 0 0 1px #ffe6a08a,0 0 0 10px #10080370,0 32px 76px #0000009e}.tutorial-sheet:before{content:"";pointer-events:none;border:1px solid #5c35122e;border-radius:8px;position:absolute;inset:12px}.tutorial-header{z-index:1;border-bottom:1px solid #683d1442;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:18px;display:flex;position:relative}.tutorial-header h1{color:#3a210a;text-shadow:0 1px #fff5d2b3;margin-bottom:10px;font-size:clamp(2.1rem,5vw,4.2rem)}.tutorial-header p:not(.eyebrow){color:#4c3218;max-width:58ch;margin-bottom:0;font-weight:750;line-height:1.7}.tutorial-close{flex:none}.tutorial-objective{z-index:1;background:radial-gradient(circle at 9% 18%,#fff1b852,#0000 25%),linear-gradient(#d2e6aac7,#a6c280b3);border:1px solid #50754859;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;margin:18px 0 16px;padding:14px 16px;display:grid;position:relative}.tutorial-objective>span,.tutorial-kicker{color:#724716;font-size:.8125rem;font-weight:950}.tutorial-objective>span{background:#fffce5a8;border-radius:999px;place-items:center;min-height:34px;padding:4px 12px;display:inline-grid}.tutorial-objective strong{color:#1c2c14;font-size:clamp(1.05rem,2.2vw,1.42rem);line-height:1.45}.tutorial-grid{z-index:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid;position:relative}.tutorial-panel{background:linear-gradient(#fffce89e,#e1c07e42);border:1px solid #673d1638;border-radius:8px;align-content:start;gap:12px;padding:16px;display:grid;position:relative;box-shadow:inset 0 0 20px #6238110f}.tutorial-panel-wide{grid-column:1/-1}.tutorial-kicker{margin:0}.tutorial-panel h2{color:#3a210a;text-shadow:none;margin:0;font-size:1.08rem}.tutorial-panel p{color:#493018;margin-bottom:0;line-height:1.7}.tutorial-key-term{z-index:1;color:#31491f;width:fit-content;font-weight:850;line-height:inherit;white-space:nowrap;cursor:help;background:0 0;border:0;border-bottom:1px dotted #526f4057;align-items:center;gap:5px;margin:0 1px;padding:0 4px;display:inline-flex;position:relative}.tutorial-term-icon{vertical-align:middle;width:1.24em;height:1.24em}.tutorial-key-term:focus{outline-offset:2px;outline:2px solid #4a723b73}.tutorial-key-term:hover,.tutorial-key-term:focus-visible{z-index:6;background:#748f4c1a;border-bottom-color:#526f40b8}.tutorial-terms{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;display:grid}.tutorial-term{background:radial-gradient(circle at 12% 18%,#fff6cc57,#0000 30%),linear-gradient(#f0eec2a3,#cadda94d);border:1px solid #48704a33;border-radius:8px;gap:7px;min-height:132px;padding:12px;display:grid}.tutorial-term h2{color:#263a18;margin:0;font-size:.98rem}.tutorial-term h2 .tutorial-key-term{gap:6px;margin:0}.tutorial-card-type>.tutorial-key-term .tutorial-term-icon,.tutorial-term h2 .tutorial-term-icon{vertical-align:middle;width:1.36em;height:1.36em}.tutorial-term p{color:#3f3520;font-size:.94rem;line-height:1.62}.tutorial-flow{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.tutorial-flow span{color:#fff6d9;text-align:center;text-shadow:0 1px 1px #2a140594;background:radial-gradient(circle at 30% 20%,#fff9d666,#0000 28%),linear-gradient(#bd7e30c7,#6b3f16d6);border:1px solid #663a123d;border-radius:8px;place-items:center;min-height:42px;padding:7px 10px;font-weight:950;display:grid;position:relative}.tutorial-flow span:not(:last-child):after{z-index:2;content:"";background:#663a1261;width:8px;height:2px;position:absolute;right:-8px}.tutorial-step-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.tutorial-step{border-left:3px solid #85521c6b;min-height:148px;padding-left:12px}.tutorial-step h2{margin-bottom:6px}.burst-panel{background:radial-gradient(circle at 85% 18%,#b73f2a24,#0000 26%),linear-gradient(#ffefd7c7,#e0ab7d6b)}.tutorial-warning{color:#5b2819;background:#7e2c1a1a;border:1px solid #84351d47;border-radius:8px;padding:12px;font-weight:850;line-height:1.6}.tutorial-card-types{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.tutorial-card-type{background:#fffae06b;border:1px solid #633a122e;border-radius:8px;align-content:start;gap:10px;min-height:142px;padding:12px;display:grid}.tutorial-card-heading,.tutorial-card-type>.tutorial-key-term{color:#3a210a;background:0 0;border-bottom-color:#5d381252;margin:0;padding:0 3px;font-size:.98rem;font-weight:950}.tutorial-card-heading{color:#3a210a}.tutorial-tip-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.tutorial-tip-list li{color:#3f2a14;padding-left:22px;font-weight:760;line-height:1.62;position:relative}.tutorial-tip-list li:before{content:"";background:#8b5a23;border-radius:2px;width:8px;height:8px;position:absolute;top:.7em;left:4px;transform:rotate(45deg)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1120px){.topbar,.action-panel,.board-grid,.lobby-board{grid-template-columns:1fr}.topbar{justify-items:stretch}.brand-lockup,.status-strip,.topbar-actions,.action-row{justify-content:center}.action-panel:before{display:none}.deck-display{margin:0 auto}.sound-panel{right:50%;transform:translate(50%)}.deck-status-visual .deck-display{margin:0}.waiting-setup-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.bottom-action-dock{padding-left:16px;padding-right:16px;left:0;right:0}.bottom-action-resource{left:16px}.create-room-panel{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.create-room-panel>div,.create-room-panel>button{grid-column:1/-1}}@media (width<=760px){.event-notice-layer.modal{padding:16px}.event-notice{grid-template-columns:1fr;justify-items:center;padding:18px 18px 70px}.event-card-preview .game-card{width:142px}.event-copy h2,.event-copy>p,.event-copy .eyebrow{text-align:center}.event-detail-grid{grid-template-columns:1fr}.event-close{width:auto;inset:auto 18px 18px}.event-notice-layer.dock{width:auto;bottom:14px;left:14px;right:14px}.event-notice-layer.dock .event-notice{grid-template-columns:72px minmax(0,1fr);justify-items:stretch;padding:12px 44px 12px 12px}.event-notice-layer.dock .event-close{width:34px;inset:10px 10px auto auto}.setup-hero{grid-template-columns:1fr}.setup-art{min-height:150px}.board-grid{border-radius:22px;padding:18px}.player-command-row{flex-direction:column}.player-command-row>.deck-status-panel{flex:none;width:100%}.player-summary-rail{width:100%}.player-summary-chip{flex-basis:min(100%,330px)}.waiting-setup-summary{grid-template-columns:1fr}.bottom-action-dock{flex-direction:column;align-items:center;gap:10px;min-height:126px;padding-top:18px}.bottom-action-resource{align-self:flex-start;position:static}.bottom-action-status{min-width:0}.bottom-action-buttons{justify-content:center}.bottom-action-buttons button{flex:0 180px}.card-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.game-card{width:min(100%,226px);min-height:318px}.players-grid{grid-template-columns:1fr}.room-card,.room-heading,.waiting-actions{flex-direction:column;align-items:stretch}.room-card button,.waiting-actions button{width:100%}.tutorial-overlay{padding:14px}.tutorial-sheet{max-height:calc(100vh - 28px);padding:20px}.tutorial-header,.tutorial-objective{grid-template-columns:1fr}.tutorial-header{flex-direction:column}.tutorial-close{width:100%}.tutorial-grid,.tutorial-terms,.tutorial-step-list,.tutorial-card-types{grid-template-columns:1fr}.tutorial-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.tutorial-flow span:not(:last-child):after{display:none}}@media (width<=560px){.setup-shell,.app-shell{padding:14px}.setup-panel{padding:18px}.brand-medallion{display:none}.topbar h1{font-size:1.85rem}.status-pill{min-width:82px;min-height:58px}.action-row button,.auth-mode-row,.auth-mode-row>button,.online-form,.create-room-panel{width:100%}.create-room-panel{grid-template-columns:1fr}.card-grid{justify-items:center}.log-panel{min-height:280px}.tutorial-sheet{padding:16px}.tutorial-flow{grid-template-columns:1fr}}
