@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,600;1,700&family=Inter:wght@400;600;700&display=swap";:root{font-family:Inter,system-ui,sans-serif;color:#3a2020;background:#f3e6d0;font-synthesis:none;--wine:#a51d35;--scarlet:#a51d35;--scarlet-dark:#741426;--gold:#b88a4a;--paper:#fff9ef;--beige:#f3e6d0}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background:radial-gradient(circle at 50% -10%,#fffaf1 0,#f3e6d0 52%,#e8d1ae)}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:default;opacity:.55}button:not(.card),summary{min-height:44px}main{width:min(100%,520px);min-height:100vh;min-height:100dvh;margin:auto;padding:calc(22px + env(safe-area-inset-top)) 22px calc(24px + env(safe-area-inset-bottom));position:relative}.landing{text-align:center;display:flex;flex-direction:column;justify-content:center;gap:14px}.landing-tools{position:absolute;top:calc(14px + env(safe-area-inset-top));right:20px}.crest{width:78px;height:78px;margin:0 auto 15px;border:2px solid #c99f68;border-radius:50%;display:grid;place-items:center;background:#f7ead5;box-shadow:0 9px 30px #7414262b;overflow:hidden}.crest-logo{width:100%;height:100%;display:block;object-fit:cover;border-radius:50%}.eyebrow{letter-spacing:.2em;font-size:.68rem;font-weight:700;color:#906f46;margin:.4rem 0}h1,h2{font-family:Cormorant Garamond,serif;color:var(--wine);margin:0;line-height:.78}h1{font-size:clamp(4.2rem,22vw,7rem)}h1 i{color:var(--gold);font-weight:700}.intro{max-width:340px;margin:10px auto 0;color:#705d55;line-height:1.5}.panel{background:#fffaf3b8;border:1px solid #dbc8ab;border-radius:18px;padding:18px;box-shadow:0 12px 30px #5f321211;display:grid;gap:14px;text-align:left}label{color:#6c544b;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700}input{width:100%;margin-top:7px;padding:14px;border:1px solid #d8c4a9;border-radius:10px;background:#fff;color:#351923;font-size:1rem;text-transform:none}input[name=code]{text-transform:uppercase;letter-spacing:.25em;font-weight:700}button.primary,button.secondary{border:0;border-radius:11px;padding:15px 18px;font-weight:700;letter-spacing:.03em}.primary{color:#fff;background:linear-gradient(135deg,#c12b43,var(--scarlet-dark));box-shadow:0 7px 16px #a51d3540}.secondary{color:var(--wine);background:#f6ead6;border:1px solid #d5b985!important}.home-hero{display:flex;align-items:center;gap:16px;text-align:left}.home-hero .crest{flex:0 0 70px;margin:0}.home-hero h1{font-size:clamp(3.2rem,15vw,5.2rem);line-height:.82;white-space:nowrap}.home-hero .intro{font-size:.78rem}.quick-play{display:flex;align-items:center;justify-content:space-between;width:100%;padding:17px 20px!important;text-align:left}.quick-play span,.quick-play b,.quick-play small{display:block}.quick-play b{font-size:1rem}.quick-play small{margin-top:3px;font-size:.65rem;opacity:.82}.quick-play>i{font-family:Cormorant Garamond;font-size:2rem;font-style:normal}.lan-panel{display:grid;gap:12px;padding:17px;border:1px solid #d4bb91;border-radius:18px;background:#fffaf3d9;box-shadow:0 12px 30px #5f321211;text-align:left}.section-heading{display:flex;align-items:center;justify-content:space-between}.section-heading h2{font-size:1.65rem;line-height:1}.live-dot{display:flex;align-items:center;gap:5px;color:#34705c;font-size:.62rem;font-weight:700;text-transform:uppercase}.live-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:#37a875;box-shadow:0 0 0 3px #37a87520}.available-rooms{display:grid;gap:7px;max-height:178px;overflow:auto}.room-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;width:100%;padding:11px 12px;border:1px solid #ddc9aa;border-radius:11px;background:#fff;color:#4a292d;text-align:left}.room-identity b,.room-identity small,.room-seats b,.room-seats small{display:block}.room-identity b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Cormorant Garamond;font-size:1.05rem}.room-identity small,.room-seats small{margin-top:2px;color:#8c7466;font-size:.55rem}.room-seats{text-align:center}.room-seats b{color:var(--wine);font-size:.75rem}.room-join{color:var(--wine);font-size:.65rem;font-weight:700}.room-join i{font-family:Cormorant Garamond;font-size:1.2rem;font-style:normal}.empty-rooms{padding:14px;border:1px dashed #d8c09b;border-radius:10px;text-align:center}.empty-rooms b,.empty-rooms small{display:block}.empty-rooms b{color:#684a46;font-family:Cormorant Garamond;font-size:1rem}.empty-rooms small{margin-top:3px;color:#8c7466;font-size:.6rem}.code-join{display:grid;grid-template-columns:1fr auto;align-items:end;gap:8px;padding-top:2px;border-top:1px solid #eadbc5}.code-join button{min-height:47px}.lan-panel>button{width:100%}.or{display:flex;align-items:center;gap:12px;margin:16px 0;color:#947c69;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.or:before,.or:after{content:"";height:1px;background:#d8c5a9;flex:1}.join{grid-template-columns:1fr 1fr}.join button{grid-column:1/-1}.error{color:#a51e30;background:#fff0ef;border-radius:9px;padding:10px;text-align:center;font-size:.85rem}header{height:46px;display:flex;align-items:center;justify-content:space-between;text-transform:uppercase;letter-spacing:.1em;font-size:.7rem;color:#7b6255;border-bottom:1px solid #dac7aa}.brand{display:flex;align-items:center}.mini-crest{width:28px;height:28px;display:block;object-fit:cover;border-radius:50%;margin-right:8px;box-shadow:0 2px 7px #7414262b}.lobby header{font-family:Cormorant Garamond;font-size:1rem;color:var(--wine)}.rules-button{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--wine);font-family:Inter,system-ui,sans-serif;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:8px}.rules-button span{width:20px;height:20px;display:grid;place-items:center;border:1px solid #bd9e6a;border-radius:50%;font-family:Cormorant Garamond;font-size:.9rem}.room-code{text-align:center;padding:28px 0 20px}.room-code h2{font-size:3.6rem;letter-spacing:.12em;line-height:1}.text-button{border:0;background:none;color:var(--wine);text-decoration:underline;margin-top:12px}.seat-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:8px}.seat-heading h3{margin:1px 0 0;font-family:Cormorant Garamond;font-size:1.35rem;color:var(--wine)}.seat-heading>span{color:#846f61;font-size:.68rem}.player-row{display:flex;align-items:center;gap:10px;background:#fffaf3;border-bottom:1px solid #e5d5bd;padding:10px 12px;min-height:58px}.player-row:first-of-type{border-radius:14px 14px 0 0}.player-row:last-child{border-radius:0 0 14px 14px;border:0}.avatar{width:38px;height:38px;flex:0 0 auto;border-radius:50%;background:#ead5b8;color:var(--wine);display:grid;place-items:center;font-family:Cormorant Garamond;font-size:1.15rem}.player-row strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-row small{font-size:.52rem;background:#eadbbf;padding:4px 6px;border-radius:4px}.status{width:8px;height:8px;background:#429267;border-radius:50%;margin-left:auto;flex:0 0 auto}.status.offline{background:#aaa}.remove-bot{width:34px;height:34px;margin-left:auto;border:0;border-radius:50%;background:#f2e4d3;color:#8a5264;font-size:1.15rem}.seat-controls{margin-top:9px;padding:10px 11px;border:1px dashed #cdb38d;border-radius:12px;display:flex;align-items:center;justify-content:space-between}.seat-controls strong,.seat-controls small{display:block}.seat-controls strong{font-size:.72rem;color:#5e4841}.seat-controls small{margin-top:3px;color:#907b6d;font-size:.6rem}.add-bot{min-height:40px;border:1px solid #c9a86e;border-radius:9px;background:#fff8ea;color:var(--wine);font-size:.68rem;font-weight:700;padding:6px 10px}.add-bot span{font-size:1rem;margin-right:3px}.lobby-actions{display:grid;gap:7px;margin-top:16px;text-align:center;color:#806e64;font-size:.8rem}.lobby-actions>small{font-size:.6rem;color:#927e71}.turn-preview{margin-top:18px;padding:13px 14px;border:1px solid #d9c3a2;border-radius:13px;background:#f9f0e2}.turn-preview>div{display:flex;align-items:center;justify-content:space-between;margin-top:9px}.turn-preview span{display:flex;align-items:center;gap:5px;font-size:.7rem;font-weight:700}.turn-preview b{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:var(--wine);color:#fff;font-size:.65rem}.turn-preview i{color:#b79565;font-style:normal}.table{padding-left:14px;padding-right:14px;overflow:hidden;display:flex;flex-direction:column}.table header .rules-button{font-size:.62rem}.deck-count b{color:var(--wine);font-size:.85rem}.opponents{display:flex;justify-content:center;gap:14px;padding:14px 0}.opponent{text-align:center;min-width:80px;font-size:.72rem}.opponent .avatar{margin:auto}.opponent b,.opponent span,.opponent small{display:block;margin-top:4px}.opponent span{color:var(--wine);min-height:1em}.opponent small{font-size:.55rem;letter-spacing:.1em}.opponent.out{opacity:.38;filter:grayscale(1)}.score-strip{display:flex;align-items:center;justify-content:center;gap:7px;margin-bottom:8px;color:#7d695e;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em}.score-strip strong{color:var(--wine);font-size:.76rem}.turn-banner{text-align:left;background:#fff9ef;border:1px solid #dec9a9;border-radius:14px;padding:11px 13px;display:flex;align-items:center;gap:10px}.turn-banner.active{background:#fff8e9;border-color:#bd8b35;box-shadow:0 5px 18px #7e482817}.turn-dot{width:9px;height:9px;border-radius:50%;background:#a99c8c;box-shadow:0 0 0 4px #a99c8c1f;flex:0 0 auto}.turn-banner.active .turn-dot{background:#bd8b35;box-shadow:0 0 0 4px #bd8b3529}.turn-banner small{display:block;color:#8f745a;font-size:.55rem;font-weight:700;letter-spacing:.13em;margin-bottom:2px}.turn-banner p{margin:0;font-family:Cormorant Garamond;font-size:1.2rem;line-height:1.05;color:var(--wine)}.turn-banner strong{display:block;margin-left:auto;max-width:42%;font-size:.7rem;color:#5b473e}.history{height:68px;padding:8px 12px;color:#7a665d;font-size:.68rem;display:flex;flex-direction:column;justify-content:flex-end}.history p{margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hand{margin-top:auto;text-align:center}.hand-heading{display:flex;align-items:center;justify-content:space-between;margin:0 4px 8px}.hand-heading span{font-size:.62rem;color:#8e7667}.cards{display:flex;gap:10px;justify-content:center;align-items:stretch}.card{width:min(44vw,190px);aspect-ratio:.7;background:linear-gradient(160deg,#fffdf8,#f1dfc4);border:2px solid #c7a36b;border-radius:13px;padding:12px;color:#42232b;box-shadow:0 10px 23px #4f2a1f25;position:relative;display:flex;flex-direction:column;justify-content:flex-end;transition:.2s transform,.2s box-shadow}.card.playable{box-shadow:0 0 0 3px #fff8e8,0 0 0 5px #bd8b35,0 12px 25px #4f2a1f2b;animation:card-pulse 2s ease-in-out infinite}.card:not(:disabled):active,.card.selected{transform:translateY(-9px);border-color:var(--wine);animation:none}.card-value{position:absolute;top:8px;left:10px;font-family:Cormorant Garamond;font-size:2rem;color:var(--wine)}.card:after{content:"♥";position:absolute;inset:28% 0 auto;text-align:center;color:#be8d4b;font-size:2.3rem}.card-name{font-family:Cormorant Garamond;font-size:1.35rem;color:var(--wine)}.card-text{font-size:.63rem;line-height:1.3;margin-top:5px}.card:disabled{opacity:.62;filter:saturate(.7)}.card-badge{position:absolute;top:9px;right:8px;border-radius:10px;background:var(--wine);color:#fff;padding:4px 6px;font-size:.48rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.card.playable:disabled{opacity:1}.card.selected{opacity:1;filter:none}@keyframes card-pulse{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.action-sheet{position:fixed;z-index:5;left:50%;bottom:0;transform:translate(-50%);width:min(100%,520px);padding:22px 22px calc(18px + env(safe-area-inset-bottom));background:#fffaf1;border-radius:22px 22px 0 0;box-shadow:0 -12px 50px #3914253b;display:grid;gap:9px}.action-step{text-align:center;color:#a17d49;font-size:.56rem;font-weight:700;letter-spacing:.15em}.action-sheet h3,.action-sheet p{text-align:center;margin:0 0 3px;font-family:Cormorant Garamond;font-size:1.45rem}.action-help,.action-effect{display:block;text-align:center;color:#7b665c;font-family:Inter,system-ui,sans-serif!important;font-size:.7rem!important;line-height:1.4;margin-bottom:8px!important}.action-sheet>button:not(.primary){min-height:52px;padding:9px 14px;border:1px solid #dbc4a2;border-radius:11px;background:#f6ead8;color:var(--wine);display:flex;align-items:center;gap:10px;text-align:left}.action-sheet>button>span:last-child{margin-left:auto;font-size:1.4rem}.action-sheet>button small{display:block;color:#8b7467;font-size:.6rem;margin-top:2px}.target-avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#ead5b8;color:var(--wine);font-family:Cormorant Garamond;font-size:1rem;flex:0 0 auto}.guess-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.guess-grid button{padding:11px;border:1px solid #dbc4a2;border-radius:9px;background:#fff;color:#512038}.guess-grid b{margin-right:8px}.action-sheet .cancel{display:block!important;text-align:center!important;background:transparent!important;border:0!important;color:#806e64!important;min-height:40px!important;font-size:.7rem}.confirm .primary{margin-top:8px}.confirm .action-effect{margin-bottom:2px}.overlay{position:fixed;z-index:10;inset:0;background:#4b101dcc;display:grid;place-items:center;padding:24px}.result{background:#fff8eb;border:1px solid #d9b56f;border-radius:22px;padding:35px 24px;text-align:center;width:min(100%,400px)}.result h2{font-size:3rem;line-height:1;margin:15px 0 25px}.result .primary{width:100%}.sr-only{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.rules-backdrop{position:fixed;z-index:20;inset:0;background:#4b101db8;display:flex;align-items:flex-end;justify-content:center;padding-top:calc(20px + env(safe-area-inset-top))}.rules-sheet{width:min(100%,520px);max-height:94vh;max-height:94dvh;background:#fffaf1;border-radius:24px 24px 0 0;box-shadow:0 -15px 50px #4b101d52;overflow:hidden;display:flex;flex-direction:column;padding-bottom:env(safe-area-inset-bottom)}.sheet-handle{width:42px;height:4px;border-radius:4px;background:#d5c3a8;margin:9px auto 2px}.rules-sheet>header{height:auto;padding:10px 20px 14px;border-bottom:1px solid #e2d1b7;flex:0 0 auto}.rules-sheet h2{font-size:2.25rem;line-height:1}.rules-sheet header button{width:38px;height:38px;border:1px solid #d8c3a3;border-radius:50%;background:#f7ebd9;color:var(--wine);font-size:1.5rem;line-height:1}.rules-body{overflow:auto;padding:18px 20px 28px;overscroll-behavior:contain}.rule-steps{display:grid;gap:8px}.rule-steps article{display:flex;align-items:center;gap:12px;padding:11px 12px;background:#f7eddf;border-radius:11px}.rule-steps article>b{display:grid;place-items:center;width:29px;height:29px;flex:0 0 auto;border-radius:50%;background:var(--wine);color:#fff;font-family:Cormorant Garamond;font-size:1rem}.rule-steps strong,.rule-steps small{display:block}.rule-steps strong{color:var(--wine);font-family:Cormorant Garamond;font-size:1.1rem}.rule-steps small{color:#79675d;font-size:.67rem;margin-top:1px}.rule-section{margin-top:24px}.rule-section h3{display:flex;justify-content:space-between;align-items:center;margin:0 0 9px;color:var(--wine);font-family:Cormorant Garamond;font-size:1.35rem}.rule-section h3 small{font-family:Inter,sans-serif;color:#907866;font-size:.58rem;text-transform:uppercase;letter-spacing:.08em}.rule-section>p{color:#65534c;font-size:.75rem;line-height:1.55;margin:0}.token-goals{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:11px}.token-goals span{padding:9px 4px;background:#f4e6d3;border-radius:8px;text-align:center;font-size:.58rem;color:#6c5a50}.token-goals b,.token-goals strong{display:block;color:var(--wine);font-size:.72rem}.card-reference{list-style:none;margin:0;padding:0;border:1px solid #e2d0b5;border-radius:13px;overflow:hidden}.card-reference li{display:grid;grid-template-columns:38px 1fr;gap:9px;padding:9px 11px;background:#fffdf8;border-bottom:1px solid #eadbc5}.card-reference li:last-child{border:0}.rule-card-value{width:32px;height:42px;display:grid;place-items:center;border:1px solid #cda968;border-radius:6px;background:#f7e9d4;color:var(--wine);font-family:Cormorant Garamond;font-size:1.35rem}.card-reference b{font-family:Cormorant Garamond;color:var(--wine);font-size:1.05rem}.card-reference small{margin-left:7px;color:#9a8271;font-size:.55rem;text-transform:uppercase}.card-reference p{margin:2px 0 0;color:#6c5a51;font-size:.65rem;line-height:1.35}.fine-print ul{padding-left:18px;margin:0}.fine-print li{color:#65534c;font-size:.7rem;line-height:1.5;margin:5px 0}.nav-button{display:inline-flex;align-items:center;gap:3px;border:0;background:transparent;color:var(--wine);font-size:.62rem;font-weight:700;text-transform:uppercase;padding:8px 4px}.nav-button span{font-family:Cormorant Garamond;font-size:1.4rem;line-height:.5}.table header nav{display:flex;align-items:center;gap:2px}.table header nav .rules-button{padding-left:4px;padding-right:4px}.lobby header>.nav-button{min-width:58px}.lobby header>.rules-button{min-width:58px;justify-content:flex-end}button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #167d88;outline-offset:3px}.action-sheet,.rules-sheet{overscroll-behavior:contain}.action-sheet{max-height:88dvh;overflow-y:auto}.opponents{display:flex;justify-content:flex-start;gap:8px;padding:9px 1px 12px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin}.opponent{min-width:76px;overflow:visible;font-size:.66rem;scroll-snap-align:start;position:relative;padding:2px 4px 0;border-radius:12px;transition:.25s background,.25s transform}.opponent .avatar{width:31px;height:31px}.opponent b,.opponent span,.opponent small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.opponent.targeted{background:#a51d3514;box-shadow:inset 0 0 0 1px #a51d3552;animation:target-pulse .7s ease-out}.card{overflow:hidden;padding:12px 12px 11px;background:#f5dfbd;isolation:isolate}.card-art{position:absolute;z-index:-1;inset:5px 5px 38%;border-radius:9px 9px 5px 5px;background-image:linear-gradient(180deg,transparent 55%,#35151ddb),url(/detective-card-atlas.png);background-size:500% 200%;background-repeat:no-repeat;box-shadow:inset 0 0 0 1px #f5dca780}.card:before{content:"";position:absolute;z-index:-1;inset:58% 0 0;background:linear-gradient(180deg,#f4dec2f0 0,#fff9ed 48%,#ead0a9);border-top:1px solid #bf9255}.card:after{display:none}.card-value{z-index:2;top:8px;left:9px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#fff3d9e8;box-shadow:0 2px 7px #32101e70;font-size:1.65rem}.card-copy{display:block;position:relative;z-index:2;padding-right:24px;text-align:left}.card-name,.card-text{display:block}.card-name{font-size:1.3rem;line-height:1}.card-text{min-height:2.7em}.card-count{position:absolute;z-index:3;right:8px;bottom:8px;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--wine);color:#fff8e8;font-size:.64rem;font-weight:800;box-shadow:0 2px 7px #3d142a47}.card-badge{z-index:3;background:#167d88}.review-cards .card{width:min(29vw,135px);padding:8px}.review-cards .card-name{font-size:1.05rem}.review-cards .card-text{font-size:.54rem}.review-cards .card-art{inset:4px 4px 43%}.review-cards .card-count{right:5px;bottom:5px;width:23px;height:23px}.art-0{background-position:0 0}.art-1{background-position:25% 0}.art-2{background-position:50% 0}.art-3{background-position:75% 0}.art-4{background-position:100% 0}.art-5{background-position:0 100%}.art-6{background-position:25% 100%}.art-7{background-position:50% 100%}.art-8{background-position:75% 100%}.art-9{background-position:100% 100%}.played-art,.flash-art{position:absolute;inset:0;background-image:linear-gradient(180deg,transparent 45%,#30101ccc),url(/detective-card-atlas.png);background-size:500% 200%;background-repeat:no-repeat}.rule-card-value{position:relative;overflow:hidden}.rule-art{position:absolute;inset:0;background-image:linear-gradient(180deg,transparent,#3b102080),url(/detective-card-atlas.png);background-size:500% 200%;background-repeat:no-repeat}.rule-card-value>b{position:relative;z-index:2;align-self:start;justify-self:start;margin:2px 0 0 3px;color:#fff;text-shadow:0 1px 4px #000;font-size:.9rem}.history{display:block;overflow:hidden;padding-top:6px}.history ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;justify-content:flex-end;height:100%}.history li{margin:2px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.history li:last-child{color:var(--wine);font-weight:700}.action-flash{position:fixed;z-index:4;top:calc(66px + env(safe-area-inset-top));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:9px;width:max-content;max-width:calc(100vw - 30px);padding:7px 13px 7px 7px;border:1px solid #d4ac70;border-radius:12px;background:#fff8e9f2;box-shadow:0 9px 28px #42122540;pointer-events:none;animation:action-flash 2.6s ease both}.flash-art{position:relative;display:block;flex:0 0 auto;width:42px;height:42px;border-radius:8px;box-shadow:inset 0 0 0 1px #f1d19a}.action-flash span{display:grid;grid-template-columns:auto auto;column-gap:5px;line-height:1.05}.action-flash small{grid-column:1/-1;color:#786156;font-size:.55rem;text-transform:uppercase;letter-spacing:.08em}.action-flash b{color:var(--wine);font-family:Cormorant Garamond;font-size:1rem}.action-flash em{align-self:end;color:#6f5c53;font-size:.6rem;font-style:normal}.token-goals{grid-template-columns:1fr}.discard-board{margin:7px 0 0;padding:7px 8px 8px;border:1px solid #d9c19d;border-radius:12px;background:#fff9efaa;min-height:78px}.discard-heading{display:flex;align-items:center;justify-content:space-between}.discard-heading .eyebrow{margin:0;font-size:.55rem}.discard-heading small{color:#8a7468;font-size:.52rem}.discard-lanes{display:flex;gap:7px;overflow-x:auto;padding:5px 1px 2px;scroll-snap-type:x proximity;scrollbar-width:thin}.discard-lane{flex:0 0 auto;min-width:82px;max-width:190px;padding:4px 5px;border-radius:8px;background:#f3e4cf;scroll-snap-align:start;transition:.2s background}.discard-lane.targeted{background:#efd0d3;box-shadow:inset 0 0 0 1px #a51d3552}.discard-lane>b{display:block;max-width:100%;margin-bottom:4px;color:#5c4243;font-size:.52rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.discard-lane>div{display:flex;min-height:34px;gap:3px;overflow-x:auto}.discard-lane em{align-self:center;color:#9b8779;font-size:.5rem;font-style:normal}.discard-chip{position:relative;display:block;flex:0 0 28px;height:36px;border:1px solid #bc9258;border-radius:4px;overflow:hidden;background-image:linear-gradient(180deg,transparent 35%,#30101ccc),url(/detective-card-atlas.png);background-size:500% 200%;box-shadow:0 2px 5px #3c152329}.discard-chip i{position:absolute;top:1px;left:3px;color:#fff;font-family:Cormorant Garamond;font-size:.8rem;font-style:normal;font-weight:700;text-shadow:0 1px 3px #000}.discard-chip small{position:absolute;inset:auto 1px 2px;color:#fff;font-size:.31rem;font-weight:700;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 2px #000}.discard-chip.latest{animation:opponent-play .7s cubic-bezier(.18,.85,.32,1.25)}.dialog-backdrop{position:fixed;z-index:30;inset:0;display:grid;place-items:center;padding:20px;background:#35101fbd;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.confirm-dialog{width:min(100%,370px);padding:26px 22px;border:1px solid #d6b276;border-radius:20px;background:#fff9ee;box-shadow:0 22px 60px #26071370;text-align:center}.confirm-dialog h2{font-size:2.35rem;line-height:1}.confirm-dialog>p:not(.eyebrow){margin:15px auto 20px;max-width:28ch;color:#715e55;font-size:.78rem;line-height:1.5}.confirm-dialog>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.confirm-dialog button{min-width:0}.table{overflow-x:hidden;overflow-y:visible}.discard-lane.removed{background:#deece9}.card-art{background-image:linear-gradient(180deg,transparent 55%,#35151ddb),url(/detective-card-atlas-v2.png)}.rule-art{background-image:linear-gradient(180deg,transparent,#3b102080),url(/detective-card-atlas-v2.png)}.discard-chip{background-image:linear-gradient(180deg,transparent 35%,#30101ccc),url(/detective-card-atlas-v2.png)}.action-stage{display:grid;grid-template-columns:52px minmax(138px,1fr) 18px 52px;align-items:center;gap:6px;margin:2px 0 8px;padding:8px;border:1px solid #d2ae75;border-radius:14px;background:linear-gradient(135deg,#fff8e9,#ead7bb);box-shadow:0 7px 18px #4d243018;min-height:104px;overflow:hidden}.action-stage.waiting{display:grid;place-items:center;min-height:68px;color:#927d70;font-size:.68rem}.action-person{min-width:0;text-align:center}.action-person .target-avatar{margin:auto;width:34px;height:34px}.action-person small,.action-person b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-person small{margin-top:4px;color:#91745f;font-size:.42rem;letter-spacing:.08em}.action-person b{margin-top:2px;color:var(--wine);font-size:.55rem}.action-arrow{color:var(--wine);font-size:1rem;text-align:center}.featured-play{position:relative;height:86px;border:2px solid #b9894c;border-radius:10px;background:#28101a;overflow:hidden;box-shadow:0 6px 14px #3c152348;transform-origin:center}.featured-art{position:absolute;inset:0 54% 0 0;background-image:linear-gradient(90deg,transparent 45%,#28101ae8),url(/detective-card-atlas-v2.png);background-size:500% 200%;background-repeat:no-repeat}.featured-play>strong{position:absolute;z-index:2;top:5px;left:6px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff2dce8;color:var(--wine);font-family:Cormorant Garamond;font-size:1.05rem}.featured-play>span:last-child{position:absolute;z-index:2;inset:11px 7px 8px 45%;display:flex;flex-direction:column;justify-content:flex-end;color:#fff}.featured-play>span b{font-family:Cormorant Garamond;font-size:1rem;line-height:1}.featured-play>span small{margin-top:4px;font-size:.48rem;line-height:1.25;color:#f1dcc8}.action-stage.animate .target{animation:target-arrive .48s .3s ease both}.action-stage.animate .action-arrow{animation:arrow-fire .52s .18s ease both}.action-stage.action-0.animate .featured-play{animation:wiretap-signal .8s ease}.action-stage.action-1.animate .featured-play{animation:hunch-snap .62s cubic-bezier(.18,.88,.35,1.25)}.action-stage.action-2.animate .featured-play{animation:lead-slide .62s ease}.action-stage.action-3.animate .featured-play{animation:alibi-balance .75s ease}.action-stage.action-4.animate .featured-play{animation:safehouse-lock .72s ease}.action-stage.action-5.animate .featured-play{animation:interrogation-slam .55s cubic-bezier(.18,.9,.32,1.2)}.action-stage.action-6.animate .featured-play{animation:case-review-fan .85s ease}.action-stage.action-7.animate .featured-play{animation:disguise-flip .72s ease}.action-stage.action-8.animate .featured-play{animation:red-herring-swerve .85s ease}.action-stage.action-9.animate .featured-play{animation:evidence-reveal .9s ease}@keyframes wiretap-signal{0%{opacity:.2;filter:saturate(.2);box-shadow:0 0 #16a1aa}35%{opacity:1;box-shadow:0 0 0 8px #16a1aa42}70%{box-shadow:0 0 0 16px #16a1aa00}to{filter:none}}@keyframes hunch-snap{0%{opacity:0;transform:rotate(-9deg) scale(.72)}65%{transform:rotate(2deg) scale(1.05)}to{transform:none}}@keyframes lead-slide{0%{opacity:0;transform:translate(-80px)}70%{transform:translate(5px)}to{transform:none}}@keyframes alibi-balance{0%{opacity:0;transform:rotate(-7deg)}35%{transform:rotate(7deg)}70%{transform:rotate(-2deg)}to{transform:none}}@keyframes safehouse-lock{0%{opacity:.2;transform:scale(1.18);filter:brightness(1.8)}55%{transform:scale(.94);box-shadow:0 0 0 7px #16808c58}to{transform:none;filter:none}}@keyframes interrogation-slam{0%{opacity:0;transform:translateY(-55px) scale(1.14)}65%{transform:translateY(4px) scale(.98)}to{transform:none}}@keyframes case-review-fan{0%{opacity:0;transform:translateY(30px) rotate(-8deg)}35%{transform:translate(-8px) rotate(5deg)}70%{transform:translate(7px) rotate(-3deg)}to{transform:none}}@keyframes disguise-flip{0%{opacity:0;transform:rotateY(90deg)}55%{transform:rotateY(-16deg)}to{transform:none}}@keyframes red-herring-swerve{0%{opacity:0;transform:translate(-65px) rotate(-12deg)}45%{transform:translate(20px) rotate(7deg)}75%{transform:translate(-5px) rotate(-2deg)}to{transform:none}}@keyframes evidence-reveal{0%{opacity:0;filter:brightness(3) saturate(2);transform:scale(1.3)}45%{opacity:1;box-shadow:0 0 24px 8px #d21d3f9c}to{filter:none;transform:none}}@keyframes target-arrive{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:none}}@keyframes arrow-fire{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}.action-resolution{grid-column:1/-1;margin:1px 3px 0;padding-top:6px;border-top:1px solid #cfb58e;color:#5b4542;font-size:.58rem;font-weight:700;text-align:center;line-height:1.3}.opponent.current-turn{background:#fff2cf;box-shadow:0 0 0 2px #bd8b35,0 5px 15px #71401e28;animation:turn-glow 1.5s ease-in-out infinite}.opponent.current-turn .avatar{background:var(--wine);color:#fff}.opponent .life-state{width:max-content;margin:4px auto 0;padding:2px 5px;border-radius:5px;background:#dceadd;color:#276b47;font-size:.44rem;font-weight:800;letter-spacing:.08em}.opponent.out .life-state{background:#ead9db;color:#8a3546}.opponent.current-turn .life-state{background:#bd8b35;color:#fff}@keyframes opponent-play{0%{opacity:0;transform:translateY(-34px) rotate(-8deg) scale(1.35)}65%{opacity:1;transform:translateY(3px) rotate(2deg) scale(.96)}to{transform:none}}@keyframes turn-glow{0%,to{box-shadow:0 0 0 2px #bd8b35,0 5px 15px #71401e20}50%{box-shadow:0 0 0 4px #bd8b3548,0 5px 18px #71401e38}}@keyframes target-pulse{0%{transform:scale(.94);background:#a51d3538}to{transform:none}}@keyframes action-flash{0%{opacity:0;transform:translate(-50%,-14px) scale(.92)}12%,72%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-6px)}}@media(min-width:480px){.opponents{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));overflow:visible}.opponent{min-width:0}}@media(min-height:760px){.history{height:92px}.card{aspect-ratio:.68}.opponents{padding:14px 0}.turn-banner{padding:14px}.rules-sheet{max-height:90vh;max-height:90dvh}}@media(max-width:380px){main{padding-left:14px;padding-right:14px}.landing{padding-top:calc(54px + env(safe-area-inset-top));justify-content:flex-start;gap:11px}.home-hero{gap:10px}.home-hero h1{font-size:2.9rem}.home-hero .crest{width:54px;height:54px;flex-basis:54px}.home-hero .eyebrow{font-size:.52rem}.home-hero .intro{font-size:.66rem}.lan-panel{padding:13px}.room-join{font-size:0}.room-join i{font-size:1.4rem}.join{grid-template-columns:1fr}.join button{grid-column:auto}.room-code h2{font-size:3.2rem}.turn-preview{padding-left:9px;padding-right:9px}.turn-preview span{font-size:.62rem}.table{padding-left:10px;padding-right:10px}.opponents{gap:5px}.opponent{min-width:72px;flex:0 0 72px;overflow:visible}.opponent b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card{width:calc(50vw - 18px);padding:9px}.card-name{font-size:1.15rem}.card-text{font-size:.58rem}.card-value{font-size:1.7rem}.action-sheet{padding-left:14px;padding-right:14px}}@media(max-height:700px){.room-code{padding:18px 0 14px}.turn-preview,.lobby-actions{margin-top:12px}.opponents{padding:8px 0}.opponent .avatar{width:34px;height:34px}.history{height:48px}.card{aspect-ratio:.76}.card:after{font-size:1.8rem}.card-text{font-size:.58rem}.score-strip{margin-bottom:5px}}@media(max-width:380px){.action-stage{grid-template-columns:43px minmax(125px,1fr) 14px 43px;gap:3px;padding:5px}.featured-play{height:78px}.action-person .target-avatar{width:29px;height:29px}.featured-play>span:last-child{left:43%}.featured-play>span small{font-size:.43rem}}@media(max-height:700px){.action-stage{min-height:88px;margin-bottom:5px}.featured-play{height:72px}.discard-board{min-height:70px}.history{height:42px}}@media(prefers-reduced-motion:reduce){.card.playable,.discard-chip.latest,.opponent.targeted,.opponent.current-turn,.action-stage.animate .featured-play,.action-stage.animate .target,.action-stage.animate .action-arrow{animation:none}}@media(display-mode:standalone){body{overscroll-behavior:none}}.lobby{display:flex;flex-direction:column;min-height:100dvh;padding-top:calc(12px + env(safe-area-inset-top))}.lobby .room-code{display:flex;align-items:center;justify-content:space-between;padding:18px 2px 16px;text-align:left}.lobby .room-code .eyebrow{margin:0 0 2px;font-size:.56rem}.lobby .room-code h2{font-size:2.65rem;letter-spacing:.1em}.lobby .room-code .text-button{margin:0;padding:10px 0 10px 12px;font-size:.72rem;font-weight:700;text-decoration:none}.lobby .seat-heading{margin:0 2px 8px}.lobby .seat-heading .eyebrow{display:none}.lobby .seat-heading h3{font-size:1.55rem}.lobby .player-row{min-height:52px;padding:8px 11px;background:#fffaf5cc}.lobby .player-row .avatar{width:34px;height:34px}.lobby .seat-controls{margin-top:8px;padding:8px 10px;background:#fffaf166}.lobby .lobby-actions{margin-top:auto;padding-top:14px}.lobby .lobby-actions .primary{min-height:52px;font-size:.82rem}.table{display:block;min-height:100dvh;padding-top:calc(8px + env(safe-area-inset-top));padding-bottom:calc(22px + env(safe-area-inset-bottom));overflow:visible}.play-column,.table-sidebar{min-width:0}.table>header{height:40px}.table .opponents{gap:6px;padding:9px 0 7px}.table .opponent{display:grid;grid-template-columns:30px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;column-gap:7px;min-width:104px;max-width:136px;padding:6px 8px;text-align:left;background:#fffaf184;border:1px solid #e3d1b7;border-radius:10px}.table .opponent .avatar{grid-row:1/3;width:30px;height:30px;margin:0}.table .opponent>b{margin:0;font-size:.62rem}.table .opponent>span,.table .opponent>small:not(.life-state){display:none}.table .opponent .life-state{width:auto;margin:2px 0 0;padding:0;background:transparent;color:#6c8069;font-size:.52rem}.table .opponent.current-turn{background:#fff4d9}.table .opponent.current-turn .life-state{background:transparent;color:#9a6817}.table .score-strip{margin:2px 0 7px}.table .turn-banner{min-height:64px;padding:10px 12px}.table .turn-banner p{font-size:1.35rem}.table .turn-banner strong{font-size:.62rem}.table .hand{margin:12px 0 0}.table .hand-heading{margin-bottom:7px}.table .cards{gap:8px}.table .card{width:min(43vw,176px);height:232px;aspect-ratio:auto;padding:9px;border-width:1px;border-radius:12px;box-shadow:0 6px 16px #4f2a1f22}.table .card.playable{box-shadow:0 0 0 2px #fff8e8,0 0 0 4px #bd8b35,0 8px 20px #4f2a1f25}.table .card-art{inset:4px 4px 41%;border-radius:8px 8px 4px 4px}.table .card:before{inset:57% 0 0}.table .card-value{top:7px;left:7px;width:29px;height:29px;font-size:1.45rem}.table .card-copy{padding-right:22px}.table .card-name{font-size:1.16rem}.table .card-text{min-height:2.6em;font-size:.62rem;line-height:1.25}.table .card-meta{display:block;margin-top:4px;padding-top:4px;border-top:1px solid #c9a97b;color:#80695f;font-size:.5rem;line-height:1.2}.table .card-count{right:6px;bottom:6px;width:25px;height:25px}.table .card>*{pointer-events:none}.table .card-badge.restricted{background:#776b66}.table .review-cards .card{width:min(29vw,135px);height:210px}.table .action-stage{display:flex;align-items:center;gap:10px;min-height:62px;margin:14px 0 8px;padding:8px 10px;border-color:#ddc6a2;border-radius:11px;background:#fffaf1a8;box-shadow:none;overflow:hidden}.table .action-stage.waiting{min-height:48px;margin-bottom:8px}.last-play-art{position:relative;display:block;flex:0 0 44px;height:48px;border:1px solid #bc9258;border-radius:7px;background-image:linear-gradient(180deg,transparent 30%,#30101ccc),url(/detective-card-atlas-v2.png);background-size:500% 200%;box-shadow:0 3px 8px #3c152329}.last-play-art b{position:absolute;top:3px;left:5px;color:#fff;font-family:Cormorant Garamond;font-size:.95rem;text-shadow:0 1px 3px #000}.last-play-copy{min-width:0;text-align:left}.last-play-copy>small{display:block;color:#98754d;font-size:.48rem;font-weight:800;letter-spacing:.14em}.last-play-copy p{margin:2px 0;color:#5a3c3d;font-size:.68rem;line-height:1.3}.last-play-copy p strong{color:var(--wine)}.last-play-copy>span{display:block;color:#806d64;font-size:.58rem;line-height:1.35}.last-play-copy>em{display:block;margin-top:3px;color:#986f52;font-family:Cormorant Garamond;font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.action-stage.action-0.animate .last-play-art{animation:wiretap-signal .8s ease}.action-stage.action-1.animate .last-play-art{animation:hunch-snap .62s cubic-bezier(.18,.88,.35,1.25)}.action-stage.action-2.animate .last-play-art{animation:lead-slide .62s ease}.action-stage.action-3.animate .last-play-art{animation:alibi-balance .75s ease}.action-stage.action-4.animate .last-play-art{animation:safehouse-lock .72s ease}.action-stage.action-5.animate .last-play-art{animation:interrogation-slam .55s cubic-bezier(.18,.9,.32,1.2)}.action-stage.action-6.animate .last-play-art{animation:case-review-fan .85s ease}.action-stage.action-7.animate .last-play-art{animation:disguise-flip .72s ease}.action-stage.action-8.animate .last-play-art{animation:red-herring-swerve .85s ease}.action-stage.action-9.animate .last-play-art{animation:evidence-reveal .9s ease}.case-notes{margin-top:6px;border-top:1px solid #dcc8aa}.case-notes>summary{display:flex;align-items:center;justify-content:space-between;padding:11px 3px;color:var(--wine);cursor:pointer;list-style:none}.case-notes>summary::-webkit-details-marker{display:none}.case-notes>summary span,.case-notes>summary b,.case-notes>summary small{display:block}.case-notes>summary b{font-family:Cormorant Garamond;font-size:1rem}.case-notes>summary small{margin-top:1px;color:#8a7569;font-size:.55rem;font-weight:400}.case-notes>summary i{font-size:1.1rem;font-style:normal;transition:.2s transform}.case-notes[open]>summary i{transform:rotate(180deg)}.case-notes .discard-board{margin:0;padding:8px;min-height:0;background:#fff9ef80}.hidden-cards-note{margin:7px 0 2px;padding:7px 8px;border-radius:7px;background:#efe5d6;color:#76645b;font-size:.55rem;line-height:1.35}.discard-chip>*{pointer-events:none}.round-reason{padding:10px 12px!important;border:1px solid #dcc39d;border-radius:10px;background:#fff8ec}.round-reason>p{margin:3px 0 9px;color:#654e49;font-size:.7rem;line-height:1.4}.round-reason ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.round-reason li{display:flex;align-items:center;gap:8px;text-align:left}.reveal-card{position:relative;display:block;flex:0 0 30px;height:38px;border:1px solid #bc9258;border-radius:5px;background-image:linear-gradient(180deg,transparent 30%,#30101ccc),url(/detective-card-atlas-v2.png);background-size:500% 200%}.reveal-card b{position:absolute;top:2px;left:4px;color:#fff;font-family:Cormorant Garamond;text-shadow:0 1px 3px #000}.round-reason li span:last-child b,.round-reason li span:last-child small{display:block}.round-reason li span:last-child small{color:#806d64;font-size:.56rem}.case-notes .history{height:auto;min-height:0;padding:9px 4px 2px}.case-notes .history ol{height:auto}.case-notes .history li{font-size:.6rem}.reactions{display:flex;gap:5px;margin:-1px 0 4px;overflow-x:auto}.reactions button{flex:1;min-width:max-content;padding:7px 9px;border:1px solid #ddc8aa;border-radius:999px;background:#fffaf1;color:#7b4c55;font-size:.6rem;font-weight:700}.reaction-pop{position:fixed;z-index:8;left:50%;top:calc(58px + env(safe-area-inset-top));transform:translate(-50%);display:flex;align-items:center;gap:7px;width:max-content;max-width:calc(100vw - 30px);padding:8px 13px;border:1px solid #d8b77e;border-radius:999px;background:#fff9ebf2;box-shadow:0 9px 24px #4a1c2938;animation:reaction-pop 2.4s ease both}.reaction-pop b{color:#73535a;font-size:.55rem}.reaction-pop span{color:var(--wine);font-family:Cormorant Garamond;font-size:1rem;font-weight:700}.resume-seat{display:grid;place-content:center;justify-items:center;text-align:center}.resume-seat h1{font-size:4.2rem}.resume-seat>p:not(.eyebrow){color:#756159;font-size:.78rem}.resume-pulse{width:12px;height:12px;margin-top:12px;border-radius:50%;background:var(--wine);animation:resume-pulse 1s ease-in-out infinite}.case-summary{max-height:calc(100dvh - 32px);overflow:auto;padding-top:26px}.seal-stamp{display:grid;place-content:center;width:112px;height:112px;margin:0 auto 17px;border:5px double #a51d35;border-radius:50%;color:#a51d35;transform:rotate(-8deg);animation:seal-strike .72s cubic-bezier(.17,.84,.32,1.25) both}.seal-stamp span{font-size:.48rem;font-weight:800;letter-spacing:.25em}.seal-stamp b{font-family:Cormorant Garamond;font-size:1.35rem;line-height:1}.case-summary h2{margin-bottom:17px}.case-summary>section{margin:0 0 18px;padding:13px 14px;border:1px solid #ddc6a3;border-radius:12px;background:#f7ead8;text-align:left}.case-summary>section h3{margin:0 0 8px;color:#8d6d47;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase}.case-summary>section ol{margin:0;padding-left:18px}.case-summary>section li{margin:5px 0;color:#634d49;font-size:.65rem;line-height:1.35}.case-summary>#finish-home{width:100%;margin-top:12px}@keyframes seal-strike{0%{opacity:0;transform:translateY(-120px) rotate(-18deg) scale(1.7)}62%{opacity:1;transform:translateY(6px) rotate(-6deg) scale(.9)}78%{transform:translateY(0) rotate(-9deg) scale(1.08)}to{transform:rotate(-8deg) scale(1)}}@keyframes reaction-pop{0%{opacity:0;transform:translate(-50%,-14px) scale(.9)}12%,76%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-5px)}}@keyframes resume-pulse{50%{transform:scale(1.7);opacity:.35}}@media(max-width:380px){.lobby .room-code{padding:14px 2px 12px}.lobby .room-code h2{font-size:2.3rem}.lobby .player-row{min-height:48px}.table .opponent{min-width:96px;padding:5px 6px}.table .card{width:calc(50vw - 18px);height:218px}.table .card-name{font-size:1.05rem}.table .turn-banner p{font-size:1.2rem}}@media(max-height:700px){.lobby .room-code{padding-top:10px}.lobby .player-row{min-height:46px}.lobby .lobby-actions{padding-top:10px}.table .opponents{padding:6px 0}.table .turn-banner{min-height:56px;padding:8px 10px}.table .hand{margin-top:9px}.table .card{height:205px}.table .review-cards .card{height:190px}.table .action-stage{margin-top:11px}}@media(min-width:800px){main.landing{width:min(100%,640px)}main.lobby{width:min(100%,720px)}.lobby .players{display:grid;grid-template-columns:1fr 1fr;gap:1px}.lobby .seat-heading{grid-column:1/-1}.lobby .player-row{border:0;border-radius:10px!important}main.table{width:min(100%,900px);display:grid;grid-template-columns:minmax(470px,1.45fr) minmax(290px,.8fr);column-gap:20px;align-content:start;padding-left:22px;padding-right:22px}.table>header,.table>.opponents,.table>.score-strip,.table>.error{grid-column:1/-1}.table>.play-column{grid-column:1;grid-row:4}.table>.table-sidebar{grid-column:2;grid-row:4}.table .opponents{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}.table .opponent{max-width:none}.table .hand{margin-top:16px}.table .card{width:min(21vw,210px);height:272px}.table .review-cards .card{width:min(14vw,145px);height:230px}.table .action-stage{margin-top:0}.table .case-notes{margin-top:10px}.rules-sheet{width:min(100%,620px)}}@media(min-width:800px)and (max-height:700px){.table .card{height:220px}.table .review-cards .card{height:190px}.case-summary{max-height:calc(100dvh - 16px)}.seal-stamp{width:82px;height:82px;margin-bottom:10px}}@media(prefers-reduced-motion:reduce){.action-stage.animate .last-play-art,.reaction-pop,.resume-pulse,.seal-stamp{animation:none}}:root{--ink: #142327;--felt: #174044;--felt-dark: #102c30;--paper: #fff8e8;--paper-deep: #ecd9b6;--scarlet: #ad243d;--scarlet-dark: #78182c;--wine: #ad243d;--gold: #d8b471;--muted-gold: #ad916c}body{color:var(--ink);background:radial-gradient(ellipse at 50% 0,#285056 0,#152d32 43%,#09191d)}body.dialog-open{overflow:hidden}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #55ccd0;outline-offset:3px}.primary{background:linear-gradient(145deg,#c9364e,#8e1c35);box-shadow:0 8px 16px #210d1761}.secondary{background:#f5e6ca;border-color:#c7a878!important}.eyebrow{color:#a47e49}.landing,.lobby{width:min(100%,760px);color:var(--paper)}.landing{justify-content:flex-start;gap:18px;padding-top:max(66px,calc(50px + env(safe-area-inset-top)))}.landing-tools{top:17px}.landing-tools .rules-button{color:#f5e7cb}.landing-tools .rules-button span{border-color:var(--gold)}.home-hero{align-items:center;gap:22px;padding:22px 0 12px}.home-hero .crest{width:90px;height:90px;flex-basis:90px;margin:0;border:3px solid var(--gold);box-shadow:0 15px 35px #0813168c}.home-hero .eyebrow{color:var(--gold)}.home-hero h1{color:#fff4dd;font-size:clamp(3.4rem,10vw,6rem);line-height:.88;white-space:normal;text-shadow:0 7px 22px #0b16167a}.home-hero h1 i{color:#e0b76e}.home-hero .intro{max-width:none;color:#d4d9d1;font-size:.88rem}.quick-play{min-height:90px;padding:21px 24px!important;border:2px solid #e8bd74!important;border-radius:16px!important;box-shadow:0 14px 35px #06121680}.quick-play b{font-family:Cormorant Garamond,serif;font-size:1.7rem!important;line-height:1}.quick-play small{font-size:.72rem!important}.quick-play>i{font-size:2.6rem}.lan-panel{gap:15px;padding:21px;border:2px solid #b89561;border-radius:18px;background:#fbf2e1;box-shadow:0 18px 42px #06121680;color:var(--ink)}.lan-panel h2{color:#72253a;font-size:2rem}.lan-panel label{color:#675544}.lan-panel input{min-height:49px;background:#fffdf7}.room-row{min-height:64px;border-radius:10px;background:#fffaf0}.room-row:hover,.room-row:focus-visible{border-color:#b52b46;background:#fff4e5}.room-identity b{font-size:1.27rem}.empty-rooms{padding:18px}.live-dot{color:#256f58}.lobby>header{color:#f5e7ca;border-color:#718b83}.lobby .brand,.lobby .nav-button,.lobby .rules-button{color:#f5e7ca}.lobby .room-code{padding:32px 18px;margin:24px 0 16px;border:1px solid #bc9a69;border-radius:18px;background:#f7ebd4;color:var(--ink)}.room-code .eyebrow{margin:0 0 15px}.room-code h2{color:#8f1e37;font-size:clamp(3.4rem,10vw,5rem);letter-spacing:.2em}.room-code .text-button{color:#8f1e37}.lobby .players{padding:14px;border:1px solid #b99568;border-radius:16px;background:#f9edda;color:var(--ink)}.lobby .seat-heading h3{font-size:1.65rem}.lobby .player-row{min-height:62px;background:#fffbf2}.lobby .seat-controls,.lobby .turn-preview{padding:16px;border:1px solid #b99568;border-radius:13px;background:#f8ebd6;color:var(--ink)}.lobby .turn-preview{margin-top:0}.lobby .turn-preview .eyebrow{margin:0}.lobby .lobby-actions{gap:12px;color:#e9d9bc}.lobby .lobby-actions .primary{min-height:54px}.lobby .lobby-actions p{margin:0}.lobby .lobby-actions small{color:#c9bcaa}.table{width:min(100%,1160px);max-width:none;min-height:100dvh;gap:16px;padding:16px clamp(12px,2.6vw,34px) 34px;color:var(--paper);background:transparent}.table-header{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;height:auto;min-height:49px;margin:0;padding:0 0 9px;border-bottom:1px solid #9c956f8c;color:#ede2c8;letter-spacing:.04em}.table-brand{display:flex;align-items:center;gap:9px;white-space:nowrap}.table-brand .mini-crest{width:28px;height:28px;margin:0;border:1px solid var(--gold)}.table-brand b{color:#fff5df;font-family:Cormorant Garamond,serif;font-size:1.35rem;text-transform:none}.table-brand small{align-self:center;padding-left:10px;border-left:1px solid #a59a7e;color:#d7c7a8;font:700 .62rem Inter,sans-serif}.table-header nav{display:flex;gap:3px}.table-header .nav-button,.table-header .rules-button{color:#f5e8ce}.table-header .rules-button span{border-color:var(--gold)}.table-header .deck-count{display:flex;align-items:center;gap:8px;color:#dbcbaa;font-size:.6rem;font-weight:800;white-space:nowrap}.table-header .deck-count b{display:grid;place-items:center;width:34px;height:40px;border:2px solid #ead6a7;border-radius:5px;background:#f6ecd8;color:#7e1f35;font:700 1.2rem Cormorant Garamond,serif;box-shadow:4px -4px #f6ecd8,6px -6px #bba478}.game-felt{position:relative;display:grid;gap:14px;padding:clamp(12px,2vw,24px);border:2px solid #a48758;border-radius:24px;background:radial-gradient(ellipse at 50% 36%,#205357,var(--felt) 56%,var(--felt-dark) 100%);box-shadow:inset 0 0 0 5px #e8c99020,inset 0 25px 75px #9ad8c40c,0 22px 42px #0715199c}.game-felt:before{content:"";position:absolute;inset:9px;border:1px solid #d2ba8060;border-radius:16px;pointer-events:none}.table-seats{z-index:1;padding:0;border:0;background:transparent}.table-section-heading{padding:0 3px;color:#d9c7a3;font-size:.66rem}.table-section-heading b{margin-left:6px;color:#fff3d3}.table-section-heading small{color:#cabfa6}.table .opponents{justify-content:stretch;gap:8px;padding:10px 1px 3px;overflow-x:auto}.table .opponent{flex:1 0 108px;max-width:none;padding:9px;border:1px solid #c5b17e76;border-radius:10px;background:#09292cbd;box-shadow:none;color:#f7ead1}.table .opponent.your-seat{border-color:#d1b16f;background:#243d3b}.table .opponent.current-turn{border:2px solid #f0c674;background:#335256;box-shadow:0 0 0 3px #f0c67436,0 7px 20px #061c2270;animation:none}.table .opponent.out{opacity:.48;filter:grayscale(.7)}.table .seat-top{gap:5px}.table .seat-top b{color:#fff3dc;font-size:.7rem}.table .seat-order{width:17px;height:17px;background:#d7c39a;color:#243737}.table .seat-score{color:#f2ce84!important;font-size:.68rem!important}.table .seat-bottom{gap:8px}.table .opponent-card{width:25px;height:34px;flex-basis:25px;border:1px solid #d6b676;background:repeating-linear-gradient(45deg,#881f39 0 4px,#b3324c 4px 8px);font-size:1rem}.table .seat-state strong{color:#a5d2b3;font-size:.56rem}.table .current-turn .seat-state strong{color:#ffd486}.table .out .seat-state strong{color:#f2aab6}.table .seat-state small{color:#dac8ab;font-size:.53rem}.board-center{z-index:1;padding:0;border:0;background:transparent;box-shadow:none}.action-stage,.table .action-stage{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);grid-template-rows:auto 1fr;gap:8px 22px;align-items:center;min-height:190px;padding:14px clamp(12px,3vw,28px);border:1px solid #d1b9836b;border-radius:17px;background:radial-gradient(circle at 18% 32%,#346469,#183d41 62%,#123539);box-shadow:inset 0 0 35px #092a2a8a,0 9px 22px #071e2380;color:#fff6e4}.table .action-stage.waiting{display:flex;justify-content:center;min-height:175px;gap:18px;text-align:left}.empty-discard{display:grid;place-items:center;width:86px;height:118px;border:2px dashed #d5bc846e;border-radius:8px;color:#e0c489;font-size:2rem;transform:rotate(-5deg)}.action-stage.waiting p{margin:0;color:#fff1d8;font-family:Cormorant Garamond,serif;font-size:1.65rem;line-height:1.1}.action-stage.waiting p small{color:#c4d0c4;font:400 .76rem Inter,sans-serif}.table .featured-play{grid-column:1;grid-row:1 / 3;width:142px;height:176px;margin:auto;border:3px solid #d5ad6a;border-radius:9px;background:#451b2d;box-shadow:0 13px 21px #061b228c;transform:rotate(-3deg)}.featured-art{inset:0;background-image:linear-gradient(180deg,transparent 40%,#32131fe0 88%),url(/detective-card-atlas-v2.png);background-size:500% 200%}.featured-play>strong{top:8px;left:9px;width:30px;height:30px;font-size:1.25rem}.featured-play>span:last-child{inset:auto 8px 8px}.featured-play>span b{font-size:1.45rem}.featured-play>span small{font-size:.58rem;line-height:1.2}.stage-origin{grid-column:2;grid-row:1;align-self:end}.stage-origin small{display:block;margin-bottom:5px;color:#d6bf90;font-size:.58rem;font-weight:800;letter-spacing:.15em}.stage-origin strong{display:block;color:#fff6df;font-family:Cormorant Garamond,serif;font-size:clamp(1.35rem,2.7vw,2rem);line-height:1}.stage-origin strong span{color:#ecc77e}.table .action-resolution{grid-column:2;grid-row:2;align-self:start;margin:0;padding:0;border:0;color:#e7e9dd;font-size:clamp(.73rem,1.4vw,.9rem);font-weight:600;line-height:1.45}.action-stage.animate .featured-play{animation:card-to-pile .6s cubic-bezier(.2,.8,.25,1.15) both!important}@keyframes card-to-pile{0%{opacity:0;transform:translate(-45px,-35px) rotate(-19deg) scale(1.22)}to{opacity:1;transform:rotate(-3deg)}}.table .discard-board{z-index:1;margin:0;padding:9px 10px;border:1px solid #d1b98370;border-radius:10px;background:#092c30b3}.table .discard-heading .eyebrow{color:#e3cca0;font-size:.64rem}.table .discard-heading small{color:#c0cbbb;font-size:.59rem}.table .discard-lanes{padding:7px 0 2px}.table .discard-lane{min-width:100px;max-width:240px;padding:5px 6px;background:#e8d6b8}.table .discard-lane.removed{background:#b6d7cf}.table .discard-lane.targeted{background:#f5c2c4}.table .discard-lane>b{color:#452e30;font-size:.61rem}.table .discard-chip{flex-basis:33px;height:43px}.table .discard-chip i{font-size:.9rem}.table .discard-chip small{font-size:.37rem}.decision-zone{display:grid;gap:10px;color:var(--ink)}.table .turn-banner{min-height:75px;margin:0;padding:13px 18px;border:1px solid #d1ae75;border-radius:13px;background:#f5e7cf;box-shadow:0 8px 17px #07161b63}.table .turn-banner.active{border:2px solid #e7bb70;background:linear-gradient(115deg,#9d203a,#681829);color:#fff3dc}.table .turn-dot{width:11px;height:11px;background:#bc8f50}.table .turn-banner.active .turn-dot{background:#ffd17b;box-shadow:0 0 0 5px #ffd17b2b}.table .turn-banner small{color:#8a6544;font-size:.58rem}.table .turn-banner.active small{color:#ffce87}.table .turn-banner p{color:#7e1d36;font-family:Cormorant Garamond,serif;font-size:clamp(1.4rem,2.6vw,2rem)}.table .turn-banner.active p{color:#fff6df}.table .turn-detail{color:#6b5b50;font-size:.68rem}.table .turn-banner.active .turn-detail{color:#f3e3d6}.table .turn-next{color:#8d6d57}.table .turn-next b{color:#8c2239}.table .turn-banner.active .turn-next{color:#e8bca7}.table .turn-banner.active .turn-next b{color:#fff2d7}.table .turn-notice{margin:0;border-radius:8px;background:#fff4cf}.table .play-area{gap:12px}.table .hand{margin:0;padding:clamp(11px,2vw,20px);border:1px solid #c5a574;border-radius:13px;background:#f2dfbf;box-shadow:0 11px 22px #09191e66}.table .hand-heading{margin:0 0 11px}.table .hand-heading .eyebrow{color:#805328;font-size:.73rem}.table .hand-heading span{color:#755c49;font-size:.65rem}.table .cards{gap:clamp(10px,2vw,20px);justify-content:center}.table .card{width:min(40vw,230px);aspect-ratio:.73;padding:12px;border:3px solid #c3934f;border-radius:12px;background:#e6c89c;box-shadow:0 11px 18px #3e241d4a}.table .card:before{inset:60% 0 0;background:linear-gradient(#eed9b6,#fff8e8 35%,#ecd0a5)}.table .card-art{inset:6px 6px 38%;border-radius:7px 7px 0 0;background-image:linear-gradient(180deg,transparent 58%,#39151c9e),url(/detective-card-atlas-v2.png)}.table .card-value{width:38px;height:38px;top:10px;left:10px;background:#fff2d4;font-size:1.7rem}.table .card-copy{min-height:36%;padding-right:27px}.table .card-name{color:#92203a;font-size:clamp(1.35rem,2.2vw,1.75rem)}.table .card-text{color:#35292a;font-size:clamp(.66rem,1.25vw,.82rem);line-height:1.32}.table .card-count{background:#a7243d}.table .card.playable{animation:none;box-shadow:0 0 0 3px #f3e2bd,0 0 0 6px #b38644,0 13px 23px #38232075}.table .card.playable:hover{transform:translateY(-7px)}.table .card.selected{transform:translateY(-7px);border-color:#ab243d;box-shadow:0 0 0 4px #ac2640,0 15px 25px #43212d70}.table .card:disabled:not(.selected){opacity:.92;filter:saturate(.78)}.table .review-cards .card{width:min(28vw,145px)}#turn-action{scroll-margin:20px}.table .action-sheet{display:grid;gap:9px;width:100%;padding:17px;border:2px solid #c9a572;border-radius:13px;background:#fff7e6;box-shadow:0 10px 25px #09191e75}.table .action-sheet .action-step{color:#9d6334}.table .action-sheet h3{color:#7f1d36}.table .action-sheet p{color:#452d33}.table .action-help,.table .action-effect{color:#615249}.table .target-grid button,.table .guess-grid button{border:1px solid #ceaa75;background:#fffdf5;color:#592431}.table .target-grid button:hover,.table .guess-grid button:hover{border-color:#9f2340;background:#fff0da}.table .action-sheet .cancel{color:#7e4c52!important}.table .case-feed,.table .history{padding:10px 14px;border:1px solid #8fa39770;border-radius:10px;background:#102a2dcc;color:#f4e8cf}.table .case-feed summary,.table .history summary{cursor:pointer;color:#f1ddb9;font-size:.73rem;font-weight:800}.table .case-feed summary span{float:right;color:#b8c5bd;font-weight:600}.table .case-feed ol{margin-top:10px}.table .case-feed li{background:#e7d9bc}.table .history li{color:#dce7d9}.table .round-summary{margin:0;padding:20px;border:2px solid #d7b26f;border-radius:18px;background:#f4e3c5;color:var(--ink)}.table .round-summary h2{color:#8f1e36;line-height:.95}.table .round-summary .round-scores span{background:#fff6e4}.rules-backdrop{align-items:center;padding:15px}.rules-sheet{width:min(100%,610px);max-height:min(92vh,860px);border:2px solid #d0a870;border-radius:18px;background:#fff8e9;color:var(--ink)}.rules-sheet>header{color:var(--ink)}.rules-sheet h2,.rule-section h3{color:#8b1e37}.dialog-backdrop .confirm-dialog{color:var(--ink)}@media(min-width:780px){.table .opponents{overflow:visible}.table .opponent{min-width:0}.table .play-area:has(#turn-action){grid-template-columns:minmax(0,1fr) minmax(310px,.78fr)}.table .play-area:has(#turn-action) .card{width:min(19vw,200px)}}@media(max-width:620px){.table{gap:10px;padding:10px 10px 26px}.table-header{grid-template-columns:1fr auto;gap:4px}.table-brand b{font-size:1.18rem}.table-brand small{font-size:.55rem}.table-header nav{grid-column:1;grid-row:2}.table-header .deck-count{grid-column:2;grid-row:1 / 3;font-size:.5rem}.game-felt{gap:8px;padding:10px;border-radius:17px}.table-section-heading{font-size:.56rem}.table-section-heading small{font-size:.52rem}.table .opponents{gap:6px;padding:7px 0 2px}.table .opponent{flex:0 0 110px;padding:7px}.action-stage,.table .action-stage{grid-template-columns:105px minmax(0,1fr);min-height:146px;gap:5px 12px;padding:10px}.table .featured-play{width:100px;height:128px}.featured-play>strong{width:23px;height:23px;font-size:.95rem}.featured-play>span b{font-size:1rem}.featured-play>span small{font-size:.42rem}.stage-origin small{font-size:.49rem}.stage-origin strong{font-size:1.25rem}.table .action-resolution{font-size:.65rem}.table .action-stage.waiting{min-height:137px}.empty-discard{width:71px;height:96px}.action-stage.waiting p{font-size:1.3rem}.table .discard-board{padding:7px}.table .discard-lane{min-width:88px;padding:4px}.table .discard-chip{flex-basis:29px;height:38px}.table .turn-banner{padding:10px 12px;min-height:64px}.table .turn-banner p{font-size:1.38rem}.table .turn-detail{font-size:.62rem}.table .hand{padding:10px}.table .card{width:calc(50vw - 28px);aspect-ratio:.68;padding:8px}.table .card-art{inset:6px 6px 43%}.table .card:before{inset:57% 0 0}.table .card-copy{min-height:41%;padding-right:18px}.table .card-name{font-size:1.2rem}.table .card-text{font-size:.68rem;line-height:1.23}.table .card-value{width:31px;height:31px;font-size:1.3rem}.table .card-count{width:23px;height:23px;font-size:.52rem}.table .review-cards .card{width:min(28vw,125px)}.table .action-sheet.confirm{grid-template-columns:1fr}.table .action-sheet.confirm .action-step,.table .action-sheet.confirm p,.table .action-sheet.confirm .action-effect,.table .action-sheet.confirm .primary,.table .action-sheet.confirm .cancel{grid-column:1;grid-row:auto}.landing{padding-top:60px}.home-hero{gap:14px;padding:10px 0 4px}.home-hero .crest{width:60px;height:60px;flex-basis:60px}.home-hero h1{font-size:clamp(3.1rem,13vw,4.7rem)}.lan-panel{padding:16px}.rules-backdrop{align-items:flex-end;padding:0}.rules-sheet{max-height:94dvh;border-radius:19px 19px 0 0}}@media(max-width:370px){.table-brand small{display:none}.table .card-text{font-size:.62rem}.table .card-name{font-size:1.1rem}.table .turn-next{display:none}}@media(prefers-reduced-motion:reduce){.action-stage.animate .featured-play,.table .card.playable{animation:none!important}}.table,.game-felt,.table-seats,.board-center,.table .discard-board{min-width:0;max-width:100%}.game-felt{width:100%}.table .opponents{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible}.table .opponent{min-width:0;width:auto;max-width:none}.table .seat-top,.table .seat-bottom{min-width:0}.table .seat-top b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table .action-stage{width:100%;min-width:0;max-width:100%;overflow:hidden}.table .stage-origin,.table .action-resolution{min-width:0;max-width:100%;overflow-wrap:anywhere;text-align:left}.table .stage-origin strong{white-space:normal;overflow-wrap:anywhere}.table .action-resolution em{display:block;margin-top:6px;color:#d7bd8d;font-weight:500}.table .discard-lanes{min-width:0;max-width:100%}.table .turn-banner>div{min-width:0;flex:1}.table .turn-next{flex:0 0 auto;max-width:40%}.table .turn-next b{display:block;overflow-wrap:anywhere}@media(max-width:439px){.table .opponents{grid-template-columns:repeat(2,minmax(0,1fr))}.table .opponent{padding:7px}.table .action-stage{grid-template-columns:95px minmax(0,1fr)}.table .featured-play{width:88px;height:116px}.table .stage-origin strong{font-size:1.13rem}.table .action-resolution{font-size:.63rem;line-height:1.3}.table .turn-next{max-width:33%;font-size:.55rem}}@media(max-width:620px){.table .play-area:has(#turn-action) #turn-action{order:-1}}@media(min-width:800px){main.table{display:flex;flex-direction:column;width:min(100%,1220px);grid-template-columns:none;gap:16px}.table .card{height:auto}}@media(min-width:1000px){main.table{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;column-gap:18px;row-gap:14px}.table>.table-header,.table>.round-summary,.table>.error{grid-column:1 / -1}.table>.game-felt{grid-column:1;grid-row:2 / span 3}.table>.decision-zone{grid-column:2;grid-row:2}.table>.reactions{grid-column:2;grid-row:3}.table>.case-feed{grid-column:2;grid-row:4}.table:has(>.round-summary)>.game-felt{grid-row:3 / span 2}.table:has(>.round-summary)>.reactions{grid-row:3}.table .opponents{grid-template-columns:repeat(3,minmax(0,1fr))}.table .play-area:has(#turn-action){grid-template-columns:minmax(0,1fr)}.table .play-area:has(#turn-action) #turn-action{order:-1}.table .card,.table .play-area:has(#turn-action) .card{width:min(42%,205px)}}.table .discard-chip.latest{animation:none}.table .discard-chip.new-discard{animation:discard-land .52s cubic-bezier(.18,.8,.3,1.15) both}.table .opponent.current-turn.turn-enter{animation:turn-arrive .62s ease-out both}.table .opponent.just-out{animation:seat-out .65s ease-out both}.table .opponent.just-shielded{animation:shield-arrive .75s ease-out both}.table .seat-score.seal-earned{display:inline-block;animation:seal-earned .9s cubic-bezier(.18,.8,.3,1.15) both}.table .card.selected{animation:card-chosen .3s ease-out both}.table .turn-banner.turn-enter{animation:prompt-arrive .48s ease-out both}.table .action-stage.result-updated .action-resolution{animation:prompt-arrive .42s ease-out both}.table #turn-action .action-sheet{animation:choice-arrive .3s ease-out both}.table .turn-notice{animation:prompt-arrive .35s ease-out both}.table .game-felt.round-enter{animation:table-deal .5s ease-out both}.table .game-felt.round-enter .opponent{animation:prompt-arrive .32s ease-out both}.table .game-felt.round-enter .opponent:nth-child(2){animation-delay:.06s}.table .game-felt.round-enter .opponent:nth-child(3){animation-delay:.12s}.table .game-felt.round-enter .opponent:nth-child(4){animation-delay:.18s}.table .game-felt.round-enter .opponent:nth-child(5){animation-delay:.24s}.table .game-felt.round-enter .opponent:nth-child(6){animation-delay:.3s}.table .case-feed[open] ol,.table .reactions[open] nav{animation:choice-arrive .22s ease-out both}.table .card.playable,.table .reactions button,.table .action-sheet button{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.table .reactions button:hover,.table .action-sheet button:hover{transform:translateY(-2px)}.table .reactions button:active,.table .action-sheet button:active,.table .card.playable:active{transform:scale(.97)}@keyframes discard-land{0%{opacity:0;transform:translateY(-23px) rotate(-13deg) scale(1.22)}72%{opacity:1;transform:translateY(3px) rotate(3deg) scale(.96)}to{opacity:1;transform:none}}@keyframes turn-arrive{0%{transform:translateY(-6px) scale(.96);box-shadow:0 0 #f0c67400}65%{transform:translateY(1px) scale(1.02);box-shadow:0 0 0 7px #f0c67450}to{transform:none;box-shadow:0 0 0 3px #f0c67436,0 7px 20px #061c2270}}@keyframes seat-out{0%{opacity:1;filter:grayscale(0);transform:scale(1.03)}to{opacity:.48;filter:grayscale(.7);transform:none}}@keyframes shield-arrive{50%{box-shadow:0 0 0 7px #88d8ce8a}}@keyframes seal-earned{35%{transform:translateY(-7px) scale(1.55);color:#fff5b7;text-shadow:0 0 14px #f9d67c}to{transform:none}}@keyframes card-chosen{0%{transform:translateY(0) scale(.97)}to{transform:translateY(-7px) scale(1)}}@keyframes prompt-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes choice-arrive{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}@keyframes table-deal{0%{opacity:.7;transform:translateY(10px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.table .new-discard,.table .turn-enter,.table .just-out,.table .just-shielded,.table .seal-earned,.table .card.selected,.table .result-updated .action-resolution,.table #turn-action .action-sheet,.table .turn-notice,.table .case-feed[open] ol,.table .reactions[open] nav,.table .game-felt.round-enter,.table .game-felt.round-enter .opponent{animation:none!important}.table .card.playable,.table .reactions button,.table .action-sheet button{transition:none!important}}.table .action-sheet{position:static;left:auto;bottom:auto;transform:none;max-height:none;overflow:visible}.table .round-summary{width:100%;max-height:none;overflow:visible}.table .reactions{display:block;margin:0;overflow:visible;border:1px solid #9b8f70;border-radius:10px;background:#102a2dcc;color:#f1ddb9}.table .reactions summary{display:flex;min-height:48px;align-items:center;justify-content:space-between;padding:10px 15px;cursor:pointer;font-size:.8rem;font-weight:800;list-style:none}.table .reactions summary::-webkit-details-marker{display:none}.table .reactions summary span{color:#dfbd7e;font-size:1.2rem}.table .reactions nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 10px 10px}.table .reactions button{min-width:0;min-height:48px;padding:8px;border:1px solid #bba16e;border-radius:9px;background:#e7d6b5;color:#63283c;font-size:.75rem;line-height:1.2;white-space:normal}.table .case-feed li{color:#452d33;font-size:.7rem}.table .hidden-cards-note{color:#d9dbc8}body{background-color:#120d0f;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px),radial-gradient(circle at 82% 9%,#6c2028 0,transparent 42%);background-size:64px 64px,64px 64px,auto}.table,.table button,.table summary{font-family:Inter,system-ui,sans-serif}.game-felt{border-color:#9f443d;background:radial-gradient(circle at 85% 0,#4a1d27,#211418 60%,#160f12);box-shadow:0 24px 50px #0009}.game-felt:before{border-color:#e0a43f44}.table .opponent{background:#1b1519e8;border-color:#886366}.table .opponent.your-seat{background:#342027}.table .opponent.current-turn{background:#60232f;border-color:#ffbc55}.table .action-stage{background:linear-gradient(125deg,#64212c,#24171c 70%);border-color:#ad644d;box-shadow:0 10px 30px #0008}.table .discard-board,.table .reactions{background:#181316e8;border-color:#785452}.table .hand{background:#21171b;border-color:#85564a}.table .hand-heading .eyebrow{color:#ffbf57}.table .hand-heading span{color:#e1c9c0}.table .turn-banner{background:#2a1a20;border-color:#7c4a48}.table .turn-banner.active{background:linear-gradient(115deg,#9f2d3c,#59202c);border-color:#ffc164}.table .turn-banner p{color:#fff0dd;font-family:Inter,system-ui,sans-serif;font-size:clamp(1.1rem,2vw,1.55rem);font-weight:800}.table .turn-banner small,.table .turn-next,.table .turn-next b{color:#f0c8ae}.table .own-receipt{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid #9b684e;border-radius:10px;background:#342026;color:#fff1dd}.table .own-receipt .receipt-icon{display:grid;place-items:center;flex:0 0 25px;height:25px;border-radius:50%;background:#ffb94d;color:#431d26;font-size:.9rem;font-weight:900}.table .own-receipt b,.table .own-receipt small{display:block;line-height:1.35}.table .own-receipt b{font-size:.75rem}.table .own-receipt small{margin-top:2px;color:#e1c9c0;font-size:.7rem}.table .card,.table .play-area:has(#turn-action) .card{justify-content:flex-start;gap:7px;aspect-ratio:.73;padding:13px;border:2px solid #efbb68;background:#fff2dc;color:#28171b;text-align:left}.table .card:before,.table .card:after{display:none}.table .card-value{position:static;display:flex;align-items:baseline;gap:4px;width:auto;height:auto;border-radius:0;background:transparent;box-shadow:none;color:#c83743;font-family:Inter,system-ui,sans-serif;font-size:clamp(1.9rem,3vw,2.6rem);font-weight:900;line-height:1}.table .card-value small{color:#7d5d58;font-size:.45rem;font-weight:900;letter-spacing:.13em}.table .card-symbol{display:grid;place-items:center;min-height:24%;margin:3px 0;border-radius:9px;background:#ffd9ac;color:#822638;font-size:clamp(2.2rem,5vw,3.8rem);font-weight:800;line-height:1}.table .card-copy{padding:0 0 24px;min-height:0}.table .card-name{color:#802130;font-family:Inter,system-ui,sans-serif;font-size:clamp(.95rem,1.55vw,1.2rem);font-weight:900;line-height:1.1}.table .card-text{min-height:0;color:#342529;font-size:clamp(.72rem,1.1vw,.85rem);font-weight:600;line-height:1.3}.table .card-meta{color:#835d55;font-size:.58rem}.table .card-count{background:#ac2f42}.table .card.playable{box-shadow:0 0 0 3px #2c1b20,0 0 0 6px #ffbc55,0 14px 25px #0008}.table .card,.table .play-area:has(#turn-action) .card{display:flex;flex-direction:column;gap:0;min-height:268px;height:auto;padding:12px;border-radius:15px;background:linear-gradient(155deg,#fff9e9,#f5dfba)}.table .card-top{display:flex;align-items:flex-start;justify-content:space-between;width:100%;min-height:57px}.table .card-value{flex-direction:column;align-items:flex-start;gap:1px;font-size:2.65rem}.table .card-value small{font-size:.55rem;letter-spacing:.1em}.table .card-symbol{display:grid;place-items:center;flex:0 0 37px;width:37px;min-height:37px;margin:0;border-radius:50%;background:#f8dbb9;font-size:1.3rem}.table .card:has(.card-badge,.review-state) .card-symbol{visibility:hidden}.table .card-copy{display:flex;flex:1;flex-direction:column;gap:9px;width:100%;padding:8px 0 10px}.table .card-name{overflow-wrap:anywhere;font-size:clamp(1.15rem,1.7vw,1.45rem);line-height:1.05}.table .card-text{font-size:clamp(.78rem,1.13vw,.95rem);line-height:1.36;font-weight:600}.table .card-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:5px;width:100%;min-height:37px;padding-top:7px;border-top:1px solid #cea978}.table .card-meta{display:block;flex:1;margin:0;padding:0;border:0;color:#684d48;font-size:.66rem;font-weight:700;line-height:1.18}.table .card-count{position:static;flex:0 0 auto;display:block;width:auto;height:auto;padding:5px 6px;border-radius:5px;background:#a52e42;font-size:.58rem;line-height:1;white-space:nowrap;box-shadow:none}.table .card.playable:hover{transform:translateY(-4px)}.table .card.playable:active{transform:translateY(-1px) scale(.98)}.table .card.selected{border-color:#f9d68f;background:linear-gradient(155deg,#fff9e9,#ffebb9);box-shadow:0 0 0 3px #b9324a,0 0 0 6px #ffce69,0 15px 27px #0009}.table .card:disabled:not(.selected){opacity:1;filter:none}.table .card:disabled:not(.selected) .card-foot{opacity:.78}.table .card.playable:focus-visible{outline:4px solid #6cdef1;outline-offset:7px}.table .featured-play{background:#fff0d7;color:#681e2d}.table .featured-play>strong{background:#b42e42;color:#fff;font-family:Inter,system-ui,sans-serif}.table .featured-play>span:last-child{inset:50px 9px 8px;color:#5e1e2b}.table .featured-play>span b{font-family:Inter,system-ui,sans-serif;font-size:1rem;font-weight:900}.table .featured-play>span small{color:#493138}.table .featured-art{display:none}.table .action-sheet{border-color:#ae694d}.table .action-sheet .cancel{min-height:44px}.table .action-sheet.danger-play{border-color:#df5963;background:#fff0e7}.table .action-sheet.danger-play .action-effect{color:#922237;font-weight:800}.table .action-sheet.danger-play .primary{background:#9f283c}@media(max-width:600px){.table .card,.table .play-area:has(#turn-action) .card{width:calc(50vw - 26px);min-height:252px;padding:9px}.table .card-top{min-height:48px}.table .card-value{font-size:2.15rem}.table .card-symbol{flex-basis:29px;width:29px;min-height:29px;font-size:1rem}.table .card-copy{gap:7px;padding:8px 0}.table .card-name{font-size:clamp(1.05rem,4.4vw,1.25rem)}.table .card-text{font-size:clamp(.73rem,3.1vw,.84rem)}.table .card-meta{font-size:.61rem}.table .card-count{font-size:.53rem}}.table .round-awards{border-color:#d29355;background:#3b1c25;color:#fff4e3}.table .round-awards h3{color:#ffc066}.table .round-awards ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}.table .round-awards li{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0;padding:9px 11px;border-radius:8px;background:#ffffff12;color:#fff4e3}.table .round-awards li b,.table .round-awards li small,.table .round-awards li strong{display:block}.table .round-awards li b{font-size:.85rem}.table .round-awards li small{margin-top:2px;color:#e8c7b7;font-size:.65rem}.table .round-awards li strong{flex:0 0 auto;color:#ffbd58;font-size:1.05rem;text-align:right}.table .round-awards li strong small{color:#e9d4c7;font-size:.59rem;font-weight:500}.table .turn-guide{display:flex;align-items:center;gap:7px;margin-top:6px;border-top:1px solid #ffffff38}.table .turn-guide>span{color:#ffd083;font-size:.9rem}.table .turn-guide small{flex:1;margin:0;color:#efd8cb;font-size:.67rem;font-weight:500;letter-spacing:0;line-height:1.35}.table .turn-guide button{flex:0 0 44px;min-height:44px;border:0;background:transparent;color:#fff2db;font-size:1.35rem}.table .action-sheet [data-target]{min-height:60px}.table .action-sheet .target-copy{min-width:0;flex:1}.table .action-sheet .target-copy small{white-space:normal;line-height:1.3}.table .action-sheet [data-target] small{color:#846c62}.table .guess-grid button{display:flex;align-items:center;gap:8px;min-height:62px;padding:10px;font-size:.75rem;text-align:left}.table .guess-grid button b{display:grid;place-items:center;flex:0 0 29px;height:29px;margin:0;border-radius:6px;background:#ac3044;color:#fff;font-size:.95rem}.table .action-sheet .cancel{min-height:44px!important}.table .visibility-note{display:flex;align-items:center;gap:6px;color:#745e58;font-size:.65rem}.table .visibility-note span{color:#a92c40;font-size:.9rem}.table .reactions summary{justify-content:flex-start;gap:8px}.table .reactions summary span:last-child{margin-left:auto}.table .reactions nav button{display:grid;place-items:center;gap:2px;min-height:64px}.table .reactions nav button span{font-size:1.25rem}.table .reactions nav button small{font-size:.65rem;font-weight:800}.table .round-timeline{margin:0 0 14px;color:#6e4e46}.table .round-timeline summary{display:flex;align-items:center;gap:8px;min-height:48px;cursor:pointer;font-size:.75rem;font-weight:800;list-style:none}.table .round-timeline summary::-webkit-details-marker{display:none}.table .round-timeline summary span{color:#a83243;font-size:1.1rem}.table .round-timeline ol{margin:0 0 8px;padding-left:22px}.table .round-timeline li{margin:5px 0;font-size:.7rem}.table .result-controls{display:grid;gap:8px}.table .result-controls button,.table .replay-button{min-height:56px;width:100%}.table .result-wait{margin:0;padding:10px;color:#755c55;font-size:.72rem;text-align:center}.table .own-receipt{padding:6px 8px;border:0;border-left:3px solid #ffb94d;border-radius:0;background:transparent}.table .review-state{position:absolute;top:9px;right:8px;z-index:3;padding:4px 6px;border-radius:6px;background:#8d694f;color:#fff;font-size:.56rem;font-weight:900;letter-spacing:.06em}.table .review-cards .card.selected{border-color:#74d8c5;box-shadow:0 0 0 3px #147a70,0 0 0 6px #8cf0d2,0 15px 27px #0009}.table .review-cards .card.selected .review-state{background:#147a70}.table .review-cards .card.returning{border-color:#c99880;background:#f3e6d1}.table .review-cards .card.returning .review-state{background:#a33849}.table .review-cards .card:disabled{opacity:1;filter:none}.table .review-cards .card{height:auto;min-height:268px}@media(max-width:600px){.table .review-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-items:stretch}.table .review-cards .card{width:100%;min-height:245px}.table .review-cards .card:last-child:nth-child(odd){grid-column:1 / -1;width:calc(50% - 5px);justify-self:center}}@media(max-width:370px){.table .turn-banner{flex-wrap:wrap}.table .turn-next{display:block;flex:0 0 100%;max-width:none;padding-left:21px}.table .turn-next b{display:inline}}.table-section-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:5px 14px;line-height:1.35}.table-section-heading span{display:inline-flex;flex-wrap:wrap;align-items:baseline;gap:7px}.table-section-heading b{margin:0}.table-section-heading small{display:block}.table-header .sound-toggle{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid #a27b5e;border-radius:50%;background:#2c2024;color:#f9d593;font-size:1.25rem}.table-header .sound-toggle[aria-pressed=false]{color:#b1a19b;border-color:#645356}.table-header .sound-toggle[aria-pressed=false]:after{content:"";position:absolute;width:24px;height:2px;background:#f0808c;transform:rotate(-42deg)}.table-header .sound-toggle{position:relative}.table-header .sound-toggle:active{transform:scale(.93)}.table .turn-banner.turn-call{animation:personal-turn-arrive 1.4s ease-out both}.table .turn-alert{display:inline-flex;align-items:center;gap:5px;margin-top:7px;padding:5px 9px;border:1px solid #ffe0a0;border-radius:999px;background:#ffcb68;color:#58222c;font-size:.68rem;font-weight:900;letter-spacing:.08em;animation:turn-alert-fade 2.4s ease-out both}@keyframes personal-turn-arrive{0%,35%{box-shadow:0 0 #ffd16f9a,0 8px 17px #07161b63}65%{box-shadow:0 0 0 10px #ffd16f45,0 8px 17px #07161b63}to{box-shadow:0 0 #ffd16f00,0 8px 17px #07161b63}}@keyframes turn-alert-fade{0%,70%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.table .turn-notice{display:flex;align-items:center;gap:12px;margin:0;padding:11px 14px;border:1px solid #78c8bd;border-left:4px solid #64d1bf;border-radius:11px;background:linear-gradient(110deg,#123d3d,#102b32);color:#f0f8ea;box-shadow:0 7px 20px #0005}.table .notice-mark{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:10px;background:#a8e7d8;color:#17383c;font-size:1.3rem}.table .notice-copy{display:grid;gap:3px;min-width:0}.table .notice-copy small{color:#aee4d1;font-size:.6rem;font-weight:900;letter-spacing:.13em}.table .notice-copy strong{color:#fff8e7;font-size:clamp(.9rem,1.4vw,1.08rem);line-height:1.25;overflow-wrap:anywhere}.table .notice-copy em{color:#abd7c9;font-size:.8em;font-style:normal;font-weight:600}.table .notice-copy strong span{color:#ffcf77}.table .own-receipt{padding:10px 12px;border:1px solid #9b684e;border-left:4px solid #ffb94d;border-radius:10px;background:#2e1e22}.table .featured-play{height:174px;background:linear-gradient(145deg,#fff8e8,#f0d7ad)}.table .featured-play:after{content:"";position:absolute;inset:5px;border:1px solid #d9ae6e;border-radius:5px;pointer-events:none}.table .featured-play>strong{z-index:2;display:grid;place-items:center;width:40px;height:40px;font:900 1.5rem Inter,system-ui,sans-serif}.table .featured-symbol{position:absolute;top:31px;right:13px;color:#a34454;font-size:2.25rem;font-style:normal;line-height:1;opacity:.75}.table .featured-play>span:last-child{inset:auto 10px 13px}.table .featured-play>span b{display:block;color:#802130;font-size:1.12rem;line-height:1.05;overflow-wrap:anywhere}.table .featured-play>span small{display:block;margin-top:6px;color:#50393a;font-size:.66rem;font-weight:600;line-height:1.2}.table .case-feed summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;font-size:.86rem}.table .case-feed summary span{float:none}.table .case-feed ol{display:grid;gap:8px;margin:12px 0 3px;padding:0;list-style:none}.table .case-feed li{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:10px;min-width:0;margin:0;padding:10px;border:1px solid #d5b98c;border-radius:9px;background:#f4e6cf;color:#412b30;font-size:.76rem;line-height:1.3}.table .case-feed .play-value{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;background:#a32d43;color:#fff7e9;font-size:1.15rem;font-weight:900}.table .case-feed li>span:last-child{min-width:0}.table .case-feed li b,.table .case-feed li small{display:block;overflow-wrap:anywhere}.table .case-feed li b{font-size:.78rem;line-height:1.25}.table .case-feed li small{margin-top:4px;color:#665250;font-size:.7rem;line-height:1.35}@media(max-width:600px){.table .featured-play{height:128px}.table .featured-play>strong{width:28px;height:28px;font-size:1rem}.table .featured-symbol{top:24px;right:9px;font-size:1.5rem}.table .featured-play>span b{font-size:.86rem}.table .featured-play>span small{font-size:.55rem}}@media(prefers-reduced-motion:reduce){.table .turn-banner.turn-call,.table .turn-alert{animation:none!important}}.table .round-summary{display:grid;gap:16px;padding:clamp(18px,3vw,30px);text-align:left}.table .result-heading{display:flex;align-items:center;gap:20px;min-width:0}.table .result-heading .seal-stamp{flex:0 0 78px;width:78px;height:78px;margin:0;border-width:4px}.table .result-heading .seal-stamp b{font-size:1.05rem}.table .result-heading .seal-stamp span{font-size:.4rem}.table .result-heading>div:last-child{min-width:0}.table .result-heading .eyebrow{margin:0 0 4px}.table .result-heading h2{margin:0;font-size:clamp(1.8rem,4vw,3.25rem);line-height:1;overflow-wrap:anywhere}.table .result-details{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:14px}.table .result-details>section{min-width:0;margin:0;padding:16px;border:1px solid #ddc6a3;border-radius:12px;text-align:left}.table .result-details h3{margin:0 0 10px;color:#8d6d47;font-size:.68rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.table .round-awards{background:#3b1c25}.table .round-awards li{min-height:62px;background:#ffffff16}.table .round-awards li b{font-size:.94rem;overflow-wrap:anywhere}.table .round-awards li small{font-size:.71rem}.table .award-score{display:grid;justify-items:end;gap:3px;flex:0 0 auto}.table .award-score strong{font-size:1.4rem;line-height:1}.table .award-progress{display:flex;gap:4px;color:#826d70;font-size:.8rem}.table .award-progress .earned{color:#ffc061}.table .round-reason{background:#fff8ec}.table .round-reason>p{margin:0 0 12px;font-size:.78rem;line-height:1.4}.table .round-reason ul{display:flex;flex-wrap:wrap;gap:8px}.table .round-reason li{flex:1 1 145px;min-width:0;margin:0;padding:8px;border:1px solid #e2cba6;border-radius:9px;background:#f8ebd7}.table .round-reason li span:last-child{min-width:0}.table .round-reason li span:last-child b{font-size:.76rem;overflow-wrap:anywhere}.table .round-reason li span:last-child small{font-size:.64rem}.table .result-footer{display:flex;align-items:start;gap:12px}.table .result-footer>.replay-button,.table .result-footer>.result-controls{flex:0 1 280px}.table .result-footer>.round-timeline{flex:1;min-width:0}.table .result-footer .replay-button{min-height:52px}.table .round-timeline{margin:0;border:1px solid #d5ba92;border-radius:10px;background:#f9ebd3}.table .round-timeline summary{gap:9px;min-height:52px;padding:0 13px;color:#70463e;font-size:.78rem}.table .round-timeline summary small{margin-left:auto;color:#846a5c;font-size:.65rem}.table .round-timeline .timeline-chevron{font-size:1rem;transition:transform .2s ease}.table .round-timeline[open] .timeline-chevron{transform:rotate(180deg)}.table .round-timeline ol{display:grid;gap:7px;margin:0;padding:0 12px 12px;list-style:none}.table .round-timeline li{display:grid;grid-template-columns:25px minmax(0,1fr);align-items:start;gap:9px;margin:0;padding:8px;border-radius:8px;background:#fff8ec;color:#493a37;font-size:.72rem;line-height:1.35;overflow-wrap:anywhere}.table .round-timeline .timeline-number{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#9f2d42;color:#fff;font-weight:900}.table .result-side{display:grid;align-content:start;gap:12px;min-width:0}@media(min-width:1000px){.table:has(>.round-summary)>.game-felt{grid-column:1;grid-row:3}.table:has(>.round-summary)>.result-side{grid-column:2;grid-row:3}}@media(max-width:700px){.table .result-heading{gap:12px}.table .result-heading .seal-stamp{flex-basis:60px;width:60px;height:60px;border-width:3px}.table .result-heading .seal-stamp b{font-size:.85rem}.table .result-details{grid-template-columns:1fr}.table .result-footer{flex-direction:column}.table .result-footer>.replay-button,.table .result-footer>.result-controls,.table .result-footer>.round-timeline{flex:none;width:100%}}.rules-button,.nav-button{min-width:44px;min-height:44px;font-size:.73rem}.lobby .room-code .text-button{min-height:44px;padding:10px 12px}.lobby .remove-bot{flex:0 0 44px;width:44px;height:44px;font-size:1.35rem}.lobby .player-row{gap:8px}.lobby .player-row strong{flex:1}.landing .room-identity small,.landing .room-seats small,.landing .empty-rooms small{font-size:.72rem;line-height:1.3}.landing .room-seats b,.landing .room-join{font-size:.76rem}.lobby .player-row small{font-size:.64rem}.lobby .lobby-actions small{font-size:.7rem}.lobby .presence{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto;margin-left:auto;color:#245e4a;font-size:.68rem;font-weight:800}.lobby .presence i{width:8px;height:8px;border-radius:50%;background:#2c9b70}.lobby .presence.offline{color:#805b5d}.lobby .presence.offline i{background:#a78585}.rules-sheet header button{flex:0 0 48px;width:48px;height:48px}.rules-sheet .rule-steps small,.rules-sheet .rule-section>p{font-size:.8rem;line-height:1.45}.rules-sheet .rule-disclosure{margin-top:12px;border:1px solid #d9bd91;border-radius:11px;background:#fff8e9}.rules-sheet .rule-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:11px 14px;color:#7e2038;cursor:pointer;font-weight:800;list-style:none}.rules-sheet .rule-disclosure>summary::-webkit-details-marker{display:none}.rules-sheet .rule-disclosure>summary:after{content:"⌄";color:#9b633e;font-size:1.1rem;transition:transform .2s ease}.rules-sheet .rule-disclosure[open]>summary:after{transform:rotate(180deg)}.rules-sheet .rule-disclosure>summary small{margin-left:auto;color:#7f6b60;font-size:.7rem;font-weight:600}.rules-sheet .rule-disclosure .card-reference{margin:0 10px 10px}.rules-sheet .card-reference p{font-size:.74rem}.rules-sheet .rule-details{margin:0 16px 14px;padding-left:20px;color:#5d4b45;font-size:.78rem;line-height:1.45}.rules-sheet .rule-details li{margin:7px 0}.table .discard-chip{flex:0 0 44px;width:44px;height:56px;padding:0;cursor:pointer}.table .discard-chip i{top:2px;left:5px;font-size:1.1rem}.table .discard-chip small{inset:auto 2px 3px;font-size:.52rem}.table .discard-chip[aria-pressed=true]{border-color:#ffe29d;box-shadow:0 0 0 3px #f9bf5b,0 4px 10px #0008}.table .discard-chip:active{transform:scale(.94)}.table .discard-lane>div{min-height:58px;gap:5px}.table .discard-lane>b{font-size:.68rem}.table .card-inspector{display:grid;grid-template-columns:42px minmax(0,1fr) 44px;align-items:center;gap:11px;margin-top:9px;padding:10px;border:1px solid #e4b979;border-radius:10px;background:#fff5df;color:#3e2930}.table .card-inspector .inspect-value{display:grid;place-items:center;width:42px;height:42px;border-radius:9px;background:#a92641;color:#fff;font-size:1.4rem;font-weight:900}.table .card-inspector span:nth-child(2){min-width:0}.table .card-inspector b,.table .card-inspector small{display:block}.table .card-inspector b{color:#83243a;font-size:.96rem}.table .card-inspector small{margin-top:3px;color:#4c3b38;font-size:.78rem;line-height:1.3}.table .card-inspector button{width:44px;height:44px;padding:0;border:1px solid #d6b786;border-radius:8px;background:#fff9ed;color:#85233c;font-size:1.35rem}.table .card-inspector:focus-visible{outline:3px solid #63dbd1;outline-offset:3px}.table .action-sheet .action-help,.table .action-sheet .action-effect,.table .action-sheet .target-copy small{font-size:.78rem!important}.table .case-feed li small{font-size:.76rem}@media(max-width:620px){.table .featured-play>span small{font-size:.64rem}.table .discard-heading small{font-size:.67rem}.table .card-inspector{grid-template-columns:38px minmax(0,1fr) 44px;gap:8px}.table .card-inspector .inspect-value{width:38px;height:38px}.lobby .presence{font-size:.62rem}}@media(prefers-reduced-motion:reduce){.rules-sheet .rule-disclosure>summary:after,.table .discard-chip{transition:none}}.connection-notice{margin:12px auto;padding:14px 16px;max-width:720px;border:1px solid #f3ba65;border-radius:12px;background:#302119;color:#fff4df}.connection-notice b{display:block;color:#ffd48d}.connection-notice p{margin:5px 0 10px;line-height:1.45}.connection-notice div{display:flex;flex-wrap:wrap;gap:8px}.connection-notice button{min-height:44px}.decision-zone[inert]{opacity:.65}body.offline-solo .reactions{display:none}.seal-token{display:inline-block;width:1.15em;height:1.15em;object-fit:contain;vertical-align:-.19em;flex:none}.seal-token.unearned{filter:grayscale(1);opacity:.28}.seat-score{display:inline-flex;align-items:center;gap:3px}.seat-score .seal-token{width:17px;height:17px}.unified-card-face{display:flex;flex-direction:column;position:relative;isolation:isolate;overflow:hidden;width:100%;height:100%;min-height:0;border:1px solid #e2b979;border-radius:8px;background:#fff2d9;color:#35252a;text-align:left;box-shadow:inset 0 0 0 3px #fff9e9}.unified-card-head{display:flex;align-items:center;justify-content:space-between;flex:none;min-height:24%;padding:7px 10px;background:#fff6e4;color:#a32941}.unified-card-head b{font:900 clamp(1.25rem,2.6vw,2.15rem)/1 Inter,system-ui,sans-serif}.unified-card-head i{font:900 1.1rem/1 Inter,system-ui,sans-serif;font-style:normal}.unified-card-art{display:block;flex:1;min-height:22%;background-image:url(/detective-card-atlas-v2.png);background-size:500% 200%;border-block:1px solid #d9b587}.unified-card-copy{display:flex;flex-direction:column;gap:5px;flex:none;min-height:34%;padding:9px 10px 11px;background:linear-gradient(#fff8e8,#f4ddb8)}.unified-card-copy b{font:850 clamp(.85rem,1.5vw,1.15rem)/1.08 Inter,system-ui,sans-serif;color:#8f2138;overflow-wrap:anywhere}.unified-card-copy small{font:600 clamp(.64rem,1vw,.78rem)/1.28 Inter,system-ui,sans-serif;color:#402e30;overflow-wrap:anywhere}.table .card:before{display:none}.table .card,.table .play-area:has(#turn-action) .card{aspect-ratio:.73;padding:6px;min-height:0}.table .card>.unified-card-face{flex:1}.table .card-foot{display:flex;align-items:center;justify-content:space-between;gap:6px;min-height:26px;padding:4px 3px 0}.table .card-meta,.table .card-count{position:static;width:auto;height:auto;border:0;border-radius:5px;font-size:.57rem;line-height:1.15}.table .card-count{padding:4px 5px;color:#fff}.table .featured-play{padding:4px;background:#fff0cf}.table .featured-play:after{display:none}.table .featured-play>.unified-card-face{inset:auto;position:relative}.table .featured-play .unified-card-head{padding:4px 6px}.table .featured-play .unified-card-head b{font-size:1.35rem}.table .featured-play .unified-card-copy{padding:5px 6px;min-height:40%}.table .featured-play .unified-card-copy b{font-size:.83rem}.table .featured-play .unified-card-copy small{font-size:.55rem}.table .discard-chip{flex:0 0 50px;width:50px;height:70px;padding:2px;background:#d5aa67;overflow:hidden}.table .discard-chip .unified-card-head{padding:2px 3px;min-height:24%}.table .discard-chip .unified-card-head b{font-size:.75rem}.table .discard-chip .unified-card-head i{font-size:.5rem}.table .discard-chip .unified-card-copy{gap:1px;min-height:37%;padding:2px 3px}.table .discard-chip .unified-card-copy b{font-size:.49rem;line-height:1}.table .discard-chip .unified-card-copy small{font-size:.34rem;line-height:1.05;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.table .discard-chip .unified-card-art{min-height:25%}.table .discard-lane>div{min-height:73px}.table .card-inspector{grid-template-columns:minmax(0,110px) 44px;justify-content:space-between}.table .card-inspector .unified-card-face{height:145px}.table .card-inspector .unified-card-head b{font-size:1.25rem}.table .card-inspector .unified-card-copy b{font-size:.75rem}.table .card-inspector .unified-card-copy small{font-size:.56rem}.rules-sheet .card-reference{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:9px;border:0;background:#f0dcc0}.rules-sheet .card-reference li{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;min-width:0;margin:0;padding:5px;border:1px solid #dbb980;border-radius:9px;background:#fff8e9}.rules-sheet .card-reference .unified-card-face{height:164px}.rules-sheet .unified-card-head{padding:3px 6px;min-height:23%}.rules-sheet .unified-card-head b{font-size:1.25rem}.rules-sheet .unified-card-copy{gap:2px;min-height:39%;padding:5px 6px}.rules-sheet .unified-card-copy b{font-size:.73rem}.rules-sheet .unified-card-copy small{font-size:.55rem;line-height:1.15}.rules-sheet .rule-card-count{padding:1px 5px;color:#6e5046;font:800 .6rem Inter,system-ui,sans-serif}.rules-sheet .token-goals span{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;min-height:56px}.rules-sheet .token-goals .seal-token{width:28px;height:28px}.rules-sheet .token-goals b,.rules-sheet .token-goals strong{font-size:.8rem}.rules-sheet>header{position:sticky;top:0;z-index:2;background:#fff8e9}.rules-sheet .rule-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.rules-sheet .rule-steps article{align-items:flex-start;min-width:0}.rules-sheet .rule-steps small{font-size:.66rem}.rules-sheet .rule-disclosure>summary{position:sticky;top:0;background:#fff8e9}.round-reveal{position:relative;overflow:hidden;display:grid;gap:14px;padding:clamp(14px,2vw,24px);border:2px solid #e6b35d;border-radius:17px;background:radial-gradient(circle at 50% 0,#6c2331,#2b161e 70%);box-shadow:0 16px 35px #0007;color:#fff6e6}.round-reveal-head{position:relative;z-index:1}.round-reveal-head .eyebrow{margin:0;color:#ffc878}.round-reveal-head h2{margin:4px 0 6px;font:900 clamp(1.5rem,3vw,2.4rem)/1.05 Inter,system-ui,sans-serif;color:#fff2d8}.round-reveal-head p:last-child{margin:0;color:#e7d6cc;font-size:.78rem;line-height:1.4}.flip-seats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(116px,1fr));gap:10px;margin:0;padding:0;list-style:none}.flip-seat{display:grid;justify-items:center;align-content:start;gap:5px;min-width:0;padding:10px 6px;border:1px solid #ffffff4d;border-radius:10px;background:#170e159c}.flip-seat.flip-winner{border-color:#ffc66a;background:#6d2933}.flip-seat>b{color:#fff4e5;font-size:.77rem;text-align:center;overflow-wrap:anywhere}.flip-inner{position:relative;width:88px;height:123px;transform-style:preserve-3d;animation:flip-held-card .8s both;animation-delay:0ms}.flip-back,.flip-front{position:absolute;inset:0;backface-visibility:hidden;border:3px solid #d9a963;border-radius:8px;overflow:hidden}.flip-back{display:grid;place-items:center;background:repeating-linear-gradient(45deg,#7a1d32 0 9px,#a42e43 9px 18px)}.flip-seal{width:52px;height:52px}.flip-front{transform:rotateY(180deg);background:#fff2d9}.flip-front .unified-card-head{padding:3px 5px}.flip-front .unified-card-head b{font-size:1.1rem}.flip-front .unified-card-copy{min-height:43%;padding:4px 5px}.flip-front .unified-card-copy b{font-size:.65rem}.flip-front .unified-card-copy small{font-size:.46rem}.flip-award{display:inline-flex;align-items:center;gap:3px;color:#ffc971;font-size:.68rem;font-weight:900}.round-reveal-bottom{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}.seal-awards{min-width:0}.seal-awards h3{margin:0 0 6px;color:#ffcb7f;font-size:.65rem;letter-spacing:.12em;text-transform:uppercase}.seal-awards ul{display:grid;gap:5px;margin:0;padding:0;list-style:none}.seal-awards li{display:flex;align-items:center;gap:7px;padding:8px;border:1px solid #b76666;border-radius:8px;background:#ffffff14}.seal-awards li b{font-size:.72rem}.seal-awards li small{flex:1;color:#ead2c0;font-size:.64rem}.seal-awards li strong{color:#ffcf79;white-space:nowrap;font-size:.88rem}.round-reveal-bottom .round-timeline{grid-column:1/-1;background:#f6e5c9}.round-reveal-bottom .replay-button{min-height:48px;padding:10px 15px;white-space:nowrap}.round-reveal-bottom .result-wait{color:#e9d4c0}.round-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}.round-confetti i{position:absolute;top:-10px;left:0;width:7px;height:12px;background:#ffc45d;opacity:0;transform:rotate(25deg);animation:confetti-fall 2.5s ease-in both;animation-delay:0ms}.round-confetti i:nth-child(3n){background:#ff5b70}.round-confetti i:nth-child(4n){background:#87dbc7}.round-confetti i:nth-child(5n){border-radius:50%;width:9px;height:9px}@keyframes flip-held-card{0%{transform:rotateY(0)}to{transform:rotateY(180deg)}}@keyframes confetti-fall{0%{opacity:0;transform:translateY(-10px) rotate(0)}10%{opacity:1}to{opacity:0;transform:translateY(520px) rotate(650deg)}}.match-finale{min-height:100dvh;padding:14px clamp(12px,3vw,32px) 32px;color:#fff2dd}.match-finale>header{display:flex;align-items:center;justify-content:space-between;gap:10px;max-width:960px;margin:auto;padding-bottom:13px;border-bottom:1px solid #b68267}.match-finale .table-brand{font-size:1.2rem}.finale-stage{position:relative;isolation:isolate;overflow:hidden;display:grid;justify-items:center;gap:10px;max-width:760px;margin:clamp(18px,4vw,48px) auto 0;padding:clamp(22px,4vw,50px);border:2px solid #e5ad62;border-radius:24px;background:radial-gradient(circle at 50% 5%,#8b2d42,#31151f 64%,#1c1016);box-shadow:0 22px 55px #0008;text-align:center}.finale-stage>*:not(.round-confetti){position:relative;z-index:1}.finale-stage .eyebrow{margin:0;color:#ffd28b}.finale-seal{width:100px;height:100px;filter:drop-shadow(0 12px 14px #0008);animation:finale-pop .7s cubic-bezier(.2,1.4,.3,1) both}.finale-stage h1{margin:4px 0 0;color:#fff5df;font:900 clamp(2.5rem,8vw,5.5rem)/.98 Inter,system-ui,sans-serif;overflow-wrap:anywhere}.finale-subtitle{margin:0;color:#ffc97d;font-size:clamp(1rem,2vw,1.35rem);font-weight:800}.finale-score{display:flex;align-items:center;gap:8px;margin:7px 0;padding:9px 15px;border:1px solid #d69b5c;border-radius:999px;background:#170e15}.finale-score span{display:flex;align-items:center;gap:4px;font-size:1.4rem}.finale-score .seal-token{width:28px;height:28px}.finale-score b{color:#ffda9a;font-size:.8rem}.finale-reason{max-width:52ch;margin:0;color:#e7d0c7;font-size:.78rem;line-height:1.4}.finale-leaderboard{display:grid;gap:6px;width:100%;max-width:470px;margin:8px 0;padding:0;list-style:none}.finale-leaderboard li{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid #ffffff33;border-radius:9px;background:#170f16a8;text-align:left}.finale-leaderboard li.champion{border-color:#ffc56a;background:#6c2c37}.finale-leaderboard li b{flex:1;min-width:0;overflow-wrap:anywhere;font-size:.77rem}.finale-leaderboard li span{display:flex;gap:2px}.finale-leaderboard li strong{color:#ffd48b;font-size:.8rem}.finale-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;width:100%}.finale-actions button{min-width:160px;min-height:52px}.finale-actions p{color:#ecd2c2}@keyframes finale-pop{0%{opacity:0;transform:scale(.5) rotate(-20deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media(max-width:700px){.rules-backdrop{align-items:stretch;padding:0}.rules-sheet{width:100%;max-height:100dvh;height:100dvh;border:0;border-radius:0}.rules-sheet>header{padding-top:calc(12px + env(safe-area-inset-top))}.rules-body{padding:14px 14px calc(32px + env(safe-area-inset-bottom))}.rules-sheet .rule-steps{grid-template-columns:1fr}.rules-sheet .rule-steps article{min-height:54px}.rules-sheet .card-reference{grid-template-columns:repeat(2,minmax(0,1fr))}.round-reveal-bottom{grid-template-columns:1fr}.round-reveal-bottom .replay-button{width:100%}.match-finale>header .table-brand b{display:none}.finale-stage{padding:22px 15px}.finale-stage h1{font-size:clamp(2.2rem,11vw,4rem)}}@media(max-width:620px){.table{padding-inline:8px}.table-header{grid-template-columns:auto 1fr auto;gap:5px}.table-header .table-brand{grid-column:1;grid-row:1}.table-header .table-brand b{display:none}.table-header nav{grid-column:2;grid-row:1;justify-content:center}.table-header .deck-count{grid-column:3;grid-row:1;font-size:.48rem}.table-header nav .nav-button,.table-header nav .rules-button{padding-inline:6px}.table .cards{gap:7px}.table .card,.table .play-area:has(#turn-action) .card{width:calc(50% - 4px);max-width:210px;aspect-ratio:.69;padding:4px}.table .card .unified-card-head{padding:4px 6px}.table .card .unified-card-head b{font-size:clamp(1.2rem,7vw,1.8rem)}.table .card .unified-card-copy{gap:3px;padding:6px}.table .card .unified-card-copy b{font-size:clamp(.78rem,3.9vw,1.05rem)}.table .card .unified-card-copy small{font-size:clamp(.6rem,3vw,.74rem)}.table .card-meta{font-size:.51rem}.table .card-count{font-size:.48rem}.table .discard-chip{flex-basis:48px;width:48px;height:67px}.table .discard-lane>div{min-height:69px}.table .card-inspector{grid-template-columns:minmax(0,100px) 44px}.flip-seats{grid-template-columns:repeat(2,minmax(0,1fr))}.round-reveal-head h2{font-size:1.55rem}}@media(max-width:370px){.table .card .unified-card-copy small{font-size:.55rem}.table .card-meta{display:none}.table .card-foot{justify-content:flex-end}.match-finale .rules-button{min-width:44px}}@media(prefers-reduced-motion:reduce){.flip-inner,.round-confetti i,.finale-seal{animation:none!important}.flip-inner{transform:rotateY(180deg)}}.entry-meta{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 14px;margin:0;color:#e7d4b7;font-size:.7rem;font-weight:800;letter-spacing:.03em}.entry-meta span+span:before{content:"◆";margin-right:14px;color:#e8ba73;font-size:.42rem;vertical-align:middle}.entry-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.lan-panel .entry-choice{display:flex;align-items:center;gap:11px;min-height:73px;padding:12px;border:1px solid #d5b989;border-radius:11px;background:#fffaf0;color:#5a2e35;text-align:left}.lan-panel .entry-choice:hover,.lan-panel .entry-choice:focus-visible,.lan-panel .entry-choice.active{border-color:#ad2943;background:#fff1df}.entry-choice>span:first-child{display:grid;place-items:center;flex:0 0 37px;width:37px;height:37px;border-radius:10px;background:#f2dfbf;color:#8f263d;font-size:1.35rem}.entry-choice>span:nth-child(2){flex:1;min-width:0}.entry-choice b,.entry-choice small{display:block}.entry-choice b{font-size:.84rem}.entry-choice small{margin-top:3px;color:#725e55;font-size:.62rem;line-height:1.2}.entry-choice i{font-size:1.2rem;font-style:normal}.lan-panel #join-code-panel[hidden]{display:none}.lan-panel .code-join{padding:12px;border:1px solid #d7b989;border-radius:10px;background:#f6e5ca}.lan-panel .code-join button{min-width:104px}.nearby-heading{display:flex;justify-content:space-between;align-items:center;padding-top:2px;border-top:1px solid #e4d0af;color:#693c40;font-size:.78rem}.nearby-heading small{color:#766258;font-size:.65rem}.lobby .players{display:block}.lobby .lobby-seats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lobby .lobby-seats .player-row{min-width:0;min-height:74px;border:1px solid #dfc49c;border-radius:11px!important;padding:9px;background:#fffaf0}.lobby .lobby-seats .ready-seat{border-color:#90b29c}.lobby .lobby-seats .offline-seat{opacity:.7}.lobby .lobby-seats .empty-seat{border-style:dashed;background:#f5e8d3;color:#8c7768}.lobby .seat-number{align-self:flex-start;color:#967e6b;font-size:.62rem;font-weight:900}.lobby .empty-seat .avatar{background:#e9d9bf;color:#8b7866}.lobby .lobby-seats .player-row strong{font-size:.78rem}.lobby .lobby-seats .presence{margin-left:auto}.lobby .waiting-host{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:9px;border:1px solid #c49d69;border-radius:10px;background:#f6e8cc;color:#6a3940;font-weight:800}.lobby .waiting-host span{font-size:1.4rem}.rule-section .win-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.win-paths article{display:grid;grid-template-columns:28px 1fr;align-content:start;gap:2px 7px;padding:11px;border:1px solid #dfc8a2;border-radius:10px;background:#f9edda}.win-paths article span{grid-row:1/3;color:#a52a43;font-size:1.25rem}.win-paths b{color:#74283c;font-size:.82rem}.win-paths small{color:#645348;font-size:.7rem;line-height:1.35}.rules-sheet .rule-note{margin-top:12px;padding:10px 12px;border-left:3px solid #ad2943;border-radius:5px;background:#f6e8d3}.return-recap{display:flex;align-items:center;gap:12px;width:min(100%,760px);margin:12px auto;padding:11px 13px;border:1px solid #e6b66e;border-radius:11px;background:#fff0d4;color:#3d2528;box-shadow:0 8px 20px #07171a44}.return-recap>span{color:#a1253d;font-size:1.45rem}.return-recap div{flex:1}.return-recap b{font-size:.82rem}.return-recap p{margin:2px 0 0;font-size:.72rem;line-height:1.4}.return-recap button{flex:0 0 44px;width:44px;height:44px;border:1px solid #d4b68b;border-radius:50%;background:#fff9ec;color:#752d3e;font-size:1.2rem}.finale-stage .finale-actions{margin:8px 0 2px}.finale-stage .finale-actions .primary{min-width:210px}.finale-standings{width:100%;max-width:470px;margin-top:6px}.finale-standings h2{margin:0;text-align:left;color:#f6cf91;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.finale-standings .finale-leaderboard{margin-top:8px}@media(max-width:700px){.entry-choices{grid-template-columns:1fr}.lan-panel .entry-choice{min-height:62px}.lobby .lobby-seats{gap:6px}.lobby .lobby-seats .player-row{min-height:68px;padding:7px;flex-wrap:wrap}.lobby .lobby-seats .presence{flex-basis:100%;justify-content:flex-end;margin-left:0}.rule-section .win-paths{grid-template-columns:1fr}.finale-stage .finale-actions{flex-direction:column}.finale-stage .finale-actions button{width:100%}}@media(max-width:370px){.entry-meta{font-size:.6rem;gap:5px 8px}.entry-meta span+span:before{margin-right:8px}}@media(max-width:700px){main.table{display:flex;flex-direction:column;gap:10px}.table>.table-header{order:0}.table>.decision-zone{order:1}.table>.game-felt{order:2}.table>.result-side,.table>.reactions,.table>.case-feed{order:3}.table>.error{order:4}.rules-sheet .card-reference{grid-template-columns:1fr}.rules-sheet .card-reference li{grid-template-columns:minmax(0,1fr);padding:4px}.rules-sheet .card-reference .unified-card-face{display:grid;grid-template-columns:38px 78px minmax(0,1fr);height:92px}.rules-sheet .card-reference .unified-card-head{display:grid;place-items:center;align-content:center;gap:2px;min-height:0;padding:2px}.rules-sheet .card-reference .unified-card-head b{font-size:1.45rem}.rules-sheet .card-reference .unified-card-head i{font-size:.85rem}.rules-sheet .card-reference .unified-card-art{height:100%;min-height:0;border-block:0;border-inline:1px solid #d9b587}.rules-sheet .card-reference .unified-card-copy{justify-content:center;gap:4px;min-height:0;padding:5px 7px}.rules-sheet .card-reference .unified-card-copy b{font-size:.78rem}.rules-sheet .card-reference .unified-card-copy small{font-size:.68rem;line-height:1.2}.rules-sheet .rule-card-count{padding-left:7px;font-size:.59rem}.table .action-stage{grid-template-columns:118px minmax(0,1fr)}.table .featured-play{width:112px;height:154px}.table .featured-play .unified-card-copy small{font-size:.56rem}.table .card-inspector{grid-template-columns:125px minmax(0,1fr) 44px;align-items:center}.table .card-inspector .unified-card-face{height:165px}.table .card-inspector:before{content:"Card details";grid-column:2;grid-row:1;color:#6a4541;font-size:.7rem;font-weight:900;align-self:start}.table .card-inspector button{grid-column:3;grid-row:1}}@media(max-width:390px){.table .card-inspector{grid-template-columns:110px minmax(0,1fr) 44px}.table .card-inspector .unified-card-face{height:150px}.table .action-stage{grid-template-columns:100px minmax(0,1fr)}.table .featured-play{width:96px;height:138px}}.table .card-inspector{grid-template-columns:110px minmax(0,1fr) 44px}.table .card-inspector .inspector-description{display:grid;gap:5px;min-width:0}.table .card-inspector .inspector-description b{color:#822239;font-size:.9rem}.table .card-inspector .inspector-description small{color:#493538;font-size:.73rem;line-height:1.3}.table .card-inspector .unified-card-face{grid-column:1;grid-row:1}.table .card-inspector .inspector-description{grid-column:2;grid-row:1}.table .card-inspector button{grid-column:3;grid-row:1}@media(max-width:700px){.table .card-inspector:before{display:none}.table .card-inspector{grid-template-columns:105px minmax(0,1fr) 44px}}@media(max-width:390px){.table .card-inspector{grid-template-columns:90px minmax(0,1fr) 44px}.table .card-inspector .unified-card-face{height:138px}}.round-reveal:not(.animate) .flip-inner{animation:none;transform:rotateY(180deg)}.round-reveal:not(.animate) .round-confetti,.match-finale:not(.animate) .round-confetti{display:none}.match-finale:not(.animate) .finale-seal{animation:none}.collection-link{display:inline-flex;align-items:center;min-height:44px;color:#ffcf8d;font-size:.85rem;margin-top:12px}.home-collection{position:absolute;top:10px;left:22px;margin:0;font-size:.75rem}.landing-tools{display:flex;align-items:center;gap:6px}.settings-button{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:1px solid #cda269;border-radius:8px;background:#24151c;color:#ffdcaa}.ui-icon{width:24px;height:24px;flex-shrink:0;vertical-align:middle}.optional-name summary{min-height:44px;padding:12px 0;cursor:pointer;font-size:.85rem;color:#663943}.optional-name input{font-size:16px;min-height:48px}.connection-guide{padding:16px;border:1px solid #b78c61;border-radius:12px;background:#21151b;text-align:left;color:#fff1dd}.connection-guide>div{display:flex;gap:8px}.connection-guide button{flex:1;min-height:44px;border:1px solid #cda269;border-radius:8px;background:transparent;color:#fff1dd;padding:8px;font-size:.85rem}.connection-guide button[aria-pressed=true]{background:#ffd08c;color:#332028;font-weight:800}.connection-guide p{font-size:.85rem;line-height:1.5}.connection-guide summary{min-height:44px;padding:12px 0;cursor:pointer;font-size:.85rem}.connection-guide a{display:inline-flex;align-items:center;min-height:44px;color:#ffcf8d}.lobby-next{padding:14px 0}.lobby-next>#ready{min-height:48px;width:100%;margin:0}.lobby-next>#ready[aria-pressed=true]{width:auto;min-height:44px;padding:8px 12px;background:#e0eddd;color:#21513b}.lobby-next .lobby-actions{margin-top:10px}.lobby-next .lobby-actions small{font-size:.75rem}.lobby .room-code{display:block;text-align:center}.lobby .room-code #share{display:flex;align-items:center;justify-content:center;gap:8px;min-height:52px;width:100%;margin:12px 0}.room-code-fallback{font-size:.85rem}.room-code-fallback b{display:block;font:800 1.8rem Inter,sans-serif;letter-spacing:.16em;margin:8px;color:#87223a}.lobby .room-code label{display:block;text-transform:none;letter-spacing:0;text-align:left;font-size:.85rem}.lobby .room-code input{min-height:48px;font-size:16px}.connection-help{font-size:.85rem;line-height:1.5;color:#71544d}.lobby .presence{font-size:.72rem}.dialog-backdrop{grid-template-columns:minmax(0,1fr)}.preferences{min-width:0;max-width:100%;max-height:calc(100dvh - 40px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto}.preferences header{height:auto;display:flex;gap:12px;align-items:center;padding-bottom:14px}.preferences h2{font-size:clamp(1.5rem,6vw,2rem);line-height:1.1}.preferences header button{width:44px;min-width:44px;min-height:44px;border:1px solid #b78c61;border-radius:8px;background:#f5e6ca;color:#633040;font-size:1.4rem}.preferences label{display:flex;align-items:center;gap:12px;min-height:56px;letter-spacing:0;text-transform:none;font-size:.85rem;text-align:left}.preferences input{width:24px;height:24px;margin:0;accent-color:#ad243d;flex-shrink:0}.preferences p{line-height:1.5}.status-toast{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));transform:translate(-50%);width:min(calc(100% - 32px),440px);padding:14px 18px;border:1px solid #ffce8b;border-radius:10px;background:#28151d;color:#fff1dd;box-shadow:0 6px 25px #0007;font-size:.85rem;z-index:50;pointer-events:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #ffd59a;outline-offset:3px}input:focus-visible,.preferences button:focus-visible,.table .card:focus-visible,.table .action-sheet button:focus-visible{outline:3px solid #086d73;outline-offset:3px}.quiet-motion *,.quiet-motion *:before,.quiet-motion *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(max-width:400px){.home-collection{left:14px;font-size:.65rem}.landing-tools .rules-button{font-size:.6rem}.lobby .lobby-seats{grid-template-columns:minmax(0,1fr)}.lobby>header{gap:6px;flex-wrap:wrap;height:auto;min-height:60px}.lobby>header .brand{font-size:.85rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:600px){.table-header{grid-template-columns:minmax(0,1fr) auto;gap:8px}.table-header .table-brand{grid-column:1;grid-row:1;min-width:0}.table-header .table-brand b{display:block;font-size:1rem}.table-header .deck-count{grid-column:2;grid-row:1/3}.table-header nav{grid-column:1;grid-row:2;justify-content:flex-start;flex-wrap:wrap;min-width:0}.table-header #sound-toggle{display:none}}.landing{--home-coral:#ff6474;--home-gold:#ffd08c;gap:14px}.landing .home-hero{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:24px;padding:10px 0}.arcade-card-stage{position:relative;height:260px;isolation:isolate}.arcade-card-stage:before{content:"";position:absolute;inset:10% -4%;z-index:-1;border-radius:50%;background:radial-gradient(ellipse,#ff526b40,transparent 68%)}.hero-card{position:absolute;top:22px;left:50%;width:126px;height:185px;box-shadow:0 12px 24px #0006;border-radius:9px;transform:translate(-50%) rotate(var(--tilt));animation:attract-deal .7s ease-out both}.hero-card-left{--tilt:-19deg;margin-left:-65px;animation-delay:.08s}.hero-card-right{--tilt:19deg;margin-left:65px;animation-delay:.16s}.hero-card-center{--tilt:-3deg;top:10px;animation-delay:.24s}.hero-card .unified-card-head{padding:5px 8px}.hero-card .unified-card-copy{padding:7px}.hero-card .unified-card-copy b{font-size:.8rem}.hero-card .unified-card-copy small{display:none}.hero-wax{position:absolute;top:152px;left:50%;transform:translate(-50%) rotate(12deg);filter:drop-shadow(0 6px 9px #0007)}.hero-seal{width:72px;height:72px}.hero-ticket{position:absolute;bottom:4px;left:50%;transform:translate(-50%) rotate(-4deg);white-space:nowrap;padding:7px 13px;background:var(--home-gold);color:#422532;border-radius:3px;font:900 .65rem Inter,sans-serif;letter-spacing:.1em;box-shadow:3px 3px #a52b43}.hero-spark{position:absolute;color:var(--home-gold);font-size:32px;animation:attract-spark 1s ease-out both}.spark-one{top:12px;left:10px}.spark-two{right:9px;bottom:40px;animation-delay:.25s}.landing .home-hero h1{font-size:clamp(3.2rem,7vw,5.5rem)}.landing .home-hero h1 i{color:var(--home-coral)}.hero-invitation{font:800 1.25rem/1.15 Inter,sans-serif;margin:16px 0 10px;color:#fff1dd}.landing .home-hero .intro{font-size:.85rem;line-height:1.5;margin:0}.landing .entry-meta{margin:0;flex-wrap:wrap}.landing .lan-panel #create-room{background:#a82442;color:#fff7e9;border-color:#b42b49;box-shadow:0 4px #6c1730}.landing #create-room small{color:#ffe0cd}.landing #create-room>span:first-child{background:#ffffff20;color:#fff}.landing #create-room:active{transform:translateY(2px);box-shadow:0 2px #6c1730}.landing #create-room:disabled{opacity:.55;box-shadow:none}.landing #create-room:focus-visible{outline-color:#13747a}@keyframes attract-deal{0%{opacity:0;transform:translate(-50%,18px) rotate(0)}to{opacity:1;transform:translate(-50%) rotate(var(--tilt))}}@keyframes attract-spark{0%{opacity:0;transform:scale(.4) rotate(-30deg)}to{opacity:1;transform:scale(1) rotate(0)}}@media(max-width:600px){.landing .home-hero{grid-template-columns:1fr;gap:8px;text-align:center;padding:0}.arcade-card-stage{height:184px;width:280px;max-width:100%;margin:auto}.hero-card{width:91px;height:136px;top:16px}.hero-card-center{top:6px}.hero-card-left{margin-left:-48px}.hero-card-right{margin-left:48px}.hero-wax{top:104px}.hero-seal{width:54px;height:54px}.hero-ticket{font-size:.54rem;bottom:0}.hero-card .unified-card-copy b{font-size:.61rem}.hero-card .unified-card-head b{font-size:1.1rem}.hero-spark{font-size:25px}.hero-copy .eyebrow{font-size:.6rem}.landing .home-hero h1{font-size:3.8rem}.hero-invitation{font-size:1rem;margin:10px 0 7px}.hero-invitation br{display:none}.hero-invitation br:after{content:" "}.landing .home-hero .intro{font-size:.77rem}.landing .entry-meta{font-size:.6rem;gap:8px}.landing .lan-panel{margin-top:0}}@media(max-width:360px){.arcade-card-stage{height:164px}.hero-card{height:120px;width:82px}.hero-wax{top:90px}.landing .home-hero h1{font-size:3.3rem}}@media(prefers-reduced-motion:reduce){.hero-card,.hero-spark{animation:none}}.table-browser-actions{display:flex;gap:8px;justify-content:space-between;margin:12px 0 0}.table-browser-actions button{min-height:44px;padding:8px 12px;border:1px solid #bd9874;border-radius:9px;background:#fff5e2;color:#713346;font-weight:800;font-size:.8rem}.landing .table-browser-actions #create-room{background:#a82442;color:#fff7e9;box-shadow:none}.landing .table-browser-actions #create-room:disabled{opacity:.5}.arcade-table{position:relative;overflow:hidden;min-height:76px!important;gap:10px!important;animation:table-arrive .35s ease-out both}.table-mini{position:relative;display:grid;place-items:center;flex:0 0 48px;height:42px;border:2px solid #bb9763;border-radius:50%;background:radial-gradient(ellipse,#256c61,#153a36);box-shadow:0 4px #0d2928}.table-mini-seal{width:27px;height:27px;transform:rotate(-12deg)}.arcade-table .room-join{background:#a82442;color:#fff4e1;border-radius:8px;padding:10px;font-weight:800}.arcade-table .room-identity{min-width:0}.arcade-table .room-identity b{overflow-wrap:anywhere}.arcade-table:active{transform:scale(.98)}.arcade-table:disabled{opacity:.5}.empty-table-art{display:block;position:relative;width:92px;height:52px;margin:6px auto 12px;border:3px solid #bc9764;border-radius:50%;background:radial-gradient(ellipse,#31786a,#183d37);box-shadow:0 6px #143b36}.empty-table-seal{width:42px;height:42px;transform:rotate(-12deg)}.empty-table-art i{position:absolute;right:-15px;top:-10px;color:#a82442;font-size:28px}.table-scan:before{content:"";display:inline-block;width:7px;height:7px;margin-right:5px;background:#248268;border-radius:50%;animation:table-signal 2s ease-in-out 3}.game-invite{display:inline-flex;position:relative;align-items:center;justify-content:center;min-width:44px;height:44px;border:1px solid #cda269;border-radius:9px;background:#25151c;color:#ffcf8d;padding:4px}.invite-game-seal{width:28px;height:28px}.game-invite>span{position:absolute;right:2px;bottom:0;font-weight:900}.landing-tools{gap:4px}.night-recap{margin:24px 0;padding:18px;border:1px solid #cda269;border-radius:14px;background:#fff2d9;color:#502734;text-align:left}.night-recap h2{font-size:1.5rem}.night-recap ol{list-style:none;padding:0}.night-recap li{display:grid;grid-template-columns:26px 1fr;gap:5px;padding:12px 0;border-bottom:1px solid #d9bf98}.night-recap li>span{grid-row:span 2;color:#a82442;font-weight:900}.night-recap li small{grid-column:2}.night-recap>small{display:block;font-size:.75rem;line-height:1.5;margin-top:9px}.night-recap #save-night{min-height:44px}.night-archive{color:#ffd08c;background:transparent;border:1px solid #bc9764;border-radius:8px;padding:10px;min-height:44px;font-size:.8rem}@keyframes table-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes table-signal{50%{opacity:.3}}@media(max-width:400px){.landing-tools .rules-button{font-size:0}.landing-tools .rules-button span{font-size:.75rem}.arcade-table{flex-wrap:wrap}.arcade-table .room-identity{flex:1}.arcade-table .room-seats{margin-left:auto}.arcade-table .room-join{font-size:.7rem}.table-mini{flex-basis:38px;height:34px}}@media(prefers-reduced-motion:reduce){.arcade-table,.table-scan:before{animation:none}}.night-recap .eyebrow{color:#88412d}.landing .arcade-table{display:grid;grid-template-columns:48px minmax(0,1fr) 32px 54px;gap:8px!important}.landing .arcade-table .room-identity b{white-space:normal;overflow:visible;font:800 .9rem/1.2 Inter,sans-serif}.landing .arcade-table .room-identity small{font-size:.65rem}.landing .arcade-table .room-join{text-align:center;font-size:.75rem;padding:10px 5px}.arcade-table .room-join i{display:none}@media(max-width:400px){.landing .arcade-table{grid-template-columns:34px minmax(0,1fr) 26px 44px;padding:10px 8px;gap:6px!important}.landing .arcade-table .room-identity b{font-size:.78rem}.table-mini{width:34px}.table-mini-seal{width:23px;height:23px}}.readable-face{display:grid;grid-template-columns:28px minmax(0,1fr);align-content:start;align-items:center;gap:8px;min-width:0;padding:12px;border-radius:8px;background:#fff2d9;color:#492733;text-align:left;font-family:Inter,system-ui,sans-serif;line-height:1.3}.readable-face .face-rank{font-size:26px;line-height:1;color:#922440}.readable-face .face-name{font-size:15px;line-height:1.2;color:#81213a;overflow-wrap:normal}.readable-face .face-effect{grid-column:1/-1;font-size:13px;line-height:1.35;color:#422c30}.hero-card .readable-face{height:100%;padding:10px;grid-template-columns:1fr;align-content:center;gap:6px}.hero-card .face-effect{display:none}.hero-card .face-name{font-size:12px}.rules-sheet .card-reference li{display:block}.rules-sheet .readable-face{padding:10px}.rules-sheet .face-name{font-size:15px}.rules-sheet .face-effect{font-size:13px;margin:0;text-transform:none}body:has(.play-screen){overflow:hidden}main.table.play-screen{width:100%;max-width:1180px;height:100dvh;min-height:0;margin:0 auto;padding:max(6px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-rows:44px minmax(0,1fr) 44px;gap:8px;overflow:hidden}.table.play-screen>*{min-width:0}.table.play-screen>.table-header{grid-column:1/-1;grid-row:1;display:flex;gap:8px;align-items:center;height:44px;min-height:0;padding:0;margin:0;letter-spacing:0}.table.play-screen .table-brand{display:flex;align-items:center;gap:5px;flex:none}.table.play-screen .table-brand b{display:none}.table.play-screen .table-header .table-brand small{display:inline;font-size:10px;white-space:nowrap}.table.play-screen .mini-crest{width:26px;height:26px;margin:0}.table.play-screen .table-header nav{display:flex;align-items:center;justify-content:center;gap:2px;margin:0;flex-wrap:nowrap}.table.play-screen .table-header nav button{min-width:44px;min-height:44px;height:44px;padding:5px;margin:0;font:700 11px Inter,sans-serif;letter-spacing:0}.table.play-screen .table-header #share-game,.table.play-screen #sound-toggle,.table.play-screen .table-header .rules-button span{display:none}.table.play-screen .table-header .deck-count{display:flex;align-items:center;gap:5px;font-size:10px;white-space:nowrap}.table.play-screen .deck-count b{width:26px;height:30px;font:800 14px Inter,sans-serif;box-shadow:none}.table.play-screen>.collection-link{display:none}.table.play-screen>.game-felt{grid-column:1;grid-row:2;display:flex;flex-direction:column;gap:10px;min-height:0;padding:12px;margin:0;border:1px solid #9c674e;border-radius:16px;box-shadow:none;background:#24171c}.table.play-screen .game-felt:before{display:none}.table.play-screen .table-seats{flex:none;min-width:0}.table.play-screen .table-section-heading{margin:0 0 8px;padding:0;font-size:11px}.table.play-screen .table-section-heading small{display:none}.table.play-screen .opponents{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;padding:0;overflow:visible}.table.play-screen .opponent{display:flex;flex-direction:column;justify-content:space-between;gap:5px;min-width:0;min-height:0;max-width:none;padding:7px;margin:0;border:1px solid #80614f;border-radius:9px;background:#211b21;color:#fff0db;transform:none;box-shadow:none;animation:none}.table.play-screen .opponent.current-turn{border:1px solid #ffcd7e;background:#4a2830;box-shadow:inset 0 0 0 1px #ffcd7e}.table.play-screen .opponent.out{opacity:1;filter:none;background:#211b21;color:#c2afb2}.table.play-screen .seat-identity{width:100%;display:flex;align-items:center;gap:5px;min-width:0}.table.play-screen .player-badge{display:grid;place-items:center;width:24px;height:24px;flex:none;border:1px solid hsl(var(--seat-hue) 50% 65%);border-radius:50%;background:hsl(var(--seat-hue) 35% 26%);font-size:10px;font-weight:800;color:#fff4de}.table.play-screen .player-name{min-width:0;white-space:normal;overflow:visible;overflow-wrap:anywhere;font:700 12px/1.2 Inter,sans-serif;color:inherit;margin:0}.table.play-screen .seat-detail{width:100%;align-self:stretch;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:3px;font-size:10px;line-height:1.2}.table.play-screen .seat-detail strong{margin:0;font-size:9px;color:#e4b4b6}.table.play-screen .current-turn .seat-detail strong{color:#ffda91}.table.play-screen .seat-detail span{margin:0;padding:0;color:#e9d6b6;white-space:nowrap}.table.play-screen .board-center{display:flex;flex:1;flex-direction:column;justify-content:flex-start;gap:8px;min-height:0;min-width:0}.table.play-screen .action-stage{display:flex;flex:none;flex-direction:column;align-items:stretch;gap:8px;width:100%;min-height:0;padding:12px;margin:0;border:1px solid #85554e;border-radius:10px;box-shadow:none;background:#321e26;overflow:visible}.table.play-screen .action-stage .stage-origin{position:static;align-self:stretch;min-width:0;text-align:left}.table.play-screen .stage-origin small{display:block;font:700 10px/1.2 Inter,sans-serif;letter-spacing:.06em}.table.play-screen .stage-origin strong{display:block;margin-top:3px;font:700 13px/1.3 Inter,sans-serif;overflow-wrap:anywhere}.table.play-screen .featured-play{display:block;position:static;width:100%;height:auto;min-height:0;aspect-ratio:auto;margin:0;padding:0;border:0;border-radius:8px;transform:none;box-shadow:none;overflow:visible;animation:none}.table.play-screen .featured-play:after{display:none}.table.play-screen .featured-play .readable-face{padding:10px}.table.play-screen .action-stage.animate .featured-play{animation:none}.table.play-screen .action-resolution{display:block;position:static;margin:0;padding:0;border:0;font:500 13px/1.35 Inter,sans-serif;text-align:left;overflow-wrap:anywhere;color:#fff1dc}.table.play-screen .action-stage.waiting{align-items:center;padding:14px;min-height:0;gap:8px}.table.play-screen .empty-discard{width:28px;height:32px;margin:0;font-size:20px;transform:none}.table.play-screen .action-stage.waiting p{margin:0;font:600 14px/1.3 Inter,sans-serif;text-align:center}.table.play-screen .action-stage.waiting small{font:500 12px/1.3 Inter,sans-serif}.table.play-screen .elimination-receipt{display:grid;gap:4px;padding:10px;border:1px solid #db8895;border-radius:9px;background:#521e30;color:#fff1dc;overflow-wrap:anywhere}.table.play-screen .elimination-receipt b{font-size:14px;line-height:1.2}.table.play-screen .elimination-receipt span{font-size:12px;line-height:1.3}.table.play-screen .elimination-receipt small{font-size:11px;color:#ffcf87}.table.play-screen>.decision-zone{grid-column:2;grid-row:2;display:flex;flex-direction:column;justify-content:center;gap:10px;min-height:0;margin:0}.table.play-screen .turn-banner{flex:none;min-height:0;margin:0;padding:10px;border-radius:10px}.table.play-screen .turn-banner p{margin:0;font:700 15px/1.25 Inter,sans-serif;overflow-wrap:anywhere}.table.play-screen .turn-banner small{font:700 10px/1.2 Inter,sans-serif}.table.play-screen .turn-guide,.table.play-screen .turn-next,.table.play-screen .turn-alert,.table.play-screen .own-receipt{display:none}.table.play-screen .play-area,.table.play-screen .hand{display:block;min-width:0;min-height:0;margin:0;padding:0;border:0;box-shadow:none;background:none}.table.play-screen .hand-heading{display:flex;justify-content:space-between;align-items:center;gap:6px;margin:0 0 6px;padding:0}.table.play-screen .hand-heading p{margin:0;font-size:10px;letter-spacing:.04em}.table.play-screen .hand-heading span{font-size:10px}.table.play-screen .cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;align-items:stretch;width:100%;min-width:0;padding:0;margin:0}.table.play-screen .card.hand-card{all:unset;box-sizing:border-box;display:flex;position:relative;flex-direction:column;justify-content:space-between;gap:8px;width:100%;min-width:0;min-height:170px;margin:0;padding:10px;border:2px solid #bc9a70;border-radius:12px;background:#fff2d9;color:#422c30;cursor:default;touch-action:manipulation;text-align:left;overflow:visible}.table.play-screen .card.hand-card:before,.table.play-screen .card.hand-card:after{display:none}.table.play-screen .hand-card>.readable-face{flex:1;width:100%;height:auto;padding:0;gap:8px;border:0;background:none;pointer-events:none}.table.play-screen .hand-card .face-rank{font:900 28px/1 Inter,sans-serif}.table.play-screen .hand-card .face-name{font:800 15px/1.2 Inter,sans-serif;color:#81213a}.table.play-screen .hand-card .face-effect{font:500 13px/1.35 Inter,sans-serif}.table.play-screen .hand-card-label{display:block;position:static;padding:6px 0 0;margin:0;border-top:1px solid #c7a982;font:700 11px/1.2 Inter,sans-serif;color:#753545;pointer-events:none}.table.play-screen .card.hand-card.playable{cursor:pointer;border-color:#ffcf80;box-shadow:inset 0 0 0 1px #8e4b3b;animation:none}.table.play-screen .card.hand-card.selected{border-color:#127674;box-shadow:inset 0 0 0 2px #127674;transform:none}.table.play-screen .card.hand-card:disabled{opacity:1;background:#e1d5c2;border-color:#a69580}.table.play-screen .card.hand-card:disabled .readable-face{opacity:.85}.table.play-screen .card.hand-card:focus-visible{outline:3px solid #20a9a4;outline-offset:2px}.table.play-screen .cards:has(>button:only-child){grid-template-columns:minmax(0,260px);justify-content:center}.table.play-screen .turn-notice{flex:none;min-width:0;margin:0;padding:8px}.table.play-screen .turn-notice strong{font-size:13px;overflow-wrap:anywhere}.table.play-screen .turn-notice small{font-size:10px}.table.play-screen #play-choice[role=dialog]{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom));background:#100c12bf}.table.play-screen .action-sheet{display:flex;flex-direction:column;gap:8px;width:min(100%,460px);max-height:100%;min-width:0;margin:0;padding:16px;overflow:auto;border:1px solid #c49b70;border-radius:14px;background:#fff2d9;color:#492733}.table.play-screen .action-sheet h3,.table.play-screen .action-sheet p{margin:0;font:800 19px/1.2 Inter,sans-serif;text-align:left;overflow-wrap:anywhere}.table.play-screen .action-sheet .action-step{font:800 10px/1.2 Inter,sans-serif;text-align:left}.table.play-screen .action-sheet .action-help,.table.play-screen .action-sheet .action-effect{margin:0!important;font:500 13px/1.35 Inter,sans-serif!important;text-align:left}.table.play-screen .action-sheet>button:not(.primary){min-width:0;min-height:48px;padding:8px 10px;margin:0}.table.play-screen .action-sheet>button>.target-copy{flex:1;min-width:0;margin:0;font-size:14px}.table.play-screen .target-copy b{overflow-wrap:anywhere;font-size:14px}.table.play-screen .target-copy small{font-size:11px;line-height:1.25}.table.play-screen .action-sheet .target-avatar{width:28px;height:28px;flex:0 0 28px;font:800 12px Inter,sans-serif}.table.play-screen .action-sheet .cancel{flex:none;min-height:44px!important;padding:8px!important;font-size:13px;margin:0}.table.play-screen .action-sheet>.primary{flex:none;min-height:44px;width:100%;margin:0;padding:10px;font:800 14px/1.25 Inter,sans-serif;white-space:normal}.table.play-screen .action-sheet.target-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.table.play-screen .target-choices>:not([data-target]){grid-column:1/-1}.table.play-screen .target-choices>[data-target]{min-width:0;display:flex;gap:4px;align-items:center}.table.play-screen .target-choices .target-avatar,.table.play-screen .target-choices>button>span:last-child:not(.target-copy){display:none}.table.play-screen .guess-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%}.table.play-screen .guess-grid button{display:flex;align-items:center;gap:6px;min-width:0;min-height:48px;padding:8px;margin:0;font:700 12px/1.2 Inter,sans-serif;text-align:left;overflow-wrap:normal}.table.play-screen .guess-grid b{margin:0;font-size:19px;flex:none}.table.play-screen .visibility-note{font-size:12px;line-height:1.3}.table.play-screen #play-choice:not([role=dialog]){position:static;display:block;padding:6px 0 0;background:none}.table.play-screen [aria-label="Keep a card"]{display:block;padding:0;border:0;background:none;overflow:visible}.table.play-screen [aria-label="Keep a card"]>:not(#confirm-bottom){display:none}.table.play-screen [aria-label="Keep a card"] #confirm-bottom{margin:0}.table.play-screen.reviewing .cards{grid-template-columns:1fr;gap:6px}.table.play-screen.reviewing .hand-card{min-height:0;padding:9px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.table.play-screen.reviewing .hand-card .readable-face{grid-template-columns:24px minmax(0,1fr);gap:4px 8px}.table.play-screen.reviewing .hand-card .face-rank{grid-row:1/3;font-size:24px}.table.play-screen.reviewing .hand-card .face-effect{grid-column:2;font-size:12px}.table.play-screen.reviewing .hand-card-label{border:0;padding:0;max-width:65px;text-align:center;font-size:11px}.table.play-screen.reviewing .hand-card .face-name{font-size:14px}.table.play-screen>.reactions{grid-column:1;grid-row:3;margin:0;padding:0;border:0;box-shadow:inset 0 0 0 1px #80614f}.table.play-screen>.case-feed{grid-column:2;grid-row:3;margin:0;padding:0;border:0;box-shadow:inset 0 0 0 1px #80614f}.table.play-screen details>summary{display:flex;justify-content:space-between;align-items:center;gap:5px;min-width:0;min-height:44px;padding:8px 10px;font:700 12px/1.2 Inter,sans-serif}.table.play-screen .case-feed>summary{padding:8px;gap:4px;font-size:11px;white-space:nowrap}.table.play-screen .case-feed>summary:after{display:none}.table.play-screen .case-feed>summary span{font-size:10px;white-space:nowrap}.table.play-screen .case-feed[open],.table.play-screen .reactions[open]{position:fixed;inset:auto max(8px,env(safe-area-inset-right)) max(6px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));z-index:16;max-height:75dvh;overflow:auto;padding:8px;margin:0;border:1px solid #bd9c70;border-radius:12px;background:#24171f}.table.play-screen .case-feed>ol{margin:8px 0 0;padding:0}.table.play-screen .case-feed li{min-width:0}.table.play-screen .case-feed li b{font-size:13px;overflow-wrap:anywhere}.table.play-screen .case-feed li small{font-size:12px;line-height:1.3;overflow-wrap:anywhere}.table.play-screen .discard-board{display:none}.table.play-screen .case-feed[open] .discard-board{display:block;min-width:0;padding:8px 0;margin:0}.table.play-screen .discard-lanes{display:grid;grid-template-columns:1fr;gap:8px;overflow:visible}.table.play-screen .discard-lane{min-width:0;width:100%}.table.play-screen .discard-lane>div{display:flex;flex-wrap:wrap;gap:5px;min-height:0}.table.play-screen .discard-chip{flex:none;width:auto;height:auto;min-width:44px;min-height:44px;padding:0;border:1px solid #c49b70;border-radius:6px}.table.play-screen .discard-chip .readable-face{display:flex;align-items:center;gap:4px;padding:7px}.table.play-screen .discard-chip .face-rank{font-size:18px}.table.play-screen .discard-chip .face-name{font-size:11px}.table.play-screen .discard-chip .face-effect,.table.play-screen .discard-heading small{display:none}.table.play-screen .card-inspector{display:grid;grid-template-columns:minmax(0,1fr) 44px;padding:8px;gap:6px;margin:8px 0}.table.play-screen .card-inspector .readable-face{height:auto;grid-column:1}.table.play-screen .card-inspector .inspector-description{display:none}.table.play-screen .card-inspector button{grid-column:2;grid-row:1;width:44px;height:44px}.table.play-screen .return-recap,.table.play-screen>.connection-notice{position:absolute;top:52px;left:8px;right:8px;z-index:18;width:auto;max-height:50dvh;overflow:auto;margin:0}.table.play-screen>.error{position:absolute;bottom:52px;left:8px;right:8px;z-index:18;margin:0}.offline-solo .table.play-screen>.connection-notice{display:none}.table.play-screen.result-table>.game-felt{grid-column:1/-1}.table.play-screen.result-table .table-seats{display:none}.table.play-screen.result-table .board-center{justify-content:flex-start;overflow:auto}.table.play-screen .round-reveal{display:flex;flex:1;flex-direction:column;gap:10px;min-height:0;max-height:none;width:100%;max-width:740px;align-self:center;padding:12px;margin:0;overflow:visible}.table.play-screen .round-reveal-head{padding:0;margin:0}.table.play-screen .round-reveal-head h2{margin:4px 0;font:800 24px/1.15 Inter,sans-serif;overflow-wrap:anywhere}.table.play-screen .round-reveal-head p{margin:4px 0;font:500 13px/1.3 Inter,sans-serif}.table.play-screen .round-reveal-head .eyebrow{font-size:10px}.table.play-screen .round-controls{display:flex;gap:6px;flex-wrap:wrap}.table.play-screen .round-controls button{min-height:44px;flex:1;padding:10px;margin:0;font-size:14px}.table.play-screen .round-held-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;list-style:none;margin:0;padding:0}.table.play-screen .round-held-card{display:flex;flex-direction:column;gap:4px;min-width:0;margin:0;padding:8px;border:1px solid #88664e;border-radius:8px;background:#211820}.table.play-screen .round-held-card b{font:700 12px/1.2 Inter,sans-serif;color:#fff0d9;overflow-wrap:anywhere}.table.play-screen .round-held-card span{font:500 12px/1.2 Inter,sans-serif;color:#ffcf87}.table.play-screen .round-held-card strong{font-size:16px}.table.play-screen .round-winner{border-color:#ffcf87;background:#492333}.table.play-screen .round-reveal-bottom{display:block;padding:0;margin:0}.table.play-screen .seal-awards{display:block;margin:0;padding:0}.table.play-screen .seal-awards h3{margin:0 0 4px;font-size:11px}.table.play-screen .seal-awards ul{list-style:none;margin:0;padding:0}.table.play-screen .seal-awards li{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin:0;padding:4px;font-size:12px}.table.play-screen .seal-awards li small{font-size:11px}.table.play-screen .seal-awards li strong{margin-left:auto}.table.play-screen .seal-awards .seal-token{width:18px;height:18px}.table.play-screen>.result-side{grid-column:1/-1;grid-row:3;display:flex;gap:8px;min-width:0;margin:0;align-self:stretch}.table.play-screen .result-side>details{flex:1;min-width:0;margin:0;padding:0;border:0;box-shadow:inset 0 0 0 1px #80614f}@media(max-width:700px)and (orientation:portrait){main.table.play-screen{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:44px minmax(0,1fr) auto 44px;gap:6px}.table.play-screen>.game-felt{grid-column:1/-1;grid-row:2;padding:8px;gap:8px}.table.play-screen>.decision-zone{grid-column:1/-1;grid-row:3;gap:6px}.table.play-screen>.reactions,.table.play-screen>.case-feed{grid-row:4}.table.play-screen .card.hand-card{min-height:164px}main.table.play-screen.reviewing{grid-template-rows:44px minmax(0,1fr) 44px}.table.play-screen.reviewing>.game-felt{display:none}.table.play-screen.reviewing>.decision-zone{grid-row:2}.table.play-screen.reviewing>.reactions,.table.play-screen.reviewing>.case-feed{grid-row:3}.table.play-screen.reviewing .card.hand-card{min-height:0}.table.play-screen .featured-play .face-effect{display:none}.table.play-screen .action-stage{padding:9px;gap:6px}.table.play-screen .featured-play .readable-face{padding:8px}.table.play-screen .hand-heading span{display:none}.table.play-screen.result-table{grid-template-rows:44px minmax(0,1fr) 44px}.table.play-screen .round-reveal{padding:8px;gap:8px}.table.play-screen .round-reveal-head h2{font-size:20px}}@media(max-width:370px)and (orientation:portrait){.table.play-screen .table-brand .mini-crest{display:none}.table.play-screen .player-name{font-size:11px;line-height:1.1}.table.play-screen .long-name .player-badge{display:none}.table.play-screen .opponents{gap:4px}.table.play-screen .opponent{padding:5px;gap:4px}.table.play-screen .player-badge{width:20px;height:20px;font-size:9px}.table.play-screen .seat-detail{font-size:9px;gap:2px}.table.play-screen .seat-detail strong{font-size:8px}.table.play-screen .card.hand-card{min-height:150px;padding:8px}.table.play-screen .hand-card .readable-face{grid-template-columns:22px minmax(0,1fr);gap:6px}.table.play-screen .hand-card .face-rank{font-size:24px}.table.play-screen .hand-card .face-name{font-size:14px}.table.play-screen .hand-card .face-effect{font-size:12px}.table.play-screen .hand-card-label{font-size:10px}}@media(max-height:650px){.table.play-screen .table-section-heading,.table.play-screen .hand-heading{display:none}.table.play-screen .game-felt{padding:6px;gap:6px}.table.play-screen .turn-banner{padding:7px}.table.play-screen .turn-banner p{font-size:13px}.table.play-screen .turn-banner small,.table.play-screen .featured-play .face-effect{display:none}.table.play-screen .action-stage{padding:8px;gap:5px}.table.play-screen .action-resolution{font-size:12px}.table.play-screen .stage-origin small{display:none}.table.play-screen .stage-origin strong{font-size:12px;line-height:1.25;margin:0}.table.play-screen .elimination-receipt{padding:8px}.table.play-screen .elimination-receipt small{display:none}.table.play-screen .elimination-receipt b{font-size:13px}.table.play-screen .card.hand-card{min-height:140px}.table.play-screen.reviewing .card.hand-card{min-height:0}.table.play-screen .round-reveal-head h2{font-size:18px}.table.play-screen .round-held-card{padding:6px;gap:3px}.table.play-screen .round-held-card b,.table.play-screen .round-held-card span{font-size:11px}.table.play-screen .round-reveal{gap:6px;padding:6px}.table.play-screen .action-sheet{gap:6px;padding:12px}.table.play-screen .action-sheet h3{font-size:17px}.table.play-screen .action-sheet>[data-target]{min-height:44px;padding:6px 8px}}@media(orientation:landscape)and (max-height:500px){main.table.play-screen{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}.table.play-screen .opponent{padding:4px}.table.play-screen .player-badge{display:none}.table.play-screen .player-name{font-size:11px}.table.play-screen .seat-detail{font-size:9px}.table.play-screen .opponents{gap:4px}.table.play-screen .card.hand-card{min-height:155px;padding:8px}.table.play-screen .hand-card .face-name{font-size:14px}.table.play-screen .hand-card .face-effect{font-size:12px}.table.play-screen .cards{gap:6px}.table.play-screen.reviewing .hand-card{padding:5px;min-height:0}.table.play-screen.reviewing .hand-card-label{max-width:45px;font-size:10px}.table.play-screen.reviewing .hand-card .face-effect{font-size:11px}.table.play-screen .action-sheet{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-width:620px}.table.play-screen .action-sheet>:not([data-target]){grid-column:1/-1}.table.play-screen .guess-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.table.play-screen .guess-grid button{min-height:44px}.table.play-screen .action-help,.table.play-screen .action-step{display:none}}@media(prefers-reduced-motion:reduce){.table.play-screen *{animation:none!important;transition:none!important}}
