.rules-page{padding-bottom:40px}.rules-page .page-title{align-items:flex-start;gap:20px}.rules-intro{max-width:780px;color:var(--muted);margin-bottom:26px;font-size:15px;line-height:1.9}.rules-ongoing{margin-bottom:24px;font-size:13px;line-height:1.8}.rules-layout{grid-template-columns:232px minmax(0,1fr);align-items:start;gap:28px;display:grid}.rules-contents{color:var(--muted);padding:18px 0;font-size:13px;line-height:1.8;position:sticky;top:22px}.rules-contents h2{color:var(--ink);margin-bottom:14px;font-size:18px}.rules-contents ol{margin:0;padding-left:23px}.rules-contents li{margin:9px 0;padding-left:3px}.rules-contents a{color:var(--muted);text-underline-offset:4px;text-decoration:none}.rules-contents a:hover{color:var(--brass);text-decoration:underline}.rules-page a:focus-visible{outline-offset:4px;outline:3px solid #f1cc83}.rules-current{border-top:1px solid var(--line);margin-top:22px;padding-top:20px}.rules-current h3{color:var(--brass);font-size:15px}.rules-current p{margin-top:8px;font-size:12px}.rules-current dl{grid-template-columns:minmax(0,1fr) auto;gap:9px;margin:16px 0 0;font-size:12px;display:grid}.rules-current dd{color:var(--ink);margin:0}.rules-sections{flex-direction:column;gap:20px;min-width:0;display:flex}.rules-section{min-width:0;padding:28px;scroll-margin-top:22px}.rules-section h2{color:var(--paper);margin-bottom:18px;font-size:25px}.rules-section h3{font-size:17px;line-height:1.5}.rules-section p,.rules-section li{font-size:14px;line-height:1.95}.rules-section p{color:var(--muted)}.rules-section ul,.rules-section ol{margin:12px 0 0;padding-left:22px}.rules-section li{color:var(--ink);margin:10px 0;padding-left:4px}.rules-editions{grid-template-columns:1fr 1fr;gap:16px;display:grid}.rules-edition{background:#1c251f;border-radius:4px;padding:18px}.rules-edition.is-current{box-shadow:inset 3px 0 var(--brass)}.rules-edition h3{color:var(--brass)}.rules-edition li{font-size:13px;line-height:1.9}.rules-order{margin-top:18px;color:var(--ink)!important}.rules-legacy{margin-top:12px;color:var(--brass)!important}.rules-example{background:#1c251f;border-radius:4px;margin-top:20px;padding:18px 20px}.rules-example h3{color:var(--brass);margin-bottom:10px}.rules-special{grid-template-columns:1fr 1fr;gap:24px;display:grid}.rules-special article{min-width:0}.rules-special h3{color:var(--brass)}.rules-table-wrap{overscroll-behavior-x:contain;max-width:100%;margin:20px 0;overflow-x:auto}.rules-section table{border-collapse:collapse;text-align:left;width:100%;font-size:12px;line-height:1.75}.rules-section caption{text-align:left;color:var(--brass);padding-bottom:12px;font-size:13px;font-weight:700}.rules-section th,.rules-section td{vertical-align:top;border-bottom:1px solid var(--line);padding:12px 10px}.rules-section thead th{color:var(--muted);font-weight:500}.rules-section tbody th{color:var(--paper);white-space:nowrap;font-weight:700}.rules-section td{color:var(--ink)}.rules-allocation th:not(:first-child),.rules-allocation td{text-align:center;min-width:34px}.rules-section .note{color:var(--ink);margin-top:20px}.rules-bottom{justify-content:space-between;align-items:center;gap:20px;padding-top:8px;font-size:13px;display:flex}.rules-bottom a{text-underline-offset:4px;line-height:1.8}@media (max-width:1000px){.rules-layout{grid-template-columns:190px minmax(0,1fr);gap:20px}.rules-editions,.rules-special{grid-template-columns:1fr}.rules-section{padding:24px}}@media (max-width:700px){.rules-layout{display:block}.rules-contents{padding:0 0 22px;position:static}.rules-contents>ol{grid-template-columns:1fr 1fr;column-gap:20px;display:grid}.rules-contents li{margin:5px 0}.rules-current{margin-top:16px;padding-top:16px}.rules-current dl{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;gap:8px 12px}.rules-current p{margin-top:6px}.rules-page .page-title h1{font-size:30px}.rules-page .page-title .btn{flex-shrink:0}.rules-section{padding:22px 18px}.rules-section h2{font-size:22px}.rules-section p,.rules-section li{font-size:13px}.rules-section th,.rules-section td{padding:10px 8px}.rules-section table:not(.rules-allocation){min-width:490px}.rules-intro{margin-bottom:18px;font-size:14px}.rules-bottom{flex-wrap:wrap}}@media (max-width:390px){.rules-current dl{grid-template-columns:minmax(0,1fr) auto}.rules-contents>ol{grid-template-columns:1fr}.rules-section h2{font-size:20px}.rules-page .page-title{flex-wrap:wrap}}:root{--coal:#171c1b;--paper:#e9ddc4;--surface:#242c28;--ink:#f2e7ce;--muted:#b7b09c;--line:#645a43;--green:#d2ad65;--green-soft:#323c32;--yellow:#d2ad65;--danger:#d48676;--red:#9d3437;--blue:#426b8a;--gold:#c9953f;--leaf:#52795d;--black:#343a3b;--white:#e9ddc8;--board:#1e2924;--burgundy:#742c34;--brass:#c8a466;--r-md:7px;--r-lg:10px;--shadow:0 5px 0 #0e1312,0 12px 24px #0005;--space-8:8px;--space-12:12px;--space-16:16px;--space-24:24px;--radius-10:6px;--radius-18:8px;--radius-28:10px;--font-body:"Noto Sans SC","Microsoft YaHei",sans-serif;--font-display:"Noto Serif SC","STSong","SimSun",serif;--font-number:"Cormorant Garamond","Georgia",serif}*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;min-width:320px}input,textarea,select,[contenteditable=true]{-webkit-user-select:text;user-select:text;touch-action:auto}img,svg{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}button img,button svg,[data-do] img,[data-do] svg{pointer-events:none}body{background:var(--coal);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;background-image:repeating-linear-gradient(0deg,#0000 0 3px,#00000009 3px 4px);margin:0}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.48}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:4px;outline:3px solid #f3ce7b}button{touch-action:manipulation}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:700}h1{line-height:1.24}h2{line-height:1.35}h3{font-size:18px}svg{flex-shrink:0;display:block}a{color:var(--brass)}.hidden{clip:rect(0,0,0,0);width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wrap{max-width:1280px;margin:auto;padding:0 36px}.row{align-items:center;gap:12px;display:flex}.between{justify-content:space-between}.grow{flex:1;min-width:0}.small{font-size:12px;line-height:1.7}.muted{color:var(--muted)}.label{font-size:13px;font-weight:700}.eyebrow{letter-spacing:3px;color:var(--brass);text-transform:uppercase;font-size:10px;font-weight:500}.link{color:var(--ink);background:0 0;border:0;align-items:center;gap:7px;padding:7px 0;font-size:12px;display:inline-flex}.link:hover{color:var(--brass)}.header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:90px;display:flex}.brand{text-align:left;background:0 0;border:0;align-items:center;gap:13px;padding:0;display:flex}.brand-mark{background:var(--burgundy);border:1px solid var(--brass);width:43px;height:43px;box-shadow:inset 0 0 0 3px var(--burgundy),inset 0 0 0 4px #ad8a55;color:var(--paper);border-radius:50%;place-items:center;display:grid}.brand strong{font-family:var(--font-display);letter-spacing:4px;font-size:25px;display:block}.brand small{color:var(--brass);letter-spacing:2px;margin-top:4px;font-size:9px;display:block}.topnav{align-items:center;gap:28px;display:flex}.avatar{width:31px;height:31px;color:var(--paper);font-family:var(--font-display);background:#33382c;border:1px solid #a28c63;border-radius:50%;flex-shrink:0;place-items:center;font-size:13px;display:inline-grid}.btn{letter-spacing:.5px;background:#2b322d;border:1px solid #93815d;border-radius:4px;justify-content:center;align-items:center;gap:10px;min-height:48px;padding:12px 20px;font-size:14px;font-weight:700;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex;box-shadow:0 3px #0e1511,inset 0 1px #ffffff12}.btn.primary,.btn.yellow{color:#241f18;background:#caaa6a;border-color:#ebca86;box-shadow:0 3px #6f5431,inset 0 1px #fff6}.btn.danger{background:var(--burgundy);color:var(--paper);border-color:#ae6b61;box-shadow:0 3px #461d22}.btn.ghost{color:var(--paper);background:#222a25}.btn.full{width:100%}.btn.sm{min-height:42px;padding:9px 14px;font-size:12px}.btn:disabled{box-shadow:none}.icon-btn{border:1px solid var(--line);background:#222a25;border-radius:5px;place-items:center;width:42px;height:42px;padding:0;display:inline-grid}.pill{border:1px solid var(--line);white-space:nowrap;color:var(--muted);border-radius:3px;align-items:center;gap:6px;padding:5px 9px;font-size:11px;display:inline-flex}.pill.green{color:#e1c78f;background:#333b2e;border-color:#7b7950}.pill.gold{color:#ead1a0;background:#483d29}.pill.red{color:#efb8a5;background:#4d2a29}.dot{background:currentColor;border-radius:50%;width:5px;height:5px;display:inline-block}.divider{border:0;border-top:1px solid var(--line);margin:20px 0}.home-main{grid-template-columns:.9fr 1.1fr;align-items:center;gap:44px;min-height:610px;padding:64px 0 50px;display:grid}.home-title{font-family:var(--font-display);letter-spacing:7px;color:var(--paper);text-shadow:0 3px #0005;margin:26px 0 20px;font-size:76px;line-height:1.22}.home-title span{letter-spacing:3px;color:var(--brass);font-size:34px}.home-copy{color:var(--muted);max-width:390px;font-size:14px;line-height:1.95}.edition-switch{background:#1c2520;border:1px solid #9b865b;border-radius:3px;gap:0;padding:3px;display:inline-flex}.edition-switch button{letter-spacing:1px;color:var(--muted);background:0 0;border:0;border-radius:1px;padding:10px 23px;font-size:12px}.edition-switch .active{background:var(--burgundy);color:var(--paper);box-shadow:inset 0 0 0 1px #b77f62}.home-actions{gap:12px;margin-top:28px;display:flex}.home-actions .btn{min-width:160px}.home-friends{gap:25px;margin-top:18px;display:flex}.hero-scene{background:#202823;border:1px solid #655d44;border-radius:230px 230px 7px 7px;justify-content:center;align-items:center;min-height:452px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 7px #141c17,inset 0 0 0 8px #746142,0 18px 40px #0004}.station-scene{position:absolute;inset:0;overflow:hidden}.station-scene svg{object-fit:cover;width:100%;height:100%}.hero-scene>.station-sign{border:1px solid var(--brass);color:var(--paper);white-space:nowrap;font-family:var(--font-display);letter-spacing:3px;z-index:2;background:#242c26;padding:9px 22px;font-size:12px;position:absolute;top:26px;left:50%;transform:translate(-50%);box-shadow:0 4px #1119}.hero-ticket{background:var(--paper);color:#4f2f24;letter-spacing:1px;z-index:3;border:1px solid #bfa97d;padding:12px 18px;font-size:12px;position:absolute;top:auto;bottom:32px;right:20px;transform:rotate(4deg);box-shadow:0 5px 10px #0004}.hero-ticket-sample{z-index:3;gap:8px;display:flex;position:absolute;bottom:25px;left:22px}.hero-ticket-sample .card{width:65px;height:94px}.hero-bottom{color:var(--paper);letter-spacing:2px;gap:12px;font-size:10px;display:flex;position:absolute;bottom:13px}.hero-cards{z-index:2;gap:12px;display:flex}.hero-cards .card{width:96px;height:138px}.home-bottom{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:35px;padding:27px 0;display:grid}.principle{align-items:flex-start;gap:14px;display:flex}.principle .num{font-family:var(--font-number);color:var(--brass);font-size:36px;line-height:1}.principle h3{font-size:16px}.principle p{color:var(--muted);margin-top:8px;font-size:11px;line-height:1.8}.footer{color:var(--muted);letter-spacing:1px;justify-content:space-between;gap:15px;padding:24px 0;font-size:10px;display:flex}.page-title{justify-content:space-between;align-items:center;margin:34px 0 27px;display:flex}.page-title h1{margin-top:10px;font-size:36px}.surface{background:#252d27;border:1px solid #6d6044;border-radius:6px;padding:26px;box-shadow:inset 0 0 0 3px #1d261f,0 6px 18px #0002}.settings-layout,.room-layout{grid-template-columns:1.45fr 1fr;align-items:start;gap:26px;display:grid}.field{flex-direction:column;gap:11px;margin:23px 0;display:flex}.field-label{justify-content:space-between;gap:8px;font-size:13px;font-weight:700;display:flex}.field-label span{color:var(--muted);font-size:10px;font-weight:400}.deck-options{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.deck-option{text-align:left;background:#1c241f;border:1px solid #6f654c;border-radius:3px;min-height:128px;padding:18px 12px}.deck-option.active{background:#443229;border-color:#e2bf78;box-shadow:inset 0 0 0 2px #caaa6a22}.deck-option b{font-family:var(--font-display);margin-bottom:13px;font-size:16px;display:block}.deck-option strong{font-family:var(--font-number);color:var(--brass);font-size:35px;line-height:1}.deck-option small{color:var(--muted);margin-top:12px;font-size:10px;display:block}.segmented{gap:9px;display:flex}.segmented button{border:1px solid var(--line);background:#1e271f;border-radius:3px;flex:1;min-height:48px;font-size:12px}.segmented button.active{background:var(--burgundy);color:var(--paper);border-color:#b88365}select,input{width:100%;height:48px;color:var(--ink);background:#1c241f;border:1px solid #807253;border-radius:3px;padding:10px 14px}.toggle-row{justify-content:space-between;align-items:center;gap:18px;padding:15px 0;display:flex}.toggle-row p{margin-top:7px}.toggle{border:1px solid var(--line);background:#171f1a;border-radius:4px;flex-shrink:0;width:45px;height:26px;position:relative}.toggle:after{content:"";background:#827962;border-radius:2px;width:18px;height:18px;position:absolute;top:3px;left:3px}.toggle.on{border-color:var(--brass);background:#684b33}.toggle.on:after{background:#e3c788;left:22px}.summary-title{color:var(--brass);letter-spacing:2px;margin-bottom:16px;font-size:11px}.summary h2{margin-bottom:12px;font-size:28px}.summary dl{grid-template-columns:1fr auto;gap:17px;margin:25px 0;font-size:12px;display:grid}.summary dt{color:var(--muted)}.summary dd{margin:0;font-weight:700}.note{border-left:2px solid var(--brass);color:#d4cbb6;background:#1a231d;margin-top:19px;padding:15px 16px;font-size:12px;line-height:1.9}.note.warn{border-color:var(--danger);background:#3e2b25}.settings-actions{justify-content:space-between;gap:12px;display:flex}.join-box{text-align:center;max-width:440px;margin:70px auto}.join-box h1{margin:19px 0;font-size:35px}.code-input{font-family:var(--font-number);letter-spacing:10px;text-align:center;text-transform:uppercase;height:78px;color:var(--brass);font-size:36px}.error-text{min-height:20px;color:var(--danger);text-align:left;font-size:12px}.room-code{justify-content:space-between;align-items:center;padding:10px 0 25px;display:flex}.room-code strong{font-family:var(--font-number);color:var(--brass);letter-spacing:7px;font-size:39px}.seat-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.seat{background:#1d251f;border:1px solid #746341;border-radius:3px;flex-direction:column;align-items:center;gap:10px;min-height:130px;padding:20px 5px;display:flex}.seat .avatar{width:40px;height:40px}.seat small{color:var(--muted);font-size:10px}.seat.empty{opacity:.6;border-style:dashed}.seat.bot .avatar{background:#573631}.invite{border:1px dashed var(--line);color:var(--muted);padding:17px;font-size:12px;line-height:1.9}.table-head{justify-content:space-between;align-items:center;gap:15px;padding:23px 0 17px;display:flex}.table-head h1{letter-spacing:2px;font-size:28px}.table-meta{align-items:center;gap:9px;margin-top:9px;display:flex}.connected{color:#aec4a0;align-items:center;gap:6px;font-size:10px;display:flex}.game-layout{grid-template-columns:minmax(0,1fr) 225px;gap:22px;display:grid}.game-layout>section{min-width:0}.player-strip{grid-template-columns:repeat(var(--players),minmax(0,1fr));gap:8px;margin-bottom:13px;display:grid}.player-strip.many{grid-template-columns:repeat(4,minmax(0,1fr))}.player{background:#222b24;border:1px solid #514e3d;border-radius:3px;align-items:center;gap:9px;min-width:0;padding:10px;display:flex}.player.me{background:#33362a;border-color:#b6985c}.player.current{box-shadow:inset 0 -2px #d8b873}.player .name{white-space:nowrap;font-size:11px}.player-score{color:var(--muted);white-space:nowrap;margin-top:4px;font-size:10px}.player .check{color:#dac185;margin-left:auto;font-size:11px}.status-band{background:#6c2c33;border:1px solid #a9745c;border-radius:3px;justify-content:space-between;align-items:center;gap:12px;min-height:69px;margin-bottom:15px;padding:13px 18px;display:flex;box-shadow:inset 0 0 0 3px #4d2227}.status-band strong{font-family:var(--font-display);letter-spacing:1px;font-size:17px}.status-band small{color:#e3cbbb;margin-top:6px;font-size:11px;display:block}.timer{width:37px;height:37px;font-family:var(--font-number);color:#f4d797;border:1px solid #c9ac77;border-radius:50%;flex-shrink:0;place-items:center;font-size:24px;display:grid}.progress-steps{color:var(--muted);justify-content:center;align-items:center;gap:5px;font-size:11px;display:flex}.progress-steps span{padding:6px 12px}.progress-steps .current{color:#e7c687;background:#4a3d2b}.board{background:var(--board);border:1px solid #6d634d;border-radius:5px;padding:13px 14px 16px;box-shadow:inset 0 0 0 3px #0e1813,inset 0 0 32px #0004}.board-label{color:#b7b49d;letter-spacing:1px;justify-content:space-between;padding:2px 3px 10px;font-size:10px;display:flex}.track{isolation:isolate;text-align:left;background:#18231c;border:1px solid #435044;border-radius:3px;align-items:center;gap:12px;width:100%;min-height:88px;margin-top:7px;padding:9px 10px;display:flex;position:relative;overflow:visible}.track:before{content:"";z-index:-1;opacity:.7;background:repeating-linear-gradient(90deg,#0000 0 7px,#635244 7px 13px,#0000 13px 25px);position:absolute;inset:15px 100px 15px 54px}.track:after{content:"";z-index:-1;opacity:.75;border-top:3px solid #a0997b;border-bottom:3px solid #928a72;position:absolute;inset:23px 96px 23px 48px;box-shadow:0 -1px #d1c4a333,0 2px #080f0a}.track.can-place{background:#283729;border-color:#a79058}.track.picked{background:#35412c;border:2px solid #e9c77d;padding:8px 9px;box-shadow:0 0 0 2px #c5a36a15}.track.dim{opacity:.52}.track-label{width:30px;font-family:var(--font-number);color:#c7b58f;text-align:center;flex-shrink:0;font-size:23px;line-height:1.05;display:block}.track-label small{font-family:var(--font-body);letter-spacing:1px;margin-top:5px;font-size:9px;display:block}.track-info{text-align:right;flex-shrink:0;width:78px;margin-left:auto;line-height:1.2}.track-info strong{color:#e3dbc7;font-size:12px;font-weight:500}.track-info small{color:var(--muted);margin-top:7px;font-size:10px;display:block}.track-info .warning{color:#e2ad78}.rail-cards{flex:1;align-items:center;gap:9px;min-width:0;padding:3px 0;display:flex}.card{color:#2b2922;width:82px;height:116px;transform:translateY(var(--card-offset,0px)) rotate(var(--card-tilt,0deg));transform-origin:50% 70%;text-align:left;isolation:isolate;background-color:#e9ddc4;background-image:repeating-linear-gradient(0deg,#0000 0 3px,#77461d06 3px 4px);border:1px solid #baa27e;border-radius:5px;flex-direction:column;flex-shrink:0;justify-content:flex-start;align-items:stretch;padding:5px;display:flex;position:relative;box-shadow:0 3px #a28f6d,1px 6px 8px #0005}.card:before{content:"";pointer-events:none;z-index:-1;border:1px solid #7a664f55;border-radius:3px;position:absolute;inset:4px}.train-icon{flex-shrink:0;justify-content:center;align-items:center;width:31px;height:21px;display:inline-flex}.train-icon svg{width:100%;height:100%;overflow:visible}.card.selected{outline-offset:4px;z-index:4;outline:2px solid #f3ce79;box-shadow:0 4px #8b764e,0 9px 14px #0007}.rail-cards .card{border-radius:4px;width:55px;height:68px;padding:4px}.rail-cards .card.last{border:2px solid #e6bd6c;padding:3px}.rail-cards .card.last:after{content:"尾牌";color:#f6dfa5;background:#402d20;border:1px solid #c7a164;border-radius:2px;padding:1px 4px;font-size:8px;line-height:1.2;position:absolute;bottom:-6px;right:-1px}.hand-box{padding-top:23px}.hand-top{justify-content:space-between;align-items:center;margin-bottom:17px;font-size:12px;display:flex}.hand-top small{color:var(--muted);font-size:10px}.hand{justify-content:center;gap:16px;min-height:126px;padding:3px 5px 8px;display:flex}.hand .card{width:82px;height:114px}.hand-help{color:var(--muted);text-align:center;margin-top:8px;font-size:10px}.hand.six{gap:12px}.hand.six .card{width:73px;height:111px}.action-panel{background:#252c25;border:1px solid #756342;border-radius:4px;flex-direction:column;gap:16px;height:max-content;padding:20px 18px;display:flex;box-shadow:inset 0 0 0 3px #19221b}.action-panel h2{font-size:23px}.action-panel .action-text{color:var(--muted);font-size:12px;line-height:1.8}.action-panel p{color:var(--muted);font-size:11px;line-height:1.8}.score-card{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:baseline;gap:12px;padding:18px 0;display:flex}.score-card strong{font-family:var(--font-number);color:var(--brass);font-size:52px;line-height:1}.score-card span{color:var(--muted);font-size:11px}.preview{border-left:2px solid var(--brass);color:#cfc8b6;background:#1b251d;padding:15px 12px;font-size:11px;line-height:1.8}.preview span{display:block}.preview strong{font-family:var(--font-number);color:#edd294;margin:5px 0;font-size:31px;display:block}.preview.warn{border-color:var(--danger);background:#442b27}.preview.warn strong{color:#e9b39a}.event-log{color:var(--muted);margin-top:9px;font-size:10px;line-height:1.9}.event-log p{font-size:10px}.mobile-actions{display:none}.modal-backdrop{z-index:70;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#101713c9;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.modal{color:#332c23;background:#ede1c8;border:2px solid #b89a63;border-radius:5px;width:100%;max-width:490px;max-height:90vh;padding:30px;overflow:auto;box-shadow:0 0 0 5px #151c17,0 15px 70px #0008}.modal h2{margin:15px 0;font-size:28px}.modal-icon{color:#762f35;background:#e5d4b3;border:1px solid #89724e;border-radius:50%;place-items:center;width:49px;height:49px;font-size:24px;display:grid}.modal p{color:#655642;font-size:13px;line-height:1.9}.modal .row{margin-top:23px}.modal .row>.btn{flex:1}.modal .btn.ghost{color:#433b2c;background:#ded0b5;border-color:#9d8966}.modal .sheet-detail{color:#483e2f;background:#e0d1b5}.modal .small,.modal .muted{color:#655642}.modal .pill{color:#5d4c35;border-color:#aa9166}.modal .spinner{border-color:#742c34 #ae9c7e #ae9c7e}.toast{z-index:90;color:#423627;text-align:center;background:#ebdfc7;border:1px solid #b89a63;border-radius:3px;max-width:90vw;padding:13px 22px;font-size:12px;position:fixed;bottom:55px;left:50%;transform:translate(-50%);box-shadow:0 5px 20px #0005}.result{max-width:740px;margin:38px auto}.result-title{text-align:center;margin-bottom:30px}.result-title h1{margin:15px 0;font-size:39px}.result-medal{color:#ecd2a0;background:#68402e;border:2px solid #b9a06a;border-radius:50%;justify-content:center;align-items:center;width:61px;height:61px;margin-bottom:17px;font-size:28px;display:inline-flex;box-shadow:inset 0 0 0 4px #2d3325}.ranking{border-bottom:1px solid var(--line);align-items:center;gap:15px;padding:16px 4px;display:flex}.ranking .rank{font-family:var(--font-number);width:30px;color:var(--brass);font-size:28px}.ranking .rank-score{font-family:var(--font-number);color:var(--brass);margin-left:auto;font-size:32px}.result-stats{grid-template-columns:repeat(3,1fr);gap:14px;margin:24px 0;display:grid}.stat{text-align:center;border-top:1px solid var(--line);padding:18px 8px}.stat b{font-family:var(--font-number);color:var(--brass);margin-bottom:7px;font-size:30px;display:block}.stat small{color:var(--muted);font-size:10px}.guide{max-width:850px;margin:40px auto}.guide-grid{grid-template-columns:repeat(3,1fr);gap:17px;margin:28px 0;display:grid}.guide-step{background:#252d27;border:1px solid #6d6044;border-radius:3px;padding:23px}.guide-step .step-num{font-family:var(--font-number);color:var(--brass);margin-bottom:18px;font-size:38px}.guide-step p{color:var(--muted);margin-top:13px;font-size:12px;line-height:1.9}.system{flex-direction:column;gap:24px;padding:35px 0;display:flex}.system h1{font-size:36px}.system-section{background:#222b24;border:1px solid #6d6044;border-radius:4px;padding:25px}.system-section>p{color:var(--muted);margin-top:12px;font-size:12px;line-height:1.9}.swatches{flex-wrap:wrap;gap:12px;margin-top:20px;display:flex}.swatch{width:110px}.swatch i{border:1px solid #91805e;border-radius:2px;height:55px;margin-bottom:9px;display:block}.swatch b,.swatch small{font-size:10px;display:block}.swatch small{color:var(--muted);margin-top:3px}.component-row{flex-wrap:wrap;align-items:center;gap:18px;margin-top:22px;display:flex}.flow{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.flow span{background:#2b352a;border:1px solid #675b3f;padding:12px 16px;font-size:12px}.flow i{color:var(--brass);align-self:center;font-style:normal}.design-dock{max-width:1208px;color:var(--muted);border-top:1px dashed #665e46;justify-content:space-between;align-items:center;gap:10px;margin:32px auto 15px;padding:13px 0;font-size:10px;display:flex}.design-dock .row{gap:8px}.design-dock select{width:auto;height:36px;padding:4px 8px;font-size:11px}.design-dock button{color:var(--muted);background:0 0;border:0;padding:7px;font-size:11px}.steps-legend{color:var(--muted);justify-content:center;gap:12px;margin-top:21px;font-size:10px;display:flex}.spinner{border:2px solid #746747;border-top-color:#edc989;border-radius:50%;width:17px;height:17px;animation:1s linear infinite spin;display:inline-block}.empty-state{text-align:center;color:var(--muted);padding:26px;font-size:12px}.taken-grid{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.sheet-detail{background:#1a241d;border-left:2px solid #b7985d;margin-top:17px;padding:17px;font-size:12px;line-height:1.9}.motion-settings{color:var(--muted);align-items:center;gap:10px;font-size:11px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width:1450px){.wrap{max-width:1440px;padding:0 56px}.home-main{gap:65px;min-height:650px}.hero-scene{min-height:480px}.home-title{font-size:84px}.game-layout{grid-template-columns:minmax(0,1fr) 250px}.track{min-height:96px}.rail-cards .card{width:63px;height:75px}}@media (max-width:1000px){.wrap{padding:0 25px}.home-main{gap:25px}.home-title{letter-spacing:5px;font-size:58px}.home-title span{font-size:27px}.hero-scene{min-height:400px}.home-actions .btn{min-width:0}.home-friends{gap:15px}.game-layout{grid-template-columns:minmax(0,1fr) 205px;gap:14px}.track{gap:7px;padding:8px 7px}.track.picked{padding:7px 6px}.track-label{width:25px}.track-info{width:70px}.rail-cards{gap:5px}.rail-cards .card{width:44px;height:63px}.player .avatar{display:none}.player{padding:8px}.action-panel{padding:18px 14px}.hand.six{gap:8px}.hand.six .card{width:63px}.train-icon{width:26px;height:18px}}@media (max-width:700px){.wrap{padding:0 16px}.header{height:72px}.brand{gap:10px}.brand strong{letter-spacing:2px;font-size:21px}.brand small{letter-spacing:1px;font-size:8px}.brand-mark{width:36px;height:36px}.topnav{gap:13px}.topnav .optional{display:none}.home-main{flex-direction:column;align-items:stretch;gap:28px;min-height:auto;padding:31px 0 27px;display:flex}.home-title{letter-spacing:5px;margin:23px 0 16px;font-size:57px}.home-title span{letter-spacing:2px;font-size:27px}.home-copy{max-width:320px;font-size:12px}.home-actions{gap:10px;margin-top:24px}.home-actions .btn{flex:1;min-height:48px;padding:12px;font-size:12px}.home-friends{gap:18px}.home-friends .link{font-size:11px}.edition-switch button{padding:9px 21px;font-size:11px}.hero-scene{border-radius:170px 170px 4px 4px;min-height:310px}.hero-scene>.station-sign{padding:8px 17px;font-size:10px;top:19px}.hero-ticket-sample{gap:7px;bottom:22px;left:17px}.hero-ticket-sample .card{width:51px;height:75px;padding:3px}.hero-ticket{padding:10px;font-size:10px;bottom:22px;right:14px}.home-bottom{grid-template-columns:1fr;gap:20px;padding:24px 0}.principle .num{font-size:32px}.principle h3{font-size:16px}.principle p{margin-top:5px}.footer{letter-spacing:0;flex-wrap:wrap;padding:19px 0;font-size:9px}.page-title{margin:28px 0 22px}.page-title h1{font-size:29px}.eyebrow{letter-spacing:2px;font-size:9px}.settings-layout,.room-layout{grid-template-columns:1fr;gap:18px}.surface{padding:20px}.field{margin:20px 0}.field-label{font-size:12px}.field-label span{font-size:9px}.deck-options{gap:8px}.deck-option{min-height:122px;padding:16px 9px}.deck-option b{font-size:13px}.deck-option strong{font-size:30px}.deck-option small{font-size:9px}.settings-layout>.surface>.row{gap:10px}.segmented{gap:6px}.segmented button{padding:0 8px;font-size:11px}.summary h2{font-size:25px}.summary dl{gap:16px}.join-box{margin:45px auto}.join-box h1{font-size:30px}.seat-grid{gap:7px}.seat{gap:9px;min-height:112px;padding:14px 4px}.seat .avatar{width:32px;height:32px}.seat .label{font-size:10px}.seat small{font-size:9px}.room-code strong{font-size:32px}.room-code .btn{padding:8px 10px}.table-head{gap:8px;padding:16px 0 12px}.table-head h1{letter-spacing:1px;font-size:21px}.table-head>.row{gap:6px}.table-head .icon-btn{width:34px;height:34px}.table-meta{flex-wrap:wrap;gap:5px;margin-top:7px}.table-meta .pill{padding:4px 6px;font-size:9px}.table-meta>.small{font-size:9px}.connected{display:none}.game-layout{display:block}.action-panel{display:none}.player-strip{gap:5px;margin-bottom:10px}.player{gap:3px;padding:7px 5px}.player .name{font-size:10px}.player-score{margin-top:3px;font-size:9px}.player .check{font-size:9px}.player-strip.many .player{padding:5px}.player-strip.many{grid-template-columns:repeat(4,minmax(0,1fr))}.status-band{min-height:65px;margin-bottom:12px;padding:12px}.status-band strong{letter-spacing:0;font-size:14px}.status-band small{margin-top:5px;font-size:10px;line-height:1.5}.timer{width:32px;height:32px;font-size:23px}.board{border-radius:3px;padding:8px 6px 10px}.board-label{letter-spacing:0;padding:2px 5px 6px;font-size:9px}.track{border-radius:2px;gap:5px;min-height:72px;margin-top:7px;padding:7px 5px}.track.picked{padding:6px 4px}.track:before{background-size:20px 100%;inset:14px 58px 14px 32px}.track:after{border-width:2px;inset:19px 56px 19px 29px}.track-label{width:20px;font-size:20px}.track-label small{letter-spacing:0;margin-top:4px;font-size:8px}.track-info{width:55px}.track-info strong{font-size:10px}.track-info small{margin-top:6px;font-size:8px}.rail-cards{gap:5px;padding:3px 0}.rail-cards .card{border-radius:3px;width:38px;height:54px;padding:2px}.rail-cards .card:before{border-radius:2px;inset:2px}.rail-cards .card.last{padding:1px}.rail-cards .card.last:after{padding:1px 3px;font-size:7px;bottom:-5px;right:-2px}.hand-box{padding-top:18px}.hand-top{margin-bottom:16px;font-size:11px}.hand-top small{font-size:9px}.hand{gap:12px;min-height:100px;padding:3px 6px 7px}.hand .card{width:68px;height:94px;padding:4px}.hand.six{justify-content:center;gap:8px}.hand.six .card{width:49px;height:85px;padding:3px}.hand-help{margin-top:6px;font-size:9px}.mobile-actions{padding:0 0 max(18px,env(safe-area-inset-bottom));margin-top:13px;display:block}.mobile-actions .btn{min-height:49px}.mobile-actions .action-copy{color:var(--muted);justify-content:space-between;gap:8px;margin-bottom:10px;font-size:10px;line-height:1.6;display:flex}.mobile-preview{background:#303c2c;border-left:2px solid #cbac6c;margin-bottom:12px;padding:11px 12px;font-size:11px;line-height:1.7}.mobile-actions .special-link{text-align:center;color:#e0c282;background:0 0;border:0;width:100%;min-height:44px;padding:12px 0 0;font-size:11px;display:block}.progress-steps{gap:0}.progress-steps span{padding:5px 8px;font-size:9px}.modal-backdrop{padding:17px}.modal{padding:25px 21px}.modal h2{font-size:25px}.modal p{font-size:12px}.modal .row{gap:10px}.modal .row>.btn{padding:12px 9px;font-size:12px}.result{margin:30px auto}.result-title h1{font-size:30px}.result-stats{gap:8px}.stat b{font-size:28px}.stat small{font-size:9px}.guide-grid{grid-template-columns:1fr;gap:13px}.guide-step{grid-template-columns:35px 1fr;gap:11px;display:grid}.guide-step .step-num{grid-row:span 2;margin:0}.guide-step p{margin:0}.system{padding:28px 0}.system h1{font-size:28px}.system-section{padding:20px}.swatch{width:90px}.component-row{gap:12px}.design-dock{flex-wrap:wrap;margin:20px 16px 14px;font-size:9px}.design-dock select{max-width:135px;font-size:10px}.design-dock button{font-size:10px}.design-dock .version{display:none}.toast{font-size:11px;bottom:30px}.motion-settings{font-size:10px}}@media (max-width:370px){.wrap{padding:0 10px}.rail-cards{gap:3px}.rail-cards .card{width:35px}.track-info{width:51px}.hand.six{gap:5px}.hand.six .card{width:46px}.home-title{font-size:51px}.home-title span{font-size:24px}.home-friends{gap:13px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--card-ink:#302820;--card-muted:#62523e;--radius-4:4px;--radius-6:6px}.home-slogan{font-family:var(--font-display);letter-spacing:3px;color:var(--brass);margin:-4px 0 22px;font-size:30px}.hero-ticket-sample>span{color:#e6d1a4;background:#17201ae8;border:1px solid #846b44;align-self:flex-end;padding:9px 10px;font-size:10px;line-height:1.8}.train-legend{align-items:center;gap:9px;min-width:190px;font-size:12px;display:flex}.train-legend .train-icon{background:#e9ddc4;border-radius:3px;width:70px;height:42px;padding:3px}.your-score{border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:baseline;gap:10px;padding:18px 0;font-size:11px;display:flex}.score-num{font-family:var(--font-number);color:var(--brass);font-size:54px;line-height:1}.phase-badge{color:#e9cc8b;background:#3b412c;border:1px solid #8b8055;border-radius:3px;align-self:flex-start;padding:5px 9px;font-size:10px;display:inline-flex}.mini-log{color:var(--muted);font-size:10px;line-height:1.9}.mini-log p{font-size:10px}@media (max-width:700px){.home-slogan{letter-spacing:2px;margin:0 0 18px;font-size:24px}.hero-ticket-sample>span{max-width:105px;padding:7px;font-size:8px;line-height:1.7}.hero-ticket{bottom:116px;right:16px}.train-legend{min-width:140px;font-size:10px}.train-legend .train-icon{width:60px;height:36px}}@media (max-width:370px){.hand{gap:8px}.hand .card{width:62px}.hand.six{gap:4px}.hand.six .card{width:44px}}.card{--card-number-size:25px;--card-number-wide:21px;--card-badge-size:24px;--card-score-size:12px;--card-train-width:32px;--card-train-height:20px;--card-column-gap:2px;--card-row-gap:1px;--card-head-gap:2px}.card .card-head{justify-content:space-between;align-items:center;gap:var(--card-head-gap);flex-shrink:0;width:100%;min-width:0;display:flex}.card .number{font-family:var(--font-number);font-size:var(--card-number-size);color:#302820;letter-spacing:-.7px;z-index:1;white-space:nowrap;font-weight:700;line-height:.96;position:relative}.card[data-number-digits="3"] .number{font-size:var(--card-number-wide)}.card .score-badge{width:var(--card-badge-size);height:var(--card-badge-size);color:#4b2f15;filter:drop-shadow(0 1px .45px #79551b40);flex-shrink:0;place-items:center;display:inline-grid;position:relative}.card .score-badge img{width:100%;height:100%;position:absolute;inset:0}.card .score-badge b{font-family:Arial,sans-serif;font-size:var(--card-score-size);font-weight:800;line-height:1;position:relative;transform:translateY(.25px)}.card .symbols{gap:var(--card-row-gap) var(--card-column-gap);flex:1;grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;place-items:center;width:100%;min-height:0;padding:0;display:grid}.card .train-icon{width:100%;max-width:var(--card-train-width);height:var(--card-train-height)}.card[data-icon-count="1"] .symbols{grid-template-columns:minmax(0,1fr)}.card[data-icon-count="1"] .train-icon{max-width:calc(var(--card-train-width)*1.4);height:calc(var(--card-train-height)*1.4)}.card:is([data-icon-count="3"],[data-icon-count="5"]) .train-icon:last-child{grid-column:1/-1}.hand.six .card{--card-train-width:29px;--card-train-height:19px}.hero-ticket-sample .card{--card-number-size:22px;--card-number-wide:18px;--card-badge-size:22px;--card-score-size:11px;--card-train-width:25px;--card-train-height:16px}.hero-cards .card{--card-number-size:29px;--card-number-wide:25px;--card-badge-size:28px;--card-score-size:14px;--card-train-width:38px;--card-train-height:25px}.rail-cards .card{--card-number-size:17px;--card-number-wide:15px;--card-badge-size:18px;--card-score-size:10px;--card-train-width:21px;--card-train-height:13px;--card-row-gap:.5px;--card-head-gap:1px}@media (min-width:1450px){.rail-cards .card{--card-number-size:19px;--card-number-wide:17px;--card-badge-size:20px;--card-score-size:11px;--card-train-width:24px;--card-train-height:14.5px}}@media (max-width:1000px){.hand.six .card{--card-number-size:23px;--card-number-wide:18px;--card-badge-size:22px;--card-score-size:11px;--card-train-width:24px;--card-train-height:16px}.rail-cards .card{--card-number-size:14px;--card-number-wide:12px;--card-badge-size:15px;--card-score-size:9px;--card-train-width:17px;--card-train-height:11px;--card-column-gap:1px;padding:3px}.rail-cards .card.last{padding:2px}}@media (max-width:700px){.hand .card{--card-number-size:22px;--card-number-wide:18px;--card-badge-size:21px;--card-score-size:11px;--card-train-width:28px;--card-train-height:18px;--card-head-gap:1px}.hand.six{width:100%;max-width:346px;margin-inline:auto;display:flex}.hand.six .card{--card-number-size:18px;--card-number-wide:14px;--card-badge-size:20px;--card-score-size:10px;--card-train-width:20px;--card-train-height:14px;--card-column-gap:1px;width:min(49px,16.6667% - 6.66667px);min-width:0}.hero-ticket-sample .card{--card-number-size:18px;--card-number-wide:14px;--card-badge-size:19px;--card-score-size:10px;--card-train-width:20px;--card-train-height:13px;--card-column-gap:1px;--card-head-gap:1px}.rail-cards .card{--card-number-size:13px;--card-number-wide:11px;--card-badge-size:14px;--card-score-size:8px;--card-train-width:15px;--card-train-height:10px;padding:2px}.rail-cards .card.last{padding:1px}}@media (max-width:390px){.hand.six{gap:4px;padding-inline:4px}.hand.six .card{width:min(49px,16.6667% - 3.33333px)}}@media (max-width:370px){.hand .card{--card-train-width:24px;--card-train-height:15px}.hand.six .card{--card-number-size:14px;--card-number-wide:12px;--card-badge-size:18px;--card-score-size:10px;--card-train-width:18px;--card-train-height:12px;padding:2px}.rail-cards .card{--card-number-size:12px;--card-number-wide:9px;--card-badge-size:13px;--card-score-size:8px;--card-train-width:13px;--card-train-height:9px;--card-head-gap:0px;padding-inline:1px}.rail-cards .card.last{padding-inline:0}}.card{transform:translateY(var(--card-offset,0px)) rotate(var(--card-tilt,0deg));transform-origin:50% 75%}.train-icon{flex:none;justify-content:center;align-items:center;display:inline-flex}.train-icon svg{width:100%;height:100%;display:block}.ui-locomotive{vertical-align:middle;justify-content:center;align-items:center;display:inline-flex}.ui-locomotive svg,.station-scene svg{width:100%;height:100%;display:block}.card.selectable,.btn,.track{transition:transform .14s,box-shadow .14s,border-color .14s}.card.selectable:active{transform:translateY(1px)rotate(0)scale(.985)}.btn:active:not(:disabled){transform:translateY(1px)scale(.99)}.reveal-item{transform-origin:50%;backface-visibility:hidden}.motion-ghost{box-sizing:border-box;overflow:hidden}.motion-demo-stage{border-top:1px solid #b48a5055;border-bottom:1px solid #b48a5055;justify-content:center;align-items:center;gap:14px;min-height:174px;margin:18px 0;padding:24px 10px;display:flex}.motion-demo-stage .card{width:82px;height:124px}.motion-demo-stage .train-icon{width:30px;height:20px}.demo-scene-score{text-align:center;color:#e1bb79;min-height:42px;margin:6px 0 20px;font-size:24px;font-weight:800}.demo-scene-score.loss{color:#efb18e}.demo-scene-score.gain{color:#ead4a1}.board-notice{align-items:center;min-height:62px;margin-bottom:3px;display:grid}.board-notice>.board-label,.board-notice>.event-feedback-slot{grid-area:1/1}.board-notice.has-event>.board-label{visibility:hidden}.event-feedback-slot[hidden]{display:none}.event-feedback{--event-color:#e4c17a;min-height:54px;color:var(--event-color);background:linear-gradient(110deg,#3c3a23,#202b23);border:1px solid #927c4c;border-radius:3px;align-items:center;gap:10px;padding:7px 10px;display:flex}.event-feedback[data-tone=overload]{--event-color:#f0b298;background:linear-gradient(110deg,#4b3027,#292820);border-color:#a36f58}.event-feedback[data-tone=reroute]{--event-color:#b7d0bb;background:linear-gradient(110deg,#283d31,#202b23);border-color:#648d77}.event-feedback-symbol{width:27px;height:27px;font:700 21px/1 var(--font-number);border:1px solid;border-radius:50%;flex:none;place-items:center;display:grid}.event-feedback[data-tone=overload] .event-feedback-symbol{border-radius:4px}.event-feedback-copy{flex:1;min-width:0}.event-feedback-copy strong{letter-spacing:.5px;font-size:13px;line-height:1.35;display:block}.event-feedback-copy small{color:#ded5bf;overflow-wrap:anywhere;margin-top:3px;font-size:10px;line-height:1.4;display:block}.event-feedback-score{font-family:var(--font-number);white-space:nowrap;flex:none;font-size:19px;line-height:1.2}.track[data-event-feedback]{outline-offset:1px;outline:1px solid #c8a766;box-shadow:inset 0 0 22px #c8a76625}.track[data-event-feedback=overload]{outline-color:#d69778;box-shadow:inset 0 0 22px #d6977825}.track[data-event-feedback=reroute]{outline-color:#8eb799;box-shadow:inset 0 0 22px #8eb79925}.result>.event-feedback-slot{margin-bottom:16px}.event-feedback-live{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:700px){.event-feedback{gap:7px;padding:6px 7px}.event-feedback-copy strong{font-size:12px}.event-feedback-copy small{font-size:9px}.event-feedback-score{font-size:16px}.event-feedback-symbol{width:24px;height:24px;font-size:19px}}@media (max-width:370px){.board-notice{min-height:72px}}@media (hover:hover) and (pointer:fine){.card.selectable:hover{transform:translateY(-4px) rotate(clamp(-2deg,var(--card-tilt,0deg),2deg));z-index:3}.btn:hover:not(:disabled){transform:translateY(-1px)}}[data-reduced-motion=true] .card,[data-reduced-motion=true] .btn,[data-reduced-motion=true] .track{transition:none!important}[data-reduced-motion=true] .card.selectable:hover{transform:translateY(var(--card-offset,0px)) rotate(var(--card-tilt,0deg))}[data-reduced-motion=true] .btn:hover{transform:none}[data-reduced-motion=true] .spinner{animation:none!important}[data-reduced-motion=true] .victory-fireworks{display:none}.result{position:relative}.victory-fireworks{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.victory-fireworks canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.card.selectable:hover{transform:translateY(var(--card-offset,0px)) rotate(var(--card-tilt,0deg))}.btn:hover{transform:none}}:root:lang(zh-Hant){--font-body:"Noto Sans TC","Microsoft JhengHei","PingFang TC",sans-serif;--font-display:"Noto Serif TC","PMingLiU","Songti TC",serif}:root:lang(ja){--font-body:"Yu Gothic","YuGothic","Hiragino Sans","Meiryo","Noto Sans JP",sans-serif;--font-display:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif}:root:lang(ko){--font-body:"Malgun Gothic","Apple SD Gothic Neo","Noto Sans KR",sans-serif;--font-display:"Malgun Gothic","Apple Myungjo","Noto Serif KR",serif}.language-picker{flex-shrink:0;align-items:center;min-height:44px;display:inline-flex;position:relative}.language-picker select{color:#f3e4c5;max-width:142px;min-height:44px;font:inherit;cursor:pointer;background:#2b2520;border:1px solid #8b7654;border-radius:3px;padding:9px 25px 9px 10px;font-size:12px}.language-picker select:focus-visible{outline-offset:3px;outline:2px solid #e0c282}.language-picker option{color:#f3e4c5;background:#2b2520}.modal-language{border-top:1px solid var(--line);justify-content:flex-end;margin-top:18px;padding-top:14px;display:flex}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.card.last:after{content:attr(data-tail-label)}:lang(en) .brand strong{letter-spacing:.4px;font-size:25px}:lang(en) .brand small{letter-spacing:.6px}:lang(en) .home-title{letter-spacing:-1.5px;font-size:clamp(48px,5.2vw,78px);line-height:1.05}:lang(en) .home-slogan{letter-spacing:0;font-size:clamp(23px,2.5vw,35px);line-height:1.25}:lang(en) .eyebrow,:lang(en) .station-kicker{letter-spacing:1px;line-height:1.6}:lang(en) .btn{white-space:normal;line-height:1.4}:lang(en) .field-label{flex-wrap:wrap;gap:5px}:lang(en) .deck-option small{line-height:1.5}:lang(en) .summary dl{grid-template-columns:minmax(0,1fr) auto}:lang(en) .summary dd{text-align:right;max-width:125px}:lang(en) .status-band{height:auto}:lang(en) .status-band>div:first-child{min-width:0}:lang(en) .status-band strong{line-height:1.4}:lang(en) .track-label small{letter-spacing:0;font-size:8px}:lang(en) .track-info{overflow-wrap:anywhere}:lang(en) .player .name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}:lang(en) .player>div{min-width:0}:lang(en) .player-score{white-space:normal;overflow-wrap:anywhere;line-height:1.35}:lang(en) .modal .row{flex-wrap:wrap}:lang(en) .modal .row>.btn{flex:120px}:lang(en) .home-friends{flex-wrap:wrap;row-gap:12px}:lang(en) .hero-scene>.station-sign{white-space:normal;letter-spacing:1px;text-align:center;max-width:calc(100% - 26px);line-height:1.4}:lang(en) .hero-bottom{letter-spacing:0;text-align:center;justify-content:center;gap:6px;line-height:1.4;inset-inline:10px}:lang(en) .hero-bottom .line{flex:1;min-width:10px;max-width:30px}:lang(en) .design-dock .row{flex-wrap:wrap}:lang(en) .hand-top{align-items:flex-start;gap:10px}:lang(en) .hand-top small{text-align:right}@media (max-width:700px){.header{gap:8px}.header .brand{min-width:0}.topnav{gap:7px}.topnav>.avatar{display:none}.language-picker select{width:108px;padding:9px 6px;font-size:11px}:lang(en) .brand strong{letter-spacing:0;font-size:18px}:lang(en) .brand small{letter-spacing:0;max-width:140px;font-size:7px}:lang(en) .brand{gap:7px}:lang(en) .home-title{max-width:330px;font-size:55px}:lang(en) .home-slogan{font-size:23px}:lang(en) .home-actions{flex-wrap:wrap}:lang(en) .home-actions>.btn{flex:135px}:lang(en) .home-copy{max-width:100%;font-size:12px}:lang(en) .hero-ticket-sample>span{max-width:130px}:lang(en) .hero-ticket{text-align:center;max-width:145px;line-height:1.5}:lang(en) .settings-layout>.surface>.row{flex-wrap:wrap}:lang(en) .settings-layout .field.grow{min-width:135px}:lang(en) .deck-option{min-height:134px;padding-inline:6px}:lang(en) .deck-option b{font-size:12px}:lang(en) .edition-switch button{padding:9px 13px;line-height:1.4}:lang(en) .table-head{flex-wrap:wrap}:lang(en) .table-head h1{letter-spacing:0;font-size:20px}:lang(en) .track-label small{font-size:6px}:lang(en) .track-info strong{font-size:9px;line-height:1.3}:lang(en) .track-info small{font-size:7px;line-height:1.3}:lang(en) .rail-cards .card.last:after{padding-inline:2px;font-size:6px}:lang(en) .progress-steps{flex-wrap:wrap}:lang(en) .progress-steps span{padding:5px 6px}:lang(en) .mobile-actions .action-copy{flex-wrap:wrap}}@media (max-width:370px){.language-picker select{width:99px}:lang(en) .brand strong{font-size:16px}:lang(en) .brand small{max-width:120px}:lang(en) .brand-mark{width:29px;height:33px}:lang(en) .home-title{font-size:47px}:lang(en) .home-slogan{font-size:21px}:lang(en) .edition-switch button{padding:9px 10px;font-size:10px}}:lang(ja) .btn,:lang(ko) .btn{white-space:normal;line-height:1.4}:lang(ja) .home-slogan,:lang(ko) .home-slogan,:lang(ja) .home-title,:lang(ko) .home-title{letter-spacing:0}:lang(ja) .status-band,:lang(ko) .status-band{height:auto}:lang(ja) .status-band strong,:lang(ko) .status-band strong{line-height:1.4}:lang(ja) .hero-scene>.station-sign,:lang(ko) .hero-scene>.station-sign{white-space:normal;letter-spacing:0;text-align:center;max-width:calc(100% - 26px);line-height:1.4}:lang(ja) .modal .row,:lang(ko) .modal .row{flex-wrap:wrap}:lang(ja) .modal .row>.btn,:lang(ko) .modal .row>.btn{flex:120px}:lang(ja) .player .name,:lang(ko) .player .name{text-overflow:ellipsis;overflow:hidden}@media (max-width:700px){:lang(ja) .home-actions,:lang(ko) .home-actions{flex-wrap:wrap}:lang(ja) .home-actions>.btn,:lang(ko) .home-actions>.btn{flex:135px}:lang(ja) .edition-switch button,:lang(ko) .edition-switch button{padding:9px 10px;line-height:1.4}:lang(ja) .table-head,:lang(ko) .table-head{flex-wrap:wrap}}.ui-locomotive{width:28px;height:25px;display:inline-flex}.ui-locomotive svg{width:100%;height:100%}.station-scene{height:100%}.brand:focus-visible,.link:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible{outline-offset:4px;outline:3px solid #f1cc83}.ownership-note{margin-top:18px;line-height:1.8}.connection-notice{color:#f2e7ce;border:1px solid #c8a466;justify-content:space-between;align-items:center;gap:12px;padding:12px;font-size:12px;display:flex}.motion-switch{color:var(--muted);background:0 0;border:0;align-items:center;gap:6px;min-width:44px;min-height:44px;font-size:12px;display:flex}.motion-switch[aria-pressed=true]{color:#f1cc83}.rail-cards .card.last:after{content:attr(data-tail-label)}.stack{flex-direction:column;gap:10px;display:flex}.mobile-actions .preview{margin-bottom:12px}.mobile-actions .btn+.btn{margin-top:10px}.hero-scene svg{width:100%;height:100%}.toast:empty{display:none}.modal .close{float:right;color:#4b3928;background:0 0;border:0;min-width:44px;min-height:44px;font-size:28px;line-height:1}.guide>h1{margin:14px 0;font-size:38px}.guide-colors{margin-top:22px}.guide-colors h2,.guide-colors>h3:first-child{margin:0 0 8px;font-size:26px}.guide-colors>h3{margin:8px 0}.guide-color-groups{flex-flow:wrap;align-items:center;gap:16px 22px;margin:18px 0 26px;display:flex}.guide-color{align-items:center;gap:10px;display:flex}.guide-color h3{align-items:center;gap:8px;margin:0;font-size:18px;display:flex}.guide-color h3 i{background:var(--swatch);border-radius:50%;width:12px;height:12px;box-shadow:inset 0 0 0 1px #0006,0 0 0 1px #e6d7b4}.guide-card-row{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.guide-colors .card{--card-number-size:18px;--card-number-wide:15px;--card-badge-size:18px;--card-score-size:10px;--card-train-width:26px;--card-train-height:16px;width:72px;height:101.854px;padding:4px}.guide-multi{flex-direction:column;gap:16px;margin-top:14px;display:flex}.guide-multi-card{align-items:center;gap:14px;min-width:0;display:flex}.guide-multi-card p{min-width:0;color:var(--muted);margin:0;font-size:13px;line-height:1.7}.modal button:focus-visible{outline-color:#742c34}html,body{width:100%;min-width:0}.brand{text-align:left}.btn{white-space:normal}.game-layout{align-items:start}@media (max-width:700px){.motion-switch span{display:none}.header{gap:8px}.topnav{gap:4px}.brand{min-width:0}.brand strong{white-space:nowrap}.brand small{letter-spacing:0}.language-picker select{max-width:96px}.guide>h1{font-size:30px}.guide-colors .card{width:64px;height:90.5366px}.hero-scene{min-height:310px}.hero-scene .station-scene{position:absolute;inset:0}.hero-scene .station-scene svg{object-fit:cover}.modal .row{flex-wrap:wrap}.modal .row>.btn{min-width:100px}}.card.last:after{content:attr(data-tail-label);color:#f6dfa5;max-width:calc(100% - 4px);font-family:var(--font-body);letter-spacing:0;white-space:nowrap;pointer-events:none;z-index:2;background:#402d20;border:1px solid #c7a164;border-radius:2px;padding:2px 5px;font-size:10px;font-style:normal;font-weight:500;line-height:1.2;position:absolute;inset:auto 0 -8px auto}.track-detail-cards{gap:18px 14px;padding-bottom:10px}.modal .track-detail-cards .card{--card-number-size:32px;--card-number-wide:27px;--card-badge-size:29px;--card-score-size:15px;--card-train-width:40px;--card-train-height:26px;border-radius:5px;width:104px;height:144px;padding:7px}.footer>span{white-space:nowrap;flex-shrink:0}@media (max-width:370px){.rail-cards .card{flex-shrink:1;min-width:0}}.account-summary{flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0;display:flex}.account-summary .pill{font-size:13px}.membership-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0;display:grid}.membership-card{min-width:0}.membership-card h2{margin:0 0 16px;font-size:30px}.membership-card p{line-height:1.8}.membership-card.current{outline:2px solid var(--gold,#c7a164);outline-offset:2px}.test-accounts{flex-wrap:wrap;gap:12px;margin:20px 0;display:flex}.permission-note{margin-top:14px}.permission-note .link{margin-top:8px;display:block}.account-link{min-height:44px;font-size:12px}.deck-option .plan-label{color:#e7c987;margin-top:8px;font-size:11px}.account-page>.surface+.surface{margin-top:20px}@media (max-width:700px){.membership-grid{grid-template-columns:1fr}.account-link{max-width:75px;line-height:1.25}.account-page .page-title{align-items:start;gap:16px}.test-accounts>.btn{width:100%}.account-page .page-title h1{font-size:30px}}.header .account-link{flex-shrink:0}@media (max-width:420px){.header{flex-wrap:wrap;gap:6px;height:auto;min-height:90px;padding:12px 0}.header .brand{flex-basis:100%}.header .topnav{justify-content:space-between;width:100%}.header .account-link{max-width:none}.header .motion-switch{min-width:44px}.header .language-picker select{max-width:110px}}.invitation-tools{flex-wrap:wrap;gap:8px;display:flex}.invitation-url{margin-top:18px;margin-bottom:15px;display:block}.invitation-url input{width:100%;min-width:0;margin-top:6px;padding:10px;font-size:13px;display:block}.account-identity{justify-content:space-between;align-items:center;gap:24px;margin-bottom:22px;display:flex}.account-identity h2{margin:14px 0 8px;font-size:24px}.account-identity p{line-height:1.7}.account-name,.account-email{overflow-wrap:anywhere}.account-actions{flex:0 290px;min-width:190px}.account-actions .btn{width:100%;margin-bottom:8px}.account-actions .google-signin{letter-spacing:0;color:#1f1f1f;min-height:44px;box-shadow:none;background:#fff;border:1px solid #747775;border-radius:4px;justify-content:center;align-items:center;gap:10px;padding:10px 12px;font-family:Google Sans,Arial,sans-serif;font-size:14px;font-weight:500;line-height:20px;display:flex}.google-signin img{object-fit:contain;background:#fff;flex:none}.google-signin:disabled{opacity:.7}@media (max-width:700px){.account-identity{flex-direction:column;align-items:stretch;gap:16px}.account-actions{flex:auto;min-width:0}.account-identity h2{font-size:22px}}.email-account{max-width:640px}.email-tabs{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.email-account fieldset{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.email-account label{margin-top:4px;font-weight:650}.email-account input{box-sizing:border-box;border:1px solid var(--line,#9c9c87);background:var(--paper,#f5efd9);color:#242e29;width:100%;min-width:0;font:inherit;border-radius:8px;padding:11px 12px;font-size:16px}.email-account input:focus-visible{outline-offset:2px;outline:3px solid #ae7429}.email-account fieldset:disabled{opacity:.6}.email-account .btn[type=submit]{justify-self:start;margin-top:8px}.social-logins{gap:8px;display:grid}.auth-consent{align-items:flex-start;gap:8px;margin:12px 0;font-size:12px;font-weight:400;line-height:1.8;display:flex}.auth-consent input{accent-color:#c5a15d;flex:none;width:18px;height:18px;margin-top:3px}.account-bindings{margin-bottom:22px}.binding-list{gap:12px;margin:20px 0;display:grid}.binding-row{border-bottom:1px solid #706e5066;grid-template-columns:100px 1fr auto;align-items:center;gap:12px;padding:12px 0;display:grid}.binding-row>div{flex-wrap:wrap;gap:8px;display:flex}.legal-links{flex-wrap:wrap;gap:16px;width:100%;margin-top:12px;display:flex}.legal-page{max-width:860px;margin:auto}.legal-page .surface{margin-bottom:22px}.legal-page section section{margin:24px 0}.legal-page h2{margin-bottom:8px;font-size:20px}.legal-page p{overflow-wrap:anywhere;line-height:1.9}.legal-preview{border-color:#c5a15d}[data-deletion-form]{gap:12px;margin-top:16px;display:grid}[data-deletion-form] input[type=text],#deletion-confirm{max-width:100%;font:inherit;padding:10px}@media (max-width:600px){.binding-row{grid-template-columns:1fr 1fr}.binding-row>div{grid-column:1/-1}.auth-consent{font-size:13px}}.email-account .auth-consent input{width:18px;padding:0}.track,.track.dim{border-color:#0000}.track.preview-track,.track.can-place{border-color:var(--brass);background:#283729}.track.picked{border-color:#e9c77d}.track:focus-visible{outline-offset:4px;outline:3px solid #f1cc83}.track-preview-label{color:#f2d48d;white-space:normal;margin-top:5px;font-size:10px;font-weight:600;line-height:1.35;display:block}.track-selection-hint{color:#e8d5ad;padding:12px 3px 2px;font-size:11px;line-height:1.65}.status-band[data-placement-kind=match]{background:#294135;border-color:#91ad82;box-shadow:inset 0 0 0 3px #1d3026}.status-band[data-placement-kind=match] small{color:#d0dfc6}.status-band[data-placement-kind=reroute]{background:#613b25;border-color:#e4a45d;box-shadow:inset 0 0 0 3px #402a1e}.status-band[data-placement-kind=reroute] small{color:#ffe0bb}.placement-kind-label{letter-spacing:.5px;color:#d0dfc6;align-items:center;gap:5px;margin-bottom:5px;font-size:10px;line-height:1.4;display:flex}[data-placement-kind=reroute] .placement-kind-label{color:#ffd095}.preview[data-placement-kind=reroute]{color:#ffe0bb;background:#513725;border-color:#e4a45d}.track.preview-track[data-track-hint=reroute],.track.can-place[data-placement-kind=reroute]{background:#3c3024;border-style:dashed;border-color:#ce995e}.track.picked[data-placement-kind=reroute]{border-style:solid;border-color:#ffd095;box-shadow:0 0 0 1px #e4a45d55}.track[data-track-hint=reroute] .track-preview-label{color:#ffd095}.track-selection-hint[data-track-hint=reroute]{color:#ffe0bb;background:#3c3024;border-left:3px solid #e4a45d;padding:10px 12px}@media (max-width:700px){.track-preview-label{font-size:8px}.track-selection-hint{padding-top:10px;font-size:10px}}@media (max-width:370px){.track-preview-label{font-size:7px}}.player-identity{flex-wrap:wrap;align-items:center;gap:4px 6px;min-width:0;max-width:100%;display:inline-flex}.player-statuses{vertical-align:middle;flex-wrap:wrap;align-items:center;gap:4px;max-width:100%;display:inline-flex}.player-status{color:#e2dbca;white-space:normal;overflow-wrap:anywhere;background:#393c32;border:1px solid #8c826b;border-radius:3px;align-items:center;gap:4px;padding:2px 5px;font-size:9px;font-weight:500;line-height:1.35;display:inline-flex}.player-status:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.player-status.is-offline{color:#efd0b8;background:#48332c;border-color:#966650}.player-status.is-bot{color:#f4d99d;border-color:var(--brass);background:#423923}.player .name{white-space:normal;line-height:1.5}.player>div{min-width:0}.player .check{flex-shrink:0}.seat .player-identity,.seat .player-statuses{text-align:center;justify-content:center}.ranking .player-identity{flex:1}.ranking .rank-score{flex-shrink:0}.control-return{border:1px solid var(--brass);background:#393727;border-radius:4px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 14px;padding:12px 14px;display:flex;box-shadow:inset 0 0 0 3px #262d22}.control-return strong{color:#f4d99d;font-size:12px;display:block}.control-return p{color:#ddd3bb;margin:4px 0 0;font-size:11px;line-height:1.6}.control-return .btn{flex-shrink:0;min-height:44px;padding:10px 16px}.host-away{color:#efd0b8;margin:12px 0;font-size:12px;line-height:1.7}.connected.is-offline{color:#efd0b8}.connected.is-offline .dot{background:currentColor}@media (max-width:700px){.player-strip,.player-strip.many{grid-template-columns:repeat(2,minmax(0,1fr))}.player-strip .player{align-items:flex-start;padding:7px}.player-status{padding:2px 4px;font-size:9px}.control-return{flex-wrap:wrap;gap:10px;padding:12px}.control-return>div{flex:180px}.control-return .btn{flex:150px;min-height:46px}.seat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.hero-scene{aspect-ratio:1568/1003;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;display:block;container-type:inline-size}.station-scene picture,.station-scene img{object-fit:contain;width:100%;height:100%;display:block}.hero-scene>.station-sign{letter-spacing:2px;max-width:85%;padding:8px 15px;font-size:clamp(9px,2.1cqw,14px);top:8.5cqw}.hero-ticket{max-width:36%;padding:8px 11px;font-size:clamp(9px,2cqw,12px);top:32cqw;bottom:auto;right:4%}.hero-ticket-sample{align-items:flex-end;gap:7px;max-width:43%;bottom:14%;left:3%}.hero-ticket-sample>span{min-width:0}@media (max-width:440px){.hero-scene{aspect-ratio:auto}.hero-scene .station-scene{position:relative}.station-scene img{height:auto}.hero-scene>.station-sign{letter-spacing:1px;padding:6px 9px}.hero-ticket{width:-moz-fit-content;width:fit-content;max-width:calc(100% - 22px);margin:-3% 3% 12px auto;padding:6px 8px;position:relative;top:auto;right:auto;transform:rotate(2deg)}:lang(en) .hero-ticket{letter-spacing:0;max-width:calc(100% - 22px);font-size:10px;line-height:1.4}.hero-ticket-sample{align-items:center;max-width:none;margin:0 3%;position:relative;bottom:auto;left:auto}.hero-ticket-sample>span{align-self:center;max-width:none;font-size:10px}:lang(en) .hero-ticket-sample>span{max-width:none}}.tutorial-invite{border:1px solid var(--brass);border-radius:var(--r-md);background:#2a2f25;justify-content:space-between;align-items:center;gap:16px;max-width:460px;margin-top:24px;padding:14px 16px;display:flex}.tutorial-invite strong{color:var(--paper);font-size:14px}.tutorial-invite p{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.7}.tutorial-invite .btn{flex:none}.coach{border:1px solid var(--brass);border-radius:var(--r-md);color:var(--ink);background:#2a2f25;border-left-width:4px;align-items:flex-start;gap:12px;margin:10px 0;padding:12px 14px;display:flex}.coach strong{color:var(--paper);font-size:14px;display:block}.coach p{color:var(--ink);margin:4px 0 0;font-size:12px;line-height:1.75}.coach>div{flex:1;min-width:0}.coach-badge{background:var(--brass);color:var(--coal);border-radius:3px;flex:none;padding:3px 8px;font-size:11px;font-weight:700}.coach-dismiss{flex:none;min-height:44px;font-size:12px}.tutorial-done{margin-top:14px}@media (max-width:700px){.tutorial-invite{flex-direction:column;align-items:stretch}.coach{flex-wrap:wrap}.coach-badge{order:-1}}.tutorial-progress{color:var(--paper);justify-content:space-between;align-items:center;gap:16px;margin:10px 0;font-size:13px;display:flex}.tutorial-progress p{margin:0}.tutorial-progress button{flex:none;min-height:44px}.tutorial-muted{opacity:.5}.tutorial-recap{color:var(--ink);line-height:2}.tutorial-complete .surface{max-width:560px;margin:auto}@media (max-width:700px){.tutorial-progress{align-items:flex-start;gap:8px}}.revealed-cards{margin:12px 0 16px}.revealed-cards h2{font-family:var(--font-body);color:var(--muted);margin:0 0 10px;font-size:11px;font-weight:500}.reveal-line{grid-template-columns:repeat(auto-fit,82px);justify-content:center;gap:12px;margin:0;padding:0;list-style:none;display:grid}.reveal-item{min-width:0;color:var(--muted);flex-direction:column;align-items:center;gap:6px;display:flex}.reveal-caption{align-items:center;gap:5px;width:100%;font-size:11px;line-height:1.5;display:flex}.reveal-order{background:var(--brass);width:17px;height:17px;color:var(--coal);font-family:var(--font-number);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.reveal-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.reveal-item .card{--card-number-size:24px;--card-number-wide:20px;--card-badge-size:23px;--card-score-size:12px;--card-train-width:31px;--card-train-height:19px;width:82px;height:112px;padding:5px}.reveal-item.is-next .card{border-color:var(--brass);box-shadow:0 3px #a28f6d,0 0 0 2px #cbac6c70,1px 6px 8px #0005}.reveal-item.is-next .reveal-caption,.reveal-turn{color:var(--brass)}.reveal-turn{min-height:15px;font-size:10px;line-height:1.5}.selection-count{color:var(--brass);margin-left:8px}.is-selecting .reveal-caption{justify-content:center}.is-waiting .reveal-turn{color:var(--muted)}.reveal-waiting{color:#b7b09c80;letter-spacing:4px;background:#18211b60;border:1px dashed #645a4370;border-radius:5px;place-items:center;width:82px;height:112px;font-size:24px;display:grid}.reveal-card-turn{width:82px;height:112px;transform-style:preserve-3d;position:relative}.reveal-front-layer,.reveal-back-layer{backface-visibility:hidden;position:absolute;inset:0}.reveal-front-layer{transform:rotateY(0)}.reveal-back-layer{transform:rotateY(180deg)}.reveal-card-turn .card{transform:none}@media (max-width:700px){.revealed-cards{margin:10px 0 12px}.reveal-line{grid-template-columns:repeat(auto-fit,72px);gap:8px 10px}.reveal-caption{gap:4px;font-size:10px}.reveal-item .card{--card-number-size:22px;--card-number-wide:18px;--card-badge-size:21px;--card-score-size:11px;--card-train-width:28px;--card-train-height:17px;--card-head-gap:1px;width:72px;height:100px;padding:4px}.reveal-waiting,.reveal-card-turn{width:72px;height:100px}}.card.card-back{background:#192f28;border-color:#bda36f;padding:0;overflow:hidden}.card.card-back:before,.card.card-back:after{display:none}.card-back .card-back-art{object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;min-height:0;display:block;position:absolute;inset:0}.growth-page{max-width:820px;margin:0 auto}.personal-nav{flex-wrap:wrap;gap:10px;margin:20px 0;display:flex}.personal-nav .btn{white-space:normal;min-height:44px}.personal-overview{justify-content:space-between;align-items:center;gap:20px;margin:20px 0;display:flex}.personal-overview>div{min-width:0}.personal-overview h2{overflow-wrap:anywhere}.personal-overview .pill{margin:8px 0;display:inline-block}.personal-actions{flex-wrap:wrap;flex:none;gap:10px;display:flex}.personal-actions .btn{white-space:normal;min-height:44px}.account-password{margin:20px 0}.account-password .btn[type=submit]{white-space:normal;max-width:100%;min-height:44px}.personal-security{margin:20px 0}.personal-security p{margin:12px 0}@media (max-width:540px){.personal-nav{gap:8px}.personal-nav .btn{flex:90px;padding:10px 8px}.personal-overview{flex-direction:column;align-items:stretch;padding:16px}.personal-actions .btn{flex:1}}.growth-eligibility{border:1px solid var(--line);border-radius:6px;margin:16px 0;padding:0 14px;font-size:13px;line-height:1.7}.growth-eligibility summary{cursor:pointer;min-height:44px;padding:11px 0;font-weight:600}.growth-eligibility summary:focus-visible{outline:2px solid var(--brass);outline-offset:3px}.growth-eligibility ul{margin:0 0 16px;padding-left:20px}.growth-eligibility li+li{margin-top:10px}.back-progress{flex-direction:column;gap:6px;width:100%;margin:8px 0;font-size:12px;display:flex}.back-progress progress{width:100%;height:7px;accent-color:var(--brass)}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.collection-item{text-align:center;flex-direction:column;align-items:center;gap:12px;display:flex}.collection-item p{flex:1}.card.collection-art,.card.journey-art{flex:none;width:120px;height:168px}.journey-current,.journey-achievement{align-items:center;gap:24px;margin:20px 0;display:flex}.achievement-badge{flex:none;width:104px;height:104px;display:inline-flex}.achievement-badge img{object-fit:contain;width:100%;height:100%;display:block}.achievement-badge.earned{filter:drop-shadow(0 3px 3px #0004)}.achievement-badge.locked{filter:grayscale();opacity:.6}.reward-strip{border:1px solid var(--line,#8a7755);border-radius:12px;flex-wrap:wrap;align-items:center;gap:12px;margin:16px 0;padding:16px;display:flex}.reward-strip>span{flex:220px}.reward-strip small{flex-basis:100%}.reward-strip .btn{min-height:44px}.reward-badges{flex-wrap:wrap;flex-basis:100%;gap:8px;display:flex}.reward-badges .achievement-badge{width:56px;height:56px}.seat .card.lobby-back{width:80px;height:112px;margin:auto}.ranking .card.result-back{flex:none;width:26px;height:36px;margin-right:8px}.result-actions{flex-wrap:wrap;gap:12px;margin:16px 0;display:flex}@media (max-width:540px){.collection-grid{gap:10px}.collection-item{padding:14px}.card.collection-art{width:88px;height:124px}.collection-item h2{font-size:18px}.journey-current,.journey-achievement{gap:16px}.card.journey-art{width:86px;height:120px}}.collection-intro{margin:16px 0 24px;line-height:1.7}.collection-item .btn{min-height:44px}.collection-plus{color:#f2e4c8;background:radial-gradient(at top,#263843,#111d28 70%);border:1px solid #ba9656;border-radius:8px;margin-top:24px;padding:26px;position:relative;box-shadow:inset 0 0 0 5px #15232d,inset 0 0 0 6px #705c3c}.collection-plus h2{color:#f1d69d}.collection-plus .plus-crest{color:#f1d69d;letter-spacing:.22em;font-size:12px}.collection-plus .card.collection-art{filter:drop-shadow(0 10px 16px #0007);width:150px;height:210px}.collection-plus p{max-width:450px}.journey-achievement>div{flex:1;min-width:0}.journey-achievement progress{accent-color:#b99b5b;width:min(100%,260px);height:8px}.journey-progress{margin-top:6px;font-size:13px;display:block}.reward-strip small{margin-top:6px;display:block}@media (max-width:540px){.achievement-badge{width:72px;height:72px}.journey-achievement{gap:12px;padding:16px}.collection-plus .card.collection-art{width:128px;height:179px}}.card-preview-trigger{appearance:none;color:var(--brass);cursor:zoom-in;font:inherit;background:0 0;border:0;border-radius:8px;flex-direction:column;align-items:center;gap:10px;padding:8px;display:flex}.card-preview-trigger>span{text-underline-offset:4px;font-size:12px;text-decoration:underline}.card-preview-trigger:hover{background:#c8a46612}.card-preview-trigger:focus-visible{outline:2px solid var(--brass);outline-offset:4px}.card-back-modal{width:min(680px,100%);max-width:680px;max-height:calc(100dvh - 34px);overflow-y:auto}.card-back-preview{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:28px;display:grid}.card-back-gallery{border:1px solid var(--line);background:radial-gradient(#354236,#15221b);border-radius:8px;justify-content:center;align-items:center;padding:20px 10px;display:flex}.card.preview-art{filter:drop-shadow(0 10px 16px #0008);flex:none;width:200px;max-width:100%;height:280px}.card-back-preview.is-plus .card-back-gallery{background:radial-gradient(#2d4150,#101b28);border-color:#ae8d50}.card-back-description{min-width:0;line-height:1.8}.card-back-description .plus-crest{color:#efd49a;letter-spacing:.2em;background:#15232d;border:1px solid #ae8d50;border-radius:4px;margin-bottom:12px;padding:3px 10px;display:inline-block}.card-back-description .btn{min-height:48px}.card-back-description .preview-status{color:#655337;font-size:12px}@media (max-width:700px){.seat .card.lobby-back{width:68px;height:95px}}@media (max-width:540px){.card-back-modal{padding:24px 18px}.card-back-preview{grid-template-columns:1fr;gap:18px}.card-back-gallery{padding:16px}.card.preview-art{width:170px;height:238px}.card-back-description{text-align:center}}@media (max-height:650px) and (max-width:540px){.card.preview-art{width:132px;height:185px}}.plus-collection-header{text-align:center;flex-direction:column;align-items:center;gap:12px;margin-bottom:24px;display:flex}.plus-collection-header h2{font-size:24px}.plus-collection-header p{color:#d6c6aa;font-size:13px;line-height:1.8}.plus-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.plus-back-item{background:#0e192533;border:1px solid #705c3c;border-radius:6px;min-width:0;padding:18px 12px}.plus-back-item h3{color:#f1d69d;overflow-wrap:anywhere;font-size:21px}.plus-back-item .btn{white-space:normal;width:100%;max-width:220px;margin-top:auto}@media (max-width:540px){.collection-plus{padding:18px 12px}.plus-collection-header{margin-bottom:18px}.plus-collection-header h2{font-size:21px}.plus-collection-grid{gap:12px}.plus-back-item{padding:14px 6px}.plus-back-item h3{font-size:17px}.collection-plus .card.collection-art{width:96px;height:134px}}@media (max-width:360px){.plus-collection-grid{grid-template-columns:1fr}.collection-plus .card.collection-art{width:128px;height:179px}}.wrap:has(>main.table){flex-direction:column;height:auto;min-height:100dvh;max-height:none;padding-bottom:20px;display:flex;overflow:visible}.wrap:has(>main.table)>.header{flex:none;height:58px}.wrap:has(>main.table)>main.table{flex:none;display:block}.wrap:has(>main.table)>.footer{display:none}.table .table-head{gap:12px;padding:8px 0 6px}.table-title{flex-wrap:wrap;align-items:baseline;gap:6px 14px;min-width:0;display:flex}.table .table-head h1{letter-spacing:1px;font-size:19px}.table .table-meta{margin-top:0}.table .table-head .icon-btn{width:34px;height:34px}.table .status-band{justify-content:flex-start;gap:12px;min-height:0;margin-bottom:8px;padding:7px 10px 7px 12px}.table .status-band .phase-badge{color:#f6dfa5;background:#00000030;border-color:#c79a63;flex:none;align-self:center;margin:0}.table .status-band .placement-kind-label{margin:0;display:inline-flex}.status-copy{flex-wrap:wrap;flex:1;align-items:baseline;gap:2px 12px;min-width:0;display:flex}.table .status-band strong{letter-spacing:.5px;font-size:15px}.table .status-band small{margin-top:0;display:inline}.table .timer{width:34px;height:34px;margin-left:auto;font-size:20px}.status-band:is([data-phase=locked],[data-phase=reveal],[data-phase=bot],[data-phase=between]){background:#232d26;border-color:#5d5a45;box-shadow:inset 0 0 0 3px #19211b}.status-band:is([data-phase=locked],[data-phase=reveal],[data-phase=bot],[data-phase=between]) small{color:var(--muted)}.table .revealed-cards{background:#19221c;border:1px solid #3a463c;border-radius:4px;margin:0 0 8px;padding:6px 10px}.table .revealed-cards h2{margin:0 0 4px;font-size:10px}.table .reveal-line{grid-template-columns:repeat(var(--seats),minmax(0,1fr));gap:8px}.table .reveal-item{border:1px solid #0000;border-radius:4px;align-items:center;gap:3px;padding:8px 8px 6px;transition:background-color .2s,border-color .2s;position:relative}.table .reveal-item.me{background:#2a3025;border-color:#6f6244}.table .reveal-item.is-next{border-color:var(--brass);background:#36381f}.table .reveal-face{justify-content:center;align-items:flex-start;gap:10px;width:100%;display:flex}.table .seat-col,.table .card-col{flex-direction:column;align-items:center;min-width:0;display:flex}.table .seat-person{position:relative}.table .seat-meta{flex-direction:column;align-items:center;min-width:0;max-width:88px;margin-top:4px;display:flex}.table .reveal-turn{text-align:center;margin-top:3px}.table .seat-avatar{background:#e7d7b8;border-radius:50%;width:40px;height:40px;display:block;overflow:hidden;box-shadow:inset 0 0 0 2px #c8a466,0 0 0 3px #1a221c}.table .seat-avatar-art{width:100%;height:100%;display:block}.table .seat-person .reveal-order{position:absolute;bottom:-2px;right:-4px}.table .reveal-caption{justify-content:center;width:100%;font-size:12px;line-height:1.3}.table .reveal-caption .player-identity{justify-content:center;gap:2px 4px;min-width:0}.table .reveal-name{white-space:nowrap;text-overflow:ellipsis;color:#f2e7ce;min-width:0;max-width:88px;font-size:13px;display:block;overflow:hidden}.table .seat-meta>.player-statuses .player-status{white-space:nowrap;padding:1px 3px;font-size:8px}.table .reveal-item .player-score{color:#d9c89a;white-space:nowrap;margin:0;font-size:11px;line-height:1.2}.table .reveal-item .card{--card-number-size:22px;--card-number-wide:18px;--card-badge-size:20px;--card-score-size:11px;--card-train-width:26px;--card-train-height:16px;--card-head-gap:1px;padding:4px}.table .reveal-waiting{font-size:18px}.table .reveal-waiting.is-done{color:#8ea888;background:#1f2b22;border-style:solid}.table .reveal-turn{white-space:nowrap;min-height:13px;font-size:9px;line-height:1.4}.reveal-placed{opacity:.55;filter:saturate(.55)}.table .reveal-order{width:15px;height:15px;font-size:10px}.reveal-item.is-next .card{animation:1.6s ease-in-out infinite seat-next}@keyframes seat-next{0%,to{box-shadow:0 3px #a28f6d,0 0 0 2px #cbac6c70}50%{box-shadow:0 3px #a28f6d,0 0 0 4px #e9c77d,0 0 16px #e9c77d80}}.table .game-layout{grid-template-columns:minmax(0,1fr) 328px;align-items:start;gap:12px;overflow:visible}.table .game-layout>*{min-width:0}.table .board{height:auto;padding:6px 10px 0;display:block;position:relative;overflow:visible}.table .board-notice{min-height:0;margin-bottom:0}.table .board-notice.has-event>.board-label{visibility:visible}.table .board-label{padding:2px 3px 4px}.table .event-feedback-slot:not([hidden]){z-index:30;pointer-events:none;width:min(460px,100% - 16px);display:block;position:absolute;top:46%;left:50%;translate:-50% -50%}.table .event-feedback{isolation:isolate;color:#ffe7b4;background:linear-gradient(105deg,#2c2416 0%,#5a4320 46%,#1d2822 100%);border:0;border-radius:3px;gap:14px;min-height:0;padding:16px 18px 15px 16px;position:relative;overflow:hidden;box-shadow:0 22px 48px #000c,0 0 0 1px #f0d7a0,inset 0 0 0 4px #1a140c,inset 0 0 0 5px #c9a15a}.table .event-feedback[data-tone=overload]{background:linear-gradient(105deg,#3d221c 0%,#6e3428 48%,#241c18 100%);box-shadow:0 22px 48px #000c,0 0 0 1px #f0b298,inset 0 0 0 4px #1a100e,inset 0 0 0 5px #c47a62}.table .event-feedback[data-tone=reroute]{background:linear-gradient(105deg,#1d2e26 0%,#3d5340 46%,#242016 100%);box-shadow:0 22px 48px #000c,0 0 0 1px #b7d7c0,inset 0 0 0 4px #101814,inset 0 0 0 5px #7ea888}.event-feedback-flash{display:none}.table .event-feedback-flash{z-index:0;opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000,#fff8,#0000);width:24%;display:block;position:absolute;inset:0 auto 0 0;transform:skew(-16deg)}.table .event-feedback-symbol{z-index:1;background:#0004;border-width:2px;width:52px;height:52px;font-size:30px;position:relative}.table .event-feedback-copy{z-index:1;position:relative}.table .event-feedback-copy strong{font-family:var(--font-display);letter-spacing:3px;font-size:28px;line-height:1}.table .event-feedback-copy small{color:#f3e6cc;margin-top:6px;font-size:11px}.table .event-feedback-score{z-index:1;text-shadow:0 2px #0008;font-size:30px;position:relative}.table .event-feedback:before,.table .event-feedback:after{content:"";z-index:1;border:2px solid;width:12px;height:12px;position:absolute}.table .event-feedback:before{border-bottom:0;border-right:0;top:7px;left:7px}.table .event-feedback:after{border-top:0;border-left:0;bottom:7px;right:7px}.table .board>.track{align-items:center}.table .track{margin-top:6px;padding:6px 8px}.table .track.picked{padding:5px 7px}.table .track-label{align-self:center}.table .track-info{z-index:2;background:0 0;flex-direction:column;flex:none;justify-content:center;align-self:center;align-items:flex-end;gap:2px;width:max-content;margin-left:8px;padding-left:8px;display:flex;position:relative}.table .track-info strong{white-space:nowrap;line-height:1.2}.table .track:before,.table .track:after{content:none}.table .rail-cards{flex:auto;align-items:center;min-width:0;display:flex;position:relative}.table .rail-cards:before{content:"";z-index:-1;opacity:.7;pointer-events:none;background:repeating-linear-gradient(90deg,#0000 0 7px,#635244 7px 13px,#0000 13px 25px);position:absolute;inset:6px 0}.table .rail-cards:after{content:"";z-index:-1;opacity:.75;pointer-events:none;border-top:3px solid #a0997b;border-bottom:3px solid #928a72;position:absolute;inset:14px 0;box-shadow:0 -1px #d1c4a333,0 2px #080f0a}.table .rail-cards .card{aspect-ratio:82/116;--card-number-size:24px;--card-number-wide:20px;--card-badge-size:23px;--card-score-size:11px;--card-train-width:30px;--card-train-height:19px;flex:1 1 0;width:auto;min-width:0;max-width:78px;height:auto;padding:5px}.track.can-place{cursor:pointer}@media (hover:hover) and (pointer:fine){.track.can-place:hover{background:#2f3f2e;border-color:#e9c77d}}.table .track{position:relative}.table .track:has(.track-outcome)>.track-info{visibility:hidden}.track-outcome{z-index:4;pointer-events:none;background:#1b1710f2;border-radius:2px;flex-direction:column;align-items:flex-end;gap:1px;max-width:128px;padding:4px 7px 5px;line-height:1.15;display:flex;position:absolute;top:50%;right:6px;translate:0 -50%;box-shadow:0 8px 18px #000a,inset 3px 0 #e9c77d}.track-outcome small{color:#e8d9b6;margin:0;font-size:9px;display:block}.track-outcome b{font-family:var(--font-number);color:#f1d28c;font-size:20px;line-height:1}.track-outcome em{color:#2b2416;text-align:right;background:#e9c77d;border-radius:2px;padding:2px 5px;font-size:9px;font-style:normal;line-height:1.3}.track-outcome[data-tone=departure] b{color:#ffe29a}.track-outcome[data-tone=safe]{box-shadow:0 8px 18px #000a,inset 3px 0 #8fb58a}.track-outcome[data-tone=overload]{box-shadow:0 8px 18px #000a,inset 3px 0 #e0795d}.track-outcome[data-tone=overload] b{color:#f4a991}.track-outcome[data-tone=overload] em{color:#2a130d;background:#e0795d}.track-outcome[data-tone=reroute]{box-shadow:0 8px 18px #000a,inset 3px 0 #e4a45d}.track-outcome[data-tone=reroute] b{color:#ffd095}.track-outcome[data-tone=reroute] em{color:#2a1a0b;background:#e4a45d}.hand-panel{background:#252c25;border:1px solid #756342;border-radius:4px;flex-direction:column;gap:8px;padding:10px 12px;display:flex;position:relative;top:auto;overflow:visible;box-shadow:inset 0 0 0 3px #19221b}.hand-panel[data-placement-kind=reroute]{background:#342b21;border-color:#c78d55}.hand-panel .hand-top{gap:8px;margin:0}.hand-panel .hand{grid-template-columns:repeat(2,96px);justify-content:center;gap:10px 12px;padding:6px 0 12px;display:grid;overflow:visible}.hand-panel .hand .card{position:relative}.hand-panel .hand.six{grid-template-columns:repeat(3,78px);gap:8px}.hand-panel .hand .card,.hand-panel .hand.six .card{aspect-ratio:82/116;--card-number-size:29px;--card-number-wide:25px;--card-badge-size:28px;--card-score-size:14px;--card-train-width:37px;--card-train-height:23px;width:96px;height:135.805px}.hand-panel .hand.six .card{--card-number-size:24px;--card-number-wide:20px;--card-badge-size:23px;--card-score-size:11px;--card-train-width:30px;--card-train-height:19px;width:78px;height:110.341px}.hand-panel .hand-help{text-align:left;margin:0;line-height:1.6}.keys-hint{display:none}@media (hover:hover) and (pointer:fine){.keys-hint{display:inline}}.hand .card.selected.selectable:after{content:"✓";background:var(--brass);color:#1c1f18;text-align:center;border-radius:50%;width:20px;height:20px;font:700 12px/20px Arial,sans-serif;position:absolute;bottom:-10px;left:50%;translate:-50%;box-shadow:0 2px 6px #0006}.hand-actions{flex-direction:column;gap:8px;display:flex}.hand-panel .preview{padding:7px 10px;line-height:1.6}.hand-panel .preview strong{margin:1px 0;font-size:22px}.hand-panel .your-score{border-bottom:0;padding:6px 0 0}.hand-panel .score-num{font-size:32px}.special-status{line-height:1.5}.hand-foot{flex-direction:column;flex:none;gap:8px;margin-top:auto;padding-top:4px;display:flex}.public-clock,.status-exit,.bot-note,.auto-standin{display:none}.hand-row{display:block}.public-clock{justify-content:center;margin:0}.status-exit{min-height:34px;padding:6px 10px;font-size:12px}.bot-note{text-align:center;color:var(--muted);margin:2px 0 0;font-size:12px;line-height:1.4}.bot-note .btn{min-height:0;color:var(--brass);background:0 0;border:0;padding:0}.hand-panel .control-return{flex-direction:column;align-items:stretch;gap:8px;margin:0;padding:10px}.hand-panel .control-return .btn{width:100%}.track-hues{flex-flow:column;justify-content:center;align-items:flex-end;gap:2px;display:flex}.track-hue{box-shadow:none;color:var(--swatch);white-space:nowrap;background:0 0;align-items:center;gap:4px;padding:0;font-size:12px;line-height:1;display:inline-flex}.track-hue i{background:var(--swatch);width:9px;height:9px;box-shadow:none;border-radius:50%}.track-hue[data-color="4"]{color:#c9c3b6}.track-hue[data-color="4"] i{background:currentColor}.track-hue b{font-family:var(--font-number);color:inherit;font-size:14px;font-weight:700}.table .track-hue small{color:inherit;margin:0;font-size:11px;display:inline}.track-hue.is-near b{color:#ffe29a}.result-medal{width:50px;height:50px;overflow:hidden}.result-medal .ui-locomotive{justify-content:center;align-items:center;width:100%;height:auto}.result-medal .ui-locomotive svg{flex:none;width:100%;max-width:none;height:auto}.motion-fx{z-index:95;pointer-events:none;will-change:transform,opacity;position:fixed}.fx-score{color:#ffe29a;font:700 18px/1.1 var(--font-number);white-space:nowrap;background:#2d2a18;border:1px solid #e9c77d;border-radius:14px;padding:4px 10px;transform:translate(-50%,-50%);box-shadow:0 4px 14px #0007}.fx-score.is-penalty{color:#ffc2ad;background:#3e221d;border-color:#e0795d}.fx-steam{filter:blur(1px);background:radial-gradient(circle,#f4efe2 0,#f4efe2aa 40%,#0000 70%);border-radius:50%;width:24px;height:24px}.fx-burst{color:#fff3e8;width:66px;height:66px;font:800 30px/1 var(--font-number);background:radial-gradient(circle,#ff9d7a 0,#e0795d88 45%,#0000 70%);border-radius:50%;place-items:center;display:grid;transform:translate(-50%,-50%)}.fx-switch{color:#c9f0d4;width:38px;height:38px;font:700 22px/1 var(--font-number);background:#1f3a2b;border:2px solid #8fd0a6;border-radius:50%;place-items:center;display:grid;transform:translate(-50%,-50%)}[data-reduced-motion=true] .reveal-item.is-next .card{animation:none}@media (max-height:800px) and (min-width:701px){.wrap:has(>main.table)>.header{height:50px}.table .table-head{padding:6px 0 4px}.table .seat-avatar{width:34px;height:34px}.table .reveal-item .card,.table .reveal-waiting,.table .reveal-card-turn{width:64px;height:90.5366px}.table .reveal-item .card{--card-number-size:15px;--card-number-wide:13px;--card-badge-size:15px;--card-score-size:8px;--card-train-width:18px;--card-train-height:11px}.table .track{margin-top:4px}.table .rail-cards .card{width:68px;height:96.1951px}.hand-panel .hand{grid-template-columns:repeat(2,84px)}.hand-panel .hand .card,.hand-panel .hand.six .card{width:84px;height:118.829px}}@media (max-width:1000px) and (min-width:701px){.table .game-layout{grid-template-columns:minmax(0,1fr) 268px}.table .rail-cards .card{width:68px;height:96.1951px}.hand-panel .hand{grid-template-columns:repeat(2,84px)}.hand-panel .hand.six{grid-template-columns:repeat(3,70px)}.hand-panel .hand .card{width:84px;height:118.829px}.hand-panel .hand.six .card{width:70px;height:99.0244px}}@media (min-width:701px){.table .reveal-face{align-items:center}.table .seat-col{gap:5px}.table .seat-meta{gap:5px;margin-top:0;position:relative}.table .seat-meta>.player-statuses{justify-content:center;max-width:none;position:absolute;top:calc(100% + 5px);left:50%;transform:translate(-50%)}.table .reveal-caption,.table .reveal-name,.table .reveal-item .player-score{line-height:1}.table .card-col{position:relative}.table .reveal-turn{margin-top:0;position:absolute;top:calc(100% + 3px);left:0;right:0}.table .reveal-item{padding-bottom:22px}}@media (max-width:700px){.wrap:has(>main.table){height:auto;min-height:100dvh;overflow:visible}.wrap:has(>main.table)>.header{height:56px}.table .status-band small{display:none}.table .revealed-cards{padding:5px 6px}.table .reveal-line{grid-template-columns:repeat(min(var(--seats),4),minmax(0,1fr));gap:4px}.table .reveal-face{flex-direction:column;align-items:center;gap:2px}.table .card-col{order:-1}.table .seat-person{display:none}.table .seat-col,.table .seat-meta,.table .reveal-caption,.table .reveal-caption .player-identity{width:100%;min-width:0;max-width:100%}.table .seat-meta{flex-flow:wrap;justify-content:center;align-items:center;gap:0 3px;margin-top:0;display:flex}.table .seat-meta>.reveal-caption{flex:1 0 100%}.table .reveal-caption .player-identity{justify-content:center;display:flex}.table .reveal-name{max-width:100%;font-size:10px}.table .reveal-item .player-score{font-size:9px}.table .reveal-item .card,.table .reveal-waiting,.table .reveal-card-turn{aspect-ratio:82/116;width:46px;height:auto}.table .track{align-items:center;min-height:0}.table .rail-cards .card{aspect-ratio:82/116;--card-number-size:16px;--card-number-wide:13px;--card-badge-size:15px;--card-score-size:8px;--card-train-width:18px;--card-train-height:12px;--card-head-gap:1px;--card-column-gap:1px;flex:none;width:52px;max-width:52px;height:auto;padding:3px}.status-band .timer{display:none}.hand-row{align-items:center;gap:6px;display:flex}.public-clock{flex:none;justify-content:center;align-items:center;min-width:28px;margin:0;display:flex}.public-clock .timer{color:#e7c98a;width:auto;height:auto;margin:0;font-size:20px;line-height:1}.hand-row .hand,.hand-row .hand.six{flex:auto;min-width:0}.hand-foot>[data-do=exit]{display:none}.status-exit{margin-left:auto;display:inline-flex}.control-return{display:none}.bot-note,.auto-standin{display:block}.auto-status{display:none}.table .track-info{min-width:0;margin-left:auto;padding-left:6px}.track-hues{flex-direction:column;align-items:flex-end;gap:2px}.track-hue:nth-child(n+3),.table .track-hue small{display:none}.table .reveal-item .card{--card-number-size:15px;--card-number-wide:12px;--card-badge-size:14px;--card-score-size:8px;--card-train-width:17px;--card-train-height:11px}.table .game-layout{display:block;overflow:visible}.hand-panel .hand,.hand-panel .hand.six{align-items:center}.table .event-feedback{gap:10px;padding:12px 14px}.table .event-feedback-symbol{width:40px;height:40px;font-size:24px}.table .event-feedback-copy strong{letter-spacing:2px;font-size:22px}.table .event-feedback-score{font-size:24px}.hand-panel{z-index:20;padding:7px 10px max(8px,env(safe-area-inset-bottom));gap:7px;margin-top:10px;position:sticky;top:auto;bottom:20px;overflow:visible;box-shadow:0 -6px 18px #0008,inset 0 0 0 3px #19221b}.hand-panel .hand-help{font-size:11px;line-height:1.35}.hand-panel .preview{padding:5px 8px}.hand-panel .preview strong{font-size:19px}.hand-panel .btn{min-height:41px;padding-top:8px;padding-bottom:8px}.hand-panel .hand,.hand-panel .hand.six{justify-content:center;gap:7px;padding:3px 0 7px;display:flex;overflow:visible}.hand-panel .hand .card{aspect-ratio:82/116;--card-number-size:17px;--card-number-wide:14px;--card-badge-size:16px;--card-score-size:9px;--card-train-width:22px;--card-train-height:14px;--card-head-gap:1px;--card-column-gap:1px;flex:none;width:54px;height:auto;padding:3px}.hand-panel .hand.six .card{aspect-ratio:82/116;--card-number-size:14px;--card-number-wide:11px;--card-badge-size:13px;--card-score-size:8px;--card-train-width:16px;--card-train-height:11px;width:min(44px,16.6667% - 5.66667px);height:auto;padding:2px}.hand-panel .your-score,.special-status{display:none}}.table .revealed-cards{--seat-card-width:80px}.table .reveal-item .card,.table .reveal-waiting,.table .reveal-card-turn{width:var(--seat-card-width);height:calc(var(--seat-card-width) * 116 / 82)}.table .reveal-item .card.card-back{padding:0}.table .reveal-waiting{background:#111c1666;border-color:#98856588}.table .reveal-item.is-locked .card-back{box-shadow:0 3px #8e7951,0 0 0 1px #c8a46699}@media (min-width:701px){.table .revealed-cards:is([data-seat-count="5"],[data-seat-count="6"],[data-seat-count="7"],[data-seat-count="8"]) .reveal-face{flex-direction:column;gap:6px}.table .revealed-cards:is([data-seat-count="5"],[data-seat-count="6"],[data-seat-count="7"],[data-seat-count="8"]) .seat-person{display:none}.table .revealed-cards:is([data-seat-count="5"],[data-seat-count="6"],[data-seat-count="7"],[data-seat-count="8"]) .card-col{order:-1}.table .revealed-cards:is([data-seat-count="5"],[data-seat-count="6"],[data-seat-count="7"],[data-seat-count="8"]) .reveal-turn{margin-top:3px;position:static}.table .revealed-cards:is([data-seat-count="5"],[data-seat-count="6"],[data-seat-count="7"],[data-seat-count="8"]) .seat-meta{flex-flow:wrap;justify-content:center;gap:4px}.table .revealed-cards:is([data-seat-count="5"],[data-seat-count="6"],[data-seat-count="7"],[data-seat-count="8"]) .reveal-item{padding:6px 3px}}@media (max-height:800px) and (min-width:701px){.table .revealed-cards{--seat-card-width:72px}}@media (min-width:701px) and (max-width:1000px){.table .revealed-cards{--seat-card-width:64px}}@media (max-width:700px){.table .revealed-cards{--seat-card-width:56px}.table .reveal-item{padding:5px 2px}.table .reveal-turn{white-space:normal;min-height:13px}}@media (max-width:360px){.table .revealed-cards{--seat-card-width:52px}}.social-player{color:inherit;cursor:pointer;min-width:44px;min-height:44px;font:inherit;background:0 0;border:0;padding:6px}.social-player:focus-visible{outline-offset:3px;outline:2px solid #d9b267}.public-room-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:24px 0;display:grid}.weekly-list{gap:12px;padding:0;list-style:none;display:grid}.weekly-list li{align-items:center;gap:12px;display:flex}.weekly-list strong{margin-left:auto}.public-controls{gap:12px;margin:16px 0;display:grid}.public-controls .row{flex-wrap:wrap}.social-nav{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.modal-backdrop:has(.showcase-modal){justify-content:center;padding:20px}.modal.showcase-modal{--showcase-paper:#efe4cc;--showcase-ink:#302d24;--showcase-muted:#70634d;--showcase-gold:#ae8c50;--showcase-green:#20372f;--showcase-red:#782e37;background:var(--showcase-paper);width:min(700px,100%);max-width:700px;height:min(800px,90dvh);max-height:90dvh;color:var(--showcase-ink);border:1px solid var(--showcase-gold);text-align:left;border-radius:14px;flex-direction:column;padding:0;display:flex;overflow:hidden;box-shadow:0 24px 90px #0008}.showcase-modal *{box-sizing:border-box}.showcase-modal [hidden]{display:none!important}.showcase-topbar{flex:none;justify-content:space-between;align-items:center;gap:12px;padding:12px 22px 0;display:flex}.showcase-topbar #modal-title{letter-spacing:.12em;color:var(--showcase-muted);margin:0;font-size:16px}.showcase-close{width:44px;height:44px;color:var(--showcase-ink);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:30px;display:grid}.showcase-close:hover{background:#c5ad7f30}.showcase-identity{flex:none;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 24px 24px;display:grid}.showcase-avatar{background:var(--showcase-green);border:1px solid var(--showcase-gold);border-radius:16px;place-items:center;width:64px;height:64px;font-size:34px;display:grid}.showcase-person{min-width:0}.showcase-person h3{overflow-wrap:anywhere;margin:0 0 6px;font-size:21px;line-height:1.35}.showcase-modal .showcase-person p{color:var(--showcase-muted);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:13px;line-height:1.5;display:flex}.showcase-plus{border:1px solid var(--showcase-gold);letter-spacing:.06em;color:#795b29;border-radius:4px;padding:1px 7px;font:600 10px/1.6 system-ui}.showcase-ranking{text-align:right;border-left:1px solid #ae8c5050;gap:4px;max-width:160px;padding-left:16px;display:grid}.showcase-ranking span,.showcase-ranking small{color:var(--showcase-muted);font-size:11px}.showcase-ranking strong{font-size:15px;line-height:1.4}.showcase-tabs{border-bottom:1px solid #ae8c5060;flex:none;grid-template-columns:1fr 1fr;gap:24px;padding:0 24px;display:grid}.showcase-tabs button{min-height:48px;color:var(--showcase-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:10px 6px;font-size:15px;font-weight:600;line-height:1.4}.showcase-tabs button[aria-selected=true]{color:var(--showcase-red);border-bottom-color:var(--showcase-red)}.showcase-modal :is(button,summary,[tabindex]):focus-visible{outline:2px solid var(--showcase-red);outline-offset:-3px}.showcase-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:20px 24px 24px;overflow-y:auto}.showcase-modal .showcase-section-label{color:var(--showcase-muted);letter-spacing:.03em;justify-content:space-between;align-items:center;margin:0 0 16px;font-size:12px;display:flex}.showcase-section-label span{font-variant-numeric:tabular-nums}.showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:14px;margin:0;padding:0;list-style:none;display:grid}.showcase-item{text-align:center;background:#f9f2e35c;border:1px solid #b99c6738;border-radius:10px;flex-direction:column;align-items:center;min-width:0;padding:14px 10px;display:flex}.showcase-item.is-equipped{border-color:var(--showcase-gold);background:#fff8e980}.showcase-art{place-items:center;width:100%;height:112px;display:grid}.showcase-art .achievement-badge{width:112px;max-width:100%;height:112px;display:block}.showcase-item h4{overflow-wrap:anywhere;place-items:center;min-height:3em;margin:12px 0 5px;font-size:13px;font-weight:600;line-height:1.5;display:grid}.showcase-item-state{min-height:22px;color:var(--showcase-muted);padding:2px 6px;font:11px/1.5 system-ui}.showcase-item-state.is-accent{color:var(--showcase-red);background:#782e3710;border-radius:4px}.showcase-back-art{place-items:center;width:100%;height:194px;display:grid}.showcase-back-art img{aspect-ratio:5/7;object-fit:contain;filter:drop-shadow(0 3px 3px #0003);width:100%;max-width:138px;height:auto;margin:0;display:block;transform:none}.showcase-source{border-top:1px solid #ae8c5030;width:100%;margin-top:10px}.showcase-source summary{cursor:pointer;color:var(--showcase-muted);padding:9px 2px 2px;font-size:11px;list-style-position:inside}.showcase-modal .showcase-source p{text-align:left;margin:8px 0 0;font-size:11px;line-height:1.7}.showcase-empty{text-align:center;align-content:center;justify-items:center;min-height:200px;display:grid}.showcase-empty>span{color:var(--showcase-gold);font-size:56px}.showcase-modal .showcase-private-note{color:var(--showcase-muted);margin:0 0 16px;font-size:12px;line-height:1.7}.showcase-editor{border-top:1px solid #ae8c5060;margin-top:24px}.showcase-editor>summary{cursor:pointer;min-height:52px;padding:16px 0;font-size:13px}.showcase-editor>summary span{color:var(--showcase-muted);margin-left:10px;font-size:11px;display:inline-block}.showcase-editor fieldset{border:0;min-width:0;margin:0;padding:0}.showcase-editor-fields{grid-template-columns:1fr;gap:12px;display:grid}.showcase-editor label{margin:12px 0;font-size:12px;line-height:1.7;display:block}.showcase-editor select{width:100%;min-height:44px;color:var(--showcase-ink);background:#fbf5e8;border:1px solid #ae8c5070;border-radius:6px;margin-top:6px;padding:8px;display:block}.showcase-editor input[type=checkbox]{vertical-align:middle;width:20px;height:20px;accent-color:var(--showcase-red);margin-right:6px}.showcase-options{max-height:200px;overflow:auto}.showcase-actions{border-top:1px solid #ae8c5040;flex-wrap:wrap;gap:12px;margin-top:24px;padding-top:18px;display:flex}.showcase-modal .social-timer{background:var(--showcase-red);color:#fff;flex:none;margin:0;padding:12px 24px;font-size:12px;line-height:1.6}.lobby-profile-button{padding:0}.lobby-profile-button .card-back{pointer-events:none}@media (max-width:600px){.modal-backdrop:has(.showcase-modal){padding:10px}.modal.showcase-modal{border-radius:12px;height:92dvh;max-height:92dvh}.showcase-topbar{padding:8px 14px 0}.showcase-topbar #modal-title{font-size:13px}.showcase-identity{grid-template-columns:48px minmax(0,1fr);gap:10px 12px;padding:8px 16px 16px}.showcase-avatar{border-radius:12px;width:48px;height:48px;font-size:27px}.showcase-person h3{font-size:17px}.showcase-ranking{text-align:left;border:0;border-top:1px solid #ae8c5030;flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px 10px;max-width:none;padding:10px 0 0;display:flex}.showcase-ranking strong{font-size:12px}.showcase-ranking small{margin-left:auto}.showcase-tabs{gap:16px;padding:0 16px}.showcase-tabs button{font-size:14px}.showcase-scroll{padding:16px 14px 20px}.showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.showcase-item{padding:12px 8px}.showcase-art,.showcase-art .achievement-badge{height:94px}.showcase-art .achievement-badge{width:94px}.showcase-back-art{height:168px}.showcase-back-art img{max-width:120px}.showcase-item h4{font-size:12px}.showcase-editor>summary span{margin:5px 0 0 16px;display:block}.social-page .row{flex-wrap:wrap}}.social-seat-link{min-width:44px;max-width:100%;min-height:44px;color:inherit;font:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:4px;padding:0;display:flex}.social-seat-link .mini-avatar{flex-shrink:0;width:24px;height:24px;display:none}@media (max-width:700px){.social-seat-link .mini-avatar{display:block}.table .social-seat-link .reveal-name{white-space:normal;overflow-wrap:anywhere}}.table .revealed-cards:is([data-seat-count="5"],[data-seat-count="6"],[data-seat-count="7"],[data-seat-count="8"]) .social-seat-link .mini-avatar{display:block}.avatar-art{object-fit:cover;border-radius:inherit;width:100%;height:100%;display:block}.showcase-avatar{border:2px solid var(--showcase-gold);overflow:hidden}.table button.seat-avatar{border:2px solid #c8a466;min-width:0;min-height:0;padding:0}.mini-avatar{border-radius:50%;overflow:hidden}.weekly-list .social-player{text-align:left;align-items:center;gap:10px;display:flex}.weekly-avatar{border:1px solid #ae8c50;border-radius:50%;flex-shrink:0;width:36px;height:36px;display:block;overflow:hidden}.showcase-editor .avatar-picker{margin:12px 0 20px}.avatar-picker legend{margin-bottom:10px;font-size:12px;font-weight:700}.avatar-picker-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.showcase-editor .avatar-choice{cursor:pointer;text-align:center;background:#fbf5e880;border:2px solid #0000;border-radius:10px;flex-direction:column;align-items:center;gap:6px;margin:0;padding:7px 4px;font-size:10px;line-height:1.4;display:flex;position:relative}.avatar-choice input{opacity:0;width:1px;height:1px;position:absolute}.avatar-choice-art{aspect-ratio:1;border-radius:50%;width:100%;max-width:70px;display:block;overflow:hidden;box-shadow:0 0 0 1px #ae8c5055}.avatar-choice:has(input:checked){border-color:var(--showcase-red);color:#66222b;background:#e9d2ba;font-weight:700}.avatar-choice:has(input:focus-visible){outline:3px solid var(--showcase-green);outline-offset:2px}.avatar-choice:has(input:disabled){cursor:wait;opacity:.65}@media (max-width:520px){.avatar-picker-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}}.avatar-default-choice{align-items:center;gap:18px;display:flex}.showcase-editor .avatar-default-choice .avatar-choice{flex-shrink:0;width:120px}.avatar-default-choice>p{color:var(--showcase-muted);font-size:12px;line-height:1.7}.avatar-group-title{margin:20px 0 10px;font-size:12px;font-weight:700}.avatar-color-0{background:#20372f}.avatar-color-1{background:#782e37}.avatar-color-2{background:#36536b}.avatar-color-3{background:#635078}.avatar-color-4{background:#785939}.avatar-color-5{background:#3d6661}.avatar-color-6{background:#80504c}.avatar-color-7{background:#505c3a}.avatar-monogram svg{border-radius:inherit;width:100%;height:100%;display:block}.nickname-field{gap:8px;min-width:0;display:grid}.nickname-field input{box-sizing:border-box;width:100%;min-width:0;min-height:44px}.showcase-person h3,.social-player,.player-identity{overflow-wrap:anywhere}
