:root{font-family:Arial,Helvetica,sans-serif;color:#263e33;background:#f5f3ec;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;line-height:1.5;--green:#214f3b;--muted:#737b6e;--border:#dedfd3;--serif:Georgia,"Times New Roman",serif}*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ae7448;outline-offset:5px}h1,h2,h3,p{margin:0}button{color:inherit}main{max-width:1440px;margin:auto;min-height:calc(100vh - 211px)}.header{height:108px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 5.6%;gap:30px;max-width:1600px;margin:auto}.brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;color:var(--green)}.brand-mark{display:block;width:40px;height:46px;flex-shrink:0}.brand-copy{display:flex;flex-direction:column;gap:8px}.brand-wordmark{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:32px;font-weight:650;letter-spacing:-1.5px;line-height:1}.brand-dot{color:#a36f40}.brand-caption{display:block;font:7px Arial,sans-serif;letter-spacing:1.5px;line-height:1.2}.header nav{display:flex;gap:35px;font-size:13px}.header nav a{padding:14px 0;position:relative}.header nav a:hover,.header nav a.active{color:#a36f40}.header nav a.active:after{content:"";position:absolute;bottom:3px;left:0;right:0;height:2px;background:#a36f40}.header-tag{font-size:9px;letter-spacing:2px;color:var(--muted)}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:564px;padding:76px 5.6% 46px;gap:50px}.eyebrow{font-size:9px;letter-spacing:2.1px;font-weight:600;display:block;color:#66715d}.hero .eyebrow{display:flex;align-items:center;gap:14px}.small-line{height:1px;width:29px;background:#99a18a}.hero h1{font:clamp(43px,4.5vw,65px)/1.13 var(--serif);letter-spacing:-2.4px;margin:24px 0}.hero h1 em{font-weight:400;color:#66765b}.hero-copy>p{font-size:14px;color:var(--muted);line-height:1.8;margin:0 0 29px}.button{display:inline-flex;justify-content:center;align-items:center;gap:30px;min-height:48px;border:1px solid transparent;padding:13px 22px;font-size:12px;border-radius:4px;transition:background .15s,transform .15s}.button:hover:not(:disabled){transform:translateY(-1px)}.primary{color:#f7f7eb;background:var(--green)}.primary:hover:not(:disabled){background:#153b2a}.button span{font-size:18px}.hero-note{display:block;font-size:10px;color:var(--muted);margin-top:17px}.hero-art{position:relative;align-self:center;height:424px;border-radius:50% 50% 45% 45%;background:radial-gradient(ellipse,#dce1d1 0,#e7e9dd 46%,transparent 70%);isolation:isolate}.art-orbit{position:absolute;border:1px solid #d3d9c8;border-radius:50%;inset:2%;transform:rotate(-22deg)}.orbit-two{inset:11% -5%;transform:rotate(25deg)}.art-caption{position:absolute;top:4%;left:50%;transform:translate(-50%);font-size:8px;letter-spacing:2px;white-space:nowrap;color:#828977}.decor-tile{position:absolute;width:119px;height:165px;border-radius:13px;border:1px solid #f5f1e4;background:linear-gradient(120deg,#fffdf2,#eeecdc);box-shadow:5px 11px #b8b798,12px 22px 28px #4860442f;display:flex;flex-direction:column;align-items:center;justify-content:center}.decor-tile>span{font:60px/.88 var(--serif);text-align:center}.decor-tile small{font-size:6px;letter-spacing:1.3px;color:#989784;position:absolute;bottom:14px}.tile-left{top:105px;left:17%;transform:rotate(-19deg);z-index:2}.tile-left .bamboo-face{font-size:48px;font-weight:700;line-height:1.1;color:#3d7150}.tile-right{top:96px;right:14%;transform:rotate(17deg);z-index:1}.character-face{color:#a85344}.tile-front{bottom:39px;left:40%;transform:rotate(-4deg);z-index:3}.dragon-face{color:#3d7150}.art-seal{position:absolute;bottom:43px;right:7%;border:1px solid #a0a58e;padding:0 7px;font:25px/1.4 serif;color:#a0a58e;transform:rotate(5deg)}.modes{margin:14px 5.6% 0;display:grid;grid-template-columns:.9fr 1fr 1fr 1fr;gap:18px;padding:33px 0 42px;border-top:1px solid var(--border)}.section-intro{padding:18px 0}.section-intro h2{font:29px var(--serif);margin:12px 0}.section-intro p{font-size:12px;color:var(--muted)}.mode-card{border:1px solid var(--border);border-radius:6px;padding:24px 20px;position:relative;min-height:214px}.active-card{background:#edf0e5;transition:background .2s;border-color:#cfd8c2}.active-card:hover{background:#e4eada}.mode-icon{font-size:27px;color:#4d684e;line-height:1}.chip{font-size:7px;letter-spacing:1px;background:#e5e8dd;color:#66715d;border:1px solid #d9dfcf;border-radius:3px;padding:5px 7px;display:inline-block;white-space:nowrap;font-family:Arial,sans-serif;vertical-align:middle}.mode-card>.chip{float:right;font-size:6px}.mode-card h3{font:22px var(--serif);margin:18px 0 10px}.mode-card p{font-size:11px;line-height:1.8;color:var(--muted)}.card-link{display:flex;justify-content:space-between;margin-top:20px;font-size:10px;color:#365d40}.future-card{background:#f1f0e9}.future-card .mode-icon{color:#888f7d}footer{border-top:1px solid var(--border);padding:24px 5.6%;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:103px}footer .brand-caption{display:none}footer .brand-wordmark{font-size:24px}footer .brand-mark{width:30px;height:35px}footer>span{font:italic 13px var(--serif);color:#858a7b}.pwa-status{display:flex;align-items:center;gap:7px;font-size:9px;color:#747e6b}.status-dot{width:5px;height:5px;border-radius:50%;background:#a7aa9d}.status-dot.ready{background:#5f8358}.pwa-status button{font-size:9px;background:none;border:0;border-left:1px solid var(--border);margin-left:4px;padding-left:10px;color:var(--green)}.skip-link{position:absolute;left:10px;top:-100px;z-index:10;background:var(--green);color:#fff;padding:10px}.skip-link:focus{top:10px}.page{padding:35px 5.6% 70px}.back-link{font-size:11px;color:var(--muted)}.page-heading{margin:40px 0 35px}.page-heading h1{font:46px/1.15 var(--serif);letter-spacing:-1.2px;margin:15px 0}.page-heading p{color:var(--muted);font-size:13px;line-height:1.8}.setup-layout{display:grid;grid-template-columns:1.55fr 1fr;gap:42px}.setup-panel{padding:30px;background:#faf9f4;border:1px solid var(--border);border-radius:8px}.setup-panel h2{font-size:11px;color:#8b927e;margin-bottom:23px}.setup-panel h2 span{font:23px var(--serif);color:#2e4437;margin-left:13px}.setup-panel h2:not(:first-child){margin-top:35px}.ruleset-card{width:100%;text-align:left;border:1px solid var(--border);border-radius:6px;background:#faf9f4;display:flex;align-items:center;gap:19px;padding:23px}.ruleset-card.selected{background:#edf1e5;border-color:#849577}.ruleset-symbol{font:36px serif;padding:12px;background:#f6f4e7;border-radius:4px}.ruleset-card strong{display:block;font:20px var(--serif);margin-bottom:8px}.ruleset-summary{display:block;font-size:11px;color:#727c69}.ruleset-details{font-size:9px;color:#7c876f;display:block;margin-top:8px}.ruleset-card>.chip{align-self:flex-start}.field{display:flex;flex-direction:column;gap:9px;font-size:11px;color:#52614e;margin-top:20px}select{background:#f9f8f2;border:1px solid #d4dacb;border-radius:4px;padding:12px;color:#344a3a;font-size:12px;max-width:100%}.field-note{font-size:10px;color:#7d8673;margin-top:18px}.setup-aside{background:#e7ecdf;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:45px 35px}.aside-symbol{font:63px serif;margin-bottom:25px;color:#537450}.setup-aside h2{font:29px var(--serif);margin-bottom:20px}.setup-aside p{font-size:12px;line-height:1.9;color:#727d68;margin-bottom:20px}.setup-aside .button{margin-top:6px}.aside-note{font-size:9px;color:#7a8470;margin-top:16px}.table-page{padding:25px 4% 45px}.table-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.table-toolbar h1{font:29px var(--serif);margin-top:11px}.table-toolbar h1 .chip{margin-left:12px}.table-controls{display:flex;gap:10px}.secondary{border-color:#cfd8c5;background:#f3f3e9;gap:10px;padding:10px 15px;min-height:40px}.table-stage{height:min(62vw,590px);min-height:350px;border:1px solid #c7d0be;border-radius:10px;overflow:hidden;position:relative;background:#d8ded3}.scene-fallback{padding:60px 30px;text-align:center;color:#496046}.seat{position:absolute;pointer-events:none;font-size:8px;letter-spacing:1.5px;color:#3f5946;text-align:center;line-height:1.6;z-index:1;background:#dde3d5db;padding:7px 13px;border-radius:5px}.seat b{display:block;font-weight:400;font-size:9px;letter-spacing:0;color:#677461}.seat-north{top:13px;left:50%;transform:translate(-50%)}.seat-south{bottom:12px;left:50%;transform:translate(-50%)}.seat-west{left:12px;top:45%}.seat-east{right:12px;top:45%}.hand-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0 20px}.hand-controls p{font-size:11px;margin-top:7px;color:#6b7863}.accessible-hand{display:flex;column-gap:7px;row-gap:20px;flex-wrap:wrap}.hand-tile{background:#f9f7ed;border:1px solid #d8dacb;border-bottom:3px solid #babc9f;border-radius:5px;min-width:60px;padding:12px 7px 9px;display:flex;align-items:center;flex-direction:column;justify-content:space-between;gap:8px;transition:transform .15s;flex:0 0 clamp(60px,calc((100% - 91px)/14),90px);max-width:90px;height:132px}.hand-tile>span{font:28px serif}.hand-tile small{font-size:7px;color:#7d856f}.hand-tile.selected{transform:translateY(-5px);outline:2px solid #597749;background:#edf1df}.preview-note{font-size:10px;color:#788270;margin-top:22px}.settings-page,.help-page{max-width:1080px;margin:auto}.settings-panel{background:#faf9f3;padding:10px 30px 30px;border:1px solid var(--border);border-radius:8px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:24px 0;border-bottom:1px solid var(--border)}.setting-row h3{font:22px var(--serif);margin-bottom:9px}.setting-row p{font-size:12px;color:#7b8471}.setting-row input[type=checkbox]{width:19px;height:19px;accent-color:var(--green)}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:12px}.volume-field{max-width:350px;gap:17px}input[type=range]{accent-color:var(--green)}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.help-grid article{border:1px solid var(--border);padding:30px;border-radius:6px;background:#f9f8f1}.help-grid article>span{font-size:10px;color:#929982}.help-grid h2{font:27px var(--serif);margin:15px 0}.help-grid p{font-size:13px;color:#738169;line-height:1.9}.notice{margin:16px 5.6%;padding:10px 15px;background:#efe4d2;border:1px solid #d8c6a9;font-size:12px}@media(min-width:1450px){.hero{padding-top:95px}.hero-art{height:460px}.decor-tile{width:137px;height:185px}.tile-front{bottom:48px}.modes{margin-top:30px}}@media(max-width:1000px){.header-tag{display:none}.hero{gap:15px;padding-top:56px}.hero-art{height:380px}.decor-tile{width:101px;height:145px}.tile-left{left:10%}.tile-right{right:10%}.tile-front{left:36%;bottom:28px}.modes{grid-template-columns:repeat(3,1fr)}.section-intro{grid-column:1/-1;display:flex;align-items:baseline;gap:20px;padding:0}.section-intro h2{margin:0}.hero h1{font-size:48px}.setup-layout{gap:22px}.setup-panel{padding:24px}.setup-aside{padding:28px 22px}.ruleset-card{gap:12px;padding:16px}.ruleset-card>.chip{display:none}}@media(max-width:700px){.header{height:88px;padding:0 6%;gap:15px}.brand-wordmark{font-size:27px;letter-spacing:-1.2px}.brand-copy{gap:6px}.brand-caption{font-size:6px;letter-spacing:1px}.brand-mark{width:32px;height:37px}.header .brand-caption{display:none}.header .brand{gap:9px}.header nav{gap:17px;font-size:10px}.hero{grid-template-columns:1fr;padding:44px 6% 25px;gap:0}.hero-copy{position:relative;z-index:4}.hero h1{font-size:47px;letter-spacing:-1.8px}.hero-copy>p{font-size:13px}.hero-art{height:340px;max-width:400px;width:100%;margin:18px auto 0}.art-caption{top:8%}.tile-left{top:87px;left:18%}.tile-right{top:81px;right:15%}.tile-front{bottom:19px;left:40%}.art-seal{bottom:22px;right:11%}.modes{grid-template-columns:1fr;margin:0 6%;gap:12px;padding-top:25px}.section-intro{display:block;margin-bottom:12px}.section-intro h2{margin:10px 0}.mode-card{min-height:175px;padding:22px}.mode-card p{font-size:12px}.mode-card h3{margin-top:12px}.card-link{margin-top:14px}footer{flex-wrap:wrap;padding:20px 6%;gap:14px}footer>span{font-size:12px}.pwa-status{flex-basis:100%;padding-top:10px}.page{padding:25px 6% 45px}.page-heading{margin-top:30px}.page-heading h1{font-size:36px}.setup-layout{grid-template-columns:1fr}.setup-panel{padding:22px}.setup-aside{padding:32px}.setup-aside .aside-symbol{font-size:46px;margin-bottom:16px}.table-page{padding:22px 4%}.table-toolbar{flex-direction:column;align-items:flex-start}.table-toolbar h1{font-size:26px}.table-stage{height:430px;min-height:0}.seat{padding:6px 8px;font-size:7px}.seat-west{left:5px}.seat-east{right:5px}.hand-controls{align-items:flex-start}.hand-controls .button{gap:8px;padding:12px;font-size:10px;min-width:135px}.accessible-hand{column-gap:5px;row-gap:18px}.hand-tile{flex:0 0 calc(14.285% - 5px);min-width:0;height:100px;padding:9px 3px}.hand-tile>span{font-size:25px}.hand-tile small{font-size:6px}.help-grid{grid-template-columns:1fr}.setting-row{gap:15px}.setting-row p{font-size:11px}.setting-row h3{font-size:20px}.settings-panel{padding:6px 20px 25px}.setting-row select{max-width:125px;padding:10px;font-size:11px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}.button:hover:not(:disabled){transform:none}}.hero{overflow:clip}.resume-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 22px;margin-bottom:25px;background:#e7ecdf;border:1px solid #cfd8c2;border-radius:6px;font-size:13px}.score-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:15px}.score-strip>div{padding:12px 16px;border:1px solid var(--border);border-radius:5px;background:#f9f8f1}.score-strip strong{display:block;font-size:12px}.score-strip span,.score-strip small{display:block;font-size:10px;color:#65745d;margin-top:5px}.score-strip .current-seat{border-color:#7d9468;background:#e8eedf}.game-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.public-melds{font-size:11px;color:#5b6d53;line-height:1.9;margin-top:18px}.round-result{padding:25px;background:#e7ecdf;border-radius:8px;margin-top:24px;border:1px solid #cfd8c2}.round-result h2{font:30px var(--serif);margin:14px 0}.round-result p{font-size:12px;line-height:1.8;margin-bottom:18px}.result-payments{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;margin:20px 0}.result-payments b{margin-left:8px}.round-result .button{margin-top:6px}@media(max-width:700px){.score-strip{grid-template-columns:repeat(2,1fr)}.score-strip>div{padding:9px 12px}.resume-banner{flex-direction:column;align-items:flex-start}.game-actions .button{width:100%;gap:10px}.round-result h2{font-size:26px}}.update-notification{position:fixed;z-index:100;bottom:20px;right:20px;max-width:520px;display:flex;align-items:center;gap:20px;padding:20px;background:#f9f8f1;border:1px solid var(--green);border-radius:8px;box-shadow:0 8px 32px #183d3226;color:var(--green);font-size:14px}.update-notification strong{font-size:17px}.update-notification p{margin:8px 0 0;line-height:1.6;font-size:12px}.update-notification .button{flex-shrink:0}.update-notification p[role=alert]{color:#963b2d}@media(max-width:700px){.update-notification{left:12px;right:12px;bottom:12px;max-width:none;flex-wrap:wrap;padding:16px;gap:12px}}.app-version{font-family:Arial,Helvetica,sans-serif;font-size:11px;white-space:nowrap;color:var(--green);font-style:normal}@media(max-width:360px){.header{gap:10px}.header .brand-wordmark{font-size:24px}.header nav{gap:10px}.header nav a{white-space:nowrap}}.game-surface{position:relative}.fullscreen-toggle{position:absolute;top:12px;right:12px;z-index:3;padding:9px 12px;gap:8px;background:#f9f8f1;font-size:11px;box-shadow:0 2px 8px #183d3212}.fullscreen-toggle>span{font-size:18px;line-height:1}.fullscreen-error{position:absolute;top:62px;right:12px;z-index:4;max-width:260px;background:#efe4d2;padding:12px;font-size:12px}.seat-points{display:block;font-size:12px;font-weight:500;letter-spacing:0;line-height:1.5;font-variant-numeric:tabular-nums;color:var(--green)}.seat-bonuses{display:block;font-size:8px;letter-spacing:0}.seat.active-seat{background:#214f3b;border:1px solid #f0d18b;box-shadow:0 0 0 3px #f0d18b99,0 4px 16px #102f2866;color:#fff8e8}.seat.active-seat b,.seat.active-seat .seat-points{color:#fff8e8}.seat.active-seat b{font-weight:700}.seat.active-seat .seat-heading:before{content:"";width:6px;height:6px;flex-shrink:0;border-radius:50%;background:#f0d18b}.game-surface:fullscreen,.game-surface.expanded{width:100%;height:100dvh;padding:16px;background:#f5f3ec;overflow:auto}.game-surface.expanded{position:fixed;inset:0;z-index:90}.game-surface:fullscreen .table-stage,.game-surface.expanded .table-stage{height:calc(100dvh - 235px);min-height:240px}.game-surface:fullscreen .fullscreen-toggle,.game-surface.expanded .fullscreen-toggle{top:28px;right:28px}.game-surface:fullscreen .hand-controls,.game-surface.expanded .hand-controls{margin:12px 0}.game-surface:fullscreen .hand-tile,.game-surface.expanded .hand-tile{height:90px}.game-surface:fullscreen .public-melds,.game-surface.expanded .public-melds{margin-top:10px}.game-surface:fullscreen::backdrop{background:#f5f3ec}@media(max-width:700px){.seat-points{font-size:11px}.fullscreen-toggle{top:9px;right:9px;padding:8px 10px;font-size:10px}.game-surface:fullscreen,.game-surface.expanded{padding:10px}.game-surface:fullscreen .table-stage,.game-surface.expanded .table-stage{height:calc(100dvh - 335px)}.game-surface:fullscreen .fullscreen-toggle,.game-surface.expanded .fullscreen-toggle{top:19px;right:19px}}.game-surface:fullscreen,.game-surface.expanded{padding:0;overflow:hidden}.game-surface:fullscreen .table-stage,.game-surface.expanded .table-stage{height:100dvh;min-height:0;width:100%;border:0;border-radius:0}.game-surface:fullscreen .hand-controls,.game-surface.expanded .hand-controls,.game-surface:fullscreen .accessible-hand,.game-surface.expanded .accessible-hand,.game-surface:fullscreen .game-actions,.game-surface.expanded .game-actions,.game-surface:fullscreen .public-melds,.game-surface.expanded .public-melds{display:none}.game-surface:fullscreen .fullscreen-toggle,.game-surface.expanded .fullscreen-toggle{top:12px;right:12px}.fullscreen-status{display:none}.tile-action-overlay{display:block;position:absolute;inset:0;z-index:4;pointer-events:none}.tile-action-line{position:absolute;inset:0;overflow:visible;pointer-events:none;filter:drop-shadow(0 1px 2px #183d3255)}.tile-action-line line{stroke:#f9f7ed;stroke-width:2}.tile-action-line circle{stroke:#214f3b;stroke-width:1;fill:#f9f7ed}.tile-action-panel{position:absolute;pointer-events:auto;width:max-content;min-width:min(150px,100%);max-width:340px;overflow:auto;padding:12px;background:#faf8ef;border:1px solid #c4ccb8;border-radius:8px;box-shadow:0 6px 24px #183d3233}.tile-action-caption{display:block;font-size:10px;color:#65745d;text-align:center;margin-bottom:9px}.tile-action-buttons{display:flex;gap:7px;flex-wrap:wrap;justify-content:center}.tile-action-buttons .button{padding:11px 15px;font-size:12px;min-height:42px}.tile-action-options{display:grid;gap:6px;margin-bottom:9px}.tile-action-options button{padding:10px;border:1px solid #c4ccb8;border-radius:4px;background:#f5f3ec;color:var(--green);font-size:11px;text-align:left;min-height:42px}.tile-action-options button[aria-pressed=true]{border-color:#597749;background:#e8eedf}.game-surface:fullscreen .fullscreen-status,.game-surface.expanded .fullscreen-status{display:block;position:absolute;top:14px;left:14px;z-index:2;font-size:11px;max-width:220px;pointer-events:none;background:#f5f3ecdd;padding:9px 12px;border-radius:5px}.fullscreen-status strong{font-weight:500}.fullscreen-camera{display:block;position:absolute;right:12px;top:64px;z-index:3;padding:9px 12px;font-size:11px;background:#f9f8f1}.fullscreen-recovery{display:flex;flex-direction:column;align-items:center;gap:12px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:6;background:#efe4d2;color:#493e29;border:1px solid #cab990;border-radius:8px;box-shadow:0 8px 24px #0002;padding:20px;width:max-content;max-width:min(460px,calc(100% - 32px));font-size:13px;text-align:center;overflow-wrap:anywhere}[data-theme=dark] .fullscreen-recovery{background:#493e29;border-color:#756144;color:#eedbb4}.game-surface:fullscreen .round-result,.game-surface.expanded .round-result{position:absolute;top:50%;bottom:auto;left:50%;transform:translate(-50%,-50%);z-index:6;width:min(600px,calc(100% - 24px));max-height:65dvh;overflow:auto;margin:0;background:#faf8ef;box-shadow:0 6px 24px #183d3233}@media(max-width:700px){.game-surface:fullscreen .fullscreen-status,.game-surface.expanded .fullscreen-status{max-width:120px;font-size:10px;padding:8px}.game-surface:fullscreen .fullscreen-toggle,.game-surface.expanded .fullscreen-toggle{padding:8px;font-size:10px;max-width:108px}.fullscreen-camera{font-size:10px;padding:8px}.tile-action-buttons .button{min-height:44px}.tile-action-panel{padding:10px}}.hand-tile{position:relative}.hand-tile[data-drawn=true]{border-color:#b99b51;background:#f8f2df}.hand-tile .drawn-badge{position:absolute;right:5px;top:4px;font-size:7px;line-height:1;padding:3px 4px;background:#e6c67d;color:#214f3b;border-radius:2px;pointer-events:none}.hand-tile[data-drawn=true].selected{background:#edf1df}.hand-controls:has(+.playable-hand){margin-bottom:64px}.playable-hand{row-gap:64px}.hand-tile-slot{position:relative;flex:0 0 clamp(60px,calc((100% - 91px)/14),90px);min-width:60px;max-width:90px}.hand-tile-slot>.hand-tile{width:100%;max-width:none}.hand-discard{position:absolute;left:50%;bottom:calc(100% + 12px);transform:translate(-50%);z-index:2;min-height:36px;padding:7px 10px;font-size:11px;white-space:nowrap;gap:0}.hand-discard:hover:not(:disabled){transform:translate(-50%,-1px)}@media(max-width:700px){.hand-tile-slot{flex:0 0 calc(14.285% - 5px);min-width:0}.hand-discard{min-height:44px;font-size:10px;padding:7px 8px}}.drawn-tile-marker{position:absolute;inset:0;z-index:3;pointer-events:none;overflow:hidden}.drawn-tile-marker line{stroke:#f5bc45;stroke-width:2}.drawn-tile-marker text{fill:#fff4c7;stroke:#214435;stroke-width:3;paint-order:stroke;font-size:12px;font-weight:700}.seat-heading,.seat-stats{display:flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap}.seat-heading,.seat-stats{line-height:1.5}.seat-south{bottom:2px;padding:2px 13px}.hand-tile>.character-tile-face{max-width:1em;word-break:break-all;white-space:normal;text-align:center;line-height:1.2}.winning-hand{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:20px 0}.result-tile{flex:0 0 42px;height:66px;display:flex;align-items:center;justify-content:center;background:#faf8ed;border:1px solid #d8dacb;border-bottom:3px solid #babc9f;border-radius:5px}.result-tile>span{font:20px/1.2 var(--serif);text-align:center}.result-tile>.character-tile-face{max-width:1em;word-break:break-all;white-space:normal}.seat.winner-seat{background:#fff0bc;border:1px solid #c59632;box-shadow:0 0 0 2px #f5bc4533,0 3px 14px #95681933}.seat.winner-seat .seat-heading,.seat.winner-seat b,.seat.winner-seat .seat-points{color:#5b4314}.seat.winner-seat .seat-points{font-weight:700}.winning-hand-details{margin:18px 0}.winning-hand-details summary{cursor:pointer;font-size:12px;color:var(--green);padding:10px 0}.winning-hand-details summary:focus-visible{outline:2px solid #ae7448;outline-offset:3px}.winning-hand-details .winning-hand{margin:10px 0}.header-account{display:flex;align-items:center;gap:9px;font-size:11px;white-space:nowrap;padding:9px 12px;border:1px solid #cdd6c3;border-radius:5px;background:#faf9f3;max-width:190px}.header-account>span:last-child{overflow:hidden;text-overflow:ellipsis}.account-avatar{display:inline-flex;width:35px;height:35px;flex:0 0 35px;align-items:center;justify-content:center;border-radius:50%;background:#e5eadb;color:#3c6046;font:18px var(--serif)}.header-account .account-avatar{width:25px;height:25px;flex-basis:25px;font-size:14px}.login-layout{max-width:440px;margin:60px auto 80px}.online-heading h1 em{color:#66765b;font-weight:400}.login-card{padding:40px 32px;border:1px solid #cfd8c2;border-radius:12px;background:#edf0e5;text-align:center;display:flex;flex-direction:column;align-items:center}.login-card h1{font:32px/1.2 var(--serif);margin:0 0 14px;overflow-wrap:anywhere}.login-card>p{font-size:13px;color:var(--muted);line-height:1.7;max-width:100%;margin-bottom:24px}.login-card>.login-account-name{font-size:16px;color:inherit;overflow-wrap:anywhere}.login-practice-link{font-size:12px;line-height:1.6;color:var(--green);border-top:1px solid var(--border);width:100%;margin-top:28px;padding-top:20px;min-height:44px}.login-practice-link:hover{text-decoration:underline}.google-button{display:flex;align-items:center;justify-content:center;gap:14px;min-height:48px;width:100%;max-width:300px;padding:12px 18px;border:1px solid #c8d0be;border-radius:5px;background:#fffdf8;color:#354a3b;font-size:13px}.google-button:hover:not(:disabled){background:#f7f8f0}.login-card .login-unavailable{margin:20px 0 0;font-size:11px}.auth-error{color:#964d36!important;font-size:12px!important;margin-top:18px}.text-button{border:0;background:transparent;font-size:11px;color:#6c7964;padding:12px;margin-top:10px}.callback-page{max-width:850px;margin:55px auto}.callback-page h1{font:38px var(--serif);margin:18px 0}.callback-page p{font-size:13px;color:#6c7964;margin-bottom:25px}.callback-page .back-link{display:block;margin-top:20px}.online-heading{display:flex;align-items:center;justify-content:space-between;gap:25px}.online-heading .page-heading{margin-bottom:32px}.online-identity{display:flex;align-items:center;gap:14px;background:#e9edde;padding:17px 23px;border-radius:8px;max-width:350px}.online-identity small{display:block;font-size:7px;letter-spacing:1.2px;color:#78846e}.online-identity strong{display:block;font-size:13px;font-weight:500;margin:6px 0;overflow-wrap:anywhere}.online-identity span:not(.account-avatar){font-size:10px;color:#728067}.season-tabs{display:flex;gap:8px;border-bottom:1px solid var(--border);padding:0 0 18px;margin-bottom:28px}.season-tabs button{border:1px solid transparent;border-radius:5px;background:transparent;padding:9px 14px;color:#6b7962;font-size:12px;min-height:42px;display:flex;align-items:center;gap:10px}.season-tabs button[aria-pressed=true]{background:#e7eddf;border-color:#c7d2bc;color:var(--green)}.season-tabs button>span{background:#dfe5d5;padding:1px 6px;border-radius:3px;font-size:9px}.online-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:290px;border:1px dashed #c7d1bb;border-radius:10px;background:#faf9f3;padding:36px;text-align:center}.online-empty>span:first-child{font-size:42px;color:#93a385;margin-bottom:16px}.online-empty h2{font:28px var(--serif);margin:14px 0}.online-empty p{font-size:12px;color:#76816c;max-width:420px;line-height:1.9;margin-bottom:22px}.online-empty .back-link{margin-top:17px}.online-note{font-size:10px;color:#7b856f;margin:22px 0}.season-layout{display:grid;grid-template-columns:280px 1fr;gap:26px;align-items:start}.season-list{display:grid;gap:14px}.season-card{padding:24px;text-align:left;background:#faf9f4;border:1px solid var(--border);border-radius:8px}.season-card.selected-season{border-color:#839972;background:#edf1e5;box-shadow:inset 3px 0 #6b845d}.season-card strong{display:block;font:24px var(--serif);margin:15px 0 10px}.season-card small{display:block;font-size:10px;color:#748269;line-height:1.8}.season-card-link{display:flex;justify-content:space-between;font-size:10px;color:#5c7351;margin-top:18px}.season-detail{padding:34px;background:#faf9f3;border:1px solid var(--border);border-radius:10px;min-width:0}.season-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.season-detail h2{font:36px var(--serif);margin:22px 0 14px}.season-detail>p{font-size:13px;color:#74816b;line-height:1.9}.season-facts{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:20px;padding:22px 0;margin:24px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.season-facts dt{font-size:9px;color:#86907c;margin-bottom:9px}.season-facts dd{margin:0;font-size:12px;color:#435b3e;line-height:1.7}.season-table-preview{display:flex;align-items:center;gap:22px;background:#e9eddf;border-radius:8px;padding:26px;margin-bottom:24px}.season-table-preview>span{font-size:42px;color:#7c916a}.season-table-preview h3{font:23px var(--serif);margin-bottom:12px}.season-table-preview p{font-size:12px;color:#718067;line-height:1.9}.season-practice-link{display:inline-block;font-size:11px;color:#667b57;margin:12px 0 12px 18px}@media(min-width:1001px){.modes{grid-template-columns:.9fr repeat(2,minmax(0,1fr))}}@media(min-width:701px)and (max-width:1000px){.modes{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}}@media(max-width:1000px){.header nav{gap:18px}.season-layout{grid-template-columns:230px 1fr}.season-facts{grid-template-columns:1fr 1fr}.season-detail{padding:25px}}@media(max-width:700px){.header{height:auto;min-height:88px;flex-wrap:wrap;padding:18px 6%;gap:14px}.header nav{order:3;width:100%;justify-content:space-between;gap:12px}.header nav a{padding:8px 0}.header-account{font-size:10px;padding:8px;max-width:140px}.header-account.signed-in{max-width:120px}.login-layout{margin:30px auto 40px}.login-card{padding:30px 23px}.login-card h1{font-size:28px}.online-heading{align-items:flex-start;flex-direction:column;gap:0}.online-heading .page-heading{margin-bottom:20px}.online-identity{margin-bottom:25px;width:100%;max-width:none;padding:15px 20px}.season-tabs{gap:3px}.season-tabs button{font-size:11px;padding:9px 10px;gap:6px}.season-layout{grid-template-columns:1fr;gap:20px}.season-list{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}.season-card{padding:18px}.season-card strong{font-size:22px}.season-detail{padding:23px}.season-detail h2{font-size:31px}.season-facts{grid-template-columns:1fr 1fr;gap:18px}.season-facts>div:first-child{grid-column:1/-1}.season-table-preview{padding:20px;gap:15px;align-items:flex-start}.season-table-preview>span{font-size:29px}.season-table-preview h3{font-size:23px}.season-practice-link{display:block;margin:18px 0 0}.online-empty{padding:30px 20px}.online-empty h2{font-size:25px}.callback-page{margin:30px 0}}.display-name-form{width:100%;text-align:left;margin:0 0 24px;padding:16px 0;border-top:1px solid #ced8c1;border-bottom:1px solid #ced8c1}.display-name-form .field{margin-top:0}.display-name-form input{width:100%;border:1px solid #bdcbb2;border-radius:5px;padding:12px;background:#fafbf6;font-size:14px;color:var(--green)}.display-name-form>small{display:block;font-size:10px;color:#6c7b62;line-height:1.8;margin:10px 0}.display-name-form .button{font-size:11px;min-height:42px}.display-name-form>p{font-size:11px;margin-top:10px;color:#4d6c41}.login-card{min-width:0}.room-entry{margin-bottom:36px}.room-entry-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.room-entry-heading h2{font:30px var(--serif);margin:10px 0}.room-entry-note{font-size:12px;color:#718067;line-height:1.8;margin:10px 0 20px}.room-ruleset{max-width:380px}.room-entry-options{display:grid;align-items:start;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:22px}.room-entry-card{display:flex;flex-direction:column;min-width:0;background:#faf9f3;border:1px solid var(--border);border-radius:10px;padding:26px}.room-entry-card h3{font:25px var(--serif);margin:16px 0 12px}.room-entry-card p{font-size:12px;color:#718067;line-height:1.9;margin-bottom:22px}.room-entry-card .button{margin-top:auto;justify-content:center}.room-entry-card .field{margin-bottom:20px}.room-entry-card input{width:100%;min-width:0}.room-entry-card .button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:850px){.room-entry-options{grid-template-columns:1fr}.room-entry-card{padding:23px}.room-ruleset{max-width:none}}.room-lobby{padding:20px;border:1px solid var(--border);border-radius:10px;background:#faf9f3}.room-invite{display:flex;flex-wrap:wrap;gap:24px;margin:16px 0}.room-invite dt{font-size:12px;color:#718067}.room-invite dd{margin:8px 0 0;font-size:20px;overflow-wrap:anywhere}.room-seats{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:16px 0}.room-seats li{padding:12px;border:1px solid var(--border);border-radius:8px;min-width:0}.room-seats strong,.room-seats small{display:block;overflow-wrap:anywhere;margin-top:6px}.room-seats small{color:#718067}.room-lobby-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.room-lobby p{font-size:14px;line-height:1.8}@media(max-width:850px){.room-seats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:400px){.room-lobby{padding:14px}}.seat:has(.seat-action){z-index:3}.seat-action{position:absolute;padding:7px 11px;border:1px solid #d0b67c;border-radius:8px;background:#fff8e8;color:#214f3b;font-size:12px;font-weight:700;letter-spacing:0;line-height:1.3;white-space:nowrap;box-shadow:0 3px 12px #102f2840;animation:seat-call-in .15s ease-out}.seat-action:after{content:"";position:absolute;width:8px;height:8px;background:#fff8e8;transform:rotate(45deg)}.seat-south .seat-action{bottom:calc(100% + 12px);left:50%;transform:translate(-50%)}.seat-south .seat-action:after{bottom:-5px;left:calc(50% - 4px);border-right:1px solid #d0b67c;border-bottom:1px solid #d0b67c}.seat-north .seat-action{top:calc(100% + 12px);left:50%;transform:translate(-50%)}.seat-north .seat-action:after{top:-5px;left:calc(50% - 4px);border-left:1px solid #d0b67c;border-top:1px solid #d0b67c}.seat-west .seat-action{left:calc(100% + 12px);top:50%;transform:translateY(-50%)}.seat-west .seat-action:after{left:-5px;top:calc(50% - 4px);border-left:1px solid #d0b67c;border-bottom:1px solid #d0b67c}.seat-east .seat-action{right:calc(100% + 12px);top:50%;transform:translateY(-50%)}.seat-east .seat-action:after{right:-5px;top:calc(50% - 4px);border-right:1px solid #d0b67c;border-top:1px solid #d0b67c}@keyframes seat-call-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.seat-action{animation:none}}.seat-action.claim-winner{background:#fff0bc;border-color:#c59632;color:#5b4314;box-shadow:0 0 0 2px #f5bc454d,0 3px 14px #9568194d}.seat-action.claim-winner:before{content:"✓ ";color:#866b2a}.seat .seat-action.claim-winner:after{background:#fff0bc;border-color:#c59632}.turn-countdown{display:inline-flex;align-items:center;justify-content:center;min-width:26px;padding:2px 4px;border-radius:4px;background:#edf1e5;color:#214f3b;font-size:10px;font-weight:700;letter-spacing:0;line-height:1.2;font-variant-numeric:tabular-nums}.turn-countdown[data-urgency=warning]{background:#ffdeb0;color:#854005}.turn-countdown[data-urgency=urgent]{background:#b63830;color:#fff}.help-basics{gap:16px}.help-basics article{padding:24px}.help-basics h2{font-size:24px}.help-basics p{line-height:1.75}.help-example{margin:25px 0 38px;padding:24px;background:#e9edde;border-radius:8px}.help-example-groups{display:flex;flex-wrap:wrap;gap:20px;margin-top:18px}.help-example-group>div{display:flex;gap:4px}.help-example-group>div>span{display:flex;align-items:center;justify-content:center;width:35px;height:48px;background:#faf8ee;border:1px solid #d1d6c3;border-bottom:3px solid #babc9f;border-radius:4px;font:23px serif;color:var(--green)}.help-example-group>div>span.help-character{font-size:19px;writing-mode:vertical-rl;color:#ad493c}.help-example-group small{display:block;text-align:center;font-size:10px;color:var(--muted);margin-top:8px}.help-rules-heading h2{font:29px var(--serif);margin:0 0 10px}.help-rules-heading p,.help-play-note{font-size:12px;line-height:1.8;color:var(--muted)}.help-rules-heading{margin-bottom:20px}.help-ruleset{border:1px solid var(--border);border-radius:8px;background:#faf9f3;margin-bottom:16px}.help-ruleset>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:23px;cursor:pointer;font:24px var(--serif);list-style:none}.help-ruleset>summary::-webkit-details-marker{display:none}.help-ruleset summary small{display:block;font:11px Arial,sans-serif;color:var(--muted);margin-top:9px;line-height:1.6}.help-expand{font:25px Arial,sans-serif;color:var(--muted)}.help-ruleset[open]>summary .help-expand{transform:rotate(45deg)}.help-rules-content{padding:0 23px 24px;border-top:1px solid var(--border)}.help-rules-content p{font-size:13px;line-height:1.8;color:#64735c;margin:10px 0}.help-rule-intro{padding-top:16px}.help-rules-content h3{font:22px var(--serif);margin:26px 0 10px}.help-score-details{margin-top:24px;border-top:1px solid var(--border)}.help-score-details>summary{font-size:13px;cursor:pointer;padding:18px 0;color:var(--green)}.help-table-scroll{overflow-x:auto;max-width:100%;margin-bottom:16px}.help-table-scroll table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.help-table-scroll th,.help-table-scroll td{padding:11px 10px;border-bottom:1px solid var(--border);line-height:1.65;vertical-align:top}.help-table-scroll thead{background:#e9edde}.help-table-scroll tbody th{font-weight:500;min-width:130px}.help-table-scroll td:nth-child(2){white-space:nowrap}.help-table-scroll caption{text-align:left;font-size:12px;padding:10px 0;font-weight:600}.help-play-note{margin:26px 0 20px}.help-page summary:focus-visible,.help-table-scroll:focus-visible{outline:2px solid #597749;outline-offset:3px}@media(max-width:700px){.help-basics article{padding:20px}.help-example{padding:20px}.help-example-groups{gap:16px}.help-ruleset>summary{padding:20px;font-size:22px}.help-rules-content{padding:0 20px 20px}.help-table-scroll th,.help-table-scroll td{padding:10px 8px}}.room-count{align-self:flex-start;display:inline-flex;align-items:center;background:#e8edde;border:1px solid #d0dbc5;border-radius:20px;padding:5px 10px;color:#42603b;font-size:11px;margin:-4px 0 16px;min-height:26px}.room-count-refresh{border:0;background:transparent;color:#64765b;font-size:11px;padding:10px 0 10px 10px;display:flex;align-items:center;gap:7px;white-space:nowrap}.room-count-refresh:disabled{opacity:.55}.room-count-refresh:focus-visible{outline:2px solid #597749;outline-offset:3px}.app-modal{position:fixed;inset:0;margin:auto;width:min(440px,calc(100% - 36px));max-height:calc(100dvh - 36px);padding:0;border:1px solid #cdd5c3;border-radius:12px;background:#faf9f3;color:var(--green);box-shadow:0 20px 70px #173c2c33;overflow:auto}.app-modal::backdrop{background:#17352888;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-content{padding:32px}.app-modal h2{font:30px/1.2 var(--serif);margin:16px 0}.app-modal p{font-size:13px;color:var(--muted);line-height:1.8}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}.modal-actions .button:focus-visible{outline:2px solid #597749;outline-offset:3px}@media(max-width:450px){.modal-content{padding:25px}.app-modal h2{font-size:27px}.modal-actions .button{padding:12px 15px;min-width:0}}.room-card-illustrated{overflow:hidden}.room-card-art{position:relative;height:190px;flex:none;margin:-26px -26px 22px;background:#f3efdf}.room-card-art img{display:block;width:100%;height:100%;object-fit:cover}.room-card-art-private img{object-position:center 61%}.room-card-art-random img{object-position:center 65%}.room-card-art:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 65%,#faf9f3);pointer-events:none}@media(max-width:700px){.room-card-art{height:200px}}.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.theme-toggle{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--border);border-radius:50%;background:transparent;color:var(--green);flex-shrink:0}.theme-toggle svg{width:19px;height:19px}.theme-toggle:hover{background:#e9edde}:root[data-theme=dark]{color-scheme:dark;background:#151d18;color:#dde6d7;--green:#bdd5b5;--muted:#a3b09b;--border:#354438}[data-theme=dark] :is(.setup-panel,.ruleset-card,.settings-panel,.help-grid article,.help-ruleset,.season-detail,.season-card,.room-entry-card,.room-seats li,.app-modal,.header-account){background:#1e2922;border-color:var(--border)}[data-theme=dark] :is(.active-card,.ruleset-card.selected,.setup-aside,.login-card,.online-empty,.season-card.selected-season,.season-table-preview,.help-example,.account-avatar,.room-count,.resume-banner){background:#26372b;border-color:#40543c}[data-theme=dark] :is(.future-card,.secondary,.google-button,.season-tabs button[aria-pressed=true]){background:#243128;border-color:#40503d;color:#d2dfc8}[data-theme=dark] :is(p,small,label,dt,.back-link,.field-note,.ruleset-summary,.ruleset-details,.card-link,.aside-note,.text-button,.online-note,.room-count-refresh,.pwa-status,.season-tabs button){color:var(--muted)}[data-theme=dark] :is(.room-count,.setting-row h3,.setup-panel h2 span,.season-facts dd,.season-detail-heading,.help-score-details>summary,.online-identity strong){color:#d2dfc8}[data-theme=dark] .primary{background:#96b389;color:#15251a}[data-theme=dark] .primary:hover:not(:disabled){background:#abc59f}[data-theme=dark] .secondary:hover:not(:disabled),[data-theme=dark] .google-button:hover:not(:disabled),[data-theme=dark] .theme-toggle:hover{background:#324533}[data-theme=dark] :is(input:not([type=range]):not([type=checkbox]),select){background:#18221b;border:1px solid #465440;border-radius:4px;color:#dde6d7}[data-theme=dark] input::placeholder{color:#889880}[data-theme=dark] .header nav a:hover,[data-theme=dark] .header nav a.active{color:#d5ab7c}[data-theme=dark] .header nav a.active:after{background:#d5ab7c}[data-theme=dark] :is(.chip,.season-tabs button>span){background:#2b3a2e;border-color:#43503f;color:#b3c4a7}[data-theme=dark] .notice{background:#493e29;border-color:#756144;color:#eedbb4}[data-theme=dark] .auth-error{color:#e4a28a!important}[data-theme=dark] .help-table-scroll thead{background:#2b3a2e}[data-theme=dark] .help-example-group>div>span{background:#1e2922;border-color:#43503f;color:#bdd5b5}[data-theme=dark] .help-example-group>div>span.help-character{color:#dda58d}[data-theme=dark] .room-card-art{background:#263128}[data-theme=dark] .room-card-art:after{background:linear-gradient(to bottom,transparent 65%,#1e2922)}[data-theme=dark] .seat{background:#20372be8;color:#d4e2cb}[data-theme=dark] .seat b{color:#b1c3a5}[data-theme=dark] .seat.active-seat{background:#315335;color:#fff4d6}[data-theme=dark] .seat.active-seat b,[data-theme=dark] .seat.active-seat .seat-points{color:#fff4d6}[data-theme=dark] .seat.winner-seat{background:#56472a;color:#fff0bc}[data-theme=dark] .seat.winner-seat :is(.seat-heading,b,.seat-points,.seat-bonuses){color:#fff0bc}[data-theme=dark] .hand-tile small{color:#64715a}[data-theme=dark] .public-melds{color:#b8c9ad}[data-theme=dark] .app-modal::backdrop{background:#060d09b8}[data-theme=dark] footer>span{color:#a3b09b}@media(max-width:700px){.header-actions{gap:8px}.theme-toggle{width:34px;height:34px}}[data-theme=dark] .brand-mark rect{fill:#31573c}[data-theme=dark] .ruleset-symbol{background:#25362a;color:#bdd5b5}[data-theme=dark] :is(.eyebrow,.mode-icon,.aside-symbol){color:#a7bd98}[data-theme=dark] .hero h1 em{color:#9db18f}[data-theme=dark] .hero-art{background:radial-gradient(ellipse,#344638 0,#263529 46%,transparent 70%)}[data-theme=dark] :is(.room-lobby,.score-strip>div,.round-result,.update-notification,.tile-action-panel,.fullscreen-toggle,.fullscreen-camera,.tile-action-options button){background:#1e2922;border-color:#43523c;color:#d5e2cd}[data-theme=dark] .score-strip .current-seat,[data-theme=dark] .tile-action-options button[aria-pressed=true]{background:#324733}[data-theme=dark] .game-surface:is(:fullscreen,.expanded){background:#151d18}[data-theme=dark] .game-surface:fullscreen::backdrop{background:#151d18}[data-theme=dark] .game-surface:is(:fullscreen,.expanded) .round-result{background:#1e2922}[data-theme=dark] .game-surface:is(:fullscreen,.expanded) .fullscreen-status{background:#151d18dd;color:#d5e2cd}[data-theme=dark] .table-stage{background:#101a14;border-color:#354438}[data-theme=dark] .scene-fallback{color:#a7bd98}.tile-action-caption{font-size:12px;font-weight:600;line-height:1.4;color:#42543b}[data-theme=dark] .tile-action-caption{color:#dbe8d4}.hand-tile>small:not(.drawn-badge){font-size:10px;line-height:1.3;text-align:center;color:#526046}[data-theme=dark] .hand-tile>small:not(.drawn-badge){color:#425139}.hand-controls p{font-size:13px}@media(max-width:700px){.hand-tile>small:not(.drawn-badge){font-size:9px}}.install-offer{width:100%;max-width:520px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 32px;margin:32px 0;border:1px solid var(--border);border-radius:12px;background:#ecefde}.install-offer h2{font:400 26px Georgia,serif;margin:10px 0}.install-offer p{font-size:13px;line-height:1.6;color:var(--muted);margin:0}.install-offer .button{flex-shrink:0}[data-theme=dark] .install-offer{background:#26372b}@media(max-width:700px){.install-offer{align-items:flex-start;flex-direction:column;padding:24px}.install-offer h2{font-size:24px}}.room-seat-choice{display:flex;flex-direction:column;gap:12px;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.room-seat-choice:hover strong{color:var(--green)}.room-seat-choice:focus-visible{outline:2px solid var(--green);outline-offset:8px;border-radius:4px}.room-seat-choice:disabled{cursor:default;opacity:.6}.room-seat-choice strong{font-size:16px}.room-seat-choice small{color:var(--muted)}.room-seats li:has(.room-seat-choice){padding:0}.room-seat-choice{padding:12px;height:100%;gap:0;border-radius:8px}.room-seat-choice:focus-visible{outline-offset:3px}.practice-ruleset-art{display:block;width:100%;max-width:420px;aspect-ratio:16/9;object-fit:cover;object-position:center;border-radius:6px;margin-bottom:24px;opacity:.85;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 65%,transparent),linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 12%,#000 65%,transparent),linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect}[data-theme=dark] .practice-ruleset-art{opacity:.7}@media(max-width:700px){.practice-ruleset-art{max-width:360px;margin-bottom:18px}}.ruleset-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:24px}.ruleset-choices .ruleset-card{flex-direction:column;align-items:flex-start;gap:16px;padding:18px;min-width:0;transition:border-color .15s,background .15s,box-shadow .15s}.ruleset-choices .ruleset-card.selected{box-shadow:inset 0 0 0 1px #849577}.ruleset-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;width:100%}.ruleset-choices .ruleset-symbol{font-size:30px;line-height:1;padding:10px}.ruleset-card-header .chip{display:inline-block;font-size:6px;letter-spacing:.7px}.ruleset-card-copy{display:block;flex:1}.ruleset-choices .ruleset-card strong{font-size:21px;line-height:1.25;margin-bottom:10px}.ruleset-choices .ruleset-summary{line-height:1.65}.ruleset-choices .ruleset-details{margin-top:0}[data-theme=dark] .ruleset-choices .ruleset-card.selected{border-color:#94ae82;box-shadow:inset 0 0 0 1px #94ae82}@media(max-width:1000px){.ruleset-choices .ruleset-card{padding:14px;gap:14px}.ruleset-card-header{gap:4px}.ruleset-choices .ruleset-symbol{font-size:26px;padding:8px}.ruleset-choices .ruleset-card strong{font-size:19px}}@media(max-width:700px){.ruleset-choices .ruleset-card{padding:12px;gap:12px}.ruleset-choices .ruleset-card strong{font-size:18px}.ruleset-card-header{flex-wrap:wrap}.ruleset-card-header .chip{letter-spacing:.4px}}.ruleset-choices .ruleset-symbol{font-size:24px;white-space:nowrap}@media(max-width:1000px){.ruleset-choices .ruleset-symbol{font-size:21px}}.help-claim-list{margin:0;padding-left:18px;font-size:12px;line-height:1.75;color:var(--muted)}.help-claim-list li+li{margin-top:8px}.help-claim-list strong{color:var(--green)}.setup-aside .ruleset-profile{display:grid;gap:16px;width:100%;max-width:360px;margin:0 0 24px;text-align:left;font-size:12px;line-height:1.75;color:var(--muted)}.setup-aside .ruleset-profile dt{font-size:10px;font-weight:600;color:var(--green);margin:0 0 4px}.setup-aside .ruleset-profile dd{margin:0}.ruleset-card-title{display:flex;align-items:center;gap:12px;min-width:0}.ruleset-choices .ruleset-card-title strong{margin:0;font-size:20px;line-height:1.25}.ruleset-card-header>.chip{flex-shrink:0}@media(max-width:1000px){.ruleset-card-title{gap:8px}.ruleset-choices .ruleset-card-title strong{font-size:18px}.ruleset-card-header{flex-wrap:wrap}}@media(max-width:700px){.ruleset-card-title{gap:6px}.ruleset-choices .ruleset-card-title strong{font-size:16px}.ruleset-choices .ruleset-symbol{font-size:18px;padding:7px}}.ruleset-choices .ruleset-symbol-name{font-size:17px;padding:12px 8px}@media(max-width:1000px){.ruleset-choices .ruleset-symbol-name{font-size:15px;padding:10px 6px}}@media(max-width:700px){.ruleset-choices .ruleset-symbol-name{font-size:12px;padding:10px 4px}.ruleset-card-title:has(.ruleset-symbol-name){gap:4px}.ruleset-card-title:has(.ruleset-symbol-name) strong{font-size:14px}}.app-modal .room-join-fields input{background:#fffdf8;color:var(--green);border:1px solid var(--border);border-radius:4px;padding:10px 12px;min-height:40px}[data-theme=dark] .app-modal .room-join-fields input{background:#18221c;color:#d2dfc8}.room-join-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.room-join-fields .field{min-width:0}.room-entry-tools{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.app-modal .room-join-fields{margin:22px 0}.app-modal .room-join-fields input{width:100%;min-width:0}@media(max-width:700px){.room-entry-heading{flex-wrap:wrap}.room-entry-tools{width:100%;justify-content:space-between}}.room-count-controls{margin-top:12px}.room-count-controls .room-count-refresh{padding-left:0}.room-invite{gap:14px;align-items:center}.room-invite-code{flex:0 1 auto;min-width:100px;padding:10px 14px;border:1px solid #c9d4c1;border-radius:8px;background:#edf1e5}.room-invite .room-invite-code dt{font-size:10px;font-weight:600;letter-spacing:1.5px;color:#526647}.room-invite .room-invite-code dd{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:4px}.room-invite-code strong{font:600 26px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:2px;-webkit-user-select:all;user-select:all;overflow-wrap:anywhere}.room-code-copy{flex-shrink:0;min-height:44px;min-width:44px;border:1px solid #a9baa0;border-radius:4px;padding:7px 11px;background:transparent;color:inherit;font-size:11px}.room-invite .room-invite-id{background:#214f3b;border-color:#214f3b;color:#f5f3ec}.room-invite .room-invite-id dt{color:#cedecc}.room-invite-id .room-code-copy{border-color:#769783}.room-invite-ruleset{min-width:0;padding:8px 6px}.room-invite .room-invite-ruleset dd{font-size:17px}[data-theme=dark] .room-invite-pin{background:#293b2c;border-color:#526a49;color:#e1ebda}[data-theme=dark] .room-invite .room-invite-pin dt{color:#bdd0b2}[data-theme=dark] .room-invite-id{background:#214f3b;color:#f5f3ec}@media(max-width:700px){.room-invite-code{flex:0 1 auto}.room-invite-ruleset{flex:1 1 180px}}.room-ranking-note{margin:12px 0;color:var(--muted)}@media(max-width:1000px){.ruleset-card-title{flex-direction:column;align-items:flex-start;gap:10px}.ruleset-card-title:has(.ruleset-symbol-name){gap:10px}}.table-view-controls{position:absolute;top:64px;right:12px;z-index:3;display:flex;flex-direction:column;gap:8px}.table-view-controls .fullscreen-camera{position:static}.table-phone-toggle{padding:9px 12px;font-size:11px;background:#f9f8f1}.table-phone-toggle[aria-pressed=true]{background:#285541;border-color:#285541;color:#f9f8f1}[data-theme=dark] .table-phone-toggle{background:#1e2922;border-color:#43523c;color:#d5e2cd}[data-theme=dark] .table-phone-toggle[aria-pressed=true]{background:#91b58c;border-color:#91b58c;color:#15251c}.table-controls .table-view-controls{position:static;flex-direction:row}.game-surface .table-icon-button,.table-view-controls .table-icon-button{width:44px;height:44px;min-height:44px;padding:10px;gap:0;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.table-info-panel,.table-player-list{display:contents}.phone-table .table-info-panel{position:absolute;top:14px;left:14px;z-index:3;width:130px;max-width:calc(100% - 78px);display:flex;flex-direction:column;gap:6px;pointer-events:none}.phone-table .table-info-panel .fullscreen-status{display:block;position:static;max-width:none;font-size:10px;padding:8px;border-radius:5px;background:#f5f3ecdd}.phone-table .table-player-list{display:flex;flex-direction:column;gap:4px}.table-panel-continue{position:absolute;top:14px;left:14px;z-index:3;pointer-events:auto;width:160px;padding:9px 8px;min-height:44px;font-size:11px}.phone-table .table-info-panel .table-panel-continue{position:static;width:100%}.game-surface:is(:fullscreen,.expanded) .table-panel-continue{display:none}.phone-table .table-info-panel .seat{position:relative;inset:auto;transform:none;width:100%;max-width:none;padding:5px;display:flex;align-items:center;gap:3px;font-size:9px;letter-spacing:0;white-space:nowrap;text-align:left;flex-wrap:wrap}.phone-table .table-info-panel .seat-heading{display:contents}.phone-table .table-info-panel .seat-heading>span{font-size:9px;width:10px}.phone-table .table-info-panel .seat b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.phone-table .table-info-panel .seat-stats{gap:3px}.phone-table .table-info-panel .seat-points{font-size:10px}.phone-table .table-info-panel .seat-direction{font-size:14px;line-height:1;width:12px;text-align:center;font-weight:700}.phone-table .table-info-panel .seat-heading:before{display:none}.phone-table .table-info-panel .seat-action{position:static;transform:none;order:5;padding:3px 6px;font-size:10px;margin-left:auto}.phone-table .table-info-panel .seat-action:after{display:none}[data-theme=dark] .phone-table .table-info-panel .fullscreen-status{background:#151d18dd;color:#d5e2cd}.bamboo-tile-face{display:block;width:42px;height:59px;flex-shrink:0;max-width:100%}.result-tile .bamboo-tile-face{width:32px;height:45px}.hand-tile .bamboo-tile-face{height:56px}@media(max-width:700px){.hand-tile .bamboo-tile-face{height:45px}}.decor-tile .bamboo-face .bamboo-tile-face{width:64px;height:90px}@media(orientation:portrait){.phone-table .table-info-panel{display:grid;grid-template-columns:minmax(0,1fr) 136px;align-items:start;width:280px}.phone-table .table-info-panel .fullscreen-status{grid-column:1;grid-row:1}.phone-table .table-player-list{grid-column:2;grid-row:1}.phone-table .table-info-panel .table-panel-continue{grid-column:2;grid-row:2}}.room-season-card{align-self:start;border-top:3px solid #849973;padding:22px}.room-season-card>h3{font:600 12px Arial,sans-serif;letter-spacing:.03em;margin:0 0 12px;color:var(--muted)}.room-season-card .season-tabs{gap:3px;border:0;padding:3px;background:#e9edde;border-radius:7px;margin:0 0 16px;flex-wrap:nowrap}.room-season-card .season-tabs button{flex:1;justify-content:center;min-height:44px;padding:8px 5px;gap:5px;font-size:11px;color:inherit}.room-season-card .season-tabs button[aria-pressed=true]{background:#faf9f3;border-color:var(--border);box-shadow:0 1px 3px #263e3310}.season-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.room-season-card h4{font:27px var(--serif);margin:0}.room-season-card .season-heading .chip{margin:0;flex-shrink:0;font-size:8px}.room-season-card p{margin:10px 0;line-height:1.65}.season-rating-overview{position:relative;background:#edf1e5;border-radius:8px;margin:14px 0 10px;padding:28px 14px 18px}.season-rating-stats{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:10px;align-items:end;margin:0}.season-rating-stats dt{font-size:10px;color:var(--muted);margin-bottom:6px}.season-rating-stats dd{font-size:19px;margin:0;line-height:1.15;font-variant-numeric:tabular-nums}.season-rating-score dd{font-size:38px;font-weight:600;color:var(--green);letter-spacing:-1.5px}.season-refresh{position:absolute;top:0;right:0;display:grid;place-items:center;width:44px;height:44px;border:0;background:transparent;color:var(--muted);border-radius:6px}.season-refresh:hover:not(:disabled){color:var(--green);background:#214f3b0a}.season-leaderboard,.season-details{border-top:1px solid var(--border)}.room-season-card summary{cursor:pointer;min-height:44px;font-size:12px;padding:12px 0;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px}.room-season-card summary:after{content:"+";font-size:18px;color:var(--muted)}.room-season-card details[open]>summary:after{content:"−"}.room-season-card summary::-webkit-details-marker{display:none}.room-season-card summary:focus-visible{outline:3px solid #ae7448;outline-offset:3px}.room-season-card .season-facts{display:grid;grid-template-columns:1fr 1fr;gap:14px;border:0;margin:10px 0;padding:0}.room-season-card .season-facts>div:first-child{grid-column:auto}.room-season-card .season-facts dt{margin-bottom:5px}.season-leaders{list-style:none;padding:0;margin:0 0 10px}.season-leaders li{display:grid;grid-template-columns:2em minmax(0,1fr) auto;gap:10px;padding:8px 0;font-size:12px;align-items:center}.season-leaders li span:nth-child(2){overflow-wrap:anywhere}[data-theme=dark] .room-season-card .season-tabs{background:#17221b}[data-theme=dark] .room-season-card .season-tabs button[aria-pressed=true]{background:#304333;border-color:#52664b}[data-theme=dark] .season-rating-overview{background:#2a3b2e}@media(max-width:400px){.room-season-card{padding:18px}.season-rating-score dd{font-size:34px}.season-rating-stats{gap:8px}}.room-game-details{margin:0 0 22px;padding-left:18px;font-size:12px;line-height:1.8}.room-game-details li+li{margin-top:5px}.private-table-settings{margin-bottom:22px;font-size:12px}.private-table-settings summary{cursor:pointer;min-height:44px;display:flex;align-items:center}.private-table-settings .field{margin-top:12px}.private-table-settings select{width:100%}.home-extras{margin:26px 5.6% 42px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.home-guide,.home-extras>.install-offer{min-width:0;max-width:none;margin:0;padding:20px 24px;border:1px solid var(--border);border-radius:10px;background:transparent;display:flex;align-items:center;gap:18px}.home-guide{text-decoration:none;min-height:104px;transition:border-color .15s}.home-guide:hover{border-color:var(--green)}.home-extra-icon{width:28px;height:28px;flex-shrink:0;color:var(--green)}.home-guide h2,.home-extras>.install-offer h2{font:600 17px Arial,Helvetica,sans-serif;margin:0 0 5px}.home-guide p,.home-extras>.install-offer p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}.home-extras>.install-offer{min-height:104px;gap:16px}.home-extras>.install-offer .button{min-height:44px;padding:10px 14px;font-size:12px}.home-extras:has(>.home-guide:only-child){grid-template-columns:minmax(0,1fr)}[data-theme=dark] .home-extras>.install-offer{background:transparent}@media(max-width:700px){.home-extras{grid-template-columns:1fr;margin:20px 6% 32px;gap:12px}.home-guide,.home-extras>.install-offer{padding:18px;min-height:90px}.home-extras>.install-offer{flex-direction:row;align-items:center}.home-extras>.install-offer>div{flex:1;min-width:0}.home-extras>.install-offer .button span{display:none}}@media(prefers-reduced-motion:reduce){.home-guide{transition:none}}.install-action-icon{flex-shrink:0}:root{color-scheme:light}body{background:inherit;min-height:100dvh}[data-theme=dark]{color-scheme:dark}.traditional-tile-face{display:block;width:42px;height:59px;flex-shrink:0;max-width:100%}.result-tile .traditional-tile-face{width:32px;height:45px}.hand-tile .traditional-tile-face{height:56px}.tileset-setting{padding:24px 0;border-bottom:1px solid var(--border)}.tileset-setting h3{font:22px var(--serif);margin:0 0 9px}.tileset-setting>p{font-size:12px;color:var(--muted);margin:0 0 18px}.tileset-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.tileset-choice{padding:18px;text-align:left;min-width:0;border:1px solid var(--border);border-radius:8px;background:transparent;color:inherit;cursor:pointer}.tileset-choice.selected{border-color:#829978;box-shadow:inset 0 0 0 1px #829978;background:#edf1e4}.tileset-preview{display:flex;gap:7px;margin-bottom:16px}.tileset-sample{width:40px;min-width:0;height:56px;border:1px solid #dfd9c9;border-bottom:3px solid #babc9f;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#263e33;overflow:hidden}.tileset-sample>span{font:22px serif}.tileset-sample>svg{width:100%;height:100%}.tileset-choice-heading{display:flex;align-items:baseline;justify-content:space-between;gap:6px;margin-bottom:7px}.tileset-choice-heading strong{font-size:14px}.tileset-choice-heading>span{font-size:10px;color:var(--muted)}.tileset-choice small{display:block;color:var(--muted);font-size:12px;line-height:1.6}[data-theme=dark] .tileset-choice.selected{background:#26372b}@media(max-width:700px){.hand-tile .traditional-tile-face{height:45px}.tileset-choice{padding:12px}.tileset-preview{gap:4px}.tileset-sample{width:30px;height:43px}.tileset-choice-heading{flex-direction:column}.tileset-choice small{font-size:11px}}@media(max-width:360px){.tileset-choices{grid-template-columns:1fr}}.tileset-sample .character-tile-face{display:block;font-size:19px;line-height:1.05;width:1em;text-align:center;overflow-wrap:anywhere}@media(max-width:700px){.tileset-sample .character-tile-face{font-size:15px}}.round-next-timer{display:flex;align-items:center;gap:8px}.round-next-timer .turn-countdown{font-size:14px;font-weight:700}.room-invite-setting{min-width:0;padding:8px 6px}.room-invite .room-invite-setting dd{font-size:16px;margin-top:6px}.room-lobby{padding:24px;border-top:3px solid var(--green)}.room-lobby .room-entry-heading h2{font-size:28px;margin:0}.room-lobby-details{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin:20px 0}.room-lobby-details .room-invite{margin:0;gap:10px;align-items:stretch}.room-lobby-details .room-invite-code{display:flex;flex-direction:column;justify-content:center}.room-table-settings{display:flex;flex:1 1 320px;flex-wrap:wrap;gap:12px 24px;margin:0;padding:14px 18px;background:#edf1e580;border-radius:10px}.room-table-settings>div{padding:0;min-width:0}.room-table-settings dt{font-size:11px;color:var(--muted)}.room-table-settings dd{margin:5px 0 0;font-size:15px;font-weight:600;overflow-wrap:anywhere}.room-seats li{display:flex;align-items:center;gap:12px;padding:16px;min-height:82px}.room-seats .room-seat-choice{flex-direction:row;align-items:center;gap:12px;padding:16px;min-height:82px}.room-seat-number{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:42px;border-radius:7px;background:#e6ebdf;border:1px solid var(--border);color:var(--green);font:600 20px var(--serif);box-shadow:0 3px #c6cfbc}.room-seat-info{min-width:0}.room-seats strong{margin:0;font-size:15px;line-height:1.4}.room-seats small{margin-top:4px;font-size:12px;line-height:1.4}.room-seats .room-seat-self{background:#edf1e5;border-color:#8caa7b}.room-seat-self .room-seat-number{background:#214f3b;color:#f5f3ec;border-color:#214f3b;box-shadow:0 3px #163c2b}.room-seats .room-seat-empty{border-style:dashed}.room-lobby-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.room-lobby-footer p{margin:0;color:var(--muted)}.room-lobby-footer .room-lobby-actions{margin:0;gap:8px}[data-theme=dark] .room-table-settings{background:#293b2c}[data-theme=dark] .room-seats .room-seat-self{background:#293b2c;border-color:#78966b}[data-theme=dark] .room-seat-number{background:#354432;color:#d5e2cd;box-shadow:0 3px #142519}[data-theme=dark] .room-seat-self .room-seat-number{background:#214f3b;color:#f5f3ec}@media(max-width:600px){.room-lobby{padding:16px}.room-lobby .room-entry-heading h2{font-size:25px}.room-lobby-details{gap:14px;margin:16px 0}.room-table-settings{flex-basis:100%;gap:12px 20px;padding:12px 14px}.room-seats{gap:8px}.room-seats li,.room-seats .room-seat-choice{padding:12px;gap:10px}.room-seat-number{width:28px;height:36px;font-size:18px}.room-lobby-footer .room-lobby-actions{width:100%}.room-lobby-footer .button{flex:1;justify-content:center}}.room-seats .room-seat-bot{border-color:#a0ad91;background:#f0f2e9}.room-seat-bot .room-seat-info small{display:flex;align-items:center;gap:6px;color:var(--green);font-weight:600}.room-bot-icon{width:18px;height:18px;flex-shrink:0}[data-theme=dark] .room-seats .room-seat-bot{background:#27342a;border-color:#65795a}[data-theme=dark] .room-seat-bot .room-seat-info small{color:#bdd0b2}.room-seats li:not(.room-seat-empty):not(.room-seat-bot){background:#eef3fa;border-color:#aabbd0}.room-seats li:not(.room-seat-empty):not(.room-seat-bot) .room-seat-number{background:#dce7f5;color:#345779;border-color:#aabbd0;box-shadow:0 3px #b3c3d7}.room-seats li:not(.room-seat-empty):not(.room-seat-bot) strong{color:#294b70}.room-seats .room-seat-self{box-shadow:inset 0 0 0 1px #6489b2}.room-seats li.room-seat-self:not(.room-seat-empty):not(.room-seat-bot) .room-seat-number{background:#345779;color:#fff;border-color:#345779;box-shadow:0 3px #233d58}.room-seats .room-seat-bot{background:#f7f0e3;border-color:#c9b38b}.room-seat-bot .room-seat-info strong,.room-seat-bot .room-seat-info small{color:#795721}.room-seat-bot .room-seat-number{background:#eee0c4;color:#795721;border-color:#c9b38b;box-shadow:0 3px #d2bc94}[data-theme=dark] .room-seats li:not(.room-seat-empty):not(.room-seat-bot){background:#253244;border-color:#526d8a}[data-theme=dark] .room-seats li:not(.room-seat-empty):not(.room-seat-bot) strong{color:#c7dbf4}[data-theme=dark] .room-seats li:not(.room-seat-empty):not(.room-seat-bot) small{color:#afc1d8}[data-theme=dark] .room-seats li:not(.room-seat-empty):not(.room-seat-bot) .room-seat-number{background:#354b66;color:#dce9fa;border-color:#526d8a;box-shadow:0 3px #1c2838}[data-theme=dark] .room-seats .room-seat-bot{background:#3b3224;border-color:#8c734b}[data-theme=dark] .room-seat-bot .room-seat-info strong,[data-theme=dark] .room-seat-bot .room-seat-info small{color:#e4c891}[data-theme=dark] .room-seat-bot .room-seat-number{background:#554329;color:#f1d9ac;border-color:#8c734b;box-shadow:0 3px #2b2318}[data-theme=dark] .room-seats li.room-seat-self:not(.room-seat-empty):not(.room-seat-bot) .room-seat-number{background:#345779;color:#fff;border-color:#6d91b8;box-shadow:0 3px #1c2838}
