@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-space-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-lg:32rem;--container-5xl:64rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-semibold:600;--font-weight-bold:700;--tracking-normal:0em;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-bg-page:var(--bg-page);--color-border-soft:var(--border-soft);--color-accent:var(--accent);--color-danger:var(--danger);--color-text-okey:var(--text);--color-text-muted:var(--text-muted)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.ml-2{margin-left:calc(var(--spacing) * 2)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-full{width:100%}.max-w-5xl{max-width:var(--container-5xl)}.max-w-\[1360px\]{max-width:1360px}.max-w-lg{max-width:var(--container-lg)}.min-w-0{min-width:0}.flex-1{flex:1}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-border-soft{border-color:var(--color-border-soft)}.bg-bg-page{background-color:var(--color-bg-page)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-12{padding-block:calc(var(--spacing) * 12)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.text-accent{color:var(--color-accent)}.text-danger{color:var(--color-danger)}.text-text-muted{color:var(--color-text-muted)}.text-text-okey{color:var(--color-text-okey)}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (hover:hover){.group-hover\:text-accent:is(:where(.group):hover *){color:var(--color-accent)}}@media (min-width:48rem){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:items-end{align-items:flex-end}.md\:justify-between{justify-content:space-between}}@media (min-width:64rem){.lg\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.lg\:px-20{padding-inline:calc(var(--spacing) * 20)}}@media (min-width:80rem){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-\[1fr_360px\]{grid-template-columns:1fr 360px}}}@keyframes overlay-fade-in{0%{opacity:0}to{opacity:1}}@keyframes result-pop-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.85)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes tile-draw{0%{opacity:0;transform:translateY(-12px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes tile-discard{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.6)translate(40px,-40px)}}@keyframes pulse-active{0%,to{box-shadow:0 0 #f2ca5000}50%{box-shadow:0 0 0 8px #f2ca502e}}@keyframes chat-slide-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes chat-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes backdrop-fade{0%{opacity:0}to{opacity:1}}@keyframes shake-attention{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.result-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:60;background:#080603bd;animation:.22s ease-out overlay-fade-in;position:fixed;inset:0}.confetti{pointer-events:none;z-index:61;position:fixed;inset:0;overflow:hidden}.confetti-piece{height:10px;left:var(--x);opacity:.92;border-radius:2px;width:8px;animation:2.6s ease-in forwards confetti-fall;position:absolute;top:-14px}.confetti-piece-0{--x:8%;background:#f2ca50;animation-delay:0s}.confetti-piece-1{--x:18%;background:#27ae60;animation-delay:.15s}.confetti-piece-2{--x:28%;background:#0b67b2;animation-delay:50ms}.confetti-piece-3{--x:38%;background:#e63946;animation-delay:.25s}.confetti-piece-4{--x:48%;background:#f2ca50;animation-delay:.1s}.confetti-piece-5{--x:58%;background:#c5a028;animation-delay:.3s}.confetti-piece-6{--x:68%;background:#27ae60;animation-delay:.18s}.confetti-piece-7{--x:78%;background:#0b67b2;animation-delay:80ms}.confetti-piece-8{--x:88%;background:#e63946;animation-delay:.22s}.confetti-piece-9{--x:14%;background:#f2ca50;animation-delay:.32s}.confetti-piece-10{--x:54%;background:#27ae60;animation-delay:.12s}.confetti-piece-11{--x:74%;background:#c5a028;animation-delay:.28s}@keyframes confetti-fall{0%{opacity:0;transform:translateY(0)rotate(0)}12%{opacity:.92}to{opacity:0;transform:translateY(100vh)rotate(420deg)}}.result-card{width:100%;max-width:min(720px,100% - 32px);max-height:90vh;padding:24px;animation:.32s cubic-bezier(.16,1,.3,1) result-pop-in;position:absolute;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.app-toast{color:var(--text);z-index:80;background:#1f1812f5;border:1px solid #ffb4ab61;border-radius:10px;max-width:min(360px,100vw - 24px);padding:12px 14px;font-size:.86rem;font-weight:800;animation:.18s ease-out toast-slide-in;position:fixed;top:18px;right:18px;box-shadow:0 14px 36px #00000052}.result-card-compact{max-width:min(680px,100% - 32px);padding:22px}.result-header{border-bottom:1px solid var(--border-soft);text-align:center;margin-bottom:16px;padding-bottom:12px}.result-title{letter-spacing:.01em;gap:4px;margin:8px 0 0;font-size:1.4rem;font-weight:900;display:grid}.result-title small{color:var(--text-muted);font-size:.86rem;font-weight:700}.result-badge{letter-spacing:.06em;border-radius:999px;padding:5px 12px;font-size:.72rem;font-weight:900;display:inline-block}.result-badge.win{border:1px solid var(--accent);color:var(--accent);background:#f2ca502e}.result-badge.draw{color:#dbe1ff;background:#97b0ff29;border:1px solid #97b0ff57}.result-body{gap:12px;margin-bottom:16px;display:grid}.result-actions{border-top:1px solid var(--border-soft);flex-wrap:wrap;gap:8px;padding-top:12px;display:flex}.result-actions-pair{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.winner-rack{background:linear-gradient(#513629,#2a1b15);border:1px solid #110e0780;border-radius:18px;margin:16px 0;padding:14px;box-shadow:inset 0 2px 4px #ffffff0d}.winner-rack-row{background:#110e0794;border-bottom:2px solid #110e07;border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:5px;min-height:84px;padding:12px;display:flex}.tile-draw-anim{animation:.24s ease-out tile-draw}.turn-banner.active{animation:1.6s ease-in-out infinite pulse-active}.chat-backdrop{opacity:0;pointer-events:none;z-index:55;background:#08060366;transition:opacity .18s ease-out;position:fixed;inset:0}.chat-backdrop.visible{opacity:1;pointer-events:auto}.chat-panel{border:1px solid var(--border-soft);z-index:56;background:linear-gradient(#231f17f5,#16130bf5);flex-direction:column;width:340px;transition:transform .22s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-16px 0 40px #0000006b}.chat-panel.open{transform:translate(0)}.chat-header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.chat-header h3{margin:0;font-weight:900}.chat-messages{flex-direction:column;flex:1;gap:6px;padding:12px 16px;display:flex;overflow-y:auto}.chat-messages p{color:var(--text-muted);word-break:break-word;margin:0;font-size:.85rem;line-height:1.4}.chat-messages p.system{color:var(--accent);font-style:italic}.chat-messages p strong{color:var(--text)}.chat-empty{color:var(--text-muted);text-align:center;font-style:italic}.chat-form{border-top:1px solid var(--border-soft);grid-template-columns:1fr auto;gap:6px;padding:12px 16px;display:grid}.chat-form input{border:1px solid var(--border-soft);color:var(--text);background:#130e0a;border-radius:8px;min-height:38px;padding:0 10px}.chat-form button{background:var(--accent);color:#3c2f00;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:0 14px;font-weight:900;display:flex}.chat-quick{border-top:1px solid var(--border-soft);flex-wrap:wrap;gap:6px;padding:10px 16px;display:flex}.chat-quick-btn{color:var(--accent);cursor:pointer;background:#f2ca501a;border:1px solid #f2ca5033;border-radius:999px;padding:5px 10px;font-size:.75rem;font-weight:700;transition:background .14s}.chat-quick-btn:hover{background:#f2ca5033}.chat-msg{flex-wrap:wrap;align-items:baseline;gap:4px;display:flex}.chat-msg strong{align-items:center;gap:4px;display:inline-flex}.chat-mute-btn{color:var(--text-muted);cursor:pointer;opacity:.5;background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.chat-mute-btn:hover{opacity:1}.chat-toggle{border:1px solid var(--border-soft);color:var(--text);z-index:54;background:#110e07d1;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:.78rem;font-weight:900;display:inline-flex;position:fixed;bottom:26px;right:26px}.chat-toggle:hover{border-color:#f2ca507a}.chat-toggle.open{background:var(--accent);color:#3c2f00}.chat-toggle-icon{justify-content:center;align-items:center;width:18px;height:18px;line-height:1;display:inline-flex}.chat-toggle-icon .material-symbols-outlined.app-icon{color:var(--accent);flex:0 0 1em;justify-content:center;align-items:center;width:1em;height:1em;line-height:1;display:inline-flex;overflow:hidden}.css-icon{flex:none;width:18px;height:18px;display:inline-block;position:relative}.css-icon-chat{border:2px solid;border-radius:4px}.css-icon-chat:after{content:"";border-bottom:2px solid;border-left:2px solid;width:7px;height:6px;position:absolute;bottom:-5px;left:4px;transform:skew(-25deg)}.css-icon-close:before,.css-icon-close:after{content:"";background:currentColor;border-radius:999px;width:14px;height:2px;position:absolute;top:8px;left:2px}.css-icon-close:before{transform:rotate(45deg)}.css-icon-close:after{transform:rotate(-45deg)}.css-icon-volume{border-top:6px solid #0000;border-bottom:6px solid #0000;border-right:9px solid;width:0;height:0;margin-top:3px;margin-left:1px}.css-icon-volume:before{content:"";background:currentColor;width:5px;height:8px;position:absolute;top:-4px;left:-5px}.css-icon-volume:after{content:"";border:2px solid;border-color:currentColor currentColor #0000 #0000;border-radius:999px;width:12px;height:12px;position:absolute;top:-6px;left:6px;transform:rotate(45deg)}.css-icon-volume-off{border-top:6px solid #0000;border-bottom:6px solid #0000;border-right:9px solid;width:0;height:0;margin-top:3px;margin-left:1px}.css-icon-volume-off:before{content:"";background:currentColor;width:5px;height:8px;position:absolute;top:-4px;left:-5px}.css-icon-volume-off:after{content:"";background:currentColor;border-radius:999px;width:12px;height:2px;position:absolute;top:-1px;left:7px;transform:rotate(45deg)}.css-icon-palette{border:2px solid;border-radius:999px}.css-icon-palette:before{content:"";background:radial-gradient(circle at 3px 3px,currentColor 0 2px,#0000 2.5px),radial-gradient(circle at 10px 4px,currentColor 0 2px,#0000 2.5px),radial-gradient(circle at 7px 11px,currentColor 0 2px,#0000 2.5px);position:absolute;inset:2px}.css-icon-palette:after{content:"";background:#110e07f2;border-radius:999px;width:5px;height:5px;position:absolute;bottom:2px;right:2px}.css-icon-fullscreen:before,.css-icon-fullscreen:after,.css-icon-fullscreen-exit:before,.css-icon-fullscreen-exit:after{content:"";border-color:currentColor;width:7px;height:7px;position:absolute}.css-icon-fullscreen:before{border-top:2px solid;border-left:2px solid;top:1px;left:1px}.css-icon-fullscreen:after{border-bottom:2px solid;border-right:2px solid;bottom:1px;right:1px}.css-icon-fullscreen-exit:before{border-bottom:2px solid;border-right:2px solid;top:1px;left:1px}.css-icon-fullscreen-exit:after{border-top:2px solid;border-left:2px solid;bottom:1px;right:1px}.css-icon-sort{width:16px;height:16px}.css-icon-sort:before,.css-icon-sort:after{content:"";background:currentColor;border-radius:999px;width:12px;position:absolute;left:2px}.css-icon-sort:before{height:2px;top:3px;box-shadow:0 5px}.css-icon-sort:after{width:8px;height:2px;top:13px}.css-icon-discard{width:16px;height:16px}.css-icon-discard:before{content:"";border-top:2px solid;border-right:2px solid;width:9px;height:9px;position:absolute;top:2px;right:2px}.css-icon-discard:after{content:"";transform-origin:100%;background:currentColor;border-radius:999px;width:13px;height:2px;position:absolute;top:9px;left:2px;transform:rotate(-45deg)}@media (max-width:767px){.chat-toggle{bottom:16px;right:16px}.chat-toggle-label{display:none}.chat-panel{border-radius:16px 16px 0 0;width:100%;height:60vh;max-height:60vh;animation:none;top:auto;bottom:0;right:0;transform:translateY(100%);box-shadow:0 -16px 40px #0000006b}.chat-panel.open{animation:.24s cubic-bezier(.16,1,.3,1) chat-slide-up;transform:translateY(0)}}.reconnect-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:70;background:#08060399;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.reconnect-card{text-align:center;flex-direction:column;align-items:center;gap:14px;width:100%;max-width:420px;padding:20px;display:flex}.reconnect-title{margin:0;font-size:1.1rem;font-weight:900}.reconnect-text{color:var(--text-muted);margin:0;font-size:.9rem}.reconnect-dot{background:var(--danger);border-radius:999px;width:12px;height:12px;animation:1.2s ease-in-out infinite pulse-active;box-shadow:0 0 #b9413580}.modal-backdrop{z-index:70;background:#000000b3;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.room-modal{width:100%;max-width:440px;padding:18px}.modal-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.modal-header h2{margin:0;font-size:1.2rem;font-weight:900}.modal-header p{color:var(--text-muted);margin:4px 0 0;font-size:.86rem;line-height:1.45}.modal-fields{gap:12px;display:grid}.modal-submit{width:100%;margin-top:18px}.visibility-segment{border:1px solid var(--border-soft);background:#130e0ab8;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:5px;display:grid}.visibility-segment button{color:var(--text-muted);border-radius:8px;min-height:38px;font-weight:900}.visibility-segment button.active{background:var(--accent);color:#3c2f00}.game-action.secondary.active,.toggle-control.active{border-color:var(--accent);color:var(--accent)}.rack-slot.tile-spawning{animation:.24s ease-out tile-draw}.rack-slot.just-drawn{animation:.32s ease-out tile-draw}:root{--bg-page:#16130b;--bg-table:#1e140f;--bg-panel:#231f17;--bg-panel-soft:#38342b;--border-soft:#4d4635;--accent:#f2ca50;--accent-strong:#ffe088;--danger:#ffb4ab;--success:#27ae60;--text:#eae1d4;--text-muted:#d0c5af;--tile-bg:#f9f6f0;--tile-red:#e63946;--tile-blue:#0b67b2;--tile-black:#1a1a1b;--tile-yellow:#c5a028;--felt-1:#3a2a1f;--felt-2:#241710;--felt-edge:#5a3a24;--felt-glow:#28140880;--rack-1:#513629;--rack-2:#2a1b15;--rack-border:#110e0780;--rack-inner-bg:#1e140fd1;--rack-row-bg:#110e077a;--rack-row-border:#110e07;--rack-inner-border:#2a1f18e6;--rack-slot-empty:#ffffff06;--rack-slot-hover:#f2ca500b;--rack-slot-target:#f2ca5014;--rack-slot-outline:#f2ca502e;--rack-slot-target-outline:#f2ca5052}[data-table-theme=graphite]{--felt-1:#3a2a1f;--felt-2:#241710;--felt-edge:#5a3a24;--felt-glow:#28140880}[data-table-theme=green]{--felt-1:#13472e;--felt-2:#0b2f20;--felt-edge:#4d2716;--felt-glow:#00281473}[data-table-theme=blue]{--felt-1:#1b3a5b;--felt-2:#0e2238;--felt-edge:#1d3554;--felt-glow:#0a1e3c80}[data-table-theme=burgundy]{--felt-1:#3d1a1a;--felt-2:#240d0d;--felt-edge:#4a1f1f;--felt-glow:#3c0a0a80}[data-table-theme=midnight]{--felt-1:#14163a;--felt-2:#0a0b22;--felt-edge:#241f4d;--felt-glow:#3c287859}[data-rack-theme=walnut]{--rack-1:#513629;--rack-2:#2a1b15;--rack-border:#110e0780;--rack-inner-bg:#1e140fd1;--rack-row-bg:#110e077a;--rack-row-border:#110e07}[data-rack-theme=mahogany]{--rack-1:#7a4a2e;--rack-2:#4a2a18;--rack-border:#28140a80;--rack-inner-bg:#3c2314d1;--rack-row-bg:#28160c80;--rack-row-border:#2a160a}[data-rack-theme=anthracite]{--rack-1:#2b2d31;--rack-2:#1e1f22;--rack-border:#00000080;--rack-inner-bg:#1e1f22d1;--rack-row-bg:#0f101280;--rack-row-border:#0c0d0e}[data-rack-theme=matte-black]{--rack-1:#161616;--rack-2:#0a0a0a;--rack-border:#0009;--rack-inner-bg:#141414d9;--rack-row-bg:#08080880;--rack-row-border:#050505}[data-rack-theme=ivory]{--rack-1:#f0e8d8;--rack-2:#bca783;--rack-border:#5c492a57;--rack-inner-bg:#6f533042;--rack-row-bg:#684d2d2e;--rack-row-border:#9d875d;--rack-inner-border:#8e72486b;--rack-slot-empty:#5c462314;--rack-slot-hover:#8e622a24;--rack-slot-target:#b47a3033;--rack-slot-outline:#5f482238;--rack-slot-target-outline:#85581f80}[data-rack-theme=blush]{--rack-1:#7b4a55;--rack-2:#3a2028;--rack-border:#ffbecd3d;--rack-inner-bg:#2a181ed6;--rack-row-bg:#1f11178f;--rack-row-border:#241017;--rack-inner-border:#ffcad61f;--rack-slot-empty:#ffcad613;--rack-slot-hover:#ffaec121;--rack-slot-target:#ffb6cc2e;--rack-slot-outline:#ffd2de29;--rack-slot-target-outline:#ffd4e073}.material-symbols-outlined.app-icon{font-feature-settings:"liga";font-variation-settings:"FILL" 0, "wght" 500, "GRAD" 0, "opsz" 24;-webkit-font-smoothing:antialiased;letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;direction:ltr;flex:none;font-family:Material Symbols Outlined;font-size:1.18rem;font-style:normal;line-height:1;display:inline-block;transform:translateY(.5px)}.brand-mark.material-symbols-outlined.app-icon{background:linear-gradient(180deg, var(--accent), var(--accent-strong));color:#3c2f00;border-radius:10px;justify-content:center;align-items:center;width:28px;height:28px;font-size:1.22rem;display:inline-flex}.control-button .material-symbols-outlined.app-icon,.nav-pill .material-symbols-outlined.app-icon,.icon-button .material-symbols-outlined.app-icon,.game-action .material-symbols-outlined.app-icon{font-size:1.12rem}.game-action .material-symbols-outlined.app-icon,.chat-toggle .material-symbols-outlined.app-icon,.sound-toggle .material-symbols-outlined.app-icon,.rack-theme-toggle .material-symbols-outlined.app-icon{font-variation-settings:"FILL" 0, "wght" 600, "GRAD" 0, "opsz" 24;font-size:1.22rem}.loading-spin{animation:.86s linear infinite material-spin}@keyframes material-spin{to{transform:translateY(.5px)rotate(360deg)}}body{background-color:var(--bg-page);color:var(--text);caret-color:#0000;font-family:var(--font-inter,system-ui), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;-webkit-user-select:none;user-select:none;background-image:radial-gradient(circle at 50% 0,#d4af3714,#0000 34%),radial-gradient(circle at 85% 8%,#97b0ff12,#0000 28%);margin:0;padding:0}button,input{font:inherit}input,textarea{caret-color:auto;-webkit-user-select:text;user-select:text}button:disabled{cursor:not-allowed;opacity:.55}:is(html:has(main[data-game-mode=playing]),body:has(main[data-game-mode=playing])){overflow-x:hidden}.surface{background:var(--bg-panel)}@supports (color:color-mix(in lab, red, red)){.surface{background:color-mix(in srgb, var(--bg-panel) 92%, black 8%)}}.surface{border:1px solid var(--border-soft);border-radius:8px;box-shadow:0 14px 36px #0000003d}.top-app-bar{background:var(--bg-table);border-bottom:1px solid var(--border-soft);z-index:50;justify-content:space-between;align-items:center;gap:18px;min-height:58px;padding:0 24px;display:flex;position:sticky;top:0}.top-brand-group,.top-actions{align-items:center;gap:12px;display:flex}.top-actions{flex-wrap:wrap;justify-content:flex-end}.brand-link{color:var(--accent);white-space:nowrap;align-items:center;gap:8px;font-size:1.35rem;font-weight:900;line-height:1;display:inline-flex}.brand-mark{background:linear-gradient(135deg, var(--accent), #b8860b);color:#17120a;border-radius:10px;padding:6px;font-size:1.3rem}.brand-logo{object-fit:contain;width:168px;height:48px;display:block}.brand-text{background:linear-gradient(180deg, var(--accent-strong), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.top-nav{align-items:center;gap:4px;display:flex}.nav-pill,.nav-link,.profile-pill{border-radius:8px;align-items:center;gap:6px;min-height:36px;padding:0 12px;font-weight:800;display:inline-flex}.app-icon{color:currentColor;flex:none;width:1.05rem;height:1.05rem;display:inline-block;position:relative}.app-icon:before,.app-icon:after{box-sizing:border-box;content:"";position:absolute}.app-icon-casino{border:2px solid;border-radius:5px;transform:rotate(-8deg)}.app-icon-casino:before,.app-icon-casino:after{background:currentColor;border-radius:50%;width:3px;height:3px}.app-icon-casino:before{top:3px;left:3px}.app-icon-casino:after{bottom:3px;right:3px}.app-icon-groups:before,.app-icon-groups:after{border:2px solid;border-radius:50%;width:.58rem;height:.58rem;top:.1rem}.app-icon-groups:before{left:.06rem}.app-icon-groups:after{right:.06rem}.app-icon-groups{border-bottom:2px solid;border-radius:999px}.app-icon-school:before{border:.54rem solid #0000;border-top-width:0;border-bottom:.34rem solid;top:.1rem;left:0}.app-icon-school:after{border-bottom:2px solid;border-left:2px solid;width:.55rem;height:.42rem;top:.46rem;left:.26rem;transform:skew(-12deg)}.app-icon-key:before{border:2px solid;border-radius:50%;width:.52rem;height:.52rem;top:.24rem;left:.02rem}.app-icon-key:after{background:currentColor;width:.52rem;height:2px;top:.5rem;left:.48rem;box-shadow:.24rem .2rem 0 -.05rem}.app-icon-user:before{border:2px solid;border-radius:50%;width:.38rem;height:.38rem;top:.12rem;left:.33rem}.app-icon-user:after{border:2px solid;border-bottom:0;border-radius:999px 999px 0 0;width:.66rem;height:.36rem;top:.62rem;left:.19rem}.app-icon-table:before{border:2px solid;border-radius:.16rem;width:.78rem;height:.44rem;top:.2rem;left:.14rem}.app-icon-table:after{background:currentColor;width:2px;height:.38rem;top:.6rem;left:.24rem;box-shadow:.58rem 0}.app-icon-seat:before{border:2px solid;border-radius:.18rem .18rem .36rem .36rem;width:.62rem;height:.54rem;top:.22rem;left:.22rem}.app-icon-seat:after{background:currentColor;width:2px;height:.26rem;top:.72rem;left:.29rem;box-shadow:.48rem 0}.app-icon-login:before{border:2px solid;border-left:0;width:.42rem;height:.78rem;top:.14rem;right:.08rem}.app-icon-login:after{border-top:2px solid;border-right:2px solid;width:.42rem;height:.42rem;top:.34rem;left:.18rem;transform:rotate(45deg)}.app-icon-bot{border:2px solid;border-radius:.2rem}.app-icon-bot:before{background:currentColor;border-radius:50%;width:.12rem;height:.12rem;top:.34rem;left:.25rem;box-shadow:.34rem 0}.app-icon-bot:after{background:currentColor;border-radius:999px;width:.46rem;height:2px;top:.66rem;left:.3rem}.app-icon-link:before,.app-icon-link:after{border:2px solid;border-radius:999px;width:.54rem;height:.36rem;top:.34rem}.app-icon-link:before{left:.04rem;transform:rotate(-28deg)}.app-icon-link:after{right:.04rem;transform:rotate(-28deg)}.app-icon-pin:before{border:2px solid;border-radius:.16rem;width:.58rem;height:.62rem;top:.18rem;left:.24rem}.app-icon-pin:after{background:currentColor;width:.38rem;height:2px;top:.5rem;left:.34rem}.app-icon-add:before,.app-icon-add:after{background:currentColor;border-radius:999px;top:50%;left:50%;transform:translate(-50%,-50%)}.app-icon-add:before{width:.82rem;height:2px}.app-icon-add:after{width:2px;height:.82rem}.app-icon-replay:before{border:2px solid;border-left-color:#0000;border-radius:50%;width:.86rem;height:.86rem;top:.1rem;left:.08rem}.app-icon-replay:after{border:.22rem solid #0000;border-left-width:0;border-right:.28rem solid;top:.18rem;left:.02rem;transform:rotate(-28deg)}.app-icon-logout:before{border:2px solid;border-right:0;width:.56rem;height:.82rem;top:.12rem;left:.08rem}.app-icon-logout:after{border-top:2px solid;border-right:2px solid;width:.42rem;height:.42rem;top:.34rem;right:.1rem;transform:rotate(45deg)}.app-icon-language{border:2px solid;border-radius:50%}.app-icon-language:before{border-left:2px solid;height:100%;top:0;left:50%}.app-icon-language:after{border-top:2px solid;top:50%;left:.12rem;right:.12rem}.app-icon-menu:before,.app-icon-menu:after{background:currentColor;border-radius:999px;width:.8rem;height:2px;left:.12rem}.app-icon-menu:before{top:.22rem;box-shadow:0 .26rem}.app-icon-menu:after{top:.74rem}.app-icon-close:before,.app-icon-close:after{background:currentColor;border-radius:999px;width:.78rem;height:2px;top:.5rem;left:.14rem}.app-icon-close:before{transform:rotate(45deg)}.app-icon-close:after{transform:rotate(-45deg)}.app-icon-chevron-left:before,.app-icon-chevron-right:before,.app-icon-east:before,.app-icon-west:before{border-top:2px solid;border-left:2px solid;width:.58rem;height:.58rem;top:.24rem}.app-icon-chevron-left:before,.app-icon-west:before{left:.36rem;transform:rotate(-45deg)}.app-icon-chevron-right:before,.app-icon-east:before{right:.36rem;transform:rotate(135deg)}.app-icon-east:after,.app-icon-west:after{background:currentColor;border-radius:999px;width:.7rem;height:2px;top:.5rem}.app-icon-east:after{left:.12rem}.app-icon-west:after{right:.12rem}.app-icon-play:before{border-top:.42rem solid #0000;border-bottom:.42rem solid #0000;border-left:.66rem solid;top:.12rem;left:.28rem}.app-icon-send:before{border-top:.46rem solid #0000;border-bottom:.46rem solid #0000;border-left:.94rem solid;top:.08rem;left:.05rem}.app-icon-send:after{background:currentColor}@supports (color:color-mix(in lab, red, red)){.app-icon-send:after{background:color-mix(in srgb, currentColor 100%, transparent)}}.app-icon-send:after{width:.44rem;height:2px;top:.5rem;left:.25rem;transform:rotate(-18deg)}.app-icon-block{border:2px solid;border-radius:999px}.app-icon-block:before{background:currentColor;width:.74rem;height:2px;top:.46rem;left:.16rem;transform:rotate(-45deg)}.app-icon-pause{border:2px solid;border-radius:999px}.app-icon-pause:before,.app-icon-pause:after{background:currentColor;width:2px;height:.48rem;top:.26rem}.app-icon-pause:before{left:.36rem}.app-icon-pause:after{right:.36rem}.app-icon-draw-hand:before{border:2px solid;border-radius:.22rem .22rem .5rem .5rem;width:.56rem;height:.7rem;top:.26rem;left:.25rem}.app-icon-draw-hand:after{background:currentColor;border-radius:999px;width:.08rem;height:.42rem;top:.05rem;left:.27rem;box-shadow:.16rem -.03rem,.32rem .02rem}.app-icon-timer{border:2px solid;border-radius:999px}.app-icon-timer:before{background:currentColor;width:2px;height:.34rem;top:.2rem;left:.48rem}.app-icon-timer:after{transform-origin:0;background:currentColor;width:.34rem;height:2px;top:.5rem;left:.48rem;transform:rotate(35deg)}.app-icon-undo:before{border:2px solid;border-left-color:#0000;border-radius:50%;width:.76rem;height:.76rem;top:.2rem;left:.15rem;transform:rotate(28deg)}.app-icon-undo:after{border:.22rem solid #0000;border-top-width:0;border-bottom:.34rem solid;top:.2rem;left:.03rem;transform:rotate(-48deg)}.profile-avatar{background:var(--accent);color:#17120a;border-radius:999px;justify-content:center;align-items:center;width:26px;height:26px;font-size:.82rem;font-weight:800;display:flex;overflow:hidden}.profile-avatar img{object-fit:cover;width:100%;height:100%}.avatar-picker{justify-content:center;align-items:center;gap:8px;margin-top:4px;margin-bottom:10px;display:flex}.avatar-picker-arrow{background:var(--bg-panel-soft);border:1px solid var(--border-soft);color:var(--text);cursor:pointer;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;transition:background .14s,border-color .14s;display:flex}.avatar-picker-arrow:hover{color:var(--accent);background:#f2ca5024;border-color:#f2ca5066}.avatar-picker-preview{background:var(--bg-panel-soft);border:2px solid var(--accent);border-radius:50%;width:72px;height:72px;overflow:hidden;box-shadow:0 0 0 3px #f2ca5033}.avatar-picker-preview img{object-fit:cover;width:100%;height:100%}.top-menu-toggle{border:1px solid var(--border-soft);color:var(--text);background:0 0;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:none}.top-mobile-menu{background:var(--bg-table);border-bottom:1px solid var(--border-soft);flex-direction:column;align-items:stretch;gap:6px;padding:12px 16px 16px;display:none}.top-mobile-profile{color:var(--text-muted);padding:8px 4px 0;font-size:.85rem;font-weight:700}.lang-switch{position:relative}.lang-toggle{background:var(--bg-panel-soft);border:1px solid var(--border-soft);color:var(--text);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:4px;height:38px;padding:0 8px;transition:border-color .14s;display:inline-flex}.lang-toggle:hover{border-color:#f2ca507a}.lang-toggle small{color:var(--accent);font-size:.72rem;font-weight:800}.lang-menu{z-index:60;background:#110e07f5;border:1px solid #ffffff1a;border-radius:10px;flex-direction:column;min-width:110px;padding:6px;display:flex;position:absolute;top:44px;right:0;box-shadow:0 8px 24px #00000080}.lang-option{color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:.85rem;font-weight:700;transition:background .12s,color .12s}.lang-option:hover{background:var(--bg-panel-soft)}@supports (color:color-mix(in lab, red, red)){.lang-option:hover{background:color-mix(in srgb, var(--bg-panel-soft) 82%, white 5%)}}.lang-option:hover{color:var(--text)}.lang-option.active{color:var(--accent);background:#f2ca5024}.top-mobile-lang{gap:6px;padding:8px 4px 0;display:flex}.top-mobile-lang .lang-option{text-align:center;flex:1}.nav-pill{color:var(--text-muted);border:1px solid #0000;font-size:.92rem;position:relative}.nav-pill.active{color:var(--accent)}.nav-pill.active:after{background:var(--accent);content:"";border-radius:10px;height:2px;position:absolute;bottom:-2px;left:12px;right:12px}.nav-link{color:var(--text-muted);font-weight:600}.profile-pill{border:1px solid var(--border-soft);color:var(--text);background:#ffffff09;min-height:38px}.control-button{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:0 14px;font-weight:800;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}.control-button.primary{background:var(--accent);color:#17120a}.control-button.primary:hover:not(:disabled){background:var(--accent-strong)}.control-button.secondary{background:var(--bg-panel-soft);border-color:var(--border-soft);color:var(--text)}.control-button.secondary:hover:not(:disabled){border-color:#f2ca507a}.control-button.active{background:var(--accent);color:#3c2f00}.control-button.compact{min-height:36px;padding:0 12px}.icon-button{background:var(--bg-panel-soft);border:1px solid var(--border-soft);color:var(--text);border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.copy-code-button{gap:6px;width:auto;min-width:104px;padding:0 10px}.copy-code-button small{font-size:.72rem;font-weight:800}.field-label{color:var(--text-muted);letter-spacing:.05em;margin-bottom:8px;font-size:.75rem;font-weight:800;display:block}.field-input{border:1px solid var(--border-soft);color:var(--text);background:#130e0a;border-radius:8px;outline:none;width:100%;min-height:44px;padding:0 12px}.field-input:focus{border-color:var(--accent)}.toggle-control{border:1px solid var(--border-soft);color:var(--text);cursor:pointer;background:#130e0ab8;border-radius:999px;justify-content:flex-start;align-items:center;gap:12px;min-height:40px;padding:0 10px 0 14px;font-weight:800;display:flex}.settings-panel .toggle-control{width:fit-content}.toggle-control input{appearance:none;background:var(--bg-panel-soft);border:1px solid var(--border-soft);border-radius:999px;width:42px;height:22px;position:relative}.toggle-control input:after{background:var(--text-muted);content:"";border-radius:999px;width:16px;height:16px;transition:transform .16s,background-color .16s;position:absolute;top:2px;left:2px}.toggle-control input:checked{border-color:var(--accent);background:#f2ca5047}.toggle-control input:checked:after{background:var(--accent);transform:translate(18px)}.room-card{background:linear-gradient(180deg, var(--bg-table), var(--bg-table))}@supports (color:color-mix(in lab, red, red)){.room-card{background:linear-gradient(180deg, color-mix(in srgb, var(--bg-table) 86%, white 14%), var(--bg-table))}}.room-card{border:1px solid var(--border-soft);color:var(--text);border-radius:14px;min-height:190px;padding:16px;position:relative;overflow:hidden}.room-card:before{content:"";background:linear-gradient(90deg,#0000,#ffffff1f,#0000);height:1px;position:absolute;inset:0 0 auto}.room-card-heading{align-items:center;gap:12px;display:flex}.room-card-icon,.room-card-enter,.room-card-miniature{border:1px solid var(--border-soft);color:var(--text);background:#ffffff0e;border-radius:10px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.room-card-miniature{width:46px;height:46px}.room-card-miniature .table-miniature{transform:scale(.78)}.room-card-enter{color:var(--accent);width:34px;height:34px}.room-card:hover:not(:disabled){border-color:#ffe2a057}.room-card:disabled{cursor:default;opacity:.72}.room-card:disabled .join-pill{color:var(--text-muted);background:#ffffff0f}.seat-pill,.mini-chip{border:1px solid var(--border-soft);color:var(--text-muted);white-space:nowrap;background:#ffffff0f;border-radius:10px;align-items:center;gap:6px;min-height:28px;padding:0 10px;font-size:.75rem;font-weight:700;display:inline-flex}.theme-chip{gap:6px}.theme-chip-dot{border-radius:50%;width:12px;height:12px}.theme-chip-graphite .theme-chip-dot{background:linear-gradient(#3a2a1f,#241710)}.theme-chip-green .theme-chip-dot{background:linear-gradient(#13472e,#0b2f20)}.theme-chip-blue .theme-chip-dot{background:linear-gradient(#1b3a5b,#0e2238)}.theme-chip-burgundy .theme-chip-dot{background:linear-gradient(#3d1a1a,#240d0d)}.theme-chip-midnight .theme-chip-dot{background:linear-gradient(#14163a,#0a0b22)}.status-chip,.filter-chip,.join-pill{white-space:nowrap;border-radius:10px;align-items:center;gap:6px;min-height:26px;padding:0 9px;font-size:.6875rem;font-weight:800;display:inline-flex}.status-chip,.filter-chip.active{color:#dbe1ff;background:#97b0ff29;border:1px solid #97b0ff57}.filter-chip{background:var(--bg-panel-soft);border:1px solid var(--border-soft);color:var(--text-muted)}.join-pill{background:var(--accent);color:#3c2f00}.mini-chip .app-icon,.status-chip .app-icon,.filter-chip .app-icon{width:.95rem;height:.95rem}.empty-state{border:1px dashed var(--border-soft);color:var(--text-muted);border-radius:8px;align-items:center;gap:14px;min-height:160px;padding:24px;display:flex}.table-zone{background:radial-gradient(circle at 50% 26%, #d4af3724, transparent 48%), radial-gradient(circle at center, #1e140fd1, transparent 62%), linear-gradient(180deg, var(--bg-table), #110c08);border:1px solid var(--border-soft);border-radius:8px;min-height:440px;padding:14px}.waiting-layout{flex-direction:column;align-items:center;display:flex}.seat-row{border:1px solid var(--border-soft);background:#ffffff0b;border-radius:8px;align-items:center;gap:12px;min-height:72px;padding:12px;display:flex}.seat-index{background:var(--bg-panel-soft);border:1px solid var(--border-soft);border-radius:8px;flex:0 0 38px;justify-content:center;align-items:center;height:38px;font-weight:800;display:flex}.table-felt{background:linear-gradient(90deg, transparent 0 24px, #ffffff09 24px 25px, transparent 25px 49px), linear-gradient(180deg, var(--felt-1), var(--felt-2));border:8px solid var(--felt-edge);box-shadow:inset 0 0 60px var(--felt-glow);border-radius:8px;min-height:260px;padding:16px}.score-strip{flex-wrap:wrap;gap:8px;display:flex}.center-stack{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;min-height:170px;display:flex}.rack-preview{grid-template-columns:repeat(auto-fill,minmax(34px,1fr));gap:6px;display:grid}.tile-mark{background:var(--tile-bg);border:1px solid #0000002e;border-radius:6px;flex:none;justify-content:center;align-items:center;width:44px;height:60px;font-size:1.25rem;font-weight:900;display:inline-flex;box-shadow:2px 4px 8px #0006,inset 1px 1px 2px #fffc,inset -1px -1px 2px #0000001a}.tile-mark:hover{transform:translateY(-2px)}.tile-mark.small{width:32px;height:46px}.tile-red{color:var(--tile-red)}.tile-blue{color:var(--tile-blue)}.tile-black{color:var(--tile-black)}.tile-yellow{color:var(--tile-yellow)}.landing-page{flex-direction:column;flex:1;gap:42px;padding:34px 30px 28px;display:flex}.landing-hero{grid-template-columns:minmax(430px,.82fr) minmax(600px,1.18fr);align-items:center;gap:clamp(56px,5vw,86px);min-height:510px;display:grid}.landing-copy{gap:20px;display:grid}.landing-copy h1{letter-spacing:-.02em;max-width:720px;margin:0;font-size:clamp(2.35rem,5vw,4.15rem);font-weight:950;line-height:1.05}.landing-copy h1 span{background:linear-gradient(180deg, var(--accent-strong), var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.landing-copy p{color:var(--text-muted);max-width:540px;margin:0;font-size:1rem;line-height:1.7}.action-card{position:relative;overflow:hidden}.landing-action-card{max-width:540px;padding:18px}.landing-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px;display:grid}.landing-lobby-link{color:var(--accent);align-items:center;gap:5px;margin-top:12px;font-size:.9rem;font-weight:800;line-height:1.1;display:inline-flex}.landing-lobby-link .material-symbols-outlined.app-icon{font-size:1rem;line-height:1;transform:translateY(-1px)}.landing-link-row{flex-wrap:wrap;gap:16px;display:flex}.landing-slide-wrap{min-width:0;position:relative}.landing-preview{aspect-ratio:16/10;background:radial-gradient(circle at 50% 20%, #f2ca5024, transparent 42%), radial-gradient(circle at center, #2d2a2166, transparent 100%), var(--bg-table);border:1px solid var(--border-soft);border-radius:18px;flex-direction:column;justify-content:flex-end;min-height:360px;padding:20px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 50px #000c,0 24px 60px #0000005c}.landing-preview.image-preview{background:#0f0b07;justify-content:center;padding:0}.image-preview .preview-image{object-fit:cover;object-position:center;width:100%;height:100%;transform:scale(1.01)}.image-preview .preview-image-lobby{object-position:center 40%;transform:scale(1.02)}.image-preview .preview-image-ingame{object-position:center 76%;transform:scale(1.01)}.preview-caption{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c0805c2;border:1px solid #ffffff14;border-radius:12px;gap:4px;max-width:min(360px,100% - 40px);padding:10px 12px;display:grid;position:absolute;bottom:18px;left:20px}.preview-caption strong{color:var(--text);font-size:1rem}.preview-caption span{color:var(--text-muted);font-size:.88rem}.preview-dots{z-index:3;gap:6px;display:flex;position:absolute;top:18px;right:18px}.preview-dots span{background:#ffffff5c;border-radius:999px;width:8px;height:8px}.preview-dots span.active{background:var(--accent);width:22px}.preview-player-card{border:1px solid var(--border-soft);background:#231f17d1;border-radius:8px;align-items:center;gap:12px;padding:8px;display:flex;position:absolute;top:24px;left:24px}.preview-player-card p,.preview-player-card small{margin:0;display:block}.preview-player-card small{color:var(--accent);font-size:.75rem;font-weight:800}.avatar-dot,.seat-avatar{background:var(--bg-panel-soft);border:1px solid var(--border-soft);border-radius:999px;justify-content:center;align-items:center;display:flex;overflow:hidden}.seat-avatar img{object-fit:cover;width:100%;height:100%}.avatar-dot{width:32px;height:32px}.preview-rack{background:var(--bg-panel-soft);border:1px solid var(--border-soft);border-radius:12px 12px 0 0;padding:20px 16px 14px;box-shadow:0 -4px 20px #0009,inset 0 2px 4px #ffffff0d}.preview-rack-row{justify-content:center;align-items:flex-end;gap:5px;height:92px;display:flex}.preview-gap{width:18px}.selected-tile{filter:drop-shadow(0 8px 16px #d4af3733);display:inline-flex;transform:translateY(-12px)}.landing-copy h1 span{display:block}.online-badge{background:var(--bg-panel-soft);align-items:center}@supports (color:color-mix(in lab, red, red)){.online-badge{background:color-mix(in srgb, var(--bg-panel-soft) 86%, white 5%)}}.online-badge{border:1px solid var(--border-soft);color:var(--text);border-radius:10px;gap:8px;width:fit-content;min-height:32px;padding:0 12px;font-size:.82rem;font-weight:800;display:inline-flex}.online-badge span{background:#22c55e;border-radius:999px;width:7px;height:7px;box-shadow:0 0 0 4px #22c55e1f}.landing-action-card .field-label{color:var(--accent);align-items:center}@supports (color:color-mix(in lab, red, red)){.landing-action-card .field-label{color:color-mix(in srgb, var(--accent) 72%, var(--text-muted))}}.landing-action-card .field-label{font-family:var(--font-inter,system-ui), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;letter-spacing:.01em;text-transform:none;gap:8px;margin:10px 0 8px;font-size:.78rem;display:inline-flex}.landing-action-card .field-label .app-icon{color:var(--accent);width:.95rem;height:.95rem}.landing-action-card .field-input{border-color:var(--border-soft);background:linear-gradient(#ffffff05,#0000),#100b08}@supports (color:color-mix(in lab, red, red)){.landing-action-card .field-input{border-color:color-mix(in srgb, var(--border-soft) 86%, white 6%)}}.landing-action-card .field-input{font-family:var(--font-inter,system-ui), -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;border-radius:10px;min-height:46px;padding:0 14px;font-size:.98rem}.landing-action-card .field-input::placeholder{color:var(--text-muted)}@supports (color:color-mix(in lab, red, red)){.landing-action-card .field-input::placeholder{color:color-mix(in srgb, var(--text-muted) 65%, transparent)}}.landing-action-card .field-input:focus{box-shadow:0 0 0 3px #f2ca501a}.landing-lobby-link .app-icon{width:auto;height:auto;font-size:1rem;transform:translateY(-1px)}.landing-slide-wrap{transform-origin:100%;transform:scale(1.02)}.slide-header{border-bottom:1px solid #ffffff0e;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:12px;display:flex}.slide-header strong,.slide-header a{align-items:center;gap:7px;display:inline-flex}.slide-header strong{color:var(--text);font-size:1.1rem}.slide-header strong .app-icon{color:var(--accent);width:1.1rem;height:1.1rem}.slide-header a{color:var(--accent);font-size:.78rem;font-weight:900}.live-lobby-preview{justify-content:flex-start}.live-room-list{gap:12px;display:grid}.live-room-card{background:var(--bg-panel-soft);align-items:center}@supports (color:color-mix(in lab, red, red)){.live-room-card{background:color-mix(in srgb, var(--bg-panel-soft) 82%, white 7%)}}.live-room-card{border:1px solid var(--border-soft);border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;min-height:66px;padding:10px 12px;display:grid}.room-icon,.room-enter{border:1px solid var(--border-soft);color:var(--text);background:#0000002e;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.room-enter{color:var(--accent);width:32px;height:32px}.live-room-card strong,.live-room-card small{display:block}.live-room-card small{color:var(--text-muted);align-items:center;gap:6px;font-size:.75rem;display:inline-flex}.live-room-card small span{background:var(--accent);border-radius:10px;width:6px;height:6px}.live-room-count{color:var(--text-muted);text-align:right;font-size:.72rem}.live-room-count strong{color:var(--text);font-size:1rem}.theme-preview{justify-content:space-between;gap:16px}.theme-stage{border:1px solid #ffffff0d;border-radius:14px;flex:1;justify-content:center;align-items:center;min-height:280px;display:flex;position:relative;overflow:hidden}.rack-stage{background:radial-gradient(circle at 50% 0,#f2ca501f,#0000 46%),linear-gradient(#1c130e,#0f0906)}.table-stage{background:radial-gradient(circle,#f2ca501c,#0000 50%),linear-gradient(#141009,#0c0805)}.landing-game-rack{justify-content:center;max-width:100%;display:flex}.landing-game-rack .player-rack,.learn-rack-real .player-rack{transform-origin:50%;max-width:100%;margin:0;padding:12px 14px}.learn-rack-real .player-rack{transform:scale(.72)}.landing-game-rack .player-rack{padding:12px 14px 13px}.landing-game-rack .rack-inner,.learn-rack-real .rack-inner{gap:8px;padding:8px}.landing-game-rack .rack-row,.learn-rack-real .rack-row{--rack-slot-width:48px;--rack-tile-width:44px;min-height:70px}.landing-game-rack .rack-row{--rack-slot-width:32px;--rack-tile-width:34px;min-height:58px;padding:6px 9px}.landing-game-rack .rack-slot,.learn-rack-real .rack-slot{min-height:70px}.landing-game-rack .rack-slot{min-height:58px}.theme-chooser{justify-content:center;align-items:center;gap:12px;display:flex}.theme-chooser strong{color:var(--text-muted);text-transform:uppercase;white-space:nowrap;font-size:.76rem}.theme-chooser div{gap:8px;display:flex}.theme-chooser button{border:1px solid var(--border-soft);background:#ffffff0b;border-radius:8px;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex}.theme-chooser button.active{border-color:var(--accent);box-shadow:0 0 0 2px #f2ca5024}.theme-dot{border-radius:6px;width:16px;height:16px;display:block}.theme-dot-walnut{background:linear-gradient(#513629,#2a1b15)}.theme-dot-mahogany{background:linear-gradient(#7a4a2e,#4a2a18)}.theme-dot-anthracite{background:linear-gradient(#2b2d31,#1e1f22)}.theme-dot-ivory{background:linear-gradient(#f0e8d8,#bca783)}.theme-dot-blush{background:linear-gradient(#7b4a55,#3a2028)}.theme-dot-graphite{background:linear-gradient(#3a2a1f,#241710)}.theme-dot-green{background:linear-gradient(#13472e,#0b2f20)}.theme-dot-blue{background:linear-gradient(#1b3a5b,#0e2238)}.theme-dot-burgundy{background:linear-gradient(#3d1a1a,#240d0d)}.theme-dot-midnight{background:linear-gradient(#14163a,#0a0b22)}.mini-table-board{aspect-ratio:1.45;background:radial-gradient(circle at 50% 52%, var(--felt-glow), transparent 58%), linear-gradient(180deg, var(--felt-1), var(--felt-2));border:1px solid var(--felt-edge);align-items:center}@supports (color:color-mix(in lab, red, red)){.mini-table-board{border:1px solid color-mix(in srgb, var(--felt-edge) 72%, white 12%)}}.mini-table-board{border-radius:16px;justify-content:center;gap:10px;width:78%;max-width:410px;display:flex;position:relative;box-shadow:inset 0 0 42px #00000094,0 18px 40px #00000047}.mini-table-board.table-zone{min-height:250px;padding:20px}.mini-table-board .game-tile{transform:rotate(-4deg)}.mini-table-board .game-tile+.game-tile{transform:rotate(5deg)translateY(6px)}.mini-seat{color:var(--text);background:#f2ca502e;border:1px solid #f2ca503d;border-radius:8px;align-items:center;min-height:34px;padding:0 12px;font-size:.8rem;font-weight:900;display:inline-flex;position:absolute}.mini-seat.top{top:16px}.mini-seat.left{left:16px}.mini-seat.right{right:16px}.landing-tags{border-top:1px solid var(--border-soft);flex-wrap:wrap;gap:10px;padding-top:22px;display:flex}.landing-tags.compact{border-top:1px solid #fff1;flex-wrap:nowrap;gap:8px;margin-top:18px;padding-top:16px}.landing-tags span{background:var(--bg-panel-soft);align-items:center}@supports (color:color-mix(in lab, red, red)){.landing-tags span{background:color-mix(in srgb, var(--bg-panel-soft) 84%, white 5%)}}.landing-tags span{border:1px solid var(--border-soft);color:var(--text);white-space:nowrap;border-radius:10px;gap:6px;min-height:32px;padding:0 9px;font-size:.76rem;font-weight:800;display:inline-flex}.landing-tags .app-icon{color:var(--accent);width:.9rem;height:.9rem}.landing-tag-icon{color:var(--accent);flex:0 0 15px;width:15px;height:15px;display:inline-block;position:relative}.landing-tag-icon.account{border:1.8px solid;border-radius:50%}.landing-tag-icon.account:before{content:"";background:currentColor;border-radius:50%;width:3.5px;height:3.5px;position:absolute;top:3px;left:50%;transform:translate(-50%)}.landing-tag-icon.account:after{content:"";border:1.5px solid;border-bottom:0;border-radius:999px 999px 0 0;width:8px;height:4px;position:absolute;bottom:2.5px;left:50%;transform:translate(-50%)}.landing-tag-icon.invite{border:1.8px solid;border-radius:999px;height:8px;transform:rotate(-24deg)}.landing-tag-icon.invite:after{content:"";border:1.8px solid;border-radius:999px;width:12px;height:8px;position:absolute;top:4px;left:6px}.landing-tag-icon.code{border:1.8px solid;border-radius:3px}.landing-tag-icon.code:before,.landing-tag-icon.code:after{content:"";background:currentColor;border-radius:1px;width:9px;height:2px;position:absolute;left:3px}.landing-tag-icon.code:before{top:4px}.landing-tag-icon.code:after{top:9px}.landing-tag-icon.bot{border:1.8px solid;border-radius:4px}.landing-tag-icon.bot:before{content:"";background-color:#0000;background-image:radial-gradient(circle at 3px 4px,currentColor 0 1.5px,#0000 1.8px),radial-gradient(circle at 9px 4px,currentColor 0 1.5px,#0000 1.8px),linear-gradient(currentColor,currentColor);background-position:0 0,0 0,3px 10px;background-repeat:no-repeat;background-size:100% 100%,100% 100%,8px 1.5px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;position:absolute;inset:1px}.landing-game-showcase{border-top:1px solid var(--border-soft);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;padding-top:26px;display:grid}.landing-rack-demo-panel,.landing-detail-panel{background:var(--bg-panel)}@supports (color:color-mix(in lab, red, red)){.landing-rack-demo-panel,.landing-detail-panel{background:color-mix(in srgb, var(--bg-panel) 90%, white 4%)}}.landing-rack-demo-panel,.landing-detail-panel{border:1px solid var(--border-soft);border-radius:14px;min-width:0;padding:16px}.landing-detail-panel{display:grid;position:relative;overflow:hidden}.landing-detail-viewport{min-height:264px;position:relative}.landing-detail-slide{opacity:0;pointer-events:none;transition:opacity .36s,transform .36s;position:absolute;inset:0;transform:translate(18px)}.landing-detail-slide.active{opacity:1;pointer-events:auto;transform:translate(0)}.landing-detail-dots{z-index:3;background:#0000002e;border:1px solid #ffffff12;border-radius:999px;justify-content:center;gap:7px;padding:5px 7px;display:flex;position:absolute;top:14px;right:14px}.landing-detail-dots span{background:#ffffff38;border-radius:999px;width:5px;height:5px;transition:background .22s,width .22s}.landing-detail-dots span.active{background:var(--accent);width:18px}.landing-flip-demo{background:0 0;border:0;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;height:100%;padding:0;display:grid}.landing-flip-demo strong{margin-bottom:6px;font-size:1.05rem;display:block}.landing-flip-demo p{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.5}.landing-flip-stage{border:1px solid var(--border-soft);perspective:700px;background:#0000002e;border-radius:16px;justify-content:center;align-items:center;width:102px;height:118px;display:flex}.landing-flip-card{transform-origin:50%;height:78px;transform-style:preserve-3d;width:50px;animation:2.5s ease-in-out infinite landing-flip-loop;position:relative}.landing-flip-face{backface-visibility:hidden;cursor:default;transform-origin:50%;will-change:transform;transition:none;position:absolute;inset:0}.landing-flip-card .landing-flip-face{position:absolute;inset:0}.landing-flip-face.front{transform:rotateY(0)translateZ(.1px)}.landing-flip-face.back{transform:rotateY(180deg)translateZ(.1px)}@keyframes landing-flip-loop{0%,36%{transform:rotateY(0)}52%{transform:rotateY(180deg)scale(1.04)}68%{transform:rotateY(180deg)}84%{transform:rotateY(360deg)}to{transform:rotateY(360deg)}}.landing-rack-demo-panel{justify-items:center;gap:12px;display:grid;overflow:hidden}.landing-table-demo-panel{justify-items:center;gap:14px;padding:0;display:grid;overflow:hidden}.landing-table-preview{justify-content:center;align-items:center;width:100%;min-height:174px;animation:4.8s ease-in-out infinite landing-table-breathe;display:flex}.landing-table-demo-panel .mini-table-board.table-zone{width:min(64%,340px);min-height:160px;padding:16px}@keyframes landing-table-breathe{0%,to{filter:saturate(.96);transform:translateY(0)}50%{filter:saturate(1.08);transform:translateY(-3px)}}.section-heading.centered{text-align:center}.landing-how{padding-top:30px}.how-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr));width:100%;max-width:980px;margin-inline:auto}.how-grid.compact .how-card{text-align:center;flex-direction:column;align-items:center;min-height:178px;display:flex}.how-grid.compact .how-card>.app-icon{color:var(--accent);background:linear-gradient(#f2ca5029,#f2ca500f);border:1px solid #f2ca5047;border-radius:8px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:16px;display:inline-flex}.how-grid.compact .how-card>.app-icon:before,.how-grid.compact .how-card>.app-icon:after{transform-origin:50%}.experience-section,.how-section,.product-section,.scoring-section{border-top:1px solid var(--border-soft);gap:22px;padding-top:34px;display:grid}.experience-section h2,.how-section h2,.product-section h2,.scoring-section h2{margin:0;font-size:clamp(1.65rem,3vw,2.35rem);font-weight:900}.experience-section p,.section-heading p,.product-copy p,.scoring-section p{color:var(--text-muted);margin:8px 0 0;line-height:1.65}.product-section,.scoring-section{grid-template-columns:minmax(0,1fr) auto;align-items:center}.product-copy{max-width:700px}.product-metrics{grid-template-columns:repeat(3,minmax(110px,1fr));gap:10px;display:grid}.product-metrics div,.scoring-example,.score-rules-card,.result-scoreboard{background:var(--bg-panel);border:1px solid var(--border-soft)}@supports (color:color-mix(in lab, red, red)){.product-metrics div,.scoring-example,.score-rules-card,.result-scoreboard{border:1px solid color-mix(in srgb, var(--border-soft) 72%, transparent)}}.product-metrics div,.scoring-example,.score-rules-card,.result-scoreboard{border-radius:8px;padding:14px}.product-metrics strong{color:var(--accent);font-size:1.75rem;line-height:1;display:block}.product-metrics span,.score-helper,.score-note,.score-rules-card p{color:var(--text-muted);font-size:.84rem;line-height:1.55}.score-helper{text-align:center;margin:10px 0 0}.score-rules-card h3,.result-scoreboard h3{margin:0 0 8px;font-size:.95rem;font-weight:900}.score-rules-card p,.score-note{margin:0}.score-note{background:#f2ca5014;border:1px solid #f2ca502e;border-radius:8px;padding:10px 12px}.scoring-example{min-width:280px}.scoring-example span,.scoring-example small{color:var(--text-muted);font-size:.84rem;display:block}.scoring-example strong{color:var(--text);margin:8px 0;display:block}.feature-grid,.how-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.feature-card,.how-card{background:var(--bg-panel);border:1px solid var(--border-soft)}@supports (color:color-mix(in lab, red, red)){.feature-card,.how-card{border:1px solid color-mix(in srgb, var(--border-soft) 72%, transparent)}}.feature-card,.how-card{border-radius:8px;min-height:126px;padding:16px}.how-card span{color:var(--accent);background:#f2ca5024;border:1px solid #f2ca5047;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;margin-bottom:18px;font-size:.78rem;font-weight:900;display:inline-flex}.feature-card h3,.how-card h3{margin:0 0 10px;font-size:1rem;font-weight:800}.feature-card p,.how-card p{color:var(--text-muted);margin:0;font-size:.875rem;line-height:1.5}.site-footer{border-top:1px solid var(--border-soft);color:var(--text-muted);grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);align-items:center;gap:18px;margin-top:16px;padding:18px 0 2px;display:grid}.footer-brand{align-items:center;display:flex}.footer-logo{object-fit:contain;width:120px;height:38px;display:block}.site-footer strong{color:var(--text);margin:0;font-size:.98rem;display:inline}.site-footer p{margin:4px 0 0;font-size:.82rem;line-height:1.4}.footer-links{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.footer-links a{color:var(--text-muted);font-size:.82rem;font-weight:800;text-decoration:none}.footer-links a:hover{color:var(--accent)}.footer-social{justify-self:end}.legal-page{flex:1;padding:46px 28px 56px}.legal-shell{max-width:860px;margin:0 auto}.legal-back{color:var(--accent);align-items:center;gap:6px;margin-bottom:24px;font-size:.86rem;font-weight:900;text-decoration:none;display:inline-flex}.legal-shell header{border-bottom:1px solid var(--border-soft);margin-bottom:28px;padding-bottom:24px}.legal-shell header p{color:var(--accent);margin:0 0 10px;font-size:.82rem;font-weight:900}.legal-shell h1{margin:0 0 12px;font-size:clamp(2rem,5vw,3.4rem);line-height:1.04}.legal-shell header span,.legal-shell section p{color:var(--text-muted)}.legal-shell section{border-bottom:1px solid #ffffff0e;padding:22px 0}.legal-shell h2{margin:0 0 10px;font-size:1.12rem}.legal-shell section p{margin:0;font-size:.98rem;line-height:1.7}.learn-page{flex-direction:column;flex:1;gap:28px;padding:34px 28px 36px;display:flex}.learn-hero-compact{flex-direction:column;gap:8px;display:flex}.learn-hero-compact h1{margin:0;font-size:clamp(1.6rem,4vw,2.2rem);font-weight:800}.learn-hero-compact p{color:var(--text-muted);max-width:60ch;margin:0;font-size:.95rem}.learn-stepper{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:18px;flex-direction:column;gap:0;display:flex;overflow:hidden}.learn-tabs{gap:2px;padding:8px;display:flex;overflow-x:auto}.learn-tab{color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:10px;flex:none;align-items:center;gap:8px;padding:10px 14px;transition:background .14s,color .14s;display:flex}.learn-tab:hover{color:var(--text);background:#ffffff0a}.learn-tab.active{color:var(--accent);background:#f2ca5024}.learn-tab-index{background:#ffffff14;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;font-size:.72rem;font-weight:800;display:flex}.learn-tab.active .learn-tab-index{background:var(--accent);color:#17120a}.learn-tab-label{font-size:.88rem;font-weight:700}.learn-content{border-top:1px solid var(--border-soft);flex-direction:column;gap:16px;padding:28px 28px 24px;display:flex}.learn-content-head{align-items:center;gap:12px;display:flex}.learn-content-icon{color:var(--accent);background:#f2ca501f;border-radius:12px;padding:10px;font-size:1.5rem}.learn-content-head h2{margin:0;font-size:1.3rem;font-weight:800}.learn-content-body{color:var(--text-muted);max-width:65ch;margin:0;font-size:1rem;line-height:1.6}.learn-content-diagram{border:1px solid var(--border-soft);background:#110e0780;border-radius:14px;padding:24px}.learn-diagram{justify-content:center;align-items:center;gap:16px;display:flex}.learn-diagram-pair{flex-direction:column;align-items:center;gap:8px;display:flex}.learn-diagram-pair span{color:var(--text-muted);font-size:.78rem;font-weight:700}.learn-arrow{color:var(--accent);font-size:1.4rem}.learn-rack-row{gap:6px;display:flex}.learn-flow{gap:20px}.learn-flow-step{flex-direction:column;align-items:center;gap:6px;display:flex}.learn-flow-step small{color:var(--text-muted);font-size:.78rem;font-weight:600}.learn-check{color:var(--success);font-size:1.5rem}.learn-scoring-card{background:#110e0799;border-radius:12px;flex-direction:column;gap:10px;padding:18px}.learn-scoring-card strong{color:var(--accent);font-size:1.4rem}.learn-scoring-card small{color:var(--text-muted)}.learn-content-grid{grid-template-columns:1.1fr .9fr;align-items:stretch;gap:32px;display:grid}.learn-content-text{flex-direction:column;justify-content:center;gap:18px;display:flex}.learn-content-subtitle{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:800}.learn-content-visual{background:radial-gradient(circle at 50% 40%, #f2ca501a, transparent 60%), linear-gradient(180deg, var(--felt-1), var(--felt-2));border:1px solid var(--felt-edge);box-shadow:inset 0 0 40px var(--felt-glow);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:16px;min-height:220px;padding:28px;display:flex}.learn-bullets{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.learn-bullets li{color:var(--text);align-items:flex-start;gap:8px;font-size:.92rem;line-height:1.5;display:flex}.learn-diagram-row{justify-content:center;align-items:center;gap:24px;display:flex}.learn-tile-pair{flex-direction:column;align-items:center;gap:10px;display:flex;position:relative}.learn-tile-caption{color:#eae1d4b3;font-size:.78rem;font-weight:700}.learn-badge{background:var(--accent);color:#17120a;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;margin-top:4px;padding:2px 8px;font-size:.62rem;font-weight:800}.learn-rack-demo{align-items:center;gap:12px;display:flex}.learn-rack-group{background:#00000040;border-radius:10px;gap:4px;padding:8px;display:flex}.learn-valid-tag{color:var(--success);font-size:1.6rem}.learn-finish-label{color:var(--accent);font-size:.82rem;font-weight:700}.learn-flow-3{justify-content:center;align-items:center;gap:12px;display:flex}.learn-flow-node{background:#0000004d;border:1px solid #f2ca5033;border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:16px 14px;display:flex}.learn-flow-node small{color:#eae1d4d9;font-size:.78rem;font-weight:600}.learn-flow-arrow{color:var(--accent);opacity:.7;font-size:1.3rem}.learn-scoring-demo{flex-direction:column;align-items:center;gap:12px;display:flex}.learn-scoring-title{color:#eae1d4b3;font-size:.82rem;font-weight:700}.learn-scoring-calc{align-items:center;gap:10px;display:flex}.learn-scoring-calc span:first-child{color:var(--text-muted);font-size:.9rem}.learn-scoring-calc strong{color:var(--accent);font-size:1.3rem}.learn-scoring-note{color:#e63946e6;font-size:.78rem}.learn-hero-badge{color:var(--accent);background:#f2ca501a;border:1px solid #f2ca5040;border-radius:999px;align-items:center;gap:6px;width:max-content;padding:5px 12px;font-size:.78rem;font-weight:700;display:inline-flex}.learn-progress-bar{background:#ffffff14;border-radius:999px;width:200px;height:6px;margin-top:8px;overflow:hidden}.learn-progress-fill{background:linear-gradient(90deg, var(--accent), var(--accent-strong));border-radius:999px;height:100%;transition:width .3s}.learn-tab-number{color:var(--text-muted);background:#ffffff14;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;font-size:.72rem;font-weight:800;display:flex}.learn-tab-number.active{background:var(--accent);color:#17120a}.learn-progress-text{color:var(--text-muted);font-size:.82rem;font-weight:700}@media (max-width:767px){.learn-content-grid{grid-template-columns:1fr}.learn-content-visual{min-height:180px;padding:20px}.learn-flow-3{flex-wrap:wrap}}.learn-nav{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:16px;padding:16px 28px;display:flex}.learn-progress{color:var(--text-muted);font-size:.85rem;font-weight:700}.learn-eyebrow{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;font-size:.8rem;font-weight:800}.learn-page-v2{flex-direction:column;flex:1;gap:24px;padding:28px 24px 40px;display:flex}.learn-v2-hero{flex-direction:column;gap:8px;display:flex}.learn-v2-eyebrow{color:var(--accent);align-items:center;gap:6px;font-size:.78rem;font-weight:700;display:inline-flex}.learn-v2-hero h1{margin:0;font-size:clamp(1.6rem,4vw,2.1rem);font-weight:800}.learn-v2-hero p{color:var(--text-muted);max-width:60ch;margin:0;font-size:.92rem}.learn-v2-layout{grid-template-columns:220px 1fr;gap:20px;display:grid}.learn-v2-sidenav{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:16px;flex-direction:column;gap:4px;padding:12px;display:flex}.learn-v2-side-item{color:var(--text-muted);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;padding:11px 12px;font-size:.88rem;font-weight:700;transition:background .14s,color .14s;display:flex}.learn-v2-side-item:hover{color:var(--text);background:#ffffff0a}.learn-v2-side-item.active{color:var(--accent);background:#f2ca5024}.learn-v2-side-num{color:var(--text-muted);background:#ffffff14;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:.72rem;font-weight:800;display:flex}.learn-v2-side-item.active .learn-v2-side-num{background:var(--accent);color:#17120a}.learn-v2-cta{background:var(--accent);color:#17120a;border-radius:10px;align-items:center;gap:6px;margin-top:8px;padding:11px 12px;font-size:.88rem;font-weight:800;display:flex}.learn-v2-main{background:var(--bg-panel);border:1px solid var(--border-soft);border-radius:16px;flex-direction:column;gap:20px;min-height:380px;padding:32px;display:flex}.learn-v2-main h2{margin:0;font-size:1.5rem;font-weight:800}.learn-v2-intro{color:var(--text-muted);max-width:60ch;margin:0;font-size:1rem;line-height:1.6}.learn-v2-points{flex-direction:column;gap:18px;display:flex}.learn-v2-point{background:radial-gradient(circle at 30% 30%, #f2ca5014, transparent 60%), linear-gradient(180deg, var(--felt-1), var(--felt-2));border:1px solid var(--felt-edge);box-shadow:inset 0 0 30px var(--felt-glow);border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;display:flex}.learn-v2-point-tiles{align-items:center;gap:6px;display:flex}.learn-v2-tile{display:inline-flex}.learn-v2-arrow{color:var(--accent);margin-left:6px;font-size:1.3rem}.learn-v2-point-text{color:#eae1d4eb;font-size:.92rem;font-weight:600}.learn-v2-bottom{border-top:1px solid var(--border-soft);justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:20px;display:flex}.learn-v2-counter{color:var(--text-muted);font-size:.85rem;font-weight:700}.learn-v2-layout.enhanced{grid-template-columns:250px minmax(0,1fr)}.learn-v2-main.enhanced{background:radial-gradient(circle at 68% 24%, #f2ca5014, transparent 36%), var(--bg-panel)}@supports (color:color-mix(in lab, red, red)){.learn-v2-main.enhanced{background:radial-gradient(circle at 68% 24%, #f2ca5014, transparent 36%), color-mix(in srgb, var(--bg-panel) 92%, white 3%)}}.learn-v2-main.enhanced{overflow:hidden}.learn-v2-main-copy{gap:8px;display:grid}.learn-v2-step-label{color:var(--accent);font-size:.78rem;font-weight:900}.learn-v2-cta.active{color:#e2c667;background:#f2ca5029}.learn-v2-cta.autoplay{border:1px solid #f2ca5038;align-self:flex-start;width:auto;min-height:32px;margin:0 0 8px;padding:0 10px;font-size:.78rem}.learn-v2-cta.autoplay .app-icon{width:.82rem;height:.82rem}.learn-v2-side-num .app-icon{width:.86rem;height:.86rem}.learn-game-demo{border:1px solid var(--border-soft);background:radial-gradient(circle at 50% 25%,#f2ca5014,#0000 45%),linear-gradient(#231912d1,#0e0906f0);border-radius:18px;place-items:center;gap:18px;min-height:360px;padding:24px;display:grid;overflow:hidden}.learn-center-module{border:1px solid var(--border-soft);background:#0000003d;border-radius:18px;justify-content:center;align-items:center;gap:24px;padding:26px 32px 20px;display:flex}.learn-center-tile,.learn-tile-wrap{display:inline-flex;position:relative}.learn-tile-wrap .okey-badge,.learn-center-tile .okey-badge{font-size:.62rem;animation:1.5s ease-in-out infinite okey-shimmer;top:-18px}.learn-rack-real{max-width:100%;overflow:hidden}.learn-demo-note{border:1px solid var(--border-soft);text-align:center;background:#00000038;border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 18px;padding:12px 16px;display:flex}.learn-demo-note strong{color:var(--text)}.learn-demo-note span{color:var(--text-muted)}.learn-demo-note.success{border-color:#22c55e52}.learn-turn-demo{border:1px solid var(--border-soft);background:radial-gradient(circle at 50% 0,#f2ca5014,#0000 45%),linear-gradient(#231912d1,#0e0906f0);border-radius:18px;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:14px;min-height:300px;padding:24px;display:grid}.learn-turn-node{border:1px solid var(--border-soft);text-align:center;background:#ffffff0b;border-radius:14px;flex-direction:column;align-items:center;gap:8px;min-height:150px;padding:20px;display:flex}.learn-turn-node.active{border-color:#f2ca506b;box-shadow:0 0 0 1px #f2ca501f,0 16px 40px #00000038}.learn-turn-node>.app-icon{color:var(--accent);width:1.5rem;height:1.5rem}.learn-turn-node span{color:var(--text-muted);font-size:.84rem;line-height:1.45}.learn-flow-arrow{color:var(--accent)}.learn-scoring-demo.enhanced{border:1px solid var(--border-soft);background:radial-gradient(circle at 50% 0,#f2ca5014,#0000 48%),linear-gradient(#231912d1,#0e0906f0);border-radius:18px;max-width:none;min-height:300px;margin:0;padding:28px}.learn-topic-hub{border-top:1px solid var(--border-soft);width:100%;max-width:1320px;margin:0 auto;padding:34px 28px 62px}.learn-topic-hub-head{text-align:center;max-width:760px;margin:0 auto 24px}.learn-topic-hub-head p{color:var(--accent);margin:0 0 8px;font-size:.82rem;font-weight:900}.learn-topic-hub-head h2{margin:0 0 12px;font-size:clamp(1.9rem,4vw,3rem);line-height:1.05}.learn-topic-hub-head span{color:var(--text-muted);line-height:1.6;display:block}.learn-topic-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.learn-topic-card{background:var(--bg-panel)}@supports (color:color-mix(in lab, red, red)){.learn-topic-card{background:color-mix(in srgb, var(--bg-panel) 90%, white 4%)}}.learn-topic-card{border:1px solid var(--border-soft);color:var(--text);border-radius:12px;flex-direction:column;gap:10px;min-height:150px;padding:18px;text-decoration:none;transition:border-color .16s,transform .16s;display:flex}.learn-topic-card:hover{border-color:#f2ca506b;transform:translateY(-2px)}.learn-topic-card strong{font-size:1.05rem}.learn-topic-card span{color:var(--text-muted);font-size:.9rem;line-height:1.55}.learn-article-page{flex:1;padding:46px 28px 62px}.learn-article-shell{max-width:920px;margin:0 auto}.learn-article-breadcrumb{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px;font-size:.84rem;font-weight:800;display:flex}.learn-article-breadcrumb a{color:var(--accent);text-decoration:none}.learn-article-hero{border-bottom:1px solid var(--border-soft);margin-bottom:24px;padding-bottom:24px}.learn-article-hero p{color:var(--accent);margin:0 0 10px;font-size:.82rem;font-weight:900}.learn-article-hero h1{margin:0 0 12px;font-size:clamp(2.15rem,5vw,4rem);line-height:1.03}.learn-article-hero span{color:var(--text-muted)}.answer-card{background:linear-gradient(180deg, #f2ca5014, transparent), var(--bg-panel)}@supports (color:color-mix(in lab, red, red)){.answer-card{background:linear-gradient(180deg, #f2ca5014, transparent), color-mix(in srgb, var(--bg-panel) 90%, white 4%)}}.answer-card{border:1px solid #f2ca5038;border-radius:14px;margin:22px 0;padding:20px}.answer-card strong{color:var(--accent);text-transform:uppercase;margin-bottom:8px;font-size:.82rem;display:block}.answer-card p{color:var(--text);margin:0;font-size:1.05rem;line-height:1.7}.learn-article-takeaways{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0 34px;display:grid}.learn-article-takeaways span{border:1px solid var(--border-soft);color:var(--text-muted);background:#ffffff0b;border-radius:10px;padding:12px;font-size:.88rem;font-weight:800;line-height:1.45}.learn-article-body section{border-top:1px solid #ffffff0e;padding:26px 0}.learn-article-body h2,.learn-faq-section h2,.learn-related h2{margin:0 0 12px;font-size:1.32rem}.learn-article-body p,.learn-article-body li,.learn-faq-section p{color:var(--text-muted);font-size:1rem;line-height:1.75}.learn-article-body p{margin:0}.learn-article-body ol{margin:16px 0 0;padding-left:22px}.learn-faq-section{border-top:1px solid var(--border-soft);padding-top:28px}.learn-faq-section details{background:var(--bg-panel)}@supports (color:color-mix(in lab, red, red)){.learn-faq-section details{background:color-mix(in srgb, var(--bg-panel) 90%, white 3%)}}.learn-faq-section details{border:1px solid var(--border-soft);border-radius:10px;margin-top:10px;padding:14px 16px}.learn-faq-section summary{color:var(--text);cursor:pointer;font-weight:900}.learn-faq-section p{margin:10px 0 0}.learn-related{border-top:1px solid var(--border-soft);margin-top:30px;padding-top:26px}.learn-related div{flex-wrap:wrap;gap:10px;display:flex}.learn-related a{background:var(--bg-panel-soft)}@supports (color:color-mix(in lab, red, red)){.learn-related a{background:color-mix(in srgb, var(--bg-panel-soft) 86%, white 5%)}}.learn-related a{border:1px solid var(--border-soft);color:var(--accent);border-radius:999px;padding:9px 12px;font-size:.84rem;font-weight:900;text-decoration:none}@media (max-width:767px){.learn-v2-layout,.learn-v2-layout.enhanced{grid-template-columns:1fr}.learn-v2-sidenav{flex-flow:wrap;gap:6px}.learn-v2-side-item{padding:9px 10px}.learn-v2-cta{flex:100%;justify-content:center}.learn-v2-main{padding:20px}.learn-v2-point{flex-direction:column;align-items:flex-start}.learn-game-demo,.learn-turn-demo{min-height:0;padding:18px}.learn-turn-demo,.learn-topic-grid,.learn-article-takeaways{grid-template-columns:1fr}.learn-topic-hub,.learn-article-page{padding-left:16px;padding-right:16px}.learn-flow-arrow{justify-self:center;transform:rotate(90deg)}.learn-rack-real .player-rack{transform:scale(.58)}.learn-page{padding:20px 14px 28px}.learn-content{padding:20px 16px}.learn-nav{padding:14px 16px}.learn-tab-label{display:none}}.learn-hero{grid-template-columns:minmax(0,.86fr) minmax(460px,1fr);align-items:center;gap:32px;display:grid}.learn-eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-size:.82rem;font-weight:900}.learn-hero h1{max-width:720px;margin:0;font-size:clamp(2.2rem,4vw,3.7rem);font-weight:950;line-height:1.05}.learn-hero p{color:var(--text-muted);max-width:620px;margin:18px 0 0;line-height:1.7}.learn-actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.tutorial-table{background:radial-gradient(circle at 50% 40%,#5527148c,#0000 52%),linear-gradient(#1c0d08,#0f0906);border:10px solid #3a3327e6;border-radius:28px;min-height:500px;padding:28px;position:relative;overflow:hidden}.tutorial-opponent{border:1px solid var(--border-soft);color:var(--text);background:#2d2a21e0;border-radius:8px;padding:10px 16px;font-weight:900;position:absolute}.tutorial-opponent.top{top:28px;left:50%;transform:translate(-50%)}.tutorial-opponent.left{top:42%;left:28px}.tutorial-opponent.right{top:42%;right:28px}.tutorial-center{justify-content:center;align-items:center;gap:22px;display:flex;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)}.tutorial-center div{place-items:center;gap:8px;display:grid}.tutorial-center span{color:var(--accent);font-size:.78rem;font-weight:900}.tutorial-rack{background:linear-gradient(#543428,#2c1b14);border:1px solid #110e0799;border-radius:14px;justify-content:center;align-items:flex-end;gap:6px;min-height:112px;padding:18px;display:flex;position:absolute;bottom:28px;left:28px;right:28px}.tutorial-gap{width:18px}.tutorial-callout{color:var(--text);text-align:center;background:#f2ca501f;border:1px solid #f2ca5047;border-radius:8px;width:min(440px,100% - 56px);padding:10px 14px;font-size:.9rem;font-weight:800;position:absolute;top:65%;left:50%;transform:translate(-50%)}.lesson-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.lesson-card,.learn-scoring{background:var(--bg-panel);border:1px solid var(--border-soft)}@supports (color:color-mix(in lab, red, red)){.lesson-card,.learn-scoring{border:1px solid color-mix(in srgb, var(--border-soft) 72%, transparent)}}.lesson-card,.learn-scoring{border-radius:8px;padding:18px}.lesson-card h2,.learn-scoring h2{margin:0 0 10px;font-size:1.05rem;font-weight:900}.lesson-card p,.learn-scoring p{color:var(--text-muted);margin:0;font-size:.92rem;line-height:1.6}.learn-scoring{grid-template-columns:minmax(0,1fr) minmax(260px,.34fr);align-items:center;gap:20px;display:grid}.social-links{flex-wrap:wrap;gap:8px;display:flex}.social-links a{background:var(--bg-panel);border:1px solid var(--border-soft);color:var(--accent);border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:36px;padding:0 12px;font-size:.78rem;font-weight:900;text-decoration:none;display:inline-flex}.social-links .app-icon{font-size:1rem}.table-miniature{width:48px;height:48px;position:relative}.table-miniature:before{background:var(--bg-panel-soft);border:1px solid var(--border-soft);content:"";border-radius:7px;position:absolute;inset:8px}.table-miniature span{background:var(--bg-panel-soft);border-radius:4px;position:absolute}.table-miniature span.filled{background:var(--accent);box-shadow:0 0 8px #f2ca5059}.table-miniature span:first-child,.table-miniature span:nth-child(3){width:14px;height:6px;left:17px}.table-miniature span:first-child{top:0}.table-miniature span:nth-child(3){bottom:0}.table-miniature span:nth-child(2),.table-miniature span:nth-child(4){width:6px;height:14px;top:17px}.table-miniature span:nth-child(2){right:0}.table-miniature span:nth-child(4){left:0}.room-code-card,.settings-strip{border:1px solid var(--border-soft);background:#2d2a21cc}@supports (color:color-mix(in lab, red, red)){.room-code-card,.settings-strip{border:1px solid color-mix(in srgb, var(--border-soft) 70%, transparent)}}.room-code-card,.settings-strip{border-radius:16px;box-shadow:0 16px 36px #00000047}.room-code-card{justify-content:space-between;align-items:center;width:100%;min-width:min(100%,300px);max-width:420px;padding:16px;display:flex}.room-code-card h2{margin:0;font-size:1.05rem;font-weight:900}.room-code-card p{color:var(--text-muted);margin:4px 0 0;font-size:.86rem}.room-code-card p span{color:var(--accent);font-weight:900}.settings-strip{flex-wrap:wrap;justify-content:center;gap:10px;padding:12px 18px;display:flex}.settings-strip span{background:var(--bg-panel-soft);border:1px solid var(--border-soft)}@supports (color:color-mix(in lab, red, red)){.settings-strip span{border:1px solid color-mix(in srgb, var(--border-soft) 68%, transparent)}}.settings-strip span{color:var(--text-muted);border-radius:999px;min-height:28px;padding:5px 12px;font-size:.75rem;font-weight:800}.waiting-table{aspect-ratio:1;background:linear-gradient(90deg, transparent 0 24px, #ffffff09 24px 25px, transparent 25px 49px), radial-gradient(circle at center, #f2ca5014, transparent 38%), linear-gradient(180deg, var(--felt-1), var(--felt-2));border:4px solid var(--felt-edge);box-shadow:inset 0 10px 30px var(--felt-glow), 0 22px 48px #00000047;border-radius:999px;width:min(100%,760px);max-width:760px;min-height:430px;margin-top:26px;position:relative}@media (min-width:768px){.waiting-table{aspect-ratio:16/9;border-radius:24px}}.table-watermark{color:#f2ca5017;pointer-events:none;justify-content:center;align-items:center;font-size:clamp(4rem,14vw,9rem);font-weight:900;line-height:1;display:flex;position:absolute;inset:0}.waiting-seat-card{background:var(--bg-panel);border:1px solid var(--border-soft);align-items:center}@supports (color:color-mix(in lab, red, red)){.waiting-seat-card{border:1px solid color-mix(in srgb, var(--border-soft) 72%, transparent)}}.waiting-seat-card{border-radius:12px;flex-direction:column;gap:6px;width:clamp(124px,18vw,168px);min-height:142px;padding:14px;display:flex;position:absolute;box-shadow:0 14px 28px #00000052}.waiting-seat-card.current{border-color:var(--accent);box-shadow:0 0 22px #d4af372e,0 14px 28px #00000052}.waiting-seat-card.empty{opacity:.82;border-style:dashed}.seat-kick-button,.mini-kick-button{color:#ffdad6;background:#93000a4d;border:1px solid #ffb4ab38;border-radius:999px;min-height:24px;padding:0 9px;font-size:.68rem;font-weight:900}.seat-kick-button:hover,.mini-kick-button:hover{border-color:#ffb4ab80}.seat-badge-row{flex-wrap:wrap;justify-content:center;gap:4px;min-height:26px;display:flex}.seat-avatar{width:58px;height:58px}.seat-top{top:16px;left:50%;transform:translate(-50%)}.seat-right{top:50%;right:16px;transform:translateY(-50%)}.seat-bottom{bottom:16px;left:50%;transform:translate(-50%)}.seat-left{top:50%;left:16px;transform:translateY(-50%)}.game-shell{flex-direction:column;flex:1;min-height:calc(100vh - 54px);display:flex;position:relative;overflow:hidden}.game-shell:fullscreen{background:var(--bg-page);width:100vw;max-width:none;height:100dvh;max-height:100dvh}.game-shell:fullscreen .game-table-surface{margin:0}.game-table-surface{background:linear-gradient(90deg, transparent 0 24px, #ffffff09 24px 25px, transparent 25px 49px), radial-gradient(circle at center, #f2ca5014, transparent 48%), linear-gradient(180deg, var(--felt-1), var(--felt-2) 68%, var(--felt-2));border:8px solid var(--felt-edge);box-shadow:inset 0 0 60px var(--felt-glow);border-radius:20px;flex:1;width:min(100% - 100px,1200px);max-width:1200px;min-height:430px;margin:14px auto 0;position:relative;overflow:hidden}.turn-banner{color:var(--accent);z-index:5;background:#110e07e6;border:1px solid #f2ca507a;border-radius:999px;align-items:center;gap:10px;padding:6px 8px 6px 14px;font-size:.85rem;font-weight:700;transition:box-shadow .2s,background .2s,border-color .2s;display:inline-flex;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 10px 26px #00000061}.turn-banner-icon{opacity:.9;font-size:1.15rem}.turn-banner-player{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-weight:800;overflow:hidden}.turn-banner-action{color:var(--text-muted);font-size:.78rem;font-weight:600}.turn-banner-timer{color:var(--accent);font-variant-numeric:tabular-nums;background:#ffffff14;border-radius:999px;align-items:baseline;gap:1px;padding:4px 10px;display:inline-flex}.turn-banner-timer small{opacity:.7;font-size:.65rem}.turn-banner-timer.urgent{color:#ff8a8a;background:#e6394638}.turn-banner.active{border-color:var(--accent);color:#fff7d6;background:linear-gradient(#3a2e12f2,#1c1609f2);animation:1.6s ease-in-out infinite pulse-active}.turn-banner.active .turn-banner-action{color:#fff7d6cc}.turn-banner.urgent{color:#fff;background:linear-gradient(#6e2424f2,#3a1212f2);border-color:#ff6b6b;animation:.6s ease-in-out infinite shake-attention,.9s ease-in-out infinite pulse-active}.turn-banner strong{color:var(--text);font-size:.85rem}.game-player-card{background:#231f17d1;border:1px solid #ffffff0d;border-radius:12px;align-items:center;gap:12px;min-width:130px;padding:7px 10px;display:flex;box-shadow:0 12px 24px #00000047}.game-player-card.right{text-align:right;flex-direction:row-reverse}.game-player-card.self{border-color:var(--accent);min-width:170px}.game-player-card.active-turn{border-color:#f2ca50f2;animation:1.8s ease-in-out infinite turn-glow;box-shadow:0 0 0 2px #f2ca5066,0 12px 24px #00000047}.game-player-card.active-turn .game-avatar{color:#e8a35d;border-color:#9c521e;box-shadow:0 0 0 2px #783a1642}.game-player-card p{margin:0;font-size:1rem;font-weight:900}.game-player-card em{background:var(--bg-panel-soft);color:var(--text-muted);border-radius:6px;padding:4px 6px;font-size:.7rem;font-style:normal;font-weight:900}.game-avatar{border:1px solid var(--border-soft);background:#110e07;border-radius:999px;flex:0 0 44px;justify-content:center;align-items:center;height:44px;display:flex;overflow:hidden}.game-avatar img{object-fit:cover;width:100%;height:100%}.opponent-row{position:absolute;top:48px;left:50%;transform:translate(-50%)}.side-player{position:absolute;top:44%}.side-player,.opponent-row,.current-player-card{align-items:center;gap:10px;display:flex}.side-player.left{left:48px}.side-player.right{right:48px}.current-player-card{position:absolute;bottom:196px;left:26px}.center-play-area{display:contents}.center-module{background:#110e078a;border:1px solid #ffffff14;border-radius:28px;align-items:center;gap:18px;padding:16px 20px;display:flex;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 60px #00000057}.center-item{flex-direction:column;align-items:center;gap:12px;display:flex;position:relative}.center-item strong{color:var(--text-muted);letter-spacing:.08em;font-size:.8rem;font-weight:900}.center-item:last-child strong{color:var(--accent)}.draw-stack{background:linear-gradient(135deg,#f9f6f0,#d8d2c4);border:1px solid #d1c7b5;border-radius:8px;width:50px;height:76px;position:relative;box-shadow:5px 7px #c7c0b2,9px 12px #b9b1a2,0 16px 32px #0000006b}.center-button{cursor:pointer;padding:0}.draw-stack span{background:var(--bg-panel-soft);border:1px solid var(--border-soft);color:var(--text);border-radius:999px;padding:6px 9px;font-size:.78rem;font-weight:900;position:absolute;top:-15px;right:-15px}.okey-badge{background:var(--accent);color:#3c2f00;white-space:nowrap;z-index:2;border-radius:999px;padding:5px 12px;font-size:.72rem;font-weight:900;animation:2s ease-in-out infinite okey-shimmer;position:absolute;top:-22px;left:50%;transform:translate(-50%)}.game-tile{contain:paint;cursor:grab;touch-action:none;height:78px;transform-style:preserve-3d;-webkit-user-select:none;user-select:none;background:linear-gradient(135deg,#f9f6f0 0%,#e8e2d5 100%);border:1px solid #d1c7b5;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;width:50px;transition:box-shadow .14s,opacity .14s,transform .18s;display:flex;position:relative;box-shadow:2px 5px 10px #00000075,inset -1px -1px 2px #0000001f,inset 1px 1px 2px #ffffffe6}.game-tile span{font-size:1.45rem;font-weight:900;line-height:1}.game-tile i{opacity:.5;border-radius:999px;width:9px;height:9px;position:absolute;bottom:12px}.game-tile.face-down{background:linear-gradient(135deg,#fbfaf6 0%,#ebe6dc 100%);border-color:#d5ccbd;box-shadow:2px 5px 10px #0000006b,inset -1px -1px 2px #00000014,inset 1px 1px 2px #fffffff2}.game-tile.face-down span,.game-tile.face-down i{opacity:0}.game-tile.flip-up{animation:.22s ease-out tile-flip-up}.game-tile.flip-down{animation:.22s ease-out tile-flip-down}@keyframes tile-flip-down{0%{transform:rotateY(0)scale(1)}48%{transform:rotateY(88deg)scale(1.03)}to{transform:rotateY(0)scale(1)}}@keyframes tile-flip-up{0%{transform:rotateY(0)scale(1)}48%{transform:rotateY(-88deg)scale(1.03)}to{transform:rotateY(0)scale(1)}}.game-tile.tile-red i{background:var(--tile-red)}.game-tile.tile-blue i{background:var(--tile-blue)}.game-tile.tile-black i{background:var(--tile-black)}.game-tile.tile-yellow i{background:var(--tile-yellow)}.game-tile.selected{border-color:#a86b24;transform:none;box-shadow:2px 5px 10px #0000006b,inset 0 0 0 2px #a86b247a,inset 1px 1px 2px #ffffffe6}.game-tile.drag-source-ghost{opacity:.4}.game-tile.drag-preview-placeholder{opacity:0}.game-tile.drag-layer-tile{cursor:grabbing;transform:rotate(2deg)scale(1.08);box-shadow:0 18px 34px #0000006b,inset -1px -1px 2px #0000001f,inset 1px 1px 2px #ffffffe6}.game-tile.tilted{transform:rotate(3deg)}.game-tile.small{width:46px;height:64px}.game-tile.small span{font-size:1.5rem}.game-tile.small i{width:6px;height:6px;bottom:8px}.landing-page .game-tile i,.learn-v2-page .game-tile i,.rack-row .game-tile i{bottom:max(5px, calc(var(--rack-tile-width,50px) * .16));height:max(5px, calc(var(--rack-tile-width,50px) * .14));width:max(5px, calc(var(--rack-tile-width,50px) * .14))}.landing-page .game-tile span,.learn-v2-page .game-tile span{line-height:.92;transform:translateY(-2px)}.discard-badge{background:#110e07b8;border:1px solid #ffffff0f;border-radius:10px;align-items:center;gap:6px;padding:6px;display:flex}.discard-badge.clickable{cursor:pointer}.discard-badge.clickable:not(:disabled){border-color:#f2ca506b;box-shadow:0 0 0 1px #f2ca5024,0 10px 22px #0003}.discard-badge.clickable:disabled{cursor:default}.table-discard{z-index:4;position:absolute}.discard-rel-0{bottom:218px;right:30%}.discard-rel-1{top:30%;right:26%}.discard-rel-2{top:30%;left:26%}.discard-rel-3{bottom:218px;left:30%}.game-actions{justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;bottom:194px;left:50%;transform:translate(-50%)}.sort-menu-wrap{position:relative}.sort-popover{border:1px solid var(--border-soft);z-index:15;background:#1f1812fa;border-radius:10px;gap:4px;min-width:150px;padding:6px;display:grid;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 14px 28px #00000057}.sort-popover button{color:var(--text);text-align:left;border-radius:14px;align-items:center;gap:8px;min-height:34px;padding:0 10px;font-size:.78rem;font-weight:900;display:flex}.sort-popover button:hover,.sort-popover button.active{color:var(--accent);background:#f2ca502e}.sort-option-icon{flex:none;align-items:center;gap:2px;display:inline-flex}.sort-option-icon i{color:var(--tile-black);background:linear-gradient(135deg,#f9f6f0 0%,#e8e2d5 100%);border:1px solid #d1c7b5;border-radius:4px;justify-content:center;align-items:center;width:15px;height:22px;font-size:.58rem;font-style:normal;font-weight:900;line-height:1;display:inline-flex;position:relative;box-shadow:0 2px 4px #00000042,inset 1px 1px 1px #ffffffd9}.sort-option-icon i:after{content:"";opacity:.45;background:currentColor;border-radius:999px;width:3px;height:3px;position:absolute;bottom:3px}.sort-option-icon-run i:first-child,.sort-option-icon-run i:nth-child(2),.sort-option-icon-run i:nth-child(3){color:var(--tile-red)}.sort-option-icon-pair i:first-child{color:var(--tile-yellow)}.sort-option-icon-pair i:nth-child(2){color:var(--tile-blue)}.sort-option-icon-pair i:nth-child(3){color:var(--tile-red)}.game-action{border:1px solid var(--border-soft);border-radius:12px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 13px;font-size:.82rem;font-weight:900;display:inline-flex}.mobile-action-label{display:none}.game-action.secondary{background:var(--bg-panel);color:var(--text-muted)}.game-action.danger{color:#ffdad6;background:#93000a}.game-action.primary{background:var(--accent);color:#3c2f00;min-width:150px}.game-utility-controls{display:contents}.game-action:disabled,.center-button:disabled,.game-tile:disabled{cursor:not-allowed;opacity:.48}.draw-stack.playable{animation:1.4s ease-in-out infinite pulse-active}.playable-hint{cursor:pointer;border-radius:8px;outline:2px solid #0000;transition:outline-color .2s,transform .2s;animation:1.4s ease-in-out infinite pulse-active;position:relative}.playable-hint:hover{transform:translateY(-2px)scale(1.04)}.player-rack{--rack-slot-width:48px;--rack-tile-width:50px;background:linear-gradient(180deg, var(--rack-1), var(--rack-2));border:1px solid var(--rack-border);z-index:6;border-radius:30px 30px 18px 18px;width:fit-content;max-width:calc(100% - 120px);margin:-170px auto 0;padding:14px 18px;position:relative;box-shadow:0 -4px 20px #0009,inset 0 2px 4px #ffffff0d}.rack-inner{background:var(--rack-inner-bg);border:1px solid var(--rack-inner-border);border-radius:12px;flex-direction:column;gap:10px;padding:10px;display:flex}.rack-row{background:var(--rack-row-bg);border-bottom:2px solid var(--rack-row-border);grid-template-columns:repeat(15, var(--rack-slot-width));border-radius:8px;justify-content:center;align-items:flex-end;gap:0;min-height:76px;padding:7px 10px;display:grid}.rack-row .game-tile{aspect-ratio:25/39;height:auto;max-height:calc(var(--rack-tile-width) * 39 / 25);max-width:var(--rack-tile-width);width:var(--rack-tile-width)}.rack-slot{min-width:0;min-height:78px;width:var(--rack-slot-width);border-radius:7px;justify-content:center;align-items:flex-end;transition:background-color .12s,outline-color .12s,transform .18s;display:flex}.rack-slot:empty{outline:1px dashed var(--rack-slot-empty)}.rack-slot:hover{background:var(--rack-slot-hover);outline:1px dashed var(--rack-slot-outline)}.rack-slot.drag-target{background:var(--rack-slot-target);outline:1px dashed var(--rack-slot-target-outline)}.rack-slot.tile-settling .game-tile{animation:.22s cubic-bezier(.2,.8,.2,1) tile-drop-settle}@keyframes tile-drop-settle{0%{opacity:.8;transform:translateY(-8px)scale(1.04)}72%{transform:translateY(1px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes turn-glow{0%,to{box-shadow:0 0 0 2px #f2ca5066,0 0 14px #f2ca5040}50%{box-shadow:0 0 0 3px #f2ca50a6,0 0 22px #f2ca5066}}@keyframes okey-shimmer{0%,to{box-shadow:0 0 0 2px #ffe08880,0 0 12px #ffe08866}50%{box-shadow:0 0 0 3px #ffe088d9,0 0 20px #ffe08899}}.player-rack.dragging{cursor:grabbing}.rack-drag-layer{pointer-events:none;z-index:120;transition:transform 80ms linear;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.rack-drag-layer.snapping{transition:left .2s ease-out,top .2s ease-out,transform .2s ease-out}.rack-drag-layer.snapping .game-tile{transform:rotate(0)scale(1)}.sound-control{-webkit-user-select:none;user-select:none;z-index:45;background:#110e07db;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:8px;padding:7px 10px;display:flex;position:fixed;bottom:86px;right:18px}.sound-control,.sound-control *{caret-color:#0000}.sound-toggle{caret-color:#0000;color:var(--accent);cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;min-width:28px;height:28px;display:grid}.sound-control input{accent-color:var(--accent);caret-color:#0000;cursor:pointer;-webkit-user-select:none;user-select:none;width:74px}.sound-control input:disabled{opacity:.35}.rack-theme-control{z-index:45;position:fixed;bottom:134px;right:18px}.rack-theme-toggle{color:var(--accent);cursor:pointer;background:#110e07c2;border:1px solid #ffffff14;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;font-size:1.2rem;transition:background-color .14s;display:flex}.rack-theme-toggle:hover{background:#f2ca501f}.fullscreen-toggle{color:var(--accent);cursor:pointer;z-index:45;background:#110e07c2;border:1px solid #ffffff14;border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;transition:background-color .14s;display:flex;position:fixed;bottom:182px;right:18px}.fullscreen-toggle:hover{background:#f2ca501f}.rack-theme-menu{background:#110e07f5;border:1px solid #ffffff1a;border-radius:12px;gap:10px;width:220px;padding:12px;display:grid;position:absolute;bottom:46px;right:0;box-shadow:0 8px 24px #00000080}.rack-theme-menu-title{color:var(--text-muted);font-size:.78rem;font-weight:700}.rack-theme-swatches{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.rack-theme-swatch{border:2px solid var(--border-soft);cursor:pointer;background:#130e0a;border-radius:10px;flex-direction:column;align-items:center;gap:5px;padding:6px 2px;transition:border-color .14s;display:flex}.rack-theme-swatch.selected{border-color:var(--accent);box-shadow:0 0 0 2px #f2ca5040}.rack-theme-swatch-dot{border-radius:50%;width:24px;height:24px}.rack-theme-swatch-label{color:var(--text-muted);font-size:.66rem}.rack-theme-swatch.selected .rack-theme-swatch-label{color:var(--accent)}.rack-theme-swatch-walnut .rack-theme-swatch-dot{background:linear-gradient(#513629,#2a1b15)}.rack-theme-swatch-mahogany .rack-theme-swatch-dot{background:linear-gradient(#7a4a2e,#4a2a18)}.rack-theme-swatch-anthracite .rack-theme-swatch-dot{background:linear-gradient(#2b2d31,#1e1f22)}.rack-theme-swatch-matte-black .rack-theme-swatch-dot{background:linear-gradient(#161616,#0a0a0a)}.rack-theme-swatch-ivory .rack-theme-swatch-dot{background:linear-gradient(#f0e8d8,#bca783)}.rack-theme-swatch-blush .rack-theme-swatch-dot{background:linear-gradient(#7b4a55,#3a2028)}.settings-panel{gap:10px;padding:14px;display:grid}.modern-settings{gap:14px;padding:16px}.settings-panel-header{border-bottom:1px solid #ffffff12;padding-bottom:12px}.settings-panel h3{margin:0;font-size:.95rem;font-weight:800}.settings-panel-header p{color:var(--text-muted);margin:5px 0 0;font-size:.82rem;line-height:1.45}.settings-card-row{gap:9px;display:grid}.settings-field{gap:6px;display:grid}.settings-field span{color:var(--text-muted);font-size:.78rem;font-weight:800}.settings-field input,.settings-field select{border:1px solid var(--border-soft);color:var(--text);background:#130e0a;border-radius:8px;min-height:38px;padding:0 10px}.password-setting-row{grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:8px;display:grid}.password-setting-row input{min-width:0}.password-visibility-button{border:1px solid var(--border-soft);color:var(--accent);cursor:pointer;background:#1c1510;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.password-visibility-button:hover{border-color:var(--accent)}.theme-swatches{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.theme-swatch{border:2px solid var(--border-soft);cursor:pointer;background:#130e0a;border-radius:10px;flex-direction:column;align-items:center;gap:6px;padding:8px 4px;transition:border-color .14s,transform .14s;display:flex}.theme-swatch:hover{transform:translateY(-1px)}.theme-swatch.selected{border-color:var(--accent);box-shadow:0 0 0 2px #f2ca5040}.theme-swatch-dot{border-radius:50%;width:28px;height:28px}.theme-swatch-label{color:var(--text-muted);font-size:.7rem}.theme-swatch.selected .theme-swatch-label{color:var(--accent)}.theme-swatch-default{color:var(--accent);letter-spacing:.02em;text-transform:uppercase;background:#f2ca5029;border:1px solid #f2ca504d;border-radius:999px;padding:1px 5px;font-size:.58rem;font-weight:700}.theme-swatch-graphite .theme-swatch-dot{background:linear-gradient(#3a2a1f,#241710)}.theme-swatch-green .theme-swatch-dot{background:linear-gradient(#13472e,#0b2f20)}.theme-swatch-blue .theme-swatch-dot{background:linear-gradient(#1b3a5b,#0e2238)}.theme-swatch-burgundy .theme-swatch-dot{background:linear-gradient(#3d1a1a,#240d0d)}.theme-swatch-midnight .theme-swatch-dot{background:linear-gradient(#14163a,#0a0b22)}.game-chat{z-index:7;background:#110e07c2;border:1px solid #ffffff14;border-radius:12px;gap:8px;width:280px;padding:10px;display:grid;position:absolute;bottom:26px;right:24px}.game-chat-messages{gap:4px;max-height:120px;display:grid;overflow:hidden}.game-chat-messages p{color:var(--text-muted);margin:0;font-size:.78rem;line-height:1.35}.game-chat-messages p.system{color:var(--accent)}.game-chat form{grid-template-columns:1fr auto;gap:6px;display:grid}.game-chat input{border:1px solid var(--border-soft);color:var(--text);background:#130e0a;border-radius:8px;min-height:34px;padding:0 9px}.game-chat button{background:var(--accent);color:#3c2f00;border-radius:8px;padding:0 10px;font-size:.78rem;font-weight:900}.rack-empty{color:var(--text-muted);margin:auto;font-size:.85rem;font-weight:800}.mobile-opponents,.mobile-game-info{display:none}@media (max-width:767px){.top-app-bar{min-height:64px;padding:0 16px}.top-nav,.profile-pill{display:none}.top-menu-toggle{display:inline-flex}.top-mobile-menu{display:flex}.top-app-bar{flex-wrap:wrap}.top-actions{gap:8px}.brand-link{font-size:1.15rem}.landing-page{gap:32px;padding:24px 16px}.landing-hero{grid-template-columns:1fr;gap:24px;min-height:0;display:grid}.landing-copy h1{font-size:2.35rem}.landing-preview{aspect-ratio:auto;min-height:300px;display:flex}.landing-slide-wrap{transform:none}.landing-tags.compact{scrollbar-width:none;flex-wrap:nowrap;padding-bottom:2px;overflow-x:auto}.landing-tags.compact::-webkit-scrollbar{display:none}.landing-action-card,.action-card{width:100%}.landing-actions,.result-actions-pair,.feature-grid,.how-grid,.lesson-grid,.product-section,.scoring-section,.learn-hero,.learn-scoring,.how-grid.compact{grid-template-columns:1fr}.live-room-card{grid-template-columns:auto minmax(0,1fr) auto}.live-room-count{display:none}.landing-game-showcase{grid-template-columns:1fr}.landing-flip-demo{text-align:center;grid-template-columns:1fr;justify-items:center}.landing-game-rack .player-rack,.learn-rack-real .player-rack{transform:none}.landing-game-rack .player-rack{padding:8px}.landing-game-rack .rack-inner{gap:6px;padding:6px}.landing-game-rack .rack-row{--rack-slot-width:22px;--rack-tile-width:28px;min-height:48px;padding:5px 6px}.landing-game-rack .rack-slot{min-height:48px}.theme-preview{gap:12px}.feature-card,.how-card{min-height:0}.site-footer{grid-template-columns:1fr}.footer-links{justify-content:flex-start}.footer-social{justify-self:start}.product-metrics{grid-template-columns:1fr}.learn-page{padding:24px 16px 32px}.tutorial-table{border-width:6px;min-height:520px;padding:18px}.tutorial-rack{flex-wrap:wrap;left:16px;right:16px}.tutorial-opponent.left,.tutorial-opponent.right{top:30%}.tutorial-center{top:48%}.tutorial-callout{top:64%}.waiting-table{min-height:560px}.waiting-seat-card{width:132px}.seat-right{right:8px}.seat-left{left:8px}.game-shell{min-height:calc(100vh - 64px)}.game-table-surface{border:0;border-radius:0;flex-direction:column;width:100%;min-height:auto;margin:0;padding-bottom:12px;display:flex;overflow:visible}.turn-banner{background:var(--accent);color:#3c2f00;border:0;border-radius:0;justify-content:center;gap:8px;width:100%;padding:12px;font-size:.9rem;position:relative;top:0;left:0;transform:none}.turn-banner .turn-banner-action{display:none}.turn-banner-timer{color:#3c2f00;background:#3c2f002e}.turn-banner-timer.urgent{color:#5a0010;background:#e639464d}.desktop-only{display:none}.mobile-opponents{grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 12px 0;padding:0;display:grid}.mobile-opponents .game-player-card{border-radius:10px;min-width:0;padding:8px 6px}.mobile-opponents .game-avatar{flex-basis:44px;height:44px}.mobile-opponents .game-player-card p{font-size:.82rem}.mobile-opponent-seat{flex-direction:column;align-items:center;gap:5px;min-width:0;display:flex}.mobile-discard-badge{transform-origin:top;padding:4px;transform:scale(.86)}.mobile-discard-badge .game-tile.small{width:38px;height:54px}.mobile-discard-badge .game-tile.small span{font-size:1.2rem}.mobile-game-info{background:#110e07b8;border:1px solid #ffffff0f;border-radius:999px;justify-content:center;align-items:center;gap:10px;width:max-content;margin:8px auto 0;padding:5px 12px;display:flex}.mobile-game-info div{flex-direction:column;align-items:center;display:flex}.mobile-game-info span{color:var(--text-muted);font-size:.7rem;font-weight:900}.mobile-game-info strong{color:var(--accent);font-size:1.15rem}.mobile-game-info .game-tile.small{width:38px;height:52px}.mobile-game-info .game-tile.small span{font-size:1.1rem}.center-module{box-shadow:none;background:0 0;border:0;gap:16px;margin:12px auto;padding:0;position:relative;top:auto;left:auto;transform:none}.center-play-area{flex-direction:row;justify-content:center;align-items:center;gap:10px;max-width:calc(100vw - 20px);margin:10px auto 12px;display:flex;position:relative}.center-play-area,.player-rack{--mobile-center-tile-width:58px;--mobile-rack-tile-width:47px;--mobile-rack-slot-width:45px}.center-play-area .center-module{flex:0 auto;order:1;margin:0}.center-item:first-child{order:2}.center-item:nth-child(2){order:1}.center-item:last-child{order:3}.center-item strong{font-size:.72rem}.draw-stack{height:88px;width:var(--mobile-center-tile-width)}.game-tile{height:calc(var(--mobile-center-tile-width) * 88 / 58);width:var(--mobile-center-tile-width)}.game-tile span{font-size:1.55rem}.game-tile i{width:7px;height:7px;bottom:8px}.game-actions{justify-content:center;gap:8px;width:100%;margin:10px auto 0;position:relative;bottom:auto;left:auto;transform:none}.game-action{border-radius:999px;gap:5px;min-width:0;min-height:42px;padding:0 14px;font-size:.78rem}.game-action.secondary:first-child{display:inline-flex}.game-action.secondary:nth-child(2){display:none}.game-action.primary{color:#eae1d485;background:var(--bg-panel);min-width:118px}.game-action.primary:not(:disabled){background:var(--accent);color:#3c2f00}.desktop-action-label{display:none}.mobile-action-label{display:inline}.player-rack{--rack-slot-width:var(--mobile-rack-slot-width);--rack-tile-width:var(--mobile-rack-tile-width);background:linear-gradient(180deg, var(--rack-1), var(--rack-2));border:1px solid var(--rack-border);bottom:env(safe-area-inset-bottom,0);max-width:none;min-height:auto;padding:10px 10px calc(12px + env(safe-area-inset-bottom,0));z-index:4;border-radius:18px 18px 0 0;width:100%;margin:0;position:sticky;box-shadow:0 -8px 20px #00000073,inset 0 2px 4px #ffffff0d}.rack-inner{background:var(--rack-inner-bg);border:1px solid var(--rack-inner-border);overscroll-behavior-x:contain;scroll-behavior:smooth;scrollbar-width:none;touch-action:pan-x;gap:8px;padding:8px;overflow-x:auto}.rack-inner::-webkit-scrollbar{display:none}.rack-row{background:var(--rack-row-bg);border-bottom:2px solid var(--rack-row-border);grid-template-columns:repeat(15, var(--rack-slot-width));justify-content:flex-start;gap:0;width:max-content;min-width:100%;min-height:64px;padding:6px 8px;overflow:visible}.rack-row .game-tile{aspect-ratio:25/39;flex:0 0 var(--rack-tile-width);touch-action:none;height:auto;width:var(--rack-tile-width)}.rack-slot{min-height:calc(var(--rack-tile-width) * 39 / 25 + 2px);width:var(--rack-slot-width)}.rack-row .game-tile span{font-size:1.15rem}.rack-row .game-tile i{width:5px;height:5px;bottom:5px}.rack-drag-layer .game-tile{aspect-ratio:25/39;height:auto;width:var(--rack-tile-width)}.rack-drag-layer .game-tile span{font-size:1.15rem}.game-utility-controls{z-index:22;background:#110e07b3;border:1px solid #ffffff12;border-radius:999px;flex-direction:column;flex:none;order:2;align-items:center;gap:6px;padding:4px;display:flex;position:relative;top:auto;right:auto;transform:none}.game-utility-controls .chat-toggle,.game-utility-controls .sound-control,.game-utility-controls .rack-theme-control,.game-utility-controls .fullscreen-toggle{position:static}.game-utility-controls .chat-toggle{border-radius:999px;justify-content:center;width:36px;height:36px;padding:0;overflow:hidden}.game-utility-controls .chat-toggle-label{display:none}.game-utility-controls .material-symbols-outlined.app-icon{flex:0 0 1em;justify-content:center;align-items:center;width:1em;height:1em;line-height:1;display:inline-flex;overflow:hidden}.game-utility-controls .sound-control{background:0 0;border:0;border-radius:999px;justify-content:center;width:36px;height:36px;padding:0;position:relative;inset:auto}.game-utility-controls .sound-control input{opacity:0;pointer-events:none;transform-origin:100%;background:#110e07eb;border:1px solid #ffffff14;border-radius:999px;width:88px;padding:6px 10px;transition:opacity .14s,transform .14s;display:block;position:absolute;top:50%;right:44px;transform:translateY(-50%)scaleX(.7)}.game-utility-controls .sound-control.expanded input{opacity:1;pointer-events:auto;transform:translateY(-50%)scaleX(1)}.game-utility-controls .rack-theme-toggle,.game-utility-controls .fullscreen-toggle{background:0 0;border:0;width:36px;height:36px}.game-utility-controls .rack-theme-control{justify-self:center}.game-utility-controls .rack-theme-menu{top:46px;bottom:auto;right:0}}@media (max-width:360px){.top-app-bar{min-height:56px;padding:0 10px}.brand-link{font-size:1rem}.turn-banner{min-height:42px;padding:8px 10px;font-size:.78rem}.mobile-opponents{gap:4px;margin:6px 8px 0}.mobile-opponents .game-player-card{padding:6px 4px}.mobile-opponents .game-avatar{flex-basis:38px;height:38px}.center-play-area,.player-rack{--mobile-center-tile-width:50px;--mobile-rack-tile-width:42px;--mobile-rack-slot-width:40px}.center-module{gap:10px}.center-item strong{font-size:.64rem}.okey-badge{padding:4px 9px;font-size:.64rem;top:-18px}.draw-stack span{font-size:.68rem;top:-12px;right:-11px}.game-actions{margin-top:6px}.game-action{min-height:38px;padding:0 12px}.player-rack{padding:8px 8px calc(10px + env(safe-area-inset-bottom,0))}.rack-inner{padding:7px}.rack-row{min-height:58px}}@media (orientation:landscape) and (max-width:950px) and (max-height:520px){main[data-game-mode=playing] .top-app-bar{display:none}main[data-game-mode=playing]>section{min-height:100dvh}.top-app-bar{min-height:46px;padding:0 10px}.top-actions .control-button{min-height:36px;padding:0 10px}.game-shell{width:100vw;min-height:100dvh;position:relative;overflow:clip hidden}.game-table-surface{border:0;border-radius:0;flex-direction:column;width:100vw;max-width:none;min-height:100dvh;margin:0;display:flex;overflow:visible}.turn-banner,.desktop-only{display:none}.mobile-opponents{display:grid}.mobile-game-info{display:inline-flex}.turn-banner-timer,.turn-banner-timer.urgent{display:none}.mobile-opponents{grid-template-columns:repeat(3,minmax(76px,1fr));gap:6px;margin:4px 72px 0 10px}.mobile-opponents .game-player-card{min-height:38px;padding:4px 6px}.mobile-opponents .game-avatar{flex-basis:28px;height:28px}.mobile-opponents .game-player-card p{font-size:.72rem;line-height:1.05}.mobile-opponents .player-bot-chip{padding:2px 4px;font-size:.52rem}.mobile-opponent-seat{gap:2px}.mobile-discard-badge{transform-origin:top;background:#110e076b;border-color:#ffffff0a;border-radius:9px;margin-top:-2px;padding:3px;display:inline-flex;transform:scale(.66)}.mobile-discard-badge.clickable:not(:disabled){border-color:#f2ca5080;box-shadow:0 0 0 1px #f2ca5029}.mobile-discard-badge .game-tile.small{width:30px;height:42px}.mobile-discard-badge .game-tile.small span{font-size:.95rem}.mobile-discard-badge .game-tile.small i{width:4px;height:4px;bottom:5px}.mobile-game-info{transform-origin:top;z-index:12;background:#110e078f;border-color:#ffffff0d;align-items:center;margin:0;padding:3px 9px;display:none;position:absolute;top:72px;left:50%;transform:translate(-50%)scale(.8)}.center-play-area,.player-rack{--mobile-center-tile-width:clamp(31px, 6vw, 38px);--mobile-rack-tile-width:clamp(30px, 4.5vw, 34px);--mobile-rack-slot-width:var(--mobile-rack-tile-width)}.center-play-area{flex-direction:row;justify-content:center;align-items:center;gap:6px;max-width:calc(100vw - 112px);margin:6px auto 0;display:flex;position:relative}.center-play-area .center-module{flex:0 auto;order:1;margin:0}.center-module{box-shadow:none;background:0 0;border:0;gap:8px;padding:0;position:relative;top:auto;left:auto;transform:none}.center-item{gap:7px}.center-item strong{font-size:.6rem}.okey-badge{padding:3px 8px;font-size:.58rem;top:-16px}.draw-stack span{padding:4px 7px;font-size:.62rem;top:-10px;right:-10px}.game-utility-controls{z-index:42;background:#110e07d1;border:1px solid #ffffff12;border-radius:999px;flex-direction:column;align-items:center;gap:4px;padding:4px;display:flex;position:fixed;top:82px;right:8px}.game-utility-controls .chat-toggle,.game-utility-controls .sound-control,.game-utility-controls .rack-theme-control,.game-utility-controls .rack-theme-toggle,.game-utility-controls .fullscreen-toggle{width:30px;height:30px;position:static}.game-utility-controls .sound-control{background:0 0;border:0;padding:0;inset:auto}.game-utility-controls .rack-theme-control{bottom:auto;right:auto}.game-utility-controls .chat-toggle,.game-utility-controls .rack-theme-toggle,.game-utility-controls .fullscreen-toggle{background:0 0;border:0;overflow:hidden}.game-utility-controls .chat-toggle-label{display:none}.game-utility-controls .material-symbols-outlined.app-icon{flex:0 0 1em;justify-content:center;align-items:center;width:1em;height:1em;line-height:1;display:inline-flex;overflow:hidden}.game-actions{gap:8px;margin-top:2px}.game-action{min-height:30px;padding:0 9px;font-size:.64rem}.sort-popover{top:calc(100% + 6px);bottom:auto}.player-rack{--rack-slot-width:var(--mobile-rack-slot-width);--rack-tile-width:var(--mobile-rack-tile-width);max-width:min(100vw - 112px,620px);padding:5px 7px calc(6px + env(safe-area-inset-bottom,0));border-radius:14px 14px 0 0;width:auto;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.rack-inner{flex:none;gap:4px;max-width:calc(100vw - 136px);height:auto;padding:4px}.rack-row{flex:none;min-height:42px;padding:3px 5px}.rack-slot{min-height:calc(var(--rack-tile-width) * 39 / 25 + 2px);width:var(--rack-slot-width)}.rack-row .game-tile span,.rack-drag-layer .game-tile span{font-size:1rem}.rack-row .game-tile i{width:4px;height:4px;bottom:4px}.game-shell .chat-panel{width:min(320px,100vw - 16px);max-height:calc(100dvh - 16px);top:auto;bottom:8px;right:8px}}@media (orientation:landscape) and (max-width:740px) and (max-height:390px){.mobile-opponents{grid-template-columns:repeat(3,minmax(66px,1fr));margin-right:58px}.mobile-opponents .game-player-card{gap:4px;padding:3px 5px}.center-play-area,.player-rack{--mobile-center-tile-width:clamp(28px, 5.8vw, 34px);--mobile-rack-tile-width:clamp(28px, 5.1vw, 32px);--mobile-rack-slot-width:clamp(28px, 5.2vw, 32px)}.center-play-area{max-width:calc(100vw - 104px)}.game-utility-controls{top:72px;right:6px}.game-utility-controls .chat-toggle,.game-utility-controls .sound-control,.game-utility-controls .rack-theme-toggle,.game-utility-controls .fullscreen-toggle{width:28px;height:28px}.game-action{min-height:28px;padding:0 8px}.player-rack{max-width:calc(100vw - 82px);padding:4px 5px calc(5px + env(safe-area-inset-bottom,0))}.rack-inner{flex:none;max-width:calc(100vw - 100px);height:auto}.rack-row{min-height:39px;padding:3px 4px}.rack-slot{min-height:calc(var(--rack-tile-width) * 39 / 25 + 2px)}}.svg-icon.app-icon{vertical-align:-.125em;flex:none;width:1em;height:1em;display:inline-block;position:static;overflow:visible;transform:none}.svg-icon.app-icon:before,.svg-icon.app-icon:after{content:none!important}.brand-mark.svg-icon.app-icon{width:28px;height:28px;padding:5px}.control-button .svg-icon.app-icon,.nav-pill .svg-icon.app-icon,.icon-button .svg-icon.app-icon,.game-action .svg-icon.app-icon{width:1.12rem;height:1.12rem}.landing-tags .svg-icon.app-icon,.mini-chip .svg-icon.app-icon,.status-chip .svg-icon.app-icon,.filter-chip .svg-icon.app-icon{width:.95rem;height:.95rem}.landing-lobby-link .svg-icon.app-icon,.social-links .svg-icon.app-icon{width:1rem;height:1rem}.learn-v2-cta.autoplay .svg-icon.app-icon,.learn-v2-side-num .svg-icon.app-icon{width:.9rem;height:.9rem}.learn-turn-node>.svg-icon.app-icon,.learn-flow-arrow.svg-icon.app-icon{width:1.35rem;height:1.35rem}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}
