@import "https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600;700;800;900&display=swap";.room-template-fieldset{background:#fffaf4;border:1px solid #dfd1c1;border-radius:16px;margin:2px 0 20px;padding:15px}.room-template-fieldset>legend{padding:0 6px;font-size:.86rem;font-weight:850}.room-template-fieldset>p{color:#7b6d60;margin:4px 0;font-size:.75rem;line-height:1.55}.room-template-save{grid-template-columns:1fr auto;gap:8px;display:grid}.room-template-save input{min-width:0}.room-template-save button,.room-template-list button{color:#4d4036;background:#fff;border:1px solid #ddcdbc;border-radius:11px;min-height:42px;font-weight:800}.room-template-save button{padding:0 13px}.room-template-list{gap:7px;margin-top:10px;display:grid}.room-template-list article{grid-template-columns:1fr 42px;gap:6px;display:grid}.room-template-list article>button:first-child{text-align:left;justify-items:start;gap:3px;padding:8px 11px;display:grid}.room-template-list small{color:#837466;font-size:.68rem}.room-template-list .template-delete{color:#a34d3a;font-size:1.25rem}.new-version-banner{z-index:1000;right:max(14px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));background:#fff7eb;border:1px solid #dba780;border-radius:17px;grid-template-columns:1fr auto 38px;align-items:center;gap:10px;width:min(470px,100vw - 28px);padding:12px 12px 12px 16px;display:grid;position:fixed;box-shadow:0 18px 50px #3a241f2e}.new-version-banner span{gap:2px;display:grid}.new-version-banner small{color:#76685b}.new-version-banner button{color:#fff;background:#dd6030;border:0;border-radius:11px;min-height:40px;padding:0 13px;font-weight:850}.new-version-banner .version-dismiss{color:#775f52;background:0 0;padding:0;font-size:1.3rem}@media (max-width:560px){.room-template-save{grid-template-columns:1fr}.new-version-banner{grid-template-columns:1fr auto}.new-version-banner .version-dismiss{position:absolute;top:2px;right:5px}.new-version-banner span{padding-right:18px}}.integrity-panel{gap:14px;display:grid}.integrity-summary{flex-wrap:wrap;gap:9px;display:flex}.integrity-summary span{background:#f2eee8;border-radius:999px;padding:8px 11px;font-weight:750}.integrity-summary .integrity-ok{color:#28623b;background:#e3f4e8}.integrity-summary .integrity-bad{color:#993d28;background:#fae5df}.integrity-issues{gap:7px;margin:0;padding:0;list-style:none;display:grid}.integrity-issues li{background:#fffaf1;border-left:4px solid #dfb141;border-radius:8px;grid-template-columns:76px 1fr;gap:9px;padding:10px;display:grid}.integrity-issues li.error{background:#fff1ed;border-color:#d9583c}.integrity-issues strong{text-overflow:ellipsis;overflow:hidden}.integrity-issues p{margin:0}.integrity-empty{color:#28623b;background:#e9f7ed;border-radius:12px;padding:14px;font-weight:800}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#29251f;font-synthesis:none;text-rendering:optimizelegibility;--ink:#29251f;--muted:#736c61;--paper:#fbf8f2;--paper-warm:#f4ede1;--cream:#fffdf8;--line:#ded5c7;--orange:#e9682d;--orange-dark:#bd431c;--green:#285b4b;--green-dark:#153c32;--yellow:#f4bd4f;--red:#bc4437;--blue:#356b85;--shadow:0 22px 60px #3a2d1f1f;--radius-lg:28px;--radius-md:18px;--radius-sm:11px;background:#fbf8f2;font-family:Noto Sans TC,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}img{max-width:100%}h1,h2,h3,p{margin-top:0}.skip-link{z-index:9999;background:var(--ink);color:#fff;border-radius:8px;padding:12px 18px;position:fixed;top:-80px;left:16px}.skip-link:focus{top:16px}.app-shell{flex-direction:column;min-height:100vh;display:flex}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:50;background:#fbf8f2e6;border-bottom:1px solid #5144331f;justify-content:space-between;align-items:center;height:82px;padding:0 clamp(20px,5vw,76px);display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-mark{background:var(--orange);color:#fff;border-radius:13px;place-items:center;width:42px;height:42px;font-size:21px;font-weight:900;display:grid;transform:rotate(-3deg);box-shadow:3px 4px #f5bd50}.brand>span:last-child{align-items:baseline;gap:7px;display:flex}.brand strong{letter-spacing:-.5px;font-size:21px}.brand small{color:var(--muted);font-weight:700}.site-header nav{align-items:center;gap:30px;display:flex}.site-header nav a{color:#514b43;font-size:14px;font-weight:700;text-decoration:none;position:relative}.site-header nav a.active:after{content:"";background:var(--orange);border-radius:4px;height:3px;position:absolute;bottom:-12px;left:0;right:0}main{flex:1}.section-wrap{width:min(1180px,100% - 40px);margin-inline:auto}.page-section{padding-top:72px;padding-bottom:100px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--orange);font-size:12px;font-weight:900;line-height:1.4;display:inline-block}.eyebrow.light{color:#ffcf83}.site-footer{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:24px;padding:36px clamp(20px,5vw,76px);font-size:13px;display:flex}.site-footer>div{align-items:center;gap:18px;display:flex}.brand-footer{color:var(--ink);font-size:16px;font-weight:900}.footer-links{flex-wrap:wrap;justify-content:flex-end}.footer-links a{text-decoration:none}.hero-section{background:radial-gradient(circle at 86% 14%,#f7dfb5 0,#0000 26%),linear-gradient(130deg,#fbf8f2 0 60%,#f5eee2 60%);grid-template-columns:minmax(0,1fr) minmax(420px,.95fr);align-items:center;gap:7vw;min-height:calc(100vh - 82px);padding:70px clamp(24px,7vw,112px) 90px;display:grid;overflow:hidden}.hero-copy{z-index:2;max-width:650px;position:relative}.hero-kicker{color:var(--green);background:#e3eee7;border-radius:999px;align-items:center;gap:10px;padding:9px 13px;font-size:13px;font-weight:800;display:inline-flex}.hero-kicker i{background:#4e9d6e;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #4e9d6e26}.hero-copy h1{letter-spacing:-.07em;margin:28px 0 22px;font-size:clamp(52px,6.2vw,92px);font-weight:900;line-height:.98}.hero-copy h1 em{color:var(--orange);font-style:normal;display:block}.hero-copy>p{max-width:580px;color:var(--muted);font-size:clamp(16px,1.5vw,20px);line-height:1.85}.hero-actions{gap:14px;margin:36px 0 24px;display:flex}.button{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:9px;min-height:44px;padding:11px 20px;font-size:14px;font-weight:800;text-decoration:none;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}.button-large{min-height:56px;padding:15px 26px;font-size:16px}.button-primary{background:var(--orange);color:#fff;box-shadow:0 12px 25px #d34d1c38}.button-primary:hover{background:var(--orange-dark)}.button-secondary{background:var(--cream);color:var(--ink);border-color:var(--line)}.button-secondary:hover{border-color:#bdb1a1;box-shadow:0 10px 25px #2d261e14}.button-ghost{border-color:var(--line);color:var(--ink);background:0 0}.button-light{color:var(--green-dark);background:#fff8e9}.button-neutral{color:var(--ink);background:#f1ece3}.button-danger{background:var(--red);color:#fff}.trust-row{color:var(--muted);flex-wrap:wrap;gap:22px;font-size:13px;font-weight:700;display:flex}.trust-row span{align-items:center;gap:6px;display:inline-flex}.trust-row b{color:var(--green)}.hero-table{aspect-ratio:1.06;justify-self:end;width:100%;max-width:610px;position:relative}.table-top{background:#285b4b;border:18px solid #183e33;border-radius:48%;position:absolute;inset:12% 5%;overflow:visible;transform:rotate(-3deg);box-shadow:0 40px 60px #18342b42,inset 0 0 0 2px #ffffff1f}.table-top:before{content:"";border:1px dashed #fff3;border-radius:48%;position:absolute;inset:8%}.table-logo{color:#f9e9ca;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:38% 28%;transform:rotate(3deg)}.table-logo b{font-size:46px}.table-logo span{letter-spacing:.1em;font-size:12px;font-weight:800}.mini-card{background:#fffaf0;border:1px solid #dac8a9;border-radius:12px;flex-direction:column;gap:6px;width:130px;min-height:80px;padding:15px;display:flex;position:absolute;box-shadow:0 12px 25px #00000038}.mini-card:before{content:"";background:var(--orange);border-radius:50%;width:7px;height:7px;position:absolute;top:12px;right:12px}.mini-card strong{font-size:15px}.mini-card span{color:var(--muted);font-size:11px}.mini-card-1{top:18%;left:-6%;transform:rotate(-9deg)}.mini-card-2{top:12%;right:-4%;transform:rotate(9deg)}.mini-card-3{bottom:8%;left:6%;transform:rotate(4deg)}.mini-card-4{bottom:8%;right:2%;transform:rotate(-7deg)}.orbit{z-index:2;color:#fff;width:66px;height:66px;box-shadow:var(--shadow);border-radius:22px;place-items:center;font-size:22px;font-weight:900;display:grid;position:absolute}.orbit-one{background:var(--orange);top:1%;left:-4%;transform:rotate(-8deg)}.orbit-two{background:var(--yellow);color:#5a4110;top:0;right:0;transform:rotate(7deg)}.orbit-three{background:var(--blue);bottom:0;right:0;transform:rotate(-5deg)}.how-section{padding-block:110px}.section-heading{margin-bottom:38px}.section-heading h2,.page-heading h1{letter-spacing:-.045em;margin:10px 0 0;font-size:clamp(32px,4vw,52px);line-height:1.14}.heading-row{justify-content:space-between;align-items:end;gap:20px;display:flex}.heading-row>a{color:var(--orange-dark);padding-bottom:8px;font-weight:800;text-decoration:none}.steps-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.steps-grid article{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-md);min-height:185px;padding:34px;position:relative}.steps-grid article:after{content:"→";width:38px;height:38px;color:var(--orange);background:var(--paper);z-index:1;border-radius:50%;place-items:center;font-weight:900;display:grid;position:absolute;top:calc(50% - 20px);right:-20px}.steps-grid article:last-child:after{display:none}.step-number{color:var(--orange);font-size:12px;font-weight:900}.steps-grid h3{margin:30px 0 8px;font-size:21px}.steps-grid p{color:var(--muted);margin-bottom:0;line-height:1.65}.game-preview-section{padding-bottom:110px}.feature-game-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.feature-tile{border-radius:var(--radius-md);color:#fff;flex-direction:column;justify-content:flex-end;min-height:250px;padding:26px;text-decoration:none;transition:transform .2s;display:flex;position:relative;overflow:hidden}.feature-tile:hover{transform:translateY(-5px)}.feature-tile:before{content:"";border:28px solid #ffffff1f;border-radius:50%;width:170px;height:170px;position:absolute;top:-35px;right:-45px}.feature-tile>*{position:relative}.feature-tile>span{opacity:.8;font-size:12px;font-weight:800}.feature-tile strong{margin:7px 0 11px;font-size:28px}.feature-tile small{opacity:.8}.feature-tile:nth-child(4n+1),.tile-社交推理,.tile-語音社交推理,.tile-提問推理{background:#315f50}.feature-tile:nth-child(4n+2),.tile-畫圖猜題,.tile-畫圖傳話{background:#e36f38}.feature-tile:nth-child(4n+3),.tile-撲克牌,.tile-撲克,.tile-莊家卡牌{background:#a84337}.feature-tile:nth-child(4n),.tile-雙人棋類,.tile-雙人領地棋,.tile-雙人連線棋{background:#3d6780}.same-room-section{background:var(--green-dark);color:#fff;border-radius:32px;justify-content:space-between;align-items:center;gap:40px;margin:0 clamp(20px,5vw,76px) 100px;padding:62px clamp(30px,6vw,82px);display:flex;position:relative;overflow:hidden}.same-room-section:after{content:"";border:80px solid #ffffff0a;border-radius:50%;width:400px;height:400px;position:absolute;top:-140px;right:-100px}.same-room-section>div{z-index:1;position:relative}.same-room-section h2{letter-spacing:-.04em;margin:10px 0 14px;font-size:clamp(34px,4vw,54px)}.same-room-section p{color:#d6e5df;max-width:650px;margin-bottom:0;line-height:1.8}.room-code-demo{min-width:260px;color:var(--ink);background:#fffaf0;border-radius:18px;padding:24px 30px;transform:rotate(2deg);box-shadow:0 18px 50px #0003}.room-code-demo small{color:var(--muted);font-weight:700;display:block}.room-code-demo strong{letter-spacing:.12em;margin:6px 0;font-size:37px;display:block}.room-code-demo span{color:var(--green);font-size:12px;font-weight:800}.room-code-demo i{background:#55a974;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.page-heading{max-width:780px;margin-bottom:42px}.page-heading.compact{margin-bottom:28px}.page-heading p{color:var(--muted);margin-top:18px;font-size:17px;line-height:1.8}.filter-row{scrollbar-width:thin;gap:9px;margin-bottom:22px;padding-bottom:18px;display:flex;overflow-x:auto}.filter-row button{white-space:nowrap;border:1px solid var(--line);background:var(--cream);color:var(--muted);border-radius:999px;padding:9px 16px;font-size:13px;font-weight:700}.filter-row button.active{background:var(--ink);color:#fff;border-color:var(--ink)}.game-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.game-card{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-md);text-align:left;min-width:0;transition:transform .2s,box-shadow .2s,border .2s;overflow:hidden}.game-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}.game-card-button{width:100%;color:inherit;padding:0}.game-card.is-selected{border:2px solid var(--orange);box-shadow:0 0 0 4px #e9682d1f}.game-card-art{aspect-ratio:16/8.5;background:linear-gradient(135deg,#e3d6c1,#f5ecdf);position:relative;overflow:hidden}.game-card-art img{object-fit:cover;width:100%;height:100%;display:block}.game-card-art img[src$=cover\.webp]{font-size:0}.game-card-index{color:#32281e21;place-items:center;font-size:70px;font-weight:900;display:grid;position:absolute;inset:0}.game-card-art img:not([src=""]){z-index:1;position:relative}.selected-badge{z-index:2;background:var(--orange);color:#fff;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800;position:absolute;top:12px;right:12px}.game-card-body{padding:21px}.game-card-heading{justify-content:space-between;align-items:start;gap:10px;display:flex}.game-card-heading h3{margin:4px 0 0;font-size:21px}.player-count{white-space:nowrap;background:var(--paper-warm);color:var(--muted);border-radius:8px;padding:6px 9px;font-size:11px;font-weight:700}.game-card-body>p{color:var(--muted);min-height:43px;margin:13px 0;font-size:13px;line-height:1.65}.tag-row{flex-wrap:wrap;gap:7px;display:flex}.tag-row>span{background:var(--paper-warm);color:var(--muted);border-radius:7px;padding:5px 8px;font-size:10px;font-weight:700}.tag-row.dark>span{color:#fff;background:#ffffff1f}.game-card-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:18px;padding-top:15px;display:flex}.game-card-actions a,.select-hint{color:var(--orange-dark);font-size:12px;font-weight:800;text-decoration:none}.create-game-grid{grid-template-columns:repeat(3,1fr)}.progress-steps{gap:6px;max-width:620px;margin:0 0 38px;padding:0;list-style:none;display:flex}.progress-steps li{color:#a09990;align-items:center;gap:8px;font-size:12px;font-weight:800;display:flex}.progress-steps li:not(:last-child):after{content:"";background:var(--line);width:48px;height:1px;margin-inline:8px}.progress-steps span{border:1px solid var(--line);border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.progress-steps .current{color:var(--orange-dark)}.progress-steps .current span{background:var(--orange);color:#fff;border-color:var(--orange)}.sticky-action{pointer-events:none;justify-content:flex-end;margin-top:30px;display:flex;position:sticky;bottom:20px}.sticky-action .button{pointer-events:auto}.setup-panel{grid-template-columns:minmax(240px,.65fr) minmax(420px,1fr);align-items:start;gap:28px;display:grid}.selected-game-summary{border-radius:var(--radius-md);background:var(--green);color:#fff;padding:30px;position:sticky;top:110px}.selected-game-summary .eyebrow{color:#ffcc75}.selected-game-summary h2{margin:8px 0 12px;font-size:34px}.selected-game-summary p{color:#dce9e4;line-height:1.7}.selected-game-summary .text-button{color:#ffcf80;margin-top:24px}.form-card,.join-card,.invite-card{background:var(--cream);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);padding:clamp(28px,5vw,48px)}.form-card h2{margin-bottom:25px;font-size:27px}.form-card label,.invite-card label,.join-card label{color:var(--ink);margin-bottom:20px;font-size:13px;font-weight:800;display:block}.form-card label small{color:var(--muted);font-weight:500}input,select,textarea{border:1px solid var(--line);width:100%;min-height:50px;color:var(--ink);background:#fff;border-radius:10px;outline:none;margin-top:8px;padding:11px 14px}input:focus,select:focus,textarea:focus{border-color:var(--orange);box-shadow:0 0 0 4px #e9682d1c}.toggle-row{border-bottom:1px solid var(--line);flex-direction:row;justify-content:space-between;align-items:center;gap:20px;padding:17px 0;display:flex!important}.toggle-row>span{flex-direction:column;gap:4px;display:flex}.toggle-row small{color:var(--muted);font-weight:500}.toggle-row input{appearance:none;background:#cac3b8;border:0;border-radius:999px;width:46px;height:26px;min-height:26px;margin:0;padding:3px;transition:background .2s}.toggle-row input:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;display:block;box-shadow:0 2px 5px #0003}.toggle-row input:checked{background:var(--green)}.toggle-row input:checked:after{transform:translate(20px)}.form-note{color:var(--muted);background:#f1eee7;border-radius:10px;padding:14px;font-size:12px;line-height:1.6}.form-error{color:#9f3026;border-left:4px solid var(--red);background:#fff0ed;border-radius:7px;padding:11px 13px;font-size:13px}.button-row{justify-content:space-between;gap:12px;display:flex}.text-button{background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}.centered-page{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:70vh;padding-inline:20px;display:flex}.join-card{width:min(520px,100% - 30px)}.join-icon{background:var(--orange);color:#fff;border-radius:20px;place-items:center;width:60px;height:60px;margin:0 auto 22px;font-size:28px;display:grid;transform:rotate(-4deg)}.join-card h1{margin:10px 0;font-size:clamp(30px,5vw,43px)}.join-card>p{color:var(--muted);line-height:1.7}.code-label{text-align:left;margin-top:30px}.code-input{text-align:center;text-transform:uppercase;letter-spacing:.22em;min-height:70px;font-size:clamp(24px,6vw,34px);font-weight:900}.join-card .button{width:100%}.privacy-note{color:var(--muted);margin-top:18px;display:block}.error-number{color:var(--orange);font-size:80px;font-weight:900;line-height:1}.centered-page h1{margin:18px 0 10px;font-size:clamp(30px,4vw,46px)}.centered-page p{color:var(--muted)}.loading-spinner{border:4px solid var(--line);border-top-color:var(--orange);border-radius:50%;width:42px;height:42px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.guide-hero{color:#fff;background:var(--green);grid-template-columns:1fr .8fr;align-items:center;gap:60px;min-height:520px;padding:80px max(6vw,50vw - 590px);display:grid;overflow:hidden}.guide-hero h1{letter-spacing:-.06em;margin:12px 0 18px;font-size:clamp(50px,7vw,88px)}.guide-hero p{color:#ffffffd1;max-width:650px;font-size:18px;line-height:1.8}.guide-hero .button{margin-top:28px}.guide-hero img{aspect-ratio:16/9;object-fit:cover;border-radius:24px;transform:rotate(2deg);box-shadow:0 30px 60px #00000040}.guide-content{grid-template-columns:210px 1fr;gap:60px;padding-block:75px 120px;display:grid}.guide-nav{border-left:2px solid var(--line);flex-direction:column;height:max-content;display:flex;position:sticky;top:112px}.guide-nav a{color:var(--muted);padding:9px 16px;font-size:13px;font-weight:700;text-decoration:none}.guide-nav a:hover{color:var(--orange-dark)}.guide-content>section{border-bottom:1px solid var(--line);grid-column:2;grid-template-columns:45px 1fr;gap:20px;padding:40px 0;scroll-margin-top:100px;display:grid}.guide-content>section:first-of-type{padding-top:0}.section-index{color:var(--orange);padding-top:8px;font-size:13px;font-weight:900}.guide-content h2{margin-bottom:20px;font-size:31px}.guide-content h3{margin-top:30px}.guide-content p,.guide-content li{color:var(--muted);line-height:1.85}.guide-content ol{padding-left:22px}.chip-list{flex-wrap:wrap;gap:9px;padding:0;list-style:none;display:flex}.chip-list li{background:var(--paper-warm);color:var(--ink);border-radius:8px;padding:8px 12px;font-size:13px}.guide-image-grid{grid-template-columns:1fr .55fr;align-items:start;gap:16px;margin-top:30px;display:grid}.guide-image-grid img{border:1px solid var(--line);background:#fff;border-radius:16px;width:100%}.legal-page{max-width:860px}.legal-page h1{margin:10px 0 40px;font-size:52px}.legal-page h2{margin-top:38px;font-size:23px}.legal-page p{color:var(--muted);line-height:1.9}.invite-page{background:radial-gradient(circle at 20% 20%,#f6d9ad,#0000 35%);place-items:center;min-height:calc(100vh - 82px);padding-inline:20px;display:grid}.invite-card{width:min(590px,100%)}.invite-card h1{margin:10px 0 25px;font-size:42px}.invite-game{background:var(--green);color:#fff;border-radius:13px;justify-content:space-between;align-items:center;padding:18px;font-weight:900;display:flex}.status-pill{border-radius:999px;align-items:center;min-height:27px;padding:4px 9px;font-size:10px;font-weight:900;display:inline-flex}.status-neutral{color:#5f5850;background:#ece8e0}.status-good{color:#246442;background:#dff3e7}.status-warn{color:#8d5a0c;background:#fff0cc}.status-danger{color:#9a342a;background:#ffe0dc}.invite-card dl{grid-template-columns:repeat(3,1fr);gap:10px;margin:22px 0 30px;display:grid}.invite-card dl div{background:var(--paper-warm);border-radius:9px;padding:13px}.invite-card dt{color:var(--muted);font-size:10px}.invite-card dd{margin:3px 0 0;font-weight:800}.invite-card .button{width:100%}.room-app{z-index:100;background:#f4f0e9;flex-direction:column;display:flex;position:fixed;inset:0}.connection-banner{z-index:120;top:0;text-align:center;color:#fff;background:#8b5a12;padding:8px;font-size:12px;font-weight:800;position:absolute;inset-inline:0}.room-feedback{z-index:300;top:max(16px, env(safe-area-inset-top));color:#fff;text-align:center;pointer-events:none;background:#665a4d;border-radius:999px;max-width:min(90vw,460px);padding:11px 18px;font-size:13px;font-weight:800;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #201c1738}.room-feedback.feedback-success{background:#27704f}.room-feedback.feedback-error{background:#a33b31}.room-feedback.feedback-pending{background:#72551f}.room-topbar{border-bottom:1px solid var(--line);background:#fffdf9;flex:none;justify-content:space-between;align-items:center;height:72px;padding:0 18px;display:flex}.room-topbar>div,.room-meta{align-items:center;gap:16px;display:flex}.compact-brand{background:var(--orange);color:#fff;border-radius:11px;place-items:center;width:40px;height:40px;font-weight:900;text-decoration:none;display:grid}.room-code-button{color:var(--ink);background:0 0;border:0;align-items:baseline;gap:9px;padding:3px;display:flex}.room-code-button small{color:var(--muted)}.room-code-button strong{letter-spacing:.1em;font-size:19px}.room-code-button span{color:var(--orange-dark);font-size:10px}.room-meta{color:var(--muted);font-size:11px}.room-meta>a{font-weight:800;text-decoration:none}.room-layout{flex:1;grid-template-columns:250px minmax(0,1fr) 290px;min-height:0;display:grid}.room-sidebar,.chat-panel{background:#fffdf9;min-height:0;padding:22px 16px;overflow-y:auto}.room-sidebar{border-right:1px solid var(--line);flex-direction:column;display:flex}.room-game-name{border-bottom:1px solid var(--line);padding:4px 8px 20px}.room-game-name h1{margin:6px 0 0;font-size:23px}.room-sidebar>h2{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;margin:20px 8px 8px;font-size:11px;display:flex}.player-list{flex-direction:column;gap:3px;display:flex}.player-row{border-radius:9px;grid-template-columns:36px 1fr auto auto;align-items:center;gap:9px;min-height:53px;padding:6px 8px;display:grid}.player-row:hover{background:#f4efe7}.player-row.is-offline{opacity:.55}.player-avatar{color:#fff;background:var(--green);border-radius:12px 12px 12px 4px;place-items:center;width:35px;height:35px;font-weight:900;display:grid}.avatar-1{background:var(--orange)}.avatar-2{background:var(--blue)}.avatar-3{background:#8b5a8f}.avatar-4{background:#b88628}.player-row>div{flex-direction:column;min-width:0;display:flex}.player-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.player-row small{color:var(--muted);font-size:9px}.connection-dot{background:#aaa;border-radius:50%;width:7px;height:7px}.connection-dot.online{background:#4da36a}.connection-dot.reconnecting{background:#dda333}.connection-dot.offline{background:#a9a49d}.chip-balance{color:#9b6816;font-size:10px}.sidebar-actions{flex-direction:column;gap:12px;margin-top:auto;padding:20px 7px 3px;display:flex}.danger-text{color:var(--red);font-size:11px}.room-main{background:radial-gradient(circle at 50% 10%,#fffaf0,#eee7dc);min-width:0;padding:clamp(16px,3vw,38px);overflow:auto}.lobby-stage{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100%;display:flex}.lobby-emblem{background:var(--green);color:#ffe0a3;border-radius:35px;place-items:center;width:100px;height:100px;margin-bottom:24px;font-size:45px;font-weight:900;display:grid;transform:rotate(-4deg);box-shadow:8px 8px #e9a83f}.lobby-stage h2{letter-spacing:-.04em;margin:10px 0;font-size:clamp(27px,4vw,42px)}.lobby-stage p{color:var(--muted)}.pause-symbol{width:80px;height:80px;color:var(--orange-dark);background:#e8d9c3;border-radius:50%;place-items:center;font-size:32px;font-weight:900;display:grid}.game-surface{border:1px solid var(--line);max-width:970px;min-height:100%;box-shadow:var(--shadow);background:#fffdf9;border-radius:26px;margin:auto;padding:clamp(22px,4vw,46px)}.game-surface>header{text-align:center}.game-surface>header h2{margin:8px 0 25px;font-size:clamp(25px,4vw,41px)}.secret-panel{text-align:center;background:var(--green-dark);color:#fff;border-radius:20px;max-width:500px;margin:25px auto;padding:28px}.secret-panel small{color:#bdd4cb;display:block}.secret-panel strong{margin-top:8px;font-size:34px;display:block}.personal-message{text-align:center;color:var(--muted)}.card-hand{justify-content:center;align-items:end;padding:30px 8px;display:flex;overflow-x:auto}.card-hand button{min-height:110px;color:var(--ink);background:#fff;border:1px solid #cabda9;border-radius:10px;flex-direction:column;flex:0 0 76px;align-items:start;margin-left:-13px;padding:9px;display:flex;box-shadow:0 8px 14px #32281e21}.card-hand button:first-child{margin-left:0}.card-hand button:hover{transform:translateY(-8px)}.card-hand button span{font-size:18px;font-weight:900}.card-hand button small{font-size:20px}.dice-row{justify-content:center;gap:13px;padding:35px;display:flex}.dice-row span{border:2px solid var(--ink);background:#fff;border-radius:12px;place-items:center;width:58px;height:58px;font-size:24px;font-weight:900;display:grid;box-shadow:4px 5px #d6cab8}.game-log{max-width:650px;color:var(--muted);background:#f5f0e8;border-radius:13px;margin:20px auto;padding:16px 20px;font-size:12px;list-style-position:inside}.score-board{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;margin:20px 0;display:grid}.score-board>div{background:#f3eee6;border-radius:10px;justify-content:space-between;padding:13px;display:flex}.game-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:25px;display:flex}.chat-panel{border-left:1px solid var(--line);padding-bottom:max(14px, env(safe-area-inset-bottom));flex-direction:column;display:flex}.chat-panel>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:3px 5px 16px;display:flex}.chat-panel h2{margin:0;font-size:15px}.chat-panel header span{color:#438360;font-size:10px;font-weight:800}.chat-messages{flex:1;padding:14px 3px;overflow-y:auto}.chat-messages>div{margin-bottom:14px}.chat-messages strong{color:var(--muted);font-size:10px}.chat-messages p{background:#f0ebe3;border-radius:5px 12px 12px;width:-moz-fit-content;width:fit-content;max-width:90%;margin:4px 0 0;padding:9px 11px;font-size:12px;line-height:1.5}.chat-messages .mine{text-align:right}.chat-messages .mine p{text-align:left;background:#e3efe8;border-radius:12px 5px 12px 12px;margin-left:auto}.empty-chat{text-align:center;color:var(--muted);margin-top:30px;font-size:11px}.chat-panel form{grid-template-columns:1fr 42px;gap:7px;display:grid}.chat-panel form input{min-height:43px;margin:0;font-size:12px}.chat-panel form button{background:var(--orange);color:#fff;border:0;border-radius:10px;font-size:19px}.drawer-backdrop{z-index:200;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#201c177a;justify-content:flex-end;display:flex;position:fixed;inset:0}.host-drawer{background:#fffdf9;width:min(470px,100%);height:100%;padding:27px;overflow-y:auto;box-shadow:-20px 0 50px #00000026}.host-drawer>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;padding-bottom:20px;display:flex}.host-drawer h2{letter-spacing:.12em;margin:4px 0 0}.icon-button{background:#f2ede5;border:0;border-radius:50%;width:44px;height:44px;font-size:24px}.host-drawer section{border-bottom:1px solid var(--line);padding:24px 0}.host-drawer h3{font-size:14px}.control-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.control-grid button,.danger-outline,.danger-zone button{border:1px solid var(--line);background:#fff;border-radius:9px;min-height:44px;font-size:12px;font-weight:800}.drawer-note{color:var(--muted);margin-bottom:0;font-size:11px;line-height:1.6}.danger-outline{width:100%;color:var(--red);border-color:#e5aaa4}.danger-zone{border-bottom:0!important}.danger-zone button{background:var(--red);color:#fff;border-color:var(--red);width:100%}.admin-app{color:#202420;background:#f4f5f2;grid-template-columns:245px 1fr;min-height:100vh;display:grid}.admin-sidebar{color:#fff;background:#172d27;flex-direction:column;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.admin-brand{border-bottom:1px solid #ffffff1a;align-items:center;gap:12px;padding:5px 8px 25px;display:flex}.admin-brand>span{background:var(--orange);border-radius:11px;place-items:center;width:39px;height:39px;font-weight:900;display:grid}.admin-brand div,.admin-identity div{flex-direction:column;display:flex}.admin-brand strong{font-size:16px}.admin-brand small,.admin-identity small{color:#9db0aa;font-size:9px}.admin-sidebar nav{flex-direction:column;gap:4px;padding-top:20px;display:flex}.admin-sidebar nav button{color:#b9c8c3;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;min-height:44px;padding:8px 12px;font-size:12px;font-weight:700;display:flex}.admin-sidebar nav button span{text-align:center;width:22px;font-size:16px}.admin-sidebar nav button.active{color:#fff;background:#ffffff1a}.admin-identity{border-top:1px solid #ffffff1a;align-items:center;gap:9px;margin-top:auto;padding:18px 6px 2px;display:flex}.admin-identity>span{background:#315448;border-radius:50%;place-items:center;width:31px;height:31px;font-size:11px;display:grid}.admin-identity strong{font-size:10px}.admin-main{min-width:0;padding:28px clamp(18px,3vw,42px) 60px}.admin-topbar{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.admin-topbar h1{margin:2px 0 0;font-size:28px}.admin-topbar>div:last-child{color:var(--muted);font-size:11px}.service-dot,.enabled-dot:before{background:#47a16a;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.admin-error,.admin-loading{text-align:center;background:#fff;border:1px solid #dfe3dd;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}.admin-error p,.admin-error small,.admin-loading p{color:var(--muted)}.metric-grid{grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:18px;display:grid}.metric-grid article{background:#fff;border:1px solid #dfe3dd;border-radius:12px;grid-template-columns:1fr auto;align-items:baseline;padding:20px;display:grid}.metric-grid span{color:var(--muted);font-size:11px}.metric-grid strong{grid-area:1/2/3;font-size:27px}.metric-grid small{color:#3b7b57;font-size:9px}.admin-grid{grid-template-columns:minmax(0,1fr) 280px;gap:18px;display:grid}.admin-panel{background:#fff;border:1px solid #dfe3dd;border-radius:12px;overflow:hidden}.admin-panel>header{border-bottom:1px solid #e5e7e3;justify-content:space-between;align-items:center;min-height:61px;padding:14px 18px;display:flex}.admin-panel>header h2{margin:0;font-size:16px}.admin-panel>header button{color:var(--green);background:0 0;border:0;font-size:10px;font-weight:800}.admin-panel>header input{width:230px;min-height:38px;margin:0;font-size:11px}.table-scroll{overflow-x:auto}.admin-panel table{border-collapse:collapse;width:100%;font-size:10px}.admin-panel th{color:#7b827d;text-align:left;background:#f8f9f7;font-weight:700}.admin-panel th,.admin-panel td{white-space:nowrap;border-bottom:1px solid #eef0ed;padding:11px 14px}.table-status{background:#eef0ed;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:800}.status-in_game{color:#80590e;background:#fff0cb}.status-lobby{color:#2d6e46;background:#e1f2e6}.status-paused{color:#973b31;background:#ffe0dc}.alert-mark{color:var(--red)}.health-panel{padding-bottom:8px}.health-row{border-bottom:1px solid #eef0ed;justify-content:space-between;align-items:center;min-height:45px;padding:10px 18px;font-size:10px;display:flex}.health-row span{color:var(--muted)}.health-row strong{font-size:10px}.full-panel{min-height:500px}.admin-primary{min-height:37px;padding:8px 13px;background:var(--green)!important;color:#fff!important;border-radius:7px!important}.admin-game-grid{grid-template-columns:repeat(3,1fr);gap:12px;padding:17px;display:grid}.admin-game-grid article{border:1px solid #e2e5e0;border-radius:10px;padding:14px}.admin-game-grid article>div{align-items:center;gap:10px;display:flex}.game-admin-icon{width:35px;height:35px;color:var(--green);background:#e8eee9;border-radius:9px;place-items:center;font-weight:900;display:grid}.admin-game-grid article>div>div{flex-direction:column;display:flex}.admin-game-grid strong{font-size:11px}.admin-game-grid small{color:var(--muted);font-size:8px}.admin-game-grid dl{background:#f7f8f6;border-radius:7px;grid-template-columns:repeat(3,1fr);margin:14px 0;padding:8px;display:grid}.admin-game-grid dl div{text-align:center}.admin-game-grid dt{color:var(--muted);font-size:7px}.admin-game-grid dd{margin:3px 0 0;font-size:10px;font-weight:800}.admin-game-grid footer{justify-content:space-between;align-items:center;font-size:9px;display:flex}.admin-game-grid footer button{color:var(--green);background:0 0;border:0;font-size:9px;font-weight:800}.module-link-grid{grid-template-columns:repeat(3,1fr);gap:14px;padding:24px;display:grid}.module-link-grid button{text-align:left;background:#fff;border:1px solid #e0e4de;border-radius:10px;grid-template-rows:1fr 1fr;grid-template-columns:42px 1fr;gap:2px 12px;min-height:120px;padding:17px;display:grid}.module-link-grid button>span{width:42px;height:42px;color:var(--green);background:#e8eee9;border-radius:10px;grid-row:1/3;place-items:center;font-weight:900;display:grid}.module-link-grid strong{font-size:12px}.module-link-grid small{color:var(--muted);font-size:9px}@media (max-width:1050px){.hero-section{grid-template-columns:1fr .8fr;gap:3vw;padding-inline:6vw}.hero-copy h1{font-size:65px}.game-grid,.create-game-grid,.feature-game-grid{grid-template-columns:repeat(2,1fr)}.room-layout{grid-template-columns:220px minmax(0,1fr)}.chat-panel{width:300px;display:none;position:absolute;top:72px;bottom:0;right:0}.admin-game-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.site-header{height:68px;padding-inline:16px}.site-header nav a:first-child,.brand>span:last-child small{display:none}.hero-section{background:radial-gradient(circle at 90% 10%,#f7dfb5,#0000 30%);grid-template-columns:1fr;min-height:auto;padding:54px 22px 75px}.hero-copy h1{font-size:clamp(49px,15vw,72px)}.hero-copy>p{font-size:16px}.hero-actions{flex-direction:column}.hero-table{justify-self:center;max-width:500px;margin-top:30px}.trust-row{gap:13px}.how-section,.game-preview-section{padding-block:75px}.steps-grid{grid-template-columns:1fr}.steps-grid article:after{top:auto;bottom:-31px;right:calc(50% - 19px);transform:rotate(90deg)}.heading-row{flex-direction:column;align-items:start}.same-room-section{border-radius:22px;flex-direction:column;align-items:stretch;margin-inline:14px;padding:40px 24px}.room-code-demo{min-width:0}.game-grid,.create-game-grid{grid-template-columns:1fr}.page-section{padding-top:48px}.setup-panel{grid-template-columns:1fr}.selected-game-summary{position:static}.progress-steps li:not(:last-child):after{width:18px}.guide-hero{grid-template-columns:1fr;padding:55px 22px}.guide-content{grid-template-columns:1fr;gap:0}.guide-nav{display:none}.guide-content>section{grid-column:1}.guide-image-grid{grid-template-columns:1fr}.room-topbar{height:62px;padding-inline:10px}.room-code-button small,.room-code-button span,.room-meta>span:not(.status-pill),.room-meta>a{display:none}.room-code-button strong{font-size:15px}.room-layout{grid-template-columns:1fr}.room-sidebar{display:none}.room-main{padding:10px;padding-bottom:max(10px, env(safe-area-inset-bottom))}.game-surface{border-radius:17px}.host-drawer{padding:20px}.invite-card dl,.admin-app{grid-template-columns:1fr}.admin-sidebar{z-index:50;flex-direction:row;width:100%;height:65px;padding:7px;position:fixed;top:auto;bottom:0}.admin-brand,.admin-identity{display:none}.admin-sidebar nav{flex-direction:row;width:100%;padding:0;display:flex;overflow-x:auto}.admin-sidebar nav button{flex-direction:column;gap:1px;min-width:66px;padding:4px;font-size:7px}.admin-sidebar nav button span{font-size:14px}.admin-main{padding:18px 12px 90px}.metric-grid{grid-template-columns:repeat(2,1fr)}.admin-grid,.admin-game-grid,.module-link-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:more){:root{--line:#665f55;--muted:#4f4941}.button,input,select,.game-card{border-width:2px}}.interactive-game{gap:1rem;min-width:0;display:grid}.game-countdown{background:var(--surface-2);border-radius:999px;height:1.7rem;position:relative;overflow:hidden}.game-countdown span{background:linear-gradient(90deg,var(--accent),#f7b267);transition:width .25s linear;position:absolute;inset:0 auto 0 0}.game-countdown strong{z-index:1;place-items:center;height:100%;font-size:.78rem;display:grid;position:relative}.board-grid{touch-action:manipulation;background:#a9784d;border-radius:1rem;gap:2px;width:min(100%,44rem);margin:auto;padding:.7rem;display:grid}.board-grid>button{aspect-ratio:1;background:#e8c887;border:0;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative}.board-grid>button.legal:not(:disabled):hover:after{content:"";aspect-ratio:1;background:#fff6;border-radius:50%;width:35%}.board-grid>button.selected{outline:3px solid var(--accent);z-index:2}.board-grid>button.last-move{box-shadow:inset 0 0 0 3px #f25f5c}.stone{aspect-ratio:1;border-radius:50%;width:78%;box-shadow:0 3px 6px #0005}.stone-1{background:#222}.stone-2{background:#fafafa}.banqi-piece{background:#f3dfba;border:2px solid;border-radius:50%;place-items:center;width:88%;height:88%;font-weight:800;display:grid}.banqi-piece.red{color:#c33232}.banqi-piece.black{color:#202124}.flight-board,.card-table,.social-game,.dice-game,.trivia-stage,.telephone-stage{border:1px solid var(--line);background:var(--surface);border-radius:1rem;gap:1rem;padding:1rem;display:grid}.flight-board section,.dealer-hand,.community-cards,.private-cards,.center-cards,.card-hand,.blackjack-hands section>div,.arrangement-zones section>div{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.plane-token{background:var(--surface-2);border-radius:999px;padding:.35rem .5rem}.die-display{font-size:1.6rem;font-weight:800}.playing-card{color:#222;background:#fff;border:1px solid #d8d3ca;border-radius:.55rem;flex-direction:column;justify-content:space-between;width:3.75rem;min-height:5.4rem;padding:.35rem;display:flex;box-shadow:0 3px 8px #0002}.playing-card.red{color:#c7353e}.playing-card.selected{outline:3px solid var(--accent);transform:translateY(-.65rem)}.playing-card strong{font-size:1.15rem}.playing-card small{overflow-wrap:anywhere;font-size:.55rem}.card-back{color:#fff;background:repeating-linear-gradient(45deg,#795548,#795548 6px,#5d4037 6px 12px);border-radius:.55rem;place-items:center;width:3.75rem;min-height:5.4rem;display:grid}.card-hand{flex-wrap:nowrap;min-height:6.5rem;padding-top:.8rem;overflow-x:auto}.table-summary{flex-wrap:wrap;align-items:center;gap:.7rem;display:flex}.arrangement-zones{gap:.5rem;display:grid}.arrangement-zones section{border:1px dashed var(--line);border-radius:.7rem;min-height:7rem;padding:.6rem}.mini-actions{justify-content:center;gap:.15rem;display:flex}.mini-actions button{min-width:1.8rem;padding:.2rem}.game-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.game-actions form,.inline-form{flex-wrap:wrap;align-items:end;gap:.45rem;display:flex}.dice-row{gap:.5rem;display:flex}.dice-row span{aspect-ratio:1;color:#222;background:#fff;border:2px solid #ddd;border-radius:.6rem;place-items:center;width:3rem;font-size:1.3rem;font-weight:800;display:grid}.game-text-action{gap:.5rem;display:flex}.game-text-action input{flex:1;min-width:8rem}.private-result,.answer-reveal{background:var(--surface-2);border-radius:.7rem;padding:.8rem}.drawing-workspace{gap:.7rem;display:grid}.drawing-workspace canvas{aspect-ratio:4/3;border:1px solid var(--line);touch-action:none;background:#fffdf7;border-radius:.8rem;width:100%}.drawing-tools{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.drawing-tools label{align-items:center;gap:.3rem;display:flex}.drawing-clues{flex-wrap:wrap;gap:.8rem;display:flex}.answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.answer-option{text-align:left;border-radius:.8rem;align-items:center;gap:.7rem;min-height:4.5rem;padding:.8rem;display:flex}.answer-option span{aspect-ratio:1;background:var(--accent);color:#fff;border-radius:50%;place-items:center;width:2rem;display:grid}@media (max-width:640px){.playing-card{width:3.25rem;min-height:4.8rem}.answer-grid{grid-template-columns:1fr}.board-grid{padding:.35rem}.game-text-action{flex-direction:column}.game-text-action>*{width:100%}}.game-context-chips{flex-wrap:wrap;justify-content:center;gap:6px;margin:-13px 0 17px;display:flex}.game-context-chips span{border:1px solid var(--line);color:var(--muted);background:#faf7f1;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.game-player-ribbon{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;margin-bottom:14px;display:grid}.game-player-ribbon article{border:1px solid var(--line);background:#f8f4ed;border-radius:12px;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:68px;padding:9px 10px;display:grid;position:relative}.game-player-ribbon article.current{border-color:var(--orange);box-shadow:inset 4px 0 0 var(--orange);background:#fff0e4}.game-player-ribbon article.me{outline-offset:-4px;outline:1px dashed #9c886e}.game-player-avatar{color:#fff;background:linear-gradient(145deg,#e66d38,#c34b21);border-radius:50%;place-items:center;width:36px;height:36px;font-size:13px;font-weight:900;display:grid}.game-player-ribbon article>div{gap:1px;min-width:0;display:grid}.game-player-ribbon small{color:var(--muted);font-size:8px;font-weight:700}.game-player-ribbon strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.game-player-ribbon p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:9px;overflow:hidden}.game-player-ribbon article>b{background:var(--orange);color:#fff;border-radius:999px;padding:3px 5px;font-size:7px;position:absolute;top:6px;right:6px}.interactive-game .table-summary{border:1px solid var(--line);background:linear-gradient(145deg,#faf5ed,#fff);border-radius:11px;min-height:62px;padding:10px 12px}.interactive-game .table-summary>strong{color:#a54420;font-size:16px}.interactive-game .game-actions .button{min-height:44px;padding-inline:16px;font-weight:850}.interactive-game .social-game,.interactive-game .dice-game,.interactive-game .trivia-stage,.interactive-game .telephone-stage{box-shadow:0 7px 20px #342a2012}.interactive-game .personal-message{background:#fff4e8;border-radius:9px;padding:9px 12px}.game-surface .score-board{margin-top:14px}.game-surface .score-board>div{border:1px solid var(--line)}@media (max-width:640px) and (orientation:portrait){.game-surface{min-height:0;padding:12px 9px calc(18px + env(safe-area-inset-bottom));border-radius:14px}.game-surface>header{text-align:left;padding-inline:3px}.game-surface>header h2{margin:3px 0 10px;font-size:21px;line-height:1.2}.game-context-chips{justify-content:flex-start;margin:0 0 10px}.game-context-chips span{padding:4px 7px;font-size:8px}.game-player-ribbon{scroll-snap-type:x proximity;scrollbar-width:none;grid-template-columns:none;gap:7px;margin:0 -9px 9px;padding:1px 9px 6px;display:flex;overflow-x:auto}.game-player-ribbon::-webkit-scrollbar{display:none}.game-player-ribbon article{scroll-snap-align:start;flex:0 0 137px;grid-template-columns:32px minmax(0,1fr);min-height:61px;padding:8px}.game-player-avatar{width:31px;height:31px}.interactive-game{gap:8px}.interactive-game .card-table,.interactive-game .social-game,.interactive-game .dice-game,.interactive-game .trivia-stage,.interactive-game .telephone-stage,.interactive-game .flight-board{border-radius:12px;gap:8px;padding:9px}.interactive-game .table-summary{min-height:48px;padding:8px}.interactive-game .game-actions{gap:7px;margin-top:10px}.interactive-game .game-actions .button{flex:42%;min-height:46px;padding-inline:10px}.interactive-game .card-hand{margin-inline:-9px;padding:18px 9px 10px}.interactive-game .game-countdown{height:1.45rem}.game-log{margin:10px 0 0;padding:11px 14px}.score-board{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:10px}}.blackjack-table-v2{gap:14px;display:grid}.blackjack-status-banner{background:linear-gradient(135deg,#fff9ed,#f6eddf);border:1px solid #d7cbb9;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.blackjack-status-banner.is-me{border-color:var(--orange);box-shadow:0 0 0 2px #e4652f1f}.blackjack-status-banner>div:first-child{gap:4px;display:grid}.blackjack-status-banner small{color:var(--muted);font-size:10px;font-weight:800}.blackjack-status-banner strong{font-size:15px}.blackjack-my-chips{color:#fff;text-align:right;background:#2f6a4e;border-radius:11px;min-width:105px;padding:8px 12px}.blackjack-my-chips small{color:#d7eee2}.blackjack-my-chips strong{font-size:21px;display:block}.blackjack-players{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;display:grid}.blackjack-players>article{border:1px solid var(--line);background:#f8f4ed;border-radius:12px;gap:9px;min-width:0;padding:11px;display:grid}.blackjack-players>article.current{border-color:var(--orange);box-shadow:inset 4px 0 0 var(--orange);background:#fff0e4}.blackjack-players>article.me{outline-offset:-4px;outline:1px dashed #a9967c}.blackjack-players article>header{align-items:center;gap:8px;display:flex}.blackjack-players article>header>span{color:#fff;background:#e3652f;border-radius:50%;flex:0 0 34px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.blackjack-players article>header>div{min-width:0;display:grid}.blackjack-players article>header small{color:var(--muted);font-size:9px}.blackjack-players article>header strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.blackjack-player-facts{color:var(--muted);justify-content:space-between;gap:8px;font-size:10px;display:flex}.blackjack-player-facts b{color:var(--ink)}.blackjack-public-hands{gap:6px;display:grid}.blackjack-public-hands>div{border-top:1px solid var(--line);gap:3px;padding-top:6px;display:grid}.blackjack-public-hands small,.blackjack-public-hands em{color:var(--muted);font-size:9px;font-style:normal}.blackjack-public-hands b{font-size:10px}.blackjack-public-hands b.win{color:#26704e}.blackjack-public-hands b.lose{color:#a33b31}.mini-card-stack{min-height:27px;padding-left:4px;display:flex}.mini-card-stack i{color:#fff;background:repeating-linear-gradient(45deg,#8a5e45,#8a5e45 3px,#704934 3px 6px);border:1px solid #73503c;border-radius:4px;place-items:center;width:20px;height:27px;margin-left:-4px;font-size:7px;font-style:normal;display:grid}.blackjack-dealer{color:#fff;background:linear-gradient(145deg,#155a43,#0e4635);border-radius:14px;padding:14px}.blackjack-dealer>header,.blackjack-own-hands>header{justify-content:space-between;align-items:start;gap:10px;display:flex}.blackjack-dealer header div,.blackjack-own-hands>header{gap:3px;display:grid}.blackjack-dealer header small,.blackjack-own-hands header small{color:#cce5d8;font-size:10px;font-weight:800}.blackjack-dealer header>span{background:#fff2;border-radius:999px;padding:4px 8px;font-size:10px}.blackjack-dealer-cards{justify-content:center;align-items:center;gap:5px;min-height:98px;padding-top:10px;display:flex}.blackjack-own-hands{border:1px solid var(--line);background:#fff;border-radius:14px;gap:9px;padding:14px;display:grid}.blackjack-own-hands>header small{color:var(--muted)}.blackjack-own-hands>article{border:1px solid var(--line);background:#faf7f1;border-radius:11px;padding:11px}.blackjack-own-hands>article.active{border-color:var(--orange);background:#fff0e4;box-shadow:0 0 0 2px #e4652f1a}.blackjack-hand-heading{justify-content:space-between;gap:10px;font-size:11px;display:flex}.blackjack-hand-heading span{color:var(--muted)}.blackjack-own-cards{justify-content:center;gap:4px;padding:12px 0 2px;display:flex;overflow-x:auto}.blackjack-outcome{text-align:center;border-radius:7px;margin-top:8px;padding:6px 8px;font-size:11px;font-weight:900}.blackjack-outcome.win{color:#26704e;background:#dff2e7}.blackjack-outcome.lose{color:#a33b31;background:#f6e1df}.blackjack-controls{border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px}.blackjack-bet-title{justify-content:space-between;align-items:center;gap:10px;display:flex}.blackjack-bet-title span{color:var(--muted);font-size:10px}.blackjack-chip-row{flex-wrap:wrap;justify-content:center;gap:8px;padding:14px 0;display:flex}.blackjack-chip-row button{color:#fff;background:#347f5d;border:4px dashed #fff8;border-radius:50%;outline:2px solid #286449;width:55px;height:55px;font-size:10px;font-weight:900;box-shadow:0 3px 7px #0003}.blackjack-chip-row button:nth-child(2n){background:#c45247;outline-color:#aa3e35}.blackjack-chip-row button.selected{transform:translateY(-5px);box-shadow:0 7px 13px #0004}.blackjack-bet-submit{grid-template-columns:minmax(90px,1fr) 2fr;gap:8px;display:grid}.blackjack-bet-submit input{border:1px solid var(--line);border-radius:9px;width:100%;min-height:44px;padding:8px}.blackjack-action-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.blackjack-action-grid .button{width:100%}.blackjack-action-grid .button-danger{grid-column:auto}.blackjack-waiting{color:var(--muted);text-align:center;margin:0;font-size:11px}.blackjack-log{border:1px solid var(--line);background:#faf7f1;border-radius:11px;padding:11px 14px}.blackjack-log summary{cursor:pointer;font-size:12px;font-weight:900}.blackjack-log p{color:var(--muted);margin:7px 0 0;font-size:10px}@media (max-width:640px){.game-blackjack{min-height:0;padding:12px 9px calc(76px + env(safe-area-inset-bottom))}.game-blackjack>header{text-align:left;padding-inline:4px}.game-blackjack>header h2{margin:3px 0 10px;font-size:21px}.game-blackjack .interactive-game{gap:8px}.blackjack-table-v2{gap:9px}.blackjack-status-banner{z-index:7;padding:9px 10px;position:sticky;top:-1px;box-shadow:0 5px 14px #28201824}.blackjack-status-banner>div:first-child strong{font-size:11px}.blackjack-my-chips{min-width:88px;padding:6px 9px}.blackjack-my-chips strong{font-size:17px}.blackjack-players{scroll-snap-type:x proximity;scrollbar-width:none;grid-template-columns:none;gap:7px;margin-inline:-9px;padding:2px 9px 7px;display:flex;overflow-x:auto}.blackjack-players::-webkit-scrollbar{display:none}.blackjack-players>article{scroll-snap-align:start;flex:0 0 142px;padding:9px}.blackjack-player-facts{gap:3px;display:grid}.blackjack-dealer,.blackjack-own-hands{padding:9px}.blackjack-dealer-cards{min-height:82px;padding-top:6px}.blackjack-dealer-cards .playing-card,.blackjack-dealer-cards .card-back,.blackjack-own-cards .playing-card{width:3.15rem;min-height:4.55rem}.blackjack-own-hands{gap:7px}.blackjack-own-hands>article{padding:8px}.blackjack-own-cards{justify-content:flex-start;padding:8px 0 1px}.blackjack-hand-heading,.blackjack-bet-title{display:grid}.blackjack-controls{bottom:calc(-1 * env(safe-area-inset-bottom));z-index:8;padding:10px 10px calc(10px + env(safe-area-inset-bottom));border-radius:14px 14px 0 0;margin:0 -9px -66px;position:sticky;box-shadow:0 -7px 22px #2820182e}.blackjack-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blackjack-action-grid .button{min-height:48px}.blackjack-bet-submit{grid-template-columns:1fr 1.5fr}.blackjack-chip-row{flex-wrap:nowrap;justify-content:flex-start;padding:10px 2px;overflow-x:auto}.blackjack-chip-row button{flex:0 0 50px;width:50px;height:50px}.blackjack-log{margin-bottom:10px}}.big-two-table{gap:14px;display:grid}.big-two-turn-banner{background:#fffaf2;border:1px solid #dfd5c6;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;display:flex}.big-two-turn-banner span{font-size:17px;font-weight:900}.big-two-turn-banner strong{color:var(--muted);text-align:right;font-size:12px}.big-two-turn-banner.is-me{border-color:var(--orange);background:#fff0e4;box-shadow:0 0 0 2px #e4652f1f}.big-two-seats{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:8px;display:grid}.big-two-seats>div{border:1px solid var(--line);background:#f8f4ed;border-radius:11px;gap:3px;min-width:0;padding:10px 11px;display:grid}.big-two-seats>div.current{border-color:var(--orange);box-shadow:inset 4px 0 0 var(--orange);background:#fff0e4}.big-two-seats>div.me{outline-offset:-4px;outline:1px dashed #a9967c}.big-two-seats small,.big-two-seats span{color:var(--muted);font-size:10px}.big-two-seats strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.big-two-seats em{min-height:14px;color:var(--orange);font-size:10px;font-style:normal;font-weight:800}.big-two-center{border:1px solid var(--line);background:linear-gradient(145deg,#f2eadc,#fffaf2);border-radius:14px;padding:14px}.big-two-center>header,.big-two-hand-area>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.big-two-center header div,.big-two-hand-area header div:first-child{gap:3px;display:grid}.big-two-center header small,.big-two-hand-area header small{color:var(--muted);font-size:10px;font-weight:800}.big-two-center header>span{background:#e5dac8;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:800}.big-two-played-cards{justify-content:center;align-items:center;gap:0;min-height:112px;padding:15px 4px 2px;display:flex;overflow-x:auto}.big-two-played-cards .playing-card{flex:0 0 64px;margin-left:-8px}.big-two-played-cards .playing-card:first-child{margin-left:0}.big-two-empty-pile{color:var(--muted);font-size:12px}.big-two-hand-area{border:1px solid var(--line);background:#fff;border-radius:14px;padding:14px}.big-two-sort-controls{flex-wrap:wrap;justify-content:flex-end;gap:5px!important;display:flex!important}.big-two-sort-controls button{border:1px solid var(--line);background:#f7f2ea;border-radius:8px;min-height:34px;padding:6px 9px;font-size:10px;font-weight:800}.big-two-sort-controls button.active{border-color:var(--orange);color:#a33e18;background:#fff0e4}.big-two-hand{justify-content:flex-start;padding:26px 8px 16px}.big-two-hand .playing-card{flex:0 0 68px;margin-left:-19px;transition:transform .14s,margin .14s}.big-two-hand .playing-card:first-child{margin-left:0}.big-two-hand .playing-card.selected{z-index:2;outline:3px solid var(--orange);margin-right:7px;transform:translateY(-14px)}.big-two-selection-help{min-height:34px;color:var(--muted);background:#f7f2ea;border-radius:9px;padding:8px 10px;font-size:11px;line-height:1.5}.big-two-selection-help .invalid{color:#a33b31;font-weight:800}.big-two-actions{margin-top:10px}.big-two-actions .button{min-width:105px}.big-two-guide{border:1px solid var(--line);background:#faf7f1;border-radius:11px;padding:12px 14px}.big-two-guide summary{cursor:pointer;font-size:12px;font-weight:900}.big-two-guide p{color:var(--muted);margin:8px 0 0;font-size:11px;line-height:1.55}.big-two-history{border:1px solid var(--line);background:#faf7f1;border-radius:11px;grid-template-columns:auto 1fr;gap:6px 12px;padding:12px 14px;display:grid}.big-two-history>strong{grid-column:1/-1;font-size:12px}.big-two-history>div{grid-column:1/-1;grid-template-columns:minmax(72px,auto) 1fr;gap:10px;font-size:11px;display:grid}.big-two-history span{font-weight:800}.big-two-history em{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}@media (max-width:640px){.big-two-table{gap:10px}.big-two-turn-banner{padding:11px 12px;display:grid}.big-two-turn-banner strong{text-align:left}.big-two-seats{grid-template-columns:repeat(2,minmax(0,1fr))}.big-two-center,.big-two-hand-area{padding:10px}.big-two-hand-area>header{display:grid}.big-two-sort-controls{justify-content:flex-start}.big-two-hand{margin-inline:-10px;padding-inline:10px}.big-two-hand .playing-card{flex-basis:58px;min-height:88px;margin-left:-22px}.big-two-hand .playing-card:first-child{margin-left:0}.big-two-actions{grid-template-columns:1fr 1fr;display:grid}.big-two-actions .button{width:100%;min-width:0}.big-two-actions .button:last-child{grid-column:1/-1}}.mahjong-table{color:#fff;background:linear-gradient(145deg,#176b55,#0d4d3d);border-radius:1rem;gap:1rem;padding:1rem;display:grid}.mahjong-status{flex-wrap:wrap;gap:1rem;display:flex}.mahjong-opponents{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.mahjong-opponents section{background:#ffffff14;border-radius:.7rem;padding:.55rem}.mahjong-opponents section>span{opacity:.8;font-size:.75rem;display:block}.mahjong-mini-row,.mahjong-discards,.mahjong-hand{flex-wrap:wrap;gap:.2rem;margin-top:.35rem;display:flex}.mahjong-tile{color:#15362e;background:#fffdf0;border:0;border-radius:.3rem;flex-direction:column;justify-content:center;width:2.55rem;min-height:3.6rem;padding:.2rem;display:flex;box-shadow:inset 0 -4px #d8d1b7,0 2px 4px #0003}.mahjong-tile small{opacity:.6;font-size:.42rem}.mahjong-tile.selected{outline:3px solid #ffd166;transform:translateY(-.55rem)}.mahjong-tile.drawn{margin-left:.45rem}.last-discard{justify-content:center;align-items:center;gap:.7rem;display:flex}.mahjong-hand{border-top:1px solid #fff3;justify-content:center;padding-top:.7rem}.mahjong-result{color:#233;background:#fff;border-radius:.8rem;padding:1rem}@media (max-width:640px){.mahjong-opponents{grid-template-columns:1fr}.mahjong-tile{width:2.25rem;min-height:3.25rem}.mahjong-table{padding:.6rem}}.card-sort-bar{background:#f7f2ea;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;padding:7px 9px;display:flex}.card-sort-bar>span{color:var(--muted);font-size:10px;font-weight:800}.card-sort-bar>div{gap:5px;display:flex}.card-sort-bar button,.mahjong-sort-controls button{border:1px solid var(--line);min-height:32px;color:var(--ink);background:#fff;border-radius:8px;padding:5px 9px;font-size:9px;font-weight:800}.card-sort-bar button.active,.mahjong-sort-controls button.active{border-color:var(--orange);color:#a33e18;background:#fff0e4}.mahjong-table-v2{color:#fff;background:radial-gradient(circle at 50% 35%,#23745e,#0d4b3b 72%);border-radius:18px;gap:12px;padding:14px;display:grid;box-shadow:inset 0 0 0 1px #ffffff18,0 12px 30px #163c3030}.mahjong-table-status{background:#092f27aa;border:1px solid #ffffff28;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.mahjong-table-status.is-me{border-color:#ffd166;box-shadow:0 0 0 2px #ffd16622}.mahjong-table-status>div:first-child{gap:3px;display:grid}.mahjong-table-status small{color:#c9e4da;font-size:9px;font-weight:800}.mahjong-table-status strong{font-size:14px}.mahjong-wall-count{justify-content:flex-end;align-items:end;gap:4px;min-width:75px;display:flex}.mahjong-wall-count small{align-self:start}.mahjong-wall-count strong{font-size:24px}.mahjong-wall-count span{padding-bottom:3px;font-size:9px}.mahjong-round-facts{flex-wrap:wrap;gap:7px;display:flex}.mahjong-round-facts span{color:#d7eee6;background:#ffffff16;border-radius:999px;padding:6px 9px;font-size:9px}.mahjong-round-facts b{color:#fff}.mahjong-round-facts .warning{color:#fff;background:#9f3d33;font-weight:900}.mahjong-opponent-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.mahjong-opponent-strip>article{background:#ffffff0f;border:1px solid #ffffff1e;border-radius:12px;min-width:0;padding:10px}.mahjong-opponent-strip>article.current{background:#ffffff1b;border-color:#ffd166;box-shadow:inset 4px 0 #ffd166}.mahjong-opponent-strip article>header,.mahjong-board-center>header,.mahjong-self-panel>header{justify-content:space-between;align-items:start;gap:8px;display:flex}.mahjong-opponent-strip article header>div{min-width:0;display:grid}.mahjong-opponent-strip article header small{color:#bcd9cf;font-size:8px}.mahjong-opponent-strip article header strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.mahjong-opponent-strip article header>span{background:#d65b35;border-radius:999px;min-height:17px;padding:3px 5px;font-size:7px;font-weight:900}.mahjong-player-values{flex-wrap:wrap;gap:5px;margin:7px 0;display:flex}.mahjong-player-values span{color:#cbe2da;font-size:8px}.mahjong-hidden-tiles{align-items:center;min-height:30px;padding-left:3px;display:flex;overflow:hidden}.mahjong-hidden-tiles i,.mahjong-facedown{color:#fff6e8;background:repeating-linear-gradient(45deg,#bc5a35,#bc5a35 3px,#9f4326 3px 6px);border:1px solid #dfd0ac;border-radius:3px;flex:0 0 17px;place-items:center;width:17px;height:27px;margin-left:-5px;font-size:6px;font-style:normal;display:grid;box-shadow:0 2px 2px #0003}.mahjong-hidden-tiles i:first-child{margin-left:0}.mahjong-meld-row{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.mahjong-meld{background:#082f2766;border-radius:6px;padding:4px}.mahjong-meld>small{color:#d1e6df;margin-bottom:3px;font-size:7px;display:block}.mahjong-meld>span{gap:1px;display:flex}.mahjong-flowers{align-items:center;gap:2px;margin-top:6px;display:flex}.mahjong-flowers>small{color:#cbe2da;margin-right:3px;font-size:7px}.mahjong-board-center{background:#063e32aa;border:1px solid #ffffff20;border-radius:14px;padding:12px}.mahjong-board-center header>div{display:grid}.mahjong-board-center header small{color:#bcd9cf;font-size:8px}.mahjong-board-center header strong{font-size:12px}.mahjong-last-discard-label{color:#ffe4a8;align-items:center;gap:6px;font-size:9px;font-weight:900;display:flex}.mahjong-no-discard{color:#bcd9cf;font-size:9px}.mahjong-river{background:#ffffff0a;border-radius:10px;grid-template-columns:repeat(12,minmax(28px,1fr));align-content:start;gap:5px;min-height:105px;margin-top:10px;padding:9px;display:grid}.mahjong-river>div{justify-items:center;gap:2px;min-width:0;display:grid}.mahjong-river>div.latest{border-radius:5px;outline:2px solid #ffd166;padding:2px}.mahjong-river>div>small{color:#a9cec1;font-size:6px}.mahjong-river>p{color:#acd0c4;grid-column:1/-1;margin:auto;font-size:9px}.mahjong-self-panel{color:#16382f;background:#fff9e9;border:1px solid #ead8af;border-radius:14px;padding:12px}.mahjong-self-panel>header small{color:#667a72;font-size:8px}.mahjong-self-panel>header strong{font-size:13px}.mahjong-self-values{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.mahjong-self-values span{background:#e9e0c9;border-radius:999px;padding:4px 7px;font-size:8px}.mahjong-self-panel .mahjong-meld{background:#e8dfc9}.mahjong-self-panel .mahjong-meld>small,.mahjong-self-panel .mahjong-flowers>small{color:#60736b}.mahjong-sort-controls{justify-content:flex-end;gap:5px;margin-top:8px;display:flex}.mahjong-hand-v2{justify-content:center;align-items:end;gap:2px;min-height:77px;padding:15px 3px 4px;display:flex;overflow-x:auto}.mahjong-selection-message{color:#66756f;background:#eee5d0;border-radius:8px;min-height:29px;margin-top:6px;padding:7px 9px;font-size:9px}.mahjong-tile{color:#16382f;background:linear-gradient(#fffef3,#eee7cf);border:1px solid #d0c5a8;border-radius:5px;flex:0 0 41px;width:41px;min-height:57px;padding:3px 2px;transition:transform .13s;box-shadow:inset 0 -4px #d3c8aa,0 2px 4px #0004;opacity:1!important}.mahjong-tile strong{font-size:18px;line-height:1}.mahjong-tile small{opacity:1;margin-top:3px;font-size:9px}.mahjong-tile.tile-wan{color:#ad342e}.mahjong-tile.tile-tong{color:#21664c}.mahjong-tile.tile-suo{color:#255a8f}.mahjong-tile.tile-dragon-red{color:#c32f2a}.mahjong-tile.tile-dragon-green{color:#23835d}.mahjong-tile.tile-flower{color:#8b4d93}.mahjong-tile.selected{z-index:2;outline:3px solid #f0a93b;transform:translateY(-12px)}.mahjong-tile.drawn{margin-left:10px;box-shadow:inset 0 -4px #d3c8aa,0 0 0 2px #e47a3f,0 3px 6px #0003}.mahjong-tile.compact{flex-basis:28px;width:28px;min-height:39px;padding:2px 1px}.mahjong-tile.compact strong{font-size:12px}.mahjong-tile.compact small{font-size:6px}.mahjong-action-dock{background:#082f27cc;border:1px solid #ffffff25;border-radius:13px;flex-wrap:wrap;justify-content:center;gap:7px;padding:10px;display:flex}.mahjong-action-dock .button{min-width:88px;min-height:44px}.mahjong-win-button{color:#fff!important;background:#c54435!important}.mahjong-chow-options{flex-wrap:wrap;flex:100%;justify-content:center;align-items:center;gap:6px;display:flex}.mahjong-chow-options>strong{color:#d5e7e1;font-size:9px}.mahjong-submitted,.mahjong-waiting{color:#c8dfd7;align-self:center;font-size:10px;font-weight:800}.mahjong-result-v2{color:#17382f;background:#fff8e8;border-radius:13px;padding:14px}.mahjong-result-v2 header small{color:#7a897f;font-size:9px}.mahjong-result-v2 h3{margin:3px 0 10px}.mahjong-result-v2 article{border-top:1px solid #ded3b9;padding:8px 0}.mahjong-result-v2 p{color:#66756f;margin:4px 0;font-size:10px}.mahjong-transfers{gap:4px;display:grid}.mahjong-transfers span{background:#ece2c9;border-radius:6px;padding:5px 7px;font-size:9px}@media (max-width:640px) and (orientation:portrait){.game-taiwan-mahjong{padding:9px 6px calc(72px + env(safe-area-inset-bottom))}.mahjong-table-v2{border-radius:12px;gap:8px;padding:8px}.mahjong-table-status{z-index:7;padding:8px 9px;position:sticky;top:-1px;box-shadow:0 5px 14px #001f1880}.mahjong-table-status strong{font-size:11px}.mahjong-wall-count{min-width:63px}.mahjong-wall-count strong{font-size:19px}.mahjong-round-facts{gap:4px}.mahjong-round-facts span{padding:4px 6px;font-size:7px}.mahjong-opponent-strip{scroll-snap-type:x proximity;scrollbar-width:none;grid-template-columns:none;gap:6px;margin-inline:-8px;padding:1px 8px 6px;display:flex;overflow-x:auto}.mahjong-opponent-strip::-webkit-scrollbar{display:none}.mahjong-opponent-strip>article{scroll-snap-align:start;flex:0 0 148px;padding:8px}.mahjong-board-center,.mahjong-self-panel{padding:8px}.mahjong-river{grid-template-columns:repeat(8,minmax(26px,1fr));gap:3px;min-height:84px;padding:6px}.mahjong-river .mahjong-tile.compact{flex-basis:25px;width:25px;min-height:35px}.mahjong-river .mahjong-tile.compact strong{font-size:11px}.mahjong-self-panel>header{display:grid}.mahjong-self-values,.mahjong-sort-controls{justify-content:flex-start}.mahjong-hand-v2{justify-content:flex-start;margin-inline:-8px;padding:17px 8px 6px;overflow-x:auto}.mahjong-hand-v2 .mahjong-tile{flex-basis:37px;width:37px;min-height:54px;margin-left:-13px}.mahjong-hand-v2 .mahjong-tile:first-child{margin-left:0}.mahjong-hand-v2 .mahjong-tile.drawn{margin-left:2px}.mahjong-hand-v2 .mahjong-tile.selected{margin-right:7px}.mahjong-action-dock{bottom:calc(-1 * env(safe-area-inset-bottom));z-index:8;padding:9px 8px calc(9px + env(safe-area-inset-bottom));border-radius:13px 13px 0 0;margin:0 -8px -64px;position:sticky;box-shadow:0 -7px 20px #001f1875}.mahjong-action-dock .button{flex:30%;min-width:76px;min-height:47px}.mahjong-chow-options{grid-template-columns:1fr 1fr;display:grid}.mahjong-chow-options>strong{grid-column:1/-1}}:root{--ink:#27221c;--muted:#746b5f;--paper:#f7f1e8;--paper-warm:#eee3d4;--cream:#fffdf8;--line:#d9cdbd;--orange:#e35f2b;--orange-dark:#b83e18;--green:#24604d;--green-dark:#123e32;--yellow:#f2b94b;--red:#b94338;--blue:#326b88;--surface:#fffdf8;--surface-2:#f1eadf;--shadow-sm:0 6px 18px #362a1d14;--shadow:0 22px 60px #362a1d24}::selection{color:#342016;background:#f3b77b}body{background:radial-gradient(circle at 8% 4%,#fff8e9 0,transparent 24rem),radial-gradient(circle at 93% 18%,#e3eee7 0,transparent 28rem),var(--paper)}button,input,select,textarea{border-color:var(--line)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #e35f2b59}button:active,.button:active{transform:translateY(1px)scale(.99)}.button{letter-spacing:.01em;border-radius:13px;box-shadow:inset 0 1px #ffffff73}.button-primary{background:linear-gradient(145deg,#ef7540,#d84d20);box-shadow:0 11px 23px #b83e183b,inset 0 1px #ffffff45}.button-secondary{background:linear-gradient(#fff,#faf5ed)}.button-danger{background:linear-gradient(145deg,#c95649,#a93830)}input,select,textarea{background:#fffefb;transition:border-color .16s,box-shadow .16s,background .16s}input:focus,select:focus,textarea:focus{background:#fff;box-shadow:0 0 0 4px #e35f2b17;border-color:#d66a38!important}.site-header{background:#faf6eee0;border-bottom-color:#d8ccbb99;box-shadow:0 5px 24px #43321f0f}.brand-mark,.compact-brand{background:linear-gradient(145deg,#ef7540,#d44b20);box-shadow:3px 4px #f1b64b,0 8px 18px #be41192e}.game-card,.steps-grid article,.invite-card,.setup-panel form{box-shadow:var(--shadow-sm)}.game-card{border-color:#d9ccba;position:relative}.game-card:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 1px #ffffffbf}.game-card:hover{border-color:#cbb9a3;box-shadow:0 22px 48px #372a1c26}.feature-tile{box-shadow:0 14px 30px #281f1624}.selected-game-summary,.same-room-section{background:radial-gradient(circle at 100% 0,#ffffff12 0 11rem,#0000 11.1rem),linear-gradient(145deg,#2c6a55,#123f33);box-shadow:0 25px 55px #163e3238}.room-app{background:#eee6da}.room-topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffdf8f0;border-bottom-color:#d9ccbb;box-shadow:0 5px 18px #392b1d14}.room-code-button{transition:border-color .15s,background .15s;background:#faf6ef!important;border:1px solid #ddd0bf!important;border-radius:12px!important}.room-code-button:hover{background:#fff5e9!important;border-color:#df7241!important}.room-meta .status-pill{box-shadow:0 3px 9px #32281d17}.room-sidebar{background:linear-gradient(#fffdf9,#f6efe5);border-right-color:#d8ccbc}.room-sidebar h2{color:#6c6256;letter-spacing:.04em}.room-game-name{box-shadow:var(--shadow-sm);background:#fff;border:1px solid #e0d4c4;border-radius:14px;padding:14px}.room-main{background:radial-gradient(circle at 50% -5%,#fffdf6 0,#0000 34rem),linear-gradient(150deg,#f0e9de,#e9dfd1)}.chat-panel{background:linear-gradient(#fffdf9,#f5eee4)}.chat-messages>div{background:#fff;border:1px solid #e2d7c8;border-radius:11px;box-shadow:0 3px 10px #362a1e0d}.chat-messages>div.mine{background:#fff2e8;border-color:#f0b08e}.drawer-backdrop{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1f18128c}.host-drawer{background:linear-gradient(#fffdf9,#f7f1e8)}.host-drawer section{border-bottom-color:#ded3c4}.host-drawer .control-grid button,.host-drawer .full-control,.host-drawer .danger-outline{box-shadow:0 3px 10px #34281c0f}.room-feedback{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #ffffff35;box-shadow:0 12px 32px #1f181242}.game-surface{--game-accent:#d95c2a;background:linear-gradient(155deg,#fffefa,#fffaf1);border-color:#d9ccbb;position:relative;overflow:hidden;box-shadow:0 26px 65px #382b1d24,inset 0 1px #fff}.game-surface:before{content:"";z-index:0;border:42px solid color-mix(in srgb,var(--game-accent) 13%,transparent);pointer-events:none;border-radius:50%;width:280px;height:280px;position:absolute;top:-155px;right:-155px}.game-surface:after{content:"";z-index:0;border:22px solid color-mix(in srgb,var(--game-accent) 9%,transparent);pointer-events:none;border-radius:50%;width:120px;height:120px;position:absolute;bottom:-75px;left:-75px}.game-surface>*{z-index:1;position:relative}.game-surface>header .eyebrow{color:var(--game-accent)}.game-surface>header h2{color:#2e2821;text-wrap:balance}.game-social,.game-undercover,.game-location-spy,.game-taboo{--game-accent:#31705a}.game-draw-guess,.game-drawing-telephone{--game-accent:#dc692f}.game-trivia{--game-accent:#72519a}.game-big-two,.game-blackjack,.game-texas-holdem,.game-sevens,.game-ninety-nine,.game-bluff,.game-chinese-poker,.game-pick-red{--game-accent:#a9493e}.game-color-chain{--game-accent:#3b748b}.game-liars-dice{--game-accent:#7b5a36}.game-gomoku,.game-reversi,.game-connect-four,.game-banqi{--game-accent:#376b83}.game-aeroplane-chess{--game-accent:#bd6135}.game-taiwan-mahjong{--game-accent:#24705a}.game-context-chips span{border-color:color-mix(in srgb,var(--game-accent) 22%,#ded5c7);background:color-mix(in srgb,var(--game-accent) 7%,#fff)}.game-player-ribbon article{box-shadow:0 4px 12px #362a1d0e}.game-player-ribbon article.current{border-color:var(--game-accent);background:color-mix(in srgb,var(--game-accent) 9%,#fff);box-shadow:inset 4px 0 var(--game-accent),0 7px 18px #362a1d14}.game-player-ribbon article>b{background:var(--game-accent)}.game-player-avatar{background:linear-gradient(145deg,color-mix(in srgb,var(--game-accent) 82%,#fff),var(--game-accent))}.game-countdown{background:#eee7dc;border:1px solid #dfd4c5;box-shadow:inset 0 2px 4px #32281e14}.game-countdown span{background:linear-gradient(90deg,var(--game-accent),color-mix(in srgb,var(--game-accent) 48%,#ffd37c))}.interactive-game .card-table,.interactive-game .social-game,.interactive-game .dice-game,.interactive-game .trivia-stage,.interactive-game .telephone-stage,.interactive-game .flight-board{background:#fffdf8db;border-color:#dbcfbf;box-shadow:0 10px 26px #34291d14,inset 0 1px #fff}.table-summary{background:linear-gradient(145deg,#f8efe3,#fffdf8)!important;border-color:#ddd0bf!important}.playing-card{background:linear-gradient(155deg,#fff,#fffaf0);border-color:#cdbda7;box-shadow:0 5px 11px #2a21182b,inset 0 1px #fff}.playing-card:hover:not(:disabled){box-shadow:0 10px 18px #2a211836}.playing-card.selected{outline-color:var(--game-accent);filter:saturate(1.08)}.card-back{border:1px solid #6c4533;box-shadow:0 5px 11px #1e16113b}.board-grid{border:8px solid #8f603a;box-shadow:0 15px 28px #3426182e,inset 0 0 0 2px #c99b68}.board-grid>button{box-shadow:inset 0 0 0 1px #61432521}.dice-row span{background:linear-gradient(145deg,#fff,#f0e8dc);border-color:#cfc1ae;box-shadow:4px 5px #d3c5b2,0 9px 16px #30241921}.answer-option{background:linear-gradient(#fff,#fbf7ef);border:1px solid #d9ccbc;box-shadow:0 5px 13px #33271b12}.answer-option:hover{border-color:var(--game-accent);transform:translateY(-2px)}.score-board>div{box-shadow:0 4px 12px #34291d0f}.game-log{border:1px solid #ddd1c1}.secret-panel{background:radial-gradient(circle at 85% 0,#ffffff14,#0000 8rem),linear-gradient(145deg,#2c6754,#173f34);box-shadow:0 13px 27px #183e322e}.admin-app{background:#f2ece3}.admin-sidebar{background:linear-gradient(#173f34,#102e27);box-shadow:6px 0 24px #122d2624}.admin-main article,.admin-panel{box-shadow:var(--shadow-sm);border-color:#dbcfbf}.admin-primary{box-shadow:0 8px 18px #b83e1833;background:linear-gradient(145deg,#ef7540,#d84d20)!important}@keyframes chaiTurnPulse{0%,to{box-shadow:inset 4px 0 var(--game-accent),0 7px 18px #362a1d14}50%{box-shadow:inset 4px 0 var(--game-accent),0 0 0 4px color-mix(in srgb,var(--game-accent) 14%,transparent),0 8px 22px #362a1d1c}}.game-player-ribbon article.current,.big-two-turn-banner.is-me,.blackjack-status-banner.is-me{animation:2.4s ease-in-out infinite chaiTurnPulse}@media (max-width:640px) and (orientation:portrait){body{background:#f4ede3}.site-header{height:64px;padding-inline:12px}.site-header .brand small,.site-header nav a:not(.active){display:none}.site-header nav{gap:10px}.brand-mark{border-radius:11px;width:38px;height:38px}.page-section{padding-top:34px;padding-bottom:68px}.section-wrap{width:min(100% - 24px,1180px)}.page-heading{margin-bottom:25px}.page-heading h1{font-size:32px}.page-heading p{margin-top:10px;font-size:14px}.game-card-body{padding:16px}.game-card-heading h3{font-size:18px}.game-card-body>p{min-height:0}.room-topbar{box-shadow:0 4px 14px #32261a1a}.room-meta{gap:7px}.room-meta .button{min-height:42px;padding:8px 11px;font-size:11px}.game-surface:before{border-width:28px;width:170px;height:170px;top:-105px;right:-105px}.interactive-game .card-table,.interactive-game .social-game,.interactive-game .dice-game,.interactive-game .trivia-stage,.interactive-game .telephone-stage{box-shadow:0 6px 16px #34291d12}.card-sort-bar{position:sticky;left:0}.chat-panel{background:#fffdf9}}@media (prefers-reduced-motion:reduce){.game-player-ribbon article.current,.big-two-turn-banner.is-me,.blackjack-status-banner.is-me{animation:none}}.mobile-room-nav,.mobile-panel-header,.mobile-panel-close{display:none}@media (max-width:760px){.room-main{padding-bottom:calc(76px + env(safe-area-inset-bottom))}.room-meta>.button{display:none}.mobile-room-nav{z-index:245;left:8px;right:8px;bottom:max(7px,env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#fffdf8f0;border:1px solid #d8ccbc;border-radius:17px;justify-content:space-around;align-items:stretch;gap:4px;min-height:58px;padding:5px;display:flex;position:fixed;box-shadow:0 12px 35px #271d143d}.mobile-room-nav>button{color:#746b60;background:0 0;border:0;border-radius:11px;flex:1;align-content:center;justify-items:center;gap:1px;min-width:0;padding:4px 5px;display:grid;position:relative}.mobile-room-nav>button>span{font-size:15px;line-height:1}.mobile-room-nav>button>strong{text-overflow:ellipsis;white-space:nowrap;max-width:70px;font-size:8px;overflow:hidden}.mobile-room-nav>button>small{color:#fff;background:#e45f2a;border-radius:999px;place-items:center;min-width:16px;height:16px;padding:0 4px;font-size:7px;font-weight:900;display:grid;position:absolute;top:3px;right:7px}.mobile-room-nav>button.active{color:#b9431d;background:#fff0e5}.mobile-room-nav>button.ready{color:#236a49;background:#e3f2e9}.mobile-panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:3px 4px 13px;display:flex}.mobile-panel-header strong{font-size:15px}.mobile-panel-header button,.mobile-panel-close{width:38px;height:38px;color:var(--ink);background:#eee7dc;border:0;border-radius:50%;place-items:center;font-size:21px;display:grid}.room-sidebar.mobile-open{z-index:240;width:100%;padding:14px 14px calc(82px + env(safe-area-inset-bottom));box-shadow:none;background:linear-gradient(#fffdf9,#f5eee5);border:0;display:flex;position:fixed;inset:62px 0 0}.room-sidebar.mobile-open .room-game-name{margin-top:8px}.room-sidebar.mobile-open .player-list{gap:6px}.room-sidebar.mobile-open .player-row{background:#fff;border:1px solid #e3d8c9;min-height:58px;padding:8px 10px;box-shadow:0 4px 11px #34281c0d}.chat-panel.mobile-open{z-index:240;width:100%;padding:14px 14px calc(82px + env(safe-area-inset-bottom));background:linear-gradient(#fffdf9,#f5eee5);border:0;display:flex;position:fixed;inset:62px 0 0}.chat-panel.mobile-open>header{min-height:48px}.chat-panel.mobile-open .mobile-panel-close{margin-left:auto}.chat-panel.mobile-open .chat-messages{padding:14px 2px}.chat-panel.mobile-open .chat-messages>div{margin-bottom:9px}.chat-panel.mobile-open form{background:#f5eee5;padding-top:8px;position:sticky;bottom:0}}*{scrollbar-color:#c8b9a6 transparent;scrollbar-width:thin}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#c8b9a6 padding-box padding-box;border:2px solid #0000;border-radius:999px}.status-pill:before{content:"";width:6px;height:6px;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 12%,transparent);background:currentColor;border-radius:50%;margin-right:5px}.room-feedback:before{border:1px solid #fff6;border-radius:50%;place-items:center;width:17px;height:17px;margin-right:7px;font-size:10px;display:inline-grid}.room-feedback.feedback-success:before{content:"✓"}.room-feedback.feedback-error:before{content:"!"}.room-feedback.feedback-pending:before{content:"…"}.loading-spinner{border-width:3px;position:relative;box-shadow:0 0 0 7px #e35f2b12}.loading-spinner:after{content:"";border:2px solid #0000;border-bottom-color:#e3a33d;border-radius:50%;animation:.55s linear infinite reverse spin;position:absolute;inset:7px}.form-error{border:1px solid #eeb8b1;border-left-width:4px;box-shadow:0 5px 13px #a9342b12}.lobby-stage{background:radial-gradient(circle at 50% 35%,#fffdf8,#f8f1e7);border:1px dashed #d5c7b4;border-radius:22px;padding:28px;position:relative}.lobby-stage:before,.lobby-stage:after{content:"";opacity:.55;background:#fff;border:1px solid #d7c9b6;border-radius:7px;width:34px;height:46px;position:absolute}.lobby-stage:before{top:16%;left:9%;transform:rotate(-14deg)}.lobby-stage:after{bottom:15%;right:9%;transform:rotate(12deg)}.player-row{border:1px solid #0000;transition:background .15s,border-color .15s,transform .15s}.player-row:hover{border-color:#e2d6c6;transform:translate(2px)}.player-avatar{box-shadow:inset 0 1px #ffffff45,0 4px 9px #2a201621}.connection-dot.online{box-shadow:0 0 0 3px #4da36a1f}.connection-dot.reconnecting{animation:1.1s ease-in-out infinite chaiDotPulse}@keyframes chaiDotPulse{50%{opacity:.55;transform:scale(1.45)}}@media (max-width:760px){.lobby-stage{min-height:calc(100dvh - 158px);padding:20px 14px}.lobby-stage:before,.lobby-stage:after{opacity:.3}.room-feedback{top:max(8px,env(safe-area-inset-top));border-radius:12px;width:max-content;max-width:calc(100vw - 20px);padding:9px 13px;font-size:11px}button,.button,[role=button]{touch-action:manipulation}}@media (prefers-reduced-motion:reduce){.connection-dot.reconnecting,.loading-spinner:after{animation:none}}.lobby-stage{width:100%;max-width:920px;margin-inline:auto}.lobby-room-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;width:min(650px,100%);margin:20px auto 12px;display:grid}.lobby-room-summary>div{text-align:left;background:#ffffffd1;border:1px solid #dfd2c1;border-radius:14px;padding:12px 14px;box-shadow:0 6px 16px #34281b12}.lobby-room-summary small{color:var(--muted);font-size:10px;font-weight:800;display:block}.lobby-room-summary strong{color:#2b251f;margin-top:3px;font-size:25px;line-height:1;display:block}.lobby-room-summary strong span{color:#8b8072;font-size:12px}.lobby-player-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;width:min(760px,100%);margin:0 auto;display:grid}.lobby-player-grid article{text-align:left;background:#fffdf9;border:1px solid #ded2c2;border-radius:13px;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;padding:10px;display:grid;box-shadow:0 5px 13px #34281c0e}.lobby-player-grid article.ready{background:#f0f8f3;border-color:#8db8a2;box-shadow:inset 4px 0 #3c8064,0 5px 13px #34281c0e}.lobby-player-grid article.me{outline-offset:-5px;outline:2px dashed #e18a58}.lobby-player-avatar{color:#fff;background:linear-gradient(145deg,#ec7541,#cc4f25);border-radius:50%;place-items:center;width:40px;height:40px;font-weight:900;display:grid;box-shadow:0 4px 10px #b1421b33}.lobby-player-grid article>div{min-width:0;display:grid}.lobby-player-grid small{color:var(--muted);font-size:8px}.lobby-player-grid article strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.lobby-player-grid article>b{color:#766c60;white-space:nowrap;background:#eee6da;border-radius:999px;padding:4px 7px;font-size:8px}.lobby-player-grid article.ready>b{color:#28684f;background:#d9eee2}.lobby-ready-progress{background:#e5dbce;border-radius:999px;width:min(650px,100%);height:7px;margin:13px auto 0;overflow:hidden;box-shadow:inset 0 2px 4px #2e23181f}.lobby-ready-progress span{border-radius:inherit;background:linear-gradient(90deg,#e66c36,#f1b94b);height:100%;transition:width .25s;display:block}.mahjong-arena{grid-template:"top top top""left center right"minmax(300px,1fr)"bottom bottom bottom"/minmax(135px,.45fr) minmax(350px,1.7fr) minmax(135px,.45fr);gap:8px;min-height:590px;display:grid}.mahjong-seat{background:linear-gradient(145deg,#ffffff18,#ffffff0b);border:1px solid #ffffff25;border-radius:12px;min-width:0;padding:9px;overflow:hidden;box-shadow:0 5px 14px #001b1535}.mahjong-seat.current{background:#ffffff20;border-color:#ffd166;box-shadow:inset 0 0 0 2px #ffd16625,0 5px 14px #001b1535}.mahjong-seat.dealer header>b{background:#d65b35}.mahjong-seat>header{justify-content:space-between;align-items:start;gap:5px;display:flex}.mahjong-seat>header>div{min-width:0;display:grid}.mahjong-seat header small{color:#bcd9cf;font-size:7px}.mahjong-seat header strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.mahjong-seat header>b{background:#ffffff18;border-radius:999px;min-height:17px;padding:3px 5px;font-size:7px}.mahjong-seat-top{grid-area:top;justify-self:center;width:min(330px,65%)}.mahjong-seat-left{grid-area:left;align-self:stretch}.mahjong-seat-right{grid-area:right;align-self:stretch}.mahjong-seat-bottom{grid-area:bottom}.mahjong-seat.empty{color:#bcd9cf;place-items:center;font-size:9px;display:grid}.mahjong-center-table{background:radial-gradient(circle at 50% 48%,#17614e,#0a4034 78%);border:2px solid #ffffff1c;border-radius:42%/18%;grid-area:center;min-width:0;padding:11px;box-shadow:inset 0 0 50px #001b153f,0 12px 25px #001b1540}.mahjong-center-table>header{justify-content:space-between;align-items:start;gap:8px;padding:0 8px 7px;display:flex}.mahjong-center-table header>div{display:grid}.mahjong-center-table header small{color:#bcd9cf;font-size:8px}.mahjong-center-table header strong{font-size:12px}.mahjong-rivers-cross{background:#052e2760;border:1px solid #ffffff16;border-radius:28%/16%;grid-template:"rtop rtop rtop"1fr"rleft mark rright"1fr"rbottom rbottom rbottom"1fr/1fr 1.25fr 1fr;gap:7px;min-height:250px;padding:8px;display:grid}.mahjong-seat-river{place-content:center;gap:2px;min-width:0;display:grid}.mahjong-seat-river>div{place-items:center;display:grid}.mahjong-seat-river .latest{z-index:2;border-radius:5px;outline:3px solid #ffd166;box-shadow:0 0 15px #ffd16690}.river-top{grid-area:rtop;grid-template-columns:repeat(8,28px)}.river-bottom{grid-area:rbottom;grid-template-columns:repeat(8,28px)}.river-left{grid-area:rleft;grid-template-columns:repeat(3,28px)}.river-right{grid-area:rright;grid-template-columns:repeat(3,28px)}.mahjong-table-mark{color:#3d2917;background:radial-gradient(circle,#e8bd56,#ad742d);border:1px solid #e7c67588;border-radius:50%;grid-area:mark;align-content:center;place-self:center;place-items:center;width:82px;height:82px;display:grid;box-shadow:0 8px 20px #001b1550,inset 0 1px #fff8}.mahjong-table-mark span,.mahjong-table-mark small{font-size:7px;font-weight:800}.mahjong-table-mark strong{font-size:22px;line-height:1}.mahjong-seat-left .mahjong-hidden-tiles,.mahjong-seat-right .mahjong-hidden-tiles{flex-direction:column;justify-content:center;align-items:center;min-height:118px;overflow:hidden}.mahjong-seat-left .mahjong-hidden-tiles i,.mahjong-seat-right .mahjong-hidden-tiles i{margin:0 0 -18px}.mahjong-seat-left .mahjong-hidden-tiles i:last-child,.mahjong-seat-right .mahjong-hidden-tiles i:last-child{margin-bottom:0}.mahjong-seat-left .mahjong-meld-row,.mahjong-seat-right .mahjong-meld-row{align-content:start}.mahjong-self-panel.mahjong-seat-bottom{border-width:2px;box-shadow:0 -5px 22px #001b1530}.holdem-table-v2{gap:12px;display:grid}.holdem-status-bar{background:linear-gradient(145deg,#fff8ea,#f1e5d4);border:1px solid #d6c9b7;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;display:flex}.holdem-status-bar>div:first-child{gap:3px;display:grid}.holdem-status-bar small{color:var(--muted);font-size:9px;font-weight:800}.holdem-status-bar strong{font-size:14px}.holdem-status-bar>div:last-child{color:#fff;text-align:right;background:#275e49;border-radius:10px;min-width:110px;padding:7px 10px}.holdem-status-bar>div:last-child span{color:#d4e9df;font-size:8px;display:block}.holdem-status-bar>div:last-child b{font-size:21px}.spectator-focus-banner{color:#2f526e;background:#edf5fb;border:1px solid #7f9fc2;border-radius:11px;grid-template-columns:auto auto 1fr;align-items:center;gap:9px;padding:9px 12px;display:grid}.spectator-focus-banner>span{color:#fff;background:#3d6e94;border-radius:999px;padding:4px 7px;font-size:8px;font-weight:900}.spectator-focus-banner strong{font-size:11px}.spectator-focus-banner small{color:#597185;text-align:right;font-size:8px}.holdem-felt{background:radial-gradient(#277258,#104a39 72%);border:12px solid #70462e;border-radius:45%/26%;min-height:570px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 4px #b58054,inset 0 0 65px #062a2055,0 15px 30px #2e1e1433}.holdem-felt:before{content:"CHAI  HOLD’EM";color:#ffffff10;letter-spacing:.22em;white-space:nowrap;font-size:30px;font-weight:900;position:absolute;top:28%;left:50%;translate:-50% -50%}.holdem-seats{z-index:2;pointer-events:none;position:absolute;inset:0}.holdem-seat{color:#2b251f;pointer-events:auto;background:#fffaf0;border:1px solid #d4c5b1;border-radius:14px;grid-template-columns:37px minmax(0,1fr);align-items:center;gap:7px;width:150px;min-height:72px;padding:7px;transition:transform .16s,box-shadow .16s,opacity .16s;display:grid;position:absolute;box-shadow:0 7px 18px #001c164f}.holdem-seat.current{border-color:#f0b642;box-shadow:0 0 0 3px #f0b64255,0 7px 18px #001c164f}.holdem-seat.focused{border-color:#67a8d0;box-shadow:0 0 0 3px #67a8d055,0 10px 22px #001c165c;transform:translate(-50%,-50%)scale(1.05)!important}.holdem-seat.folded{opacity:.58;filter:saturate(.5)}.holdem-seat:first-child{top:91%;left:50%;transform:translate(-50%,-50%)}.holdem-seat:nth-child(2){top:87%;left:20%;transform:translate(-50%,-50%)}.holdem-seat:nth-child(3){top:66%;left:7%;transform:translate(-50%,-50%)}.holdem-seat:nth-child(4){top:25%;left:12%;transform:translate(-50%,-50%)}.holdem-seat:nth-child(5){top:9%;left:38%;transform:translate(-50%,-50%)}.holdem-seat:nth-child(6){top:9%;left:62%;transform:translate(-50%,-50%)}.holdem-seat:nth-child(7){top:25%;left:88%;transform:translate(-50%,-50%)}.holdem-seat:nth-child(8){top:66%;left:93%;transform:translate(-50%,-50%)}.holdem-seat:nth-child(9){top:87%;left:80%;transform:translate(-50%,-50%)}.holdem-avatar-button,.blackjack-avatar-button{color:#fff;cursor:pointer;background:linear-gradient(145deg,#e96e3a,#b94224);border:0;border-radius:50%;place-items:center;width:37px;height:37px;padding:0;display:grid;box-shadow:0 3px 8px #6f281e45}.holdem-avatar-button span,.blackjack-avatar-button span{font-size:13px;font-weight:900}.holdem-seat>div:nth-child(2){min-width:0;display:grid}.holdem-seat strong{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.holdem-seat small{color:var(--muted);font-size:7px}.holdem-seat>div:nth-child(2)>b{font-size:8px}.holdem-seat-badges{gap:2px;display:flex;position:absolute;top:-8px;right:5px}.holdem-seat-badges i{color:#513610;background:#efc253;border:2px solid #fff;border-radius:50%;place-items:center;min-width:22px;height:22px;font-size:7px;font-style:normal;font-weight:900;display:grid;box-shadow:0 2px 5px #0004}.holdem-seat>em{color:#fff;background:#285f4a;border-radius:999px;grid-column:1/-1;justify-self:center;margin-top:-2px;padding:2px 6px;font-size:7px;font-style:normal;font-weight:800}.holdem-board-center{z-index:1;justify-items:center;gap:13px;width:min(510px,64%);display:grid;position:absolute;top:50%;left:50%;translate:-50% -50%}.holdem-pot-stack{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.holdem-pot-stack span{color:#fff;background:#c84f3c;border:2px dashed #fff8;border-radius:999px;padding:5px 9px;font-size:8px;box-shadow:0 4px 8px #001b1540}.holdem-pot-stack b{font-size:11px}.holdem-community-cards{justify-content:center;align-items:center;gap:5px;min-height:104px;display:flex}.holdem-card-slot{color:#ffffff69;border:2px dashed #ffffff42;border-radius:8px;place-items:center;width:59px;min-height:88px;font-size:7px;font-weight:900;display:grid}.holdem-table-rule{gap:6px;display:flex}.holdem-table-rule span{color:#d6ebe3;background:#062c2366;border-radius:999px;padding:4px 8px;font-size:8px}.holdem-focus-panel,.blackjack-focus-panel{background:#f4f8fa;border:1px solid #cad5dd;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.holdem-focus-panel>div:first-child,.blackjack-focus-panel>div:first-child{align-items:center;gap:8px;display:flex}.holdem-focus-avatar,.blackjack-focus-panel>div:first-child>span{color:#fff;background:#3c7193;border-radius:50%;place-items:center;width:36px;height:36px;font-weight:900;display:grid}.holdem-focus-panel>div:first-child>div,.blackjack-focus-panel>div:first-child>div{display:grid}.holdem-focus-panel small,.blackjack-focus-panel small{color:#647985;font-size:8px}.holdem-focus-panel strong,.blackjack-focus-panel strong{font-size:11px}.holdem-focus-panel>div:last-child,.blackjack-focus-panel>div:nth-child(2){flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.holdem-focus-panel>div:last-child span,.blackjack-focus-panel>div:nth-child(2) span{color:#526875;background:#e3edf2;border-radius:8px;padding:5px 7px;font-size:8px}.holdem-focus-panel b,.blackjack-focus-panel b{color:#263b46}.blackjack-players>article.focused{border-color:#67a8d0;box-shadow:0 0 0 2px #67a8d044,0 7px 18px #362a1d14}.blackjack-players article>header .blackjack-avatar-button{flex:0 0 37px}.blackjack-focus-panel>small{text-align:right;flex:0 230px}.holdem-own-zone{background:#fffdf8;border:1px solid #d9ccba;border-radius:13px;gap:8px;padding:12px;display:grid}.holdem-own-zone>header{justify-content:space-between;align-items:start;gap:10px;display:flex}.holdem-own-zone header>div{display:grid}.holdem-own-zone small{color:var(--muted);font-size:8px}.holdem-own-zone header strong{font-size:11px}.holdem-own-zone header>span{background:#eee5d7;border-radius:999px;padding:5px 8px;font-size:9px;font-weight:800}.holdem-hole-cards{justify-content:center;align-items:center;gap:6px;min-height:100px;display:flex}.holdem-hole-cards .playing-card{width:65px;min-height:94px}.holdem-hole-cards .card-back{width:65px;height:94px}.holdem-controls{background:#fffaf1;border:1px solid #d7cab9;border-radius:13px;gap:9px;padding:12px;display:grid;box-shadow:0 8px 20px #34281c17}.holdem-quick-actions{grid-template-columns:repeat(auto-fit,minmax(95px,1fr));gap:7px;display:grid}.holdem-quick-actions .button{width:100%;min-height:45px}.holdem-raise-control{grid-template-columns:minmax(150px,1fr) 100px minmax(145px,auto);align-items:end;gap:8px;display:grid}.holdem-raise-control label{color:var(--muted);gap:4px;font-size:8px;font-weight:800;display:grid}.holdem-raise-control input[type=number]{min-height:44px}.holdem-waiting{color:var(--muted);text-align:center;background:#eee7dc;border-radius:10px;margin:0;padding:10px;font-size:9px}.holdem-result{background:#fff8e8;border:1px solid #d8c9b5;border-radius:13px;padding:12px}.holdem-result>header{display:grid}.holdem-result header small{color:var(--muted);font-size:8px}.holdem-result header strong{font-size:13px}.holdem-result>div{gap:7px;margin-top:9px;display:grid}.holdem-result article{border-top:1px solid #e2d5c2;grid-template-columns:minmax(80px,1fr) auto auto;align-items:center;gap:8px;padding:7px;display:grid}.holdem-result article>div{display:flex}.holdem-result article .playing-card{width:34px;min-height:49px}.holdem-result article b{font-size:9px}.holdem-history{background:#faf7f1;border:1px solid #ddd1c1;border-radius:11px;padding:10px 12px}.holdem-history summary{cursor:pointer;font-size:10px;font-weight:900}.holdem-history p{color:var(--muted);justify-content:space-between;gap:10px;margin:6px 0;font-size:8px;display:flex}.holdem-history p strong{color:var(--ink)}.interactive-game:not(.interactive-game-taiwan-mahjong){align-content:start;min-height:360px}.interactive-game .card-table,.interactive-game .social-game,.interactive-game .dice-game,.interactive-game .trivia-stage,.interactive-game .telephone-stage,.interactive-game .flight-board{border-radius:18px;min-height:330px;padding:16px;position:relative;overflow:hidden}.interactive-game .card-table:before,.interactive-game .social-game:before,.interactive-game .dice-game:before,.interactive-game .trivia-stage:before{content:"";border:28px solid color-mix(in srgb,var(--game-accent) 9%,transparent);pointer-events:none;border-radius:50%;width:170px;height:170px;position:absolute;bottom:-60px;right:-60px}.interactive-game .card-table>*,.interactive-game .social-game>*,.interactive-game .dice-game>*,.interactive-game .trivia-stage>*{z-index:1;position:relative}.game-actions{background:#faf6ef;border:1px solid #e1d6c7;border-radius:12px;padding:9px}@media (max-width:640px) and (orientation:portrait){.lobby-stage{justify-content:flex-start;min-height:calc(100dvh - 150px);padding:16px 10px 92px}.lobby-emblem{border-radius:22px;width:64px;height:64px;margin-bottom:9px;font-size:28px}.lobby-stage h2{margin:5px 0;font-size:23px}.lobby-stage>p{margin:4px 0 7px;font-size:10px}.lobby-room-summary{gap:5px;margin:9px 0 7px}.lobby-room-summary>div{border-radius:10px;padding:8px}.lobby-room-summary small{font-size:7px}.lobby-room-summary strong{font-size:19px}.lobby-player-grid{grid-template-columns:1fr;gap:5px}.lobby-player-grid article{grid-template-columns:34px minmax(0,1fr) auto;min-height:52px;padding:7px 8px}.lobby-player-avatar{width:34px;height:34px}.lobby-ready-progress{margin-top:8px}.mahjong-arena{grid-template:"top top top"78px"left center right"minmax(300px,1fr)"bottom bottom bottom"/62px minmax(0,1fr) 62px;gap:4px;min-height:540px}.mahjong-seat{border-radius:8px;padding:5px}.mahjong-seat-top{width:70%}.mahjong-seat header small{font-size:5px}.mahjong-seat header strong{font-size:8px}.mahjong-seat header>b{min-height:13px;padding:2px 3px;font-size:5px}.mahjong-seat .mahjong-player-values{margin:3px 0}.mahjong-seat .mahjong-player-values span{font-size:5px}.mahjong-seat-top .mahjong-hidden-tiles{min-height:22px}.mahjong-seat-top .mahjong-hidden-tiles i{flex-basis:13px;width:13px;height:21px;margin-left:-6px}.mahjong-seat-left .mahjong-hidden-tiles,.mahjong-seat-right .mahjong-hidden-tiles{min-height:100px}.mahjong-seat-left .mahjong-meld-row,.mahjong-seat-right .mahjong-meld-row,.mahjong-seat-left .mahjong-flowers,.mahjong-seat-right .mahjong-flowers{display:none}.mahjong-center-table{border-width:1px;border-radius:28%/10%;padding:5px}.mahjong-center-table>header{padding:0 2px 4px}.mahjong-center-table header small{font-size:5px}.mahjong-center-table header strong{font-size:8px}.mahjong-last-discard-label span{display:none}.mahjong-rivers-cross{border-radius:22%/9%;grid-template:"rtop rtop rtop"1fr"rleft mark rright"1fr"rbottom rbottom rbottom"1fr/48px minmax(74px,1fr) 48px;gap:2px;min-height:255px;padding:4px}.river-top,.river-bottom{grid-template-columns:repeat(6,23px)}.river-left,.river-right{grid-template-columns:repeat(2,23px)}.mahjong-seat-river{gap:1px}.mahjong-seat-river .mahjong-tile.compact{flex-basis:22px;width:22px;min-height:31px}.mahjong-seat-river .mahjong-tile.compact strong{font-size:9px}.mahjong-table-mark{width:57px;height:57px}.mahjong-table-mark strong{font-size:16px}.mahjong-table-mark span,.mahjong-table-mark small{font-size:5px}.mahjong-self-panel.mahjong-seat-bottom{padding:7px}.mahjong-self-panel .mahjong-meld-row{flex-wrap:nowrap;max-height:52px;overflow-x:auto}.holdem-status-bar{padding:8px 9px}.holdem-status-bar strong{font-size:10px}.holdem-status-bar>div:last-child{min-width:82px;padding:5px 7px}.holdem-status-bar>div:last-child b{font-size:17px}.spectator-focus-banner{grid-template-columns:auto 1fr;padding:7px 8px}.spectator-focus-banner small{text-align:left;grid-column:1/-1}.holdem-felt{border-width:7px;border-radius:42%/18%;min-height:570px;margin-inline:-6px}.holdem-felt:before{font-size:16px;top:34%}.holdem-seat{border-radius:9px;grid-template-columns:27px minmax(0,1fr);gap:4px;width:94px;min-height:57px;padding:5px}.holdem-avatar-button{width:27px;height:27px}.holdem-avatar-button span{font-size:9px}.holdem-seat strong{font-size:7px}.holdem-seat small,.holdem-seat>div:nth-child(2)>b,.holdem-seat>em{font-size:5px}.holdem-seat-badges{top:-6px}.holdem-seat-badges i{border-width:1px;min-width:17px;height:17px;font-size:5px}.holdem-seat:first-child{top:94%}.holdem-seat:nth-child(2){top:84%;left:20%}.holdem-seat:nth-child(3){top:64%;left:10%}.holdem-seat:nth-child(4){top:24%;left:13%}.holdem-seat:nth-child(5){top:8%;left:37%}.holdem-seat:nth-child(6){top:8%;left:63%}.holdem-seat:nth-child(7){top:24%;left:87%}.holdem-seat:nth-child(8){top:64%;left:90%}.holdem-seat:nth-child(9){top:84%;left:80%}.holdem-board-center{gap:8px;width:76%;top:49%}.holdem-community-cards{gap:2px;min-height:76px}.holdem-community-cards .playing-card{width:39px;min-height:58px}.holdem-card-slot{width:38px;min-height:57px;font-size:5px}.holdem-pot-stack span{padding:3px 5px;font-size:5px}.holdem-pot-stack b{font-size:7px}.holdem-table-rule span{padding:3px 5px;font-size:5px}.holdem-focus-panel,.blackjack-focus-panel{padding:8px;display:grid}.holdem-focus-panel>div:last-child,.blackjack-focus-panel>div:nth-child(2){justify-content:flex-start}.blackjack-focus-panel>small{text-align:left}.holdem-own-zone{padding:8px}.holdem-hole-cards{min-height:80px}.holdem-hole-cards .playing-card{width:54px;min-height:78px}.holdem-hole-cards .card-back{width:54px;height:78px}.holdem-controls{bottom:calc(56px + env(safe-area-inset-bottom));z-index:8;margin-inline:-6px;padding:8px;position:sticky;box-shadow:0 -8px 22px #2a1f152e}.holdem-raise-control{grid-template-columns:1fr 80px}.holdem-raise-control button{grid-column:1/-1}.holdem-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.holdem-result article{grid-template-columns:1fr}.holdem-result article>div{justify-content:center}.interactive-game:not(.interactive-game-taiwan-mahjong){min-height:300px}.interactive-game .card-table,.interactive-game .social-game,.interactive-game .dice-game,.interactive-game .trivia-stage,.interactive-game .telephone-stage,.interactive-game .flight-board{border-radius:13px;min-height:280px;padding:10px}}.table-player-strip,.sevens-players{grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:8px;display:grid}.table-player-strip article,.sevens-players article{background:#fffaf2;border:1px solid #ded2c3;border-radius:12px;gap:2px;padding:9px 11px;display:grid}.table-player-strip article.active,.sevens-players article.active{border-color:var(--game-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--game-accent) 18%,transparent)}.table-player-strip article.submitted{background:#edf8ef;border-color:#9bc7a5}.table-player-strip small,.sevens-players small{color:var(--muted);font-size:.73rem}.sevens-layout{background:linear-gradient(145deg,#174c38,#0b3325);border-radius:16px;gap:7px;padding:12px;display:grid;box-shadow:inset 0 0 0 1px #ffffff1c}.sevens-layout section{color:#fff;grid-template-columns:55px minmax(0,1fr);align-items:center;gap:6px;display:grid}.sevens-layout section>div{grid-template-columns:repeat(13,minmax(20px,1fr));gap:2px;display:grid;overflow:auto}.sevens-layout .playing-card{width:100%;min-width:28px;min-height:48px;padding:3px;font-size:.7rem}.sevens-layout .playing-card small{display:none}.sevens-slot{color:#ffffff70;border:1px dashed #ffffff42;border-radius:5px;place-items:center;min-height:48px;font-size:.68rem;display:grid}.sevens-slot.seven{color:#ffd79a;background:#ffffff12;border-style:solid;border-color:#ffc670}.table-event,.choice-callout{color:#4e3c2c;background:#f5eadb;border-radius:10px;margin:0;padding:10px 12px}.pick-red-center{color:#fff;background:radial-gradient(circle,#357253,#16432f);border-radius:16px;padding:13px}.pick-red-center header{justify-content:space-between;margin-bottom:9px;display:flex}.pick-red-center>div{flex-wrap:wrap;gap:6px;min-height:86px;display:flex}.pick-red-center .playing-card.selected{transform:translateY(-5px);box-shadow:0 0 0 3px #ffd16f}.choice-callout{align-items:center;gap:10px;display:flex}.arrangement-zones.locked section{background:#f4f7f2;border-style:solid}.chinese-poker-result{gap:10px;display:grid}.chinese-poker-result article{border:1px solid var(--line);background:#fff;border-radius:12px;gap:6px;padding:10px;display:grid}.chinese-poker-result article>div{align-items:center;gap:4px;display:flex;overflow:auto}.chinese-poker-result article>div>span{min-width:55px;font-weight:700}.question-progress{justify-content:space-between;align-items:center;display:flex}.question-progress strong{color:#864423;background:#f2dfc7;border-radius:999px;padding:5px 9px}.multi-select-answer,.order-answer,.match-answer{gap:8px;display:grid}.multi-select-answer label,.order-answer>div,.match-answer label{border:1px solid var(--line);background:#fff;border-radius:11px;align-items:center;gap:10px;padding:11px;display:flex}.multi-select-answer label span,.order-answer>div>span,.match-answer label select{flex:1}.order-answer>div>strong{background:var(--game-accent);color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.answer-option.true{border-color:#69a978}.answer-option.false{border-color:#c77b72}.flight-board{background:linear-gradient(145deg,#edf7e8,#fff6df)!important}.flight-status{background:#fff;border-radius:13px;justify-content:space-between;align-items:center;padding:10px 13px;display:flex}.flight-status>div{display:grid}.flight-status .die-display{font-size:1.5rem;font-weight:900}.flight-arena{background:#fcf6e8;border:7px solid #f3d9a8;border-radius:28px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-height:360px;padding:24px;display:grid;position:relative;overflow:hidden}.flight-runway{opacity:.5;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(8,1fr);gap:3px;display:grid;position:absolute;inset:12px}.flight-runway i{background:#fff;border:1px solid #d7c8ad;border-radius:5px;place-items:center;display:grid}.flight-center{z-index:2;color:#fff;text-align:center;background:linear-gradient(135deg,#ef7040,#f3b743);border:5px solid #fff;border-radius:20px;place-items:center;width:86px;height:86px;font-weight:900;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg);box-shadow:0 8px 20px #5a3d1b33}.flight-center>*{transform:rotate(-45deg)}.flight-player{z-index:3;background:#ffffffeb;border-radius:14px;position:relative;border:2px solid #0000!important;padding:10px!important}.flight-player.active{box-shadow:0 0 0 3px color-mix(in srgb,var(--game-accent) 15%,transparent);border-color:var(--game-accent)!important}.flight-player header{justify-content:space-between;display:flex}.flight-player>div{grid-template-columns:repeat(2,1fr);margin-top:7px;gap:6px!important;display:grid!important}.flight-player .plane-token{background:#fff;border:1px solid #d9cdbc;border-radius:9px;gap:1px;min-height:48px;padding:5px;display:grid;position:relative;overflow:hidden}.flight-player .plane-token b,.flight-player .plane-token span{z-index:1;position:relative}.flight-player .plane-token span{font-size:.68rem}.flight-player .plane-token i{background:var(--game-accent);height:5px;position:absolute;bottom:0;left:0}.flight-player .plane-token.legal{border-color:#e66737;animation:1.1s infinite planePulse}.flight-roll{justify-self:center;min-width:160px}.board-banqi .banqi-piece{font-family:serif;font-size:1.15rem;font-weight:900}.board-banqi button.legal{box-shadow:inset 0 0 0 2px #e9ad55}.board-banqi button.selected{box-shadow:inset 0 0 0 3px #dc5d35}@keyframes planePulse{50%{transform:translateY(-3px);box-shadow:0 6px 10px #bd6f3633}}@media (max-width:640px){.table-player-strip,.sevens-players{scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.table-player-strip article,.sevens-players article{scroll-snap-align:start;min-width:112px}.sevens-layout{padding:8px}.sevens-layout section{grid-template-columns:38px minmax(0,1fr)}.sevens-layout section>div{grid-template-columns:repeat(13,28px)}.sevens-slot,.sevens-layout .playing-card{min-height:42px}.flight-arena{border-width:4px;border-radius:18px;gap:7px;min-height:420px;padding:10px}.flight-player{padding:7px!important}.flight-player>div{grid-template-columns:1fr!important}.flight-center{width:64px;height:64px;font-size:.78rem}.match-answer label{flex-direction:column;align-items:stretch}}.turtle-soup-table{--turtle-ink:#173f3a;background:radial-gradient(circle at 90% 0,#c8eadc 0,#0000 32%),linear-gradient(145deg,#f9fbf5,#edf6ef);border:1px solid #c9d8cf;border-radius:20px;gap:14px;min-height:420px;padding:16px;display:grid;box-shadow:0 12px 28px #234f3b14}.turtle-soup-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.turtle-soup-heading>div:first-child{gap:3px;display:grid}.turtle-soup-heading h3{color:var(--turtle-ink);margin:0;font-size:clamp(1.45rem,4vw,2.2rem)}.turtle-soup-heading span{color:#61746c}.storyteller-badge{color:#fff;text-align:right;background:#173f3a;border-radius:14px;min-width:130px;padding:10px 14px;display:grid}.storyteller-badge small{color:#b9d9cf}.turtle-situation{background:#fff;border:2px solid #277263;border-radius:18px;padding:22px 20px 20px;position:relative;box-shadow:inset 0 -8px 20px #2f76680a}.turtle-situation>span,.turtle-reveal>span{color:#fff;background:#277263;border-radius:999px;padding:3px 10px;font-size:.76rem;font-weight:800;position:absolute;top:-11px;left:16px}.turtle-situation p{color:#243c36;margin:0;font-size:1.12rem;font-weight:650;line-height:1.8}.turtle-score-strip{gap:7px;padding-bottom:3px;display:flex;overflow-x:auto}.turtle-score-strip article{background:#ffffffcf;border:1px solid #d2ded7;border-radius:11px;flex:0 0 105px;padding:8px 10px;display:grid}.turtle-score-strip article.storyteller{background:#fff4df;border-color:#dfaa55}.turtle-score-strip small{color:#74837d}.turtle-secret{background:#fff7e9;border:2px solid #d69a43;border-radius:15px;padding:12px 14px}.turtle-secret summary{color:#8b571a;cursor:pointer;font-weight:900}.turtle-secret p{line-height:1.7}.turtle-secret>div{flex-wrap:wrap;gap:6px;display:flex}.turtle-secret>div span,.turtle-reveal>div b{color:#69451b;background:#f1dfbf;border-radius:999px;padding:5px 9px;font-size:.78rem}.turtle-solver-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.turtle-solver-actions form,.turtle-voice-action{background:#fff;border:1px solid #cfddd5;border-radius:14px;gap:8px;padding:12px;display:grid}.turtle-solver-actions label{gap:5px;font-weight:800;display:grid}.turtle-solver-actions textarea{resize:vertical;min-height:86px}.turtle-voice-action{background:#edf7ff;border-color:#bad7eb;grid-column:span 1}.turtle-voice-action>div{display:grid}.turtle-voice-action span{color:#617481;font-size:.82rem}.turtle-moderator{background:#fff8ea;border:2px solid #b88943;border-radius:17px;gap:10px;padding:14px;display:grid}.turtle-moderator>header{justify-content:space-between;gap:10px;display:flex}.turtle-moderator>header>div{display:grid}.turtle-pending-card{background:#fff;border:1px solid #dfceb4;border-radius:13px;grid-template-columns:minmax(0,1fr) minmax(150px,.65fr);gap:8px;padding:11px;display:grid}.turtle-pending-card>div:first-child{grid-row:span 2}.turtle-pending-card p{margin:.25rem 0;line-height:1.45}.turtle-pending-card>div:last-child{grid-template-columns:repeat(4,1fr);gap:5px;display:grid}.turtle-pending-card button{border:0;border-radius:9px;min-height:42px;font-weight:900}.turtle-pending-card .verdict-yes{color:#23613a;background:#d8f1df}.turtle-pending-card .verdict-no{color:#8d3327;background:#f7dcd8}.turtle-pending-card .verdict-irrelevant{color:#4f5552;background:#e9e9e9}.turtle-pending-card .verdict-partial{color:#765c00;background:#fff0bd}.turtle-pending-card.proposal>div:last-child{grid-template-columns:repeat(2,1fr)}.turtle-hints{background:#fff7cc;border:1px solid #e0c65c;border-radius:14px;gap:7px;padding:13px;display:grid}.turtle-hints p{align-items:flex-start;gap:8px;margin:0;display:flex}.turtle-hints p span{color:#fff;background:#d4aa24;border-radius:50%;flex:0 0 24px;place-items:center;height:24px;font-weight:900;display:grid}.turtle-history{gap:7px;display:grid}.turtle-history>header{justify-content:space-between;display:flex}.turtle-history article{background:#fff;border-left:4px solid #b4c6bd;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:9px 11px;display:flex}.turtle-history article.answered{border-left-color:#387c69}.turtle-history article>div{display:grid}.turtle-history article p{margin:2px 0}.turtle-history article b{color:#285b4b;background:#e8f1ec;border-radius:8px;flex:none;padding:5px 8px}.turtle-empty{color:#687970;text-align:center;border:1px dashed #bdccc5;border-radius:10px;margin:0;padding:12px}.turtle-reveal{background:#fff8e9;border:2px solid #d49d46;border-radius:18px;gap:10px;padding:22px 16px 16px;display:grid;position:relative}.turtle-reveal h3,.turtle-reveal p{margin:0}.turtle-reveal p{line-height:1.75}.turtle-reveal>div{flex-wrap:wrap;gap:5px;display:flex}.turtle-final{color:#fff;text-align:center;background:#173f3a;border-radius:15px;padding:16px}@media (max-width:700px){.turtle-soup-table{border-radius:14px;gap:10px;padding:10px}.turtle-soup-heading{flex-direction:column;align-items:stretch}.storyteller-badge{text-align:left}.turtle-solver-actions,.turtle-pending-card{grid-template-columns:1fr}.turtle-pending-card>div:first-child{grid-row:auto}.turtle-pending-card>div:last-child{grid-template-columns:repeat(2,1fr)}.turtle-moderator>header{flex-direction:column}.turtle-situation{padding:20px 13px 14px}.turtle-situation p{font-size:1rem}.turtle-history article{align-items:flex-start}}.anonymous-game{--aa-purple:#5b3f91;--aa-ink:#252039;color:var(--aa-ink);background:radial-gradient(circle at 90% 0,#f9c96755,#0000 28%),linear-gradient(145deg,#f7f1ff,#fff9eb);border-radius:22px;grid-template-columns:minmax(0,1fr) 230px;gap:14px;padding:16px;display:grid;box-shadow:0 16px 40px #4d326d20}.anonymous-heading,.anonymous-prompt,.anonymous-player-strip,.anonymous-compose,.anonymous-voting,.anonymous-reveal{grid-column:1}.anonymous-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.anonymous-heading h3{margin:2px 0;font-size:clamp(1.6rem,4vw,2.35rem)}.anonymous-heading small{color:#756d80;font-weight:800}.anonymous-heading>div:last-child{justify-items:end;gap:4px;display:grid}.anonymous-heading>div:last-child b{background:var(--aa-purple);color:#fff;border-radius:999px;padding:7px 12px}.anonymous-heading>div:last-child span{color:#a8471f;font-size:.8rem;font-weight:900}.anonymous-prompt{color:#fff;background:linear-gradient(135deg,#50337e,#7954aa);border-radius:18px;padding:22px;position:relative;overflow:hidden;box-shadow:0 10px 24px #50337e33}.anonymous-prompt:after{content:"?";color:#ffffff12;font:900 9rem/1 system-ui;position:absolute;bottom:-42px;right:18px}.anonymous-prompt>div{gap:8px;display:flex}.anonymous-prompt span,.anonymous-prompt b{background:#ffffff1d;border-radius:999px;padding:5px 9px;font-size:.75rem}.anonymous-prompt p{z-index:1;margin:17px 0 5px;font-size:clamp(1.15rem,3.6vw,1.75rem);font-weight:900;line-height:1.5;position:relative}.anonymous-prompt small{color:#f8e9a9}.anonymous-prompt.mode-short{background:linear-gradient(135deg,#b64a27,#e17c36)}.anonymous-prompt.mode-continue{background:linear-gradient(135deg,#1f6471,#2f91a0)}.anonymous-prompt.mode-fake_fact{background:linear-gradient(135deg,#274f37,#4a8a60)}.anonymous-player-strip{gap:8px;padding:3px 2px 7px;display:flex;overflow-x:auto}.anonymous-player-strip article{background:#ffffffc9;border:1px solid #ded3e8;border-radius:13px;flex:0 0 112px;grid-template-columns:30px 1fr;align-items:center;gap:1px 7px;padding:8px;display:grid}.anonymous-player-strip article.me{border-color:#7954aa;box-shadow:0 0 0 2px #7954aa18}.anonymous-player-strip .player-avatar-mini{color:#5b3f91;background:#ece2f7;border-radius:50%;grid-row:span 2;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.anonymous-player-strip span{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;font-weight:800;overflow:hidden}.anonymous-player-strip strong{font-size:.75rem}.anonymous-player-strip small{color:#696174;text-align:center;grid-column:1/-1;margin-top:4px;font-size:.68rem}.anonymous-compose,.anonymous-voting,.anonymous-reveal{background:#ffffffd9;border:1px solid #e1d7e9;border-radius:17px;padding:15px}.anonymous-compose form{gap:10px;display:grid}.anonymous-compose label{flex-wrap:wrap;justify-content:space-between;font-weight:900;display:flex}.anonymous-compose label span{color:#7b6b87;font-size:.8rem}.anonymous-compose textarea{resize:vertical;border:2px solid #d8cae5;border-radius:13px;flex-basis:100%;min-height:125px;margin-top:8px;padding:15px;font-size:1.05rem}.anonymous-locked{text-align:center;justify-items:center;gap:5px;display:grid}.anonymous-locked>span{color:#27714a;background:#dff1e6;border-radius:50%;place-items:center;width:42px;height:42px;font-size:1.4rem;display:grid}.anonymous-locked p{background:#f5f0f8;border-radius:11px;width:100%;margin:6px 0;padding:12px;font-weight:800}.anonymous-voting>header,.anonymous-reveal>header{justify-content:space-between;align-items:start;gap:10px;display:flex}.anonymous-voting h4,.anonymous-reveal h4,.anonymous-scoreboard h4{margin:0;font-size:1.05rem}.anonymous-voting header p,.anonymous-reveal header p{color:#756d80;margin:4px 0;font-size:.8rem}.anonymous-voting header>span{color:#654190;background:#f2eafa;border-radius:999px;padding:6px 9px;font-size:.75rem;font-weight:900}.anonymous-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.anonymous-answer-card{min-height:128px;color:var(--aa-ink);text-align:left;background:#fff;border:2px solid #e1d5e9;border-radius:15px;padding:15px 13px 10px;transition:transform .16s,border-color .16s,box-shadow .16s;position:relative}.anonymous-answer-card:not(:disabled):hover{border-color:#7854a7;transform:translateY(-2px);box-shadow:0 9px 20px #50337e20}.anonymous-answer-card i{color:#62438b;background:#eee4f7;border-radius:50%;place-items:center;width:26px;height:26px;font-style:normal;font-weight:900;display:grid;position:absolute;top:8px;right:9px}.anonymous-answer-card p{margin:12px 25px 18px 0;font-size:1rem;font-weight:850;line-height:1.45}.anonymous-answer-card>span{color:#765b91;font-size:.72rem;font-weight:900}.anonymous-answer-card.own{opacity:.65;background:#f3f0f5}.anonymous-answer-card.chosen{background:#f3ebff;border-color:#7954aa}.anonymous-answer-card.revealed{display:block}.anonymous-answer-card.revealed footer{border-top:1px solid #ece5ef;justify-content:space-between;gap:8px;padding-top:9px;display:flex}.anonymous-answer-card.revealed footer span{font-size:.78rem}.anonymous-answer-card.winner{background:linear-gradient(145deg,#fffdf4,#fff2c8);border-color:#e4a829;box-shadow:0 8px 20px #b9832222}.anonymous-wait{color:#756d80;text-align:center;margin:12px 0 0;font-size:.82rem}.anonymous-next{margin:14px auto 0;display:block}.anonymous-scoreboard{background:#ffffffd9;border:1px solid #ddd1e7;border-radius:16px;grid-area:1/2/span 5;align-self:start;gap:7px;padding:13px;display:grid;position:sticky;top:88px}.anonymous-scoreboard h4{margin-bottom:5px}.anonymous-scoreboard>div{background:#f5f0f8;border-radius:9px;grid-template-columns:25px 1fr auto;align-items:center;gap:6px;padding:7px;font-size:.78rem;display:grid}.anonymous-scoreboard>div>b{background:#e6daef;border-radius:50%;place-items:center;width:22px;height:22px;display:grid}.anonymous-scoreboard>div>span{text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.anonymous-scoreboard .champion{background:#fff0b8}.anonymous-scoreboard .champion>b{color:#fff;background:#e4a829}@media (max-width:760px){.anonymous-game{border-radius:15px;flex-direction:column;gap:10px;padding:10px;display:flex}.anonymous-heading{align-items:flex-start}.anonymous-heading>div:last-child{justify-items:end}.anonymous-heading h3{font-size:1.55rem}.anonymous-prompt{padding:17px 14px}.anonymous-player-strip{order:2}.anonymous-compose,.anonymous-voting,.anonymous-reveal{padding:11px}.anonymous-answer-grid{grid-template-columns:1fr}.anonymous-answer-card{min-height:105px}.anonymous-scoreboard{order:8;position:static}.anonymous-scoreboard>div{grid-template-columns:25px 1fr auto}.anonymous-voting>header,.anonymous-reveal>header{flex-direction:column}.anonymous-compose textarea{min-height:112px}.anonymous-game .button{min-height:48px}}.court-game{--court-wood:#553526;--court-gold:#bd8b3c;--court-red:#8f342f;--court-blue:#315a78;color:#2d241e;background:radial-gradient(circle at 50% 0,#fff7df,#0000 34%),linear-gradient(145deg,#f5efe5,#e9dfd0);border:1px solid #d8c8b4;border-radius:22px;grid-template-columns:minmax(0,1fr) 235px;gap:14px;padding:16px;display:grid;box-shadow:0 16px 38px #51352520}.court-heading,.court-progress,.court-case-file,.courtroom-layout,.court-jury,.court-exhibits,.court-transcript,.court-player-action,.court-result{grid-column:1}.court-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.court-heading h3{margin:2px 0;font-family:Georgia,Noto Serif TC,serif;font-size:clamp(1.6rem,4vw,2.3rem)}.court-heading small{color:#796d63;font-weight:800}.court-heading>div:last-child{justify-items:end;display:grid}.court-heading>div:last-child span{color:#76695f;font-size:.72rem}.court-heading>div:last-child strong{background:var(--court-wood);color:#fff;border-radius:999px;padding:6px 11px;font-size:.83rem}.court-progress{background:#dfd2c0;border-radius:13px;gap:4px;padding:7px;display:flex;overflow-x:auto}.court-progress>div{color:#84776b;flex:1 0 78px;justify-items:center;gap:3px;font-size:.65rem;font-weight:800;display:grid}.court-progress i{background:#eee6da;border-radius:50%;place-items:center;width:23px;height:23px;font-style:normal;display:grid}.court-progress .done{color:#47644c}.court-progress .done i{color:#fff;background:#6b876f}.court-progress .active{color:#5d371f}.court-progress .active i{background:var(--court-gold);color:#fff;box-shadow:0 0 0 4px #bd8b3c22}.court-case-file{border:1px solid #d0bea8;border-left:8px solid var(--court-red);background:#fffdf8;border-radius:8px 16px 16px 8px;padding:19px 20px 17px 28px;position:relative;overflow:hidden;box-shadow:0 8px 20px #4b332218}.court-case-file:before{content:"";pointer-events:none;background:repeating-linear-gradient(0deg,#0000 0 28px,#8b7a6810 29px 30px);position:absolute;inset:0}.court-case-file>*{position:relative}.court-case-file>small{color:#8c6743;font-weight:900}.court-case-file h3{margin:3px 0 12px;font-size:clamp(1.25rem,3vw,1.75rem)}.court-case-file h4{color:#8b3d34;margin:0 7px 0 0;font-size:.76rem;display:inline}.court-case-file p{margin:0;line-height:1.6;display:inline}.court-case-file p:after{content:"";margin-bottom:7px;display:block}.court-case-stamp{color:#9b433c;opacity:.5;border:3px double #9b433c;padding:6px 10px;font-weight:900;position:absolute;top:18px;right:22px;transform:rotate(8deg)}.courtroom-layout{background:linear-gradient(#6d4733,#3e281f);border-radius:19px;grid-template-columns:1fr 155px 1fr;align-items:stretch;gap:10px;padding:14px;display:grid;box-shadow:inset 0 0 0 1px #ffffff18,0 12px 24px #42271925}.court-counsel,.court-judge{text-align:center;background:#f9f3e8;border-radius:14px;align-content:start;justify-items:center;gap:4px;padding:14px 10px;display:grid;position:relative}.court-counsel>span{color:#fff;border-radius:8px;place-items:center;width:30px;height:30px;font-weight:950;display:grid;position:absolute;top:8px;left:8px}.court-counsel.prosecution>span{background:var(--court-red)}.court-counsel.defense>span{background:var(--court-blue)}.court-avatar{color:#5c3b29;background:#e5d5c3;border-radius:50%;place-items:center;width:46px;height:46px;font-size:1.2rem;font-weight:900;display:grid}.court-counsel>small{color:#806e62}.court-counsel>p{text-align:left;border-top:1px solid #ded0c0;margin:8px 0 0;padding-top:8px;font-size:.78rem;line-height:1.45}.court-judge{color:#4b321d;background:linear-gradient(145deg,#f3dfae,#d1ab5b);align-content:center}.court-judge>span{font-size:2.3rem}.court-judge>i{color:#fff;background:#634326;border-radius:999px;margin-top:6px;padding:4px 8px;font-size:.68rem;font-style:normal}.court-jury{background:#fdf9f2;border:1px solid #d3c1ac;border-radius:16px;padding:12px}.court-jury>header,.court-exhibits>header,.court-transcript>header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:9px;display:flex}.court-jury>header span,.court-exhibits>header span,.court-transcript>header span{color:#807268;font-size:.72rem}.court-jury>div{gap:8px;display:flex;overflow-x:auto}.court-jury article{background:#fff;border:1px solid #dfd2c2;border-radius:11px;flex:0 0 105px;grid-template-columns:30px 1fr;align-items:center;gap:2px 6px;padding:8px;display:grid}.court-jury article>div{background:#e8dfd4;border-radius:50%;grid-row:span 2;place-items:center;width:30px;height:30px;font-weight:900;display:grid}.court-jury article strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.court-jury article small{color:#796d63;font-size:.62rem}.court-jury article.judge{background:#fff5d7;border-color:#c99a49}.court-jury article.me{box-shadow:0 0 0 2px #6d47332b}.court-exhibits{background:#efe2cd;border-radius:17px;padding:13px}.court-exhibits>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.court-exhibits article{cursor:pointer;background:#fffdf9;border:2px solid #0000;border-radius:12px;gap:9px;padding:10px;display:flex}.court-exhibits article.selected{border-color:var(--court-gold);background:#fff9df}.court-exhibits article>i{color:#fff;background:#8b5638;border-radius:7px;flex:0 0 27px;place-items:center;width:27px;height:27px;font-style:normal;font-weight:900;display:grid}.court-exhibits article strong{font-size:.84rem}.court-exhibits article p{color:#665b52;margin:3px 0 0;font-size:.75rem;line-height:1.4}.court-transcript{background:#fff;border:1px solid #d9ccbb;border-radius:17px;gap:7px;padding:13px;display:grid}.court-transcript>header{margin-bottom:2px}.court-transcript>article{background:#f8f4ed;border-left:4px solid #927761;border-radius:8px;grid-template-columns:145px 1fr;gap:8px;padding:10px;display:grid}.court-transcript>article.prosecution{border-left-color:var(--court-red)}.court-transcript>article.defense{border-left-color:var(--court-blue)}.court-transcript>article.jury-question{border-left-color:var(--court-gold);background:#fff9e8}.court-transcript>article>div{align-content:start;display:grid}.court-transcript>article b{color:#8a4b42;font-size:.68rem}.court-transcript>article strong{font-size:.8rem}.court-transcript>article small{color:#83766c;font-size:.65rem}.court-transcript>article>span{background:#eadbc3;border-radius:6px;grid-column:2;padding:3px 7px;font-size:.7rem;font-weight:800}.court-transcript>article p{grid-column:2;margin:0;font-size:.84rem;line-height:1.5}.court-player-action{display:grid}.court-action-box,.court-vote-box,.court-wait-card{background:#fffaf0;border:2px solid #c8aa79;border-radius:17px;gap:10px;padding:15px;display:grid;box-shadow:0 9px 22px #61432918}.court-action-box>header,.court-vote-box>header{justify-content:space-between;align-items:center;display:flex}.court-action-box h4,.court-vote-box h4{margin:2px 0;font-size:1.1rem}.court-action-box header small,.court-vote-box header small{color:#7d6d60}.court-action-box header>span{background:#e6d5bd;border-radius:999px;padding:5px 8px;font-size:.7rem;font-weight:900}.court-action-box textarea,.court-vote-box textarea{resize:vertical;border:1px solid #d2c1aa;border-radius:11px;min-height:110px;padding:12px}.court-action-box select{min-height:45px}.court-mode-switch,.court-side-choice,.court-verdict-choice{grid-template-columns:repeat(2,1fr);gap:7px;display:grid}.court-mode-switch button,.court-side-choice button,.court-verdict-choice button{background:#f3ece1;border:1px solid #d3c2aa;border-radius:10px;min-height:42px;font-weight:850}.court-mode-switch button.active{color:#fff;background:#7a5438;border-color:#7a5438}.court-side-choice button.active.prosecution{border-color:var(--court-red);color:#7b2723;background:#f2dedb}.court-side-choice button.active.defense{border-color:var(--court-blue);color:#244c68;background:#dfeaf1}.court-verdict-choice button.active.guilty{color:#fff;background:#8f342f}.court-verdict-choice button.active.not-guilty{color:#fff;background:#315a78}.court-vote-box>header{justify-content:start;gap:10px}.court-vote-box>header>span{font-size:2rem}.court-vote-box>p{color:#74675e;margin:0;font-size:.78rem}.court-vote-box>label{font-size:.75rem;font-weight:900}.court-wait-card{text-align:center;border-style:dashed;justify-items:center}.court-wait-card>span{font-size:1.8rem}.court-wait-card p{color:#776b62;margin:0;font-size:.8rem}.court-result{text-align:center;background:radial-gradient(circle at 50% 0,#fff9dd,#fffdf7);border:3px double #a77732;border-radius:18px;justify-items:center;gap:5px;padding:20px;display:grid}.court-gavel{font-size:2.8rem}.court-result>h3{margin:0;font:900 clamp(1.7rem,5vw,2.8rem)/1 Georgia,Noto Serif TC,serif}.court-result>p{margin:5px}.court-result>strong{color:#805327}.court-vote-reasons{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;width:100%;margin:10px 0;display:grid}.court-vote-reasons article{text-align:left;background:#f3eadb;border-radius:10px;padding:9px;display:grid}.court-vote-reasons span{color:#78685c;font-size:.7rem}.court-vote-reasons p{margin:5px 0 0;font-size:.76rem}.court-scoreboard{background:#fffaf2;border:1px solid #d2c0aa;border-radius:16px;grid-area:1/2/span 8;align-self:start;gap:7px;padding:13px;display:grid;position:sticky;top:88px}.court-scoreboard h4{margin:0 0 4px}.court-scoreboard>div{background:#f0e7db;border-radius:10px;grid-template-columns:25px 1fr auto;align-items:center;gap:7px;padding:8px;display:grid}.court-scoreboard>div>b{background:#d9c7b2;border-radius:50%;place-items:center;width:23px;height:23px;font-size:.72rem;display:grid}.court-scoreboard>div>span{font-size:.78rem;font-weight:850;display:grid}.court-scoreboard>div>span small{color:#817367;font-size:.58rem}.court-scoreboard>div>strong{font-size:.78rem}.court-scoreboard>div>strong i{color:#3f7855;font-size:.65rem;font-style:normal}.court-scoreboard>div.winner{background:#ffefb7}.court-scoreboard>div.winner>b{color:#fff;background:#b78431}@media (max-width:760px){.court-game{border-radius:15px;flex-direction:column;gap:10px;padding:10px;display:flex}.court-heading{align-items:flex-start}.court-heading h3{font-size:1.55rem}.court-progress{margin-inline:-2px}.court-progress>div{flex-basis:64px}.court-progress span{font-size:.58rem}.court-case-file{padding:15px 13px 12px 18px}.court-case-stamp{top:10px;right:10px}.courtroom-layout{grid-template-columns:1fr 78px 1fr;gap:6px;padding:8px}.court-counsel{padding:10px 6px}.court-counsel>span{width:24px;height:24px;font-size:.72rem}.court-counsel>p{font-size:.66rem}.court-avatar{width:38px;height:38px}.court-judge{padding:7px 3px}.court-judge>span{font-size:1.6rem}.court-judge>strong{font-size:.72rem}.court-judge>i{font-size:.56rem}.court-exhibits>div,.court-vote-reasons,.court-transcript>article{grid-template-columns:1fr}.court-transcript>article>span,.court-transcript>article p{grid-column:1}.court-scoreboard{order:9;position:static}.court-player-action{order:7}.court-result{order:8}.court-action-box textarea,.court-vote-box textarea{min-height:105px}.court-game .button{min-height:48px}.court-jury article{flex-basis:96px}}.route-loading,.game-module-loading{align-content:center;place-items:center;gap:10px;min-height:240px;display:grid}.game-module-loading{background:#fffaf2;border:1px dashed #d8cbb9;border-radius:16px}.game-module-loading p{color:#766b61;margin:0;font-size:.82rem}.connection-banner{z-index:260;top:max(8px,env(safe-area-inset-top));left:50%;right:auto;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);text-align:left;background:#765018ee;border:1px solid #ffffff45;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;width:min(92vw,560px);padding:10px 12px;display:flex;position:fixed;inset-inline:auto;transform:translate(-50%);box-shadow:0 12px 30px #2d1d1238}.connection-banner>div{gap:2px;display:grid}.connection-banner strong{font-size:.8rem}.connection-banner span{opacity:.9;font-size:.68rem;font-weight:650}.connection-banner button{color:#624313;background:#fff;border:1px solid #fff6;border-radius:9px;flex:none;min-height:36px;padding:5px 11px;font-weight:900}.interactive-game[data-pending=true]{position:relative}.interactive-game[data-pending=true] button:not(:disabled){pointer-events:none;filter:saturate(.6);opacity:.7}.interactive-game[data-pending=true]:after{content:"操作處理中…";z-index:80;color:#fff;pointer-events:none;background:#654718e8;border-radius:999px;justify-self:end;width:max-content;margin:0 8px -34px 0;padding:7px 11px;font-size:.72rem;font-weight:900;display:block;position:sticky;top:8px;box-shadow:0 8px 18px #2c21152d}.interactive-game[data-pending=true]:before{content:"";z-index:79;border:2px solid #fff7;border-top-color:#fff;border-radius:50%;justify-self:end;width:10px;height:10px;margin:0 100px -10px 0;animation:.7s linear infinite spin;position:sticky;top:15px}@media (max-width:760px){.connection-banner{top:max(7px,env(safe-area-inset-top));width:calc(100vw - 16px);padding:8px 9px}.connection-banner span{max-width:68vw}.interactive-game .game-actions{z-index:38;bottom:calc(70px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf2ee;border:1px solid #ded1c0;border-radius:13px;padding:7px;position:sticky;box-shadow:0 9px 24px #30251b25}.court-action-box>.button:last-child,.court-vote-box>.button:last-child,.anonymous-compose form>.button:last-child,.game-text-action>.button:last-child{z-index:36;bottom:calc(72px + env(safe-area-inset-bottom));position:sticky;box-shadow:0 9px 22px #37291e2d}.court-player-action,.anonymous-compose,.anonymous-voting,.turtle-solver-actions{scroll-margin-bottom:150px}.game-module-loading{min-height:300px}}.turnstile-shell{border:1px solid var(--line,#ded6ca);background:color-mix(in srgb, var(--surface,#fff) 88%, transparent);border-radius:.85rem;justify-items:center;gap:.45rem;padding:.75rem;display:grid}.turnstile-shell small{color:var(--text-muted,#665f57)}.maintenance-banner{color:#58230f;text-align:center;background:#ffe3c7;border-bottom:1px solid #e5a66f;flex-wrap:wrap;justify-content:center;gap:.75rem;padding:.8rem 1rem;display:flex}.maintenance-banner strong{font-weight:800}@media (max-width:760px){.drawer-backdrop{z-index:310;min-height:100dvh}.host-drawer,.preference-drawer{box-sizing:border-box;overscroll-behavior:contain;height:100dvh;max-height:100dvh;padding-bottom:max(40px, calc(22px + env(safe-area-inset-bottom)));scroll-padding-bottom:max(52px, calc(34px + env(safe-area-inset-bottom)))}.host-drawer .danger-zone{padding-bottom:max(22px, env(safe-area-inset-bottom))}.big-two-hand,.card-table:not(.chinese-poker-table)>.card-hand{grid-auto-columns:minmax(19px,58px);grid-auto-flow:column;justify-content:start;gap:0;width:100%;padding-left:4px;padding-right:58px;display:grid;overflow:visible}.big-two-hand>.playing-card,.card-table:not(.chinese-poker-table)>.card-hand>.playing-card{width:58px;min-width:58px;max-width:58px;min-height:86px;margin-left:0}.big-two-hand>.playing-card:first-child,.card-table:not(.chinese-poker-table)>.card-hand>.playing-card:first-child{margin-left:0}.big-two-hand>.playing-card.selected,.card-table:not(.chinese-poker-table)>.card-hand>.playing-card.selected{z-index:20;margin-right:0;transform:translateY(-12px)}.chinese-poker-unassigned{grid-template-columns:repeat(auto-fit,minmax(54px,1fr));gap:10px 5px;padding:10px 0 4px;display:grid;overflow:visible}.chinese-poker-unassigned>div{justify-items:center;gap:4px;min-width:0;display:grid}.chinese-poker-unassigned .playing-card{width:min(58px,100%);min-width:0;min-height:78px;margin:0}.chinese-poker-unassigned .mini-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;width:100%;display:grid}.chinese-poker-unassigned .mini-actions button{min-width:0;min-height:32px;padding:3px 0}}@media (max-width:380px){.big-two-hand,.card-table:not(.chinese-poker-table)>.card-hand{grid-auto-columns:minmax(17px,54px);padding-right:54px}.big-two-hand>.playing-card,.card-table:not(.chinese-poker-table)>.card-hand>.playing-card{width:54px;min-width:54px;max-width:54px}.chinese-poker-unassigned{grid-template-columns:repeat(auto-fit,minmax(48px,1fr))}}@media (max-width:760px){.card-table:not(.chinese-poker-table)>.card-hand:has(>.playing-card:nth-child(14)){grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-columns:auto;grid-auto-flow:row;gap:9px 3px;padding:12px 0 6px;display:grid;overflow:visible}.card-table:not(.chinese-poker-table)>.card-hand:has(>.playing-card:nth-child(14))>.playing-card{width:100%;min-width:0;max-width:58px;min-height:74px;margin:0}.card-table:not(.chinese-poker-table)>.card-hand:has(>.playing-card:nth-child(14))>.playing-card strong{font-size:1rem}.card-table:not(.chinese-poker-table)>.card-hand:has(>.playing-card:nth-child(14))>.playing-card.selected{transform:translateY(-6px)}}
