/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease: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;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@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{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.row-6{grid-row:6}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.grid{display:grid}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}:root{--app-height:100dvh;--visual-height:100dvh;--tg-safe-top:env(safe-area-inset-top,0px);--tg-safe-bottom:env(safe-area-inset-bottom,0px);--tg-safe-left:env(safe-area-inset-left,0px);--tg-safe-right:env(safe-area-inset-right,0px);--ludo-green:#1c9d45;--ludo-green-hi:#53c978;--ludo-yellow:#f2ac00;--ludo-yellow-hi:#ffbd2e;--ludo-red:#e43c35;--ludo-red-hi:#f45d4e;--ludo-blue:#1769c8;--ludo-blue-hi:#438bd8;--page-bg:#0b1520;--page-light:#172231;--page-bottom:#09111b;--surface:#171f2a;--surface-raised:#202a35;--surface-low:#111923;--board-surface:#252d37;--board-well:#121b25;--track-cell:#303944;--cell-border:#ffffff1a;--track-highlight:#ffffff14;--text-primary:#f4eadf;--text-secondary:#aeb7c2;--border:#ffffff1a;--border-strong:#fff3;--shadow-raised:0 7px 14px #00000061, 0 2px 4px #00000042, inset 0 1px 1px #ffffff14;--shadow-soft:0 4px 9px #0000004d, inset 0 1px #ffffff12;--shadow-board:0 12px 22px #0000006b, 0 3px 7px #00000047, inset 0 1px 1px #ffffff1c;--dice-body:#ece3d2;--dice-pip:#15181c;--dice-pedestal:#222b36;--plant:#294333;--plant-light:#395943;--stone:#202b3d;--cloud:#1a2434;--scene-speck:#eee7dc1a;--scene-vignette:#02081057;--board-aura:#4f697e1f;--shadow-control:0 4px 9px #00000040, inset 0 1px 1px #ffffff12;--shadow-float:0 7px 15px #00000047, inset 0 1px 1px #ffffff14;--focus-ring:#8bbcf2;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--ludo-green:#53c978;--ludo-green-hi:#7cdb98;--ludo-yellow:#ffbd2e;--ludo-yellow-hi:#ffd166;--ludo-red:#f45d4e;--ludo-red-hi:#ff8376;--ludo-blue:#438bd8;--ludo-blue-hi:#6da9e7;--page-bg:#f8ead7;--page-light:#fff4e6;--page-bottom:#f1dfca;--surface:#fff5e8;--surface-raised:#fff9f1;--surface-low:#f0dfcd;--board-surface:#f6ebdf;--board-well:#fff8ee;--track-cell:#fffaf4;--cell-border:#97664824;--track-highlight:#ffffffc7;--text-primary:#664b3e;--text-secondary:#947565;--border:#704c341a;--border-strong:#704c342e;--shadow-raised:0 7px 14px #7e533521, 0 2px 4px #7e533512, inset 0 1px 1px #ffffffeb;--shadow-soft:0 4px 9px #7e53351f, inset 0 1px #fffffff0;--shadow-board:0 11px 20px #7e533526, 0 3px 6px #7e533514, inset 0 1px 1px #ffffffeb;--dice-body:#fff9eb;--dice-pip:#34322f;--dice-pedestal:#ee5147;--plant:#78ad67;--plant-light:#a5ce8d;--stone:#c8e0de;--cloud:#fff4dd;--scene-speck:#764f321a;--scene-vignette:#9d66411a;--board-aura:#bb774821;--shadow-control:0 4px 9px #7e53351a, inset 0 1px 1px #ffffffe0;--shadow-float:0 7px 15px #7e533521, inset 0 1px 1px #ffffffeb;--focus-ring:#4b87c5;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{width:100%;height:var(--app-height);margin:0;overflow:hidden}html{background:var(--page-bg);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Nunito,Fredoka,Arial Rounded MT Bold,system-ui,sans-serif}body{color:var(--text-primary);background:var(--page-bg);overscroll-behavior:none;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}#root{justify-content:center;display:flex}button,input{font:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{scrollbar-width:none}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.ludo-app{width:min(100vw,480px);height:var(--app-height);isolation:isolate;color:var(--text-primary);background:radial-gradient(ellipse at 50% 43%, var(--page-light) 0%, transparent 57%), radial-gradient(ellipse at 50% 46%, transparent 46%, var(--scene-vignette) 112%), linear-gradient(180deg, var(--page-bg), var(--page-bottom));transition:background-color .18s,color .18s;position:relative;overflow:hidden;container-type:size}.ludo-app:before{content:"";pointer-events:none;z-index:0;opacity:.42;background-image:radial-gradient(circle at 12% 17%, var(--scene-speck) 0 1px, transparent 1.4px), radial-gradient(circle at 86% 13%, var(--scene-speck) 0 1px, transparent 1.4px), radial-gradient(circle at 18% 47%, var(--scene-speck) 0 .8px, transparent 1.3px), radial-gradient(circle at 90% 55%, var(--scene-speck) 0 .8px, transparent 1.3px), radial-gradient(circle at 34% 75%, var(--scene-speck) 0 .7px, transparent 1.2px), repeating-linear-gradient(115deg, transparent 0 4px, #ffffff04 4px 5px);position:absolute;inset:0}button:focus-visible,.ludo-token:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}button:focus{outline:none}button:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.ludo-conn-dot{border:2px solid color-mix(in srgb, currentColor 20%, transparent);background:#8a918f;border-radius:50%;flex:none;width:12px;height:12px;box-shadow:inset 0 1px 2px #ffffff8c,0 2px 4px #00000038}.ludo-conn-dot.is-on{background:#53c978}.ludo-conn-dot.is-off{background:#f2ac00}.ludo-color-bg--red{background:var(--ludo-red)}.ludo-color-bg--green{background:var(--ludo-green)}.ludo-color-bg--yellow{background:var(--ludo-yellow)}.ludo-color-bg--blue{background:var(--ludo-blue)}.ludo-scene{--screen-padding:clamp(10px, 3cqw, 18px);--board-size:min(94cqw, 452px, calc(100cqh - 391px - var(--tg-safe-top) - var(--tg-safe-bottom)));--top-control-size:clamp(42px, 11cqw, 50px);--turn-color:var(--ludo-red);z-index:1;width:100%;height:100%;padding:calc(var(--tg-safe-top) + 16px) calc(var(--tg-safe-right) + 8px) var(--tg-safe-bottom) calc(var(--tg-safe-left) + 8px);flex-direction:column;align-items:center;display:flex;position:relative;overflow:hidden}.ludo-scene--green{--turn-color:var(--ludo-green)}.ludo-scene--yellow{--turn-color:var(--ludo-yellow)}.ludo-scene--red{--turn-color:var(--ludo-red)}.ludo-scene--blue{--turn-color:var(--ludo-blue)}.ludo-topbar{z-index:10;width:var(--board-size);flex:none;justify-content:space-between;align-items:center;height:44px;margin-bottom:6px;display:flex;position:relative}.ludo-roomchip,.ludo-icon,.ludo-turn-status,.ludo-roll-heading{border:1px solid var(--border);background:linear-gradient(180deg, var(--surface-raised), var(--surface));box-shadow:var(--shadow-control)}.ludo-roomchip{min-width:76px;height:34px;color:var(--text-primary);letter-spacing:0;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border-radius:18px;justify-content:center;align-items:center;gap:7px;padding:0 10px;font-family:inherit;font-size:13.5px;font-weight:800;transition:transform .12s,filter .15s;display:inline-flex;overflow:hidden}.ludo-roomchip:active{filter:brightness(.97);transform:translateY(1px)scale(.98)}.ludo-roomchip>span:nth-child(2){text-overflow:ellipsis;min-width:0;overflow:hidden}.ludo-roomchip__watchers{border-left:1px solid var(--border-strong);min-width:27px;height:20px;color:var(--text-secondary);font-variant-numeric:tabular-nums;justify-content:center;align-items:center;gap:3px;margin-right:-4px;padding-left:6px;font-size:10px;font-weight:900;display:inline-flex}.ludo-roomchip__watchers svg{stroke-width:2.5px;width:13px;height:13px}.ludo-icons{align-items:center;gap:4px;display:flex}.ludo-icon{width:44px;min-width:44px;height:44px;box-shadow:none;color:var(--text-primary);isolation:isolate;background:0 0;border:0;border-radius:13px;place-items:center;padding:0;transition:transform .11s,filter .15s;display:grid;position:relative}.ludo-icon:before{content:"";z-index:-1;border:1px solid var(--border);background:linear-gradient(180deg, var(--surface-raised), var(--surface));box-shadow:var(--shadow-control);border-radius:10px;position:absolute;inset:5px}.ludo-icon svg{stroke-width:2.35px;width:20px;height:20px}.ludo-icon:active{filter:brightness(.96);transform:translateY(1px)scale(.96)}.ludo-icon__text{display:none}.ludo-icon__dot{background:var(--ludo-green);border-radius:50%;width:7px;height:7px;position:absolute;top:5px;right:5px}.ludo-turn-status{width:min(198px,100% - 72px);height:32px;min-height:32px;color:var(--text-primary);box-shadow:0 5px 11px color-mix(in srgb, var(--turn-color) 7%, #0000002e), inset 0 1px 1px #ffffff14;white-space:nowrap;border-radius:18px;flex:none;justify-content:center;align-items:center;gap:4px;margin-bottom:9px;padding:0 10px;font-size:12.5px;display:flex}.ludo-turn-status__dot{background:var(--turn-color);border:2px solid color-mix(in srgb, var(--turn-color) 45%, white);border-radius:50%;flex:none;width:10px;height:10px;position:relative;box-shadow:inset 0 1px 2px #ffffff8c,0 2px 4px #0003}.ludo-turn-status__dot:after{content:"";border:1px solid color-mix(in srgb, var(--turn-color) 58%, transparent);border-radius:50%;animation:1.8s ease-out infinite ludo-turn-breathe;position:absolute;inset:-3px}@keyframes ludo-turn-breathe{0%{opacity:.56;transform:scale(.82)}72%,to{opacity:0;transform:scale(1.18)}}.ludo-turn-status strong{color:color-mix(in srgb, var(--turn-color) 78%, var(--text-primary));font-weight:700}.ludo-turn-status span:last-child{font-weight:600}.ludo-scene.is-spectating .ludo-turn-status{--turn-color:var(--ludo-green)}.ludo-scene.is-spectating .ludo-turn-status strong{font-weight:800}.ludo-player-row{width:var(--board-size);flex:none;justify-content:space-between;align-items:center;height:50px;display:flex}.ludo-player-row--top{margin-bottom:4px}.ludo-player-row--bottom{margin-top:4px}.ludo-av{--seat:var(--text-secondary);border:1px solid var(--border);width:min(39cqw,164px);min-width:0;height:50px;color:var(--text-primary);background:linear-gradient(145deg, color-mix(in srgb, var(--surface-raised) 98%, var(--seat) 2%), color-mix(in srgb, var(--surface) 98%, transparent));box-shadow:var(--shadow-float);appearance:none;text-align:left;filter:saturate(.78);border-radius:24px;align-items:center;gap:8px;padding:7px 10px;transition:transform .18s,filter .18s,border-color .18s,box-shadow .18s;display:flex}.ludo-av--green{--seat:var(--ludo-green)}.ludo-av--yellow{--seat:var(--ludo-yellow)}.ludo-av--red{--seat:var(--ludo-red)}.ludo-av--blue{--seat:var(--ludo-blue)}.ludo-av.is-empty{opacity:.46}.ludo-av:not(:disabled){cursor:pointer}.ludo-av:not(:disabled):active{transform:translateY(0)scale(.985)}.ludo-av__avatar{border:2px solid color-mix(in srgb, var(--seat) 82%, white);width:34px;height:34px;color:color-mix(in srgb, var(--seat) 88%, var(--text-primary));background:radial-gradient(circle at 34% 26%, color-mix(in srgb, var(--seat) 26%, white), transparent 32%), linear-gradient(145deg, color-mix(in srgb, var(--seat) 18%, var(--surface-raised)), color-mix(in srgb, var(--seat) 10%, var(--surface)));border-radius:50%;flex:0 0 34px;place-items:center;display:grid;position:relative;box-shadow:0 3px 7px #0000002b,inset 0 2px 2px #ffffff57,inset 0 -2px 4px #0000001f}.ludo-av__avatar svg{stroke-width:2.25px;width:18px;height:18px}.ludo-av__avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.ludo-av__presence{border:2px solid var(--surface);background:var(--seat);border-radius:50%;width:8px;height:8px;position:absolute;bottom:0;right:-1px}.ludo-av__copy{flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;min-width:0;line-height:1.1;display:flex}.ludo-av__name{max-width:88px;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.ludo-av__score{color:color-mix(in srgb, var(--seat) 82%, var(--text-primary));font-size:11.5px;font-weight:800;line-height:1.15}.ludo-av.is-current{filter:saturate();border-color:color-mix(in srgb, var(--seat) 42%, var(--border));box-shadow:0 6px 13px color-mix(in srgb, var(--seat) 10%, transparent), var(--shadow-control);transform:translateY(-1.5px)}.ludo-av.is-current .ludo-av__avatar{border-color:color-mix(in srgb, var(--seat) 76%, white);box-shadow:0 4px 9px color-mix(in srgb, var(--seat) 26%, transparent), inset 0 2px 2px #fff6, inset 0 -2px 4px #0000001f}.ludo-av.is-current .ludo-av__avatar:after{content:"";border:1px solid color-mix(in srgb, var(--seat) 64%, transparent);border-radius:50%;animation:1.45s ease-out infinite ludo-avatar-pulse;position:absolute;inset:-6px}@keyframes ludo-avatar-pulse{0%{opacity:.72;transform:scale(.84)}72%,to{opacity:0;transform:scale(1.16)}}.ludo-stage{z-index:3;width:var(--board-size);height:var(--board-size);backface-visibility:hidden;will-change:transform;flex:none;position:relative;transform:translateZ(0)}.ludo-stage:before{content:"";z-index:-1;background:radial-gradient(ellipse, var(--board-aura), transparent 68%);opacity:.72;pointer-events:none;border-radius:28px;animation:5.2s ease-in-out infinite ludo-board-ambient;position:absolute;inset:-18px}@keyframes ludo-board-ambient{50%{opacity:.48;transform:scale(.985)}}.ludo-dom-board{border:1px solid color-mix(in srgb, var(--border-strong) 86%, white);background:linear-gradient(145deg, color-mix(in srgb, var(--board-surface) 86%, white), var(--board-surface));width:100%;height:100%;box-shadow:0 17px 30px color-mix(in srgb, var(--scene-vignette) 52%, transparent), 0 5px 12px #00000021, inset 0 2px 2px #ffffff47, inset 0 -3px 5px #462d1e1a;border-radius:21px;padding:7px;overflow:hidden}.ludo-board-rotator{transform-origin:50%;width:100%;height:100%;transition:transform .26s ease-out;position:relative}.ludo-board-grid{grid-template-rows:repeat(15,1fr);grid-template-columns:repeat(15,1fr);gap:1.5px;padding:2px;display:grid;position:absolute;inset:0}.ludo-home{--seat:var(--text-secondary);z-index:1;border:1px solid color-mix(in srgb, var(--seat) 72%, white);background:linear-gradient(145deg, color-mix(in srgb, var(--seat) 76%, white), var(--seat) 62%, color-mix(in srgb, var(--seat) 72%, black));box-shadow:0 6px 10px color-mix(in srgb, var(--seat) 25%, #00000059), inset 0 2px 2px #ffffff59;border-radius:16px;margin:4px;position:relative}.ludo-home--red{--seat:var(--ludo-red)}.ludo-home--green{--seat:var(--ludo-green)}.ludo-home--yellow{--seat:var(--ludo-yellow)}.ludo-home--blue{--seat:var(--ludo-blue)}.ludo-home__well{background:color-mix(in srgb, var(--board-well) 88%, var(--seat) 12%);border-radius:12px;position:absolute;inset:12%;box-shadow:inset 0 5px 9px #0003,inset 0 -1px #ffffff59}.ludo-home__slot{aspect-ratio:1;background:color-mix(in srgb, var(--board-well) 78%, var(--seat) 22%);opacity:.22;border-radius:50%;width:18%;position:absolute;box-shadow:inset 0 2px 4px #0000002e}.ludo-home__slot--1{top:24%;left:24%}.ludo-home__slot--2{top:24%;right:24%}.ludo-home__slot--3{bottom:24%;left:24%}.ludo-home__slot--4{bottom:24%;right:24%}.ludo-home.is-finished .ludo-home__slot{opacity:.06;transform:scale(.82)}.ludo-home__rank{--rank-metal:#87909b;--rank-metal-hi:#c7cdd4;--rank-ink:#f8f4ed;z-index:4;border:2px solid color-mix(in srgb, var(--rank-metal) 72%, white);background:radial-gradient(circle at 28% 20%, #ffffff8c, transparent 25%), linear-gradient(145deg, var(--rank-metal-hi), var(--rank-metal) 55%, color-mix(in srgb, var(--rank-metal) 70%, black));color:var(--rank-ink);text-align:center;transform-origin:50%;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:1px;animation:.56s cubic-bezier(.18,.88,.3,1.2) both ludo-rank-arrive;display:flex;position:absolute;inset:19%;box-shadow:0 6px 9px #0000003d,inset 0 2px 2px #ffffff7a,inset 0 -3px 4px #0003}.ludo-home__rank:before{content:"";pointer-events:none;border:1px solid #ffffff4d;border-radius:10px;position:absolute;inset:7%}.ludo-home__rank strong{z-index:1;letter-spacing:0;text-shadow:0 2px 3px #00000047;font-size:clamp(20px,7.2cqw,30px);font-weight:900;line-height:.95;position:relative}.ludo-home__rank small{z-index:1;letter-spacing:.08em;opacity:.82;font-size:clamp(5px,1.65cqw,7px);font-weight:900;line-height:1;position:relative}.ludo-home__rank--1{--rank-metal:#d99a11;--rank-metal-hi:#ffe37a;--rank-ink:#fff9df}.ludo-home__rank--2{--rank-metal:#8d9aa8;--rank-metal-hi:#e5edf2;--rank-ink:#fff}.ludo-home__rank--3{--rank-metal:#a75c31;--rank-metal-hi:#e9a269;--rank-ink:#fff2e7}.ludo-home__rank--4{--rank-metal:#566273;--rank-metal-hi:#929cab;--rank-ink:#eef2f5}@keyframes ludo-rank-arrive{0%{opacity:0;scale:.54}65%{opacity:1;scale:1.08}to{opacity:1;scale:1}}.ludo-cell{z-index:2;border:1px solid var(--cell-border);background:linear-gradient(145deg, color-mix(in srgb, var(--track-cell) 90%, white), var(--track-cell));min-width:0;min-height:0;box-shadow:0 1.5px 3px #00000029, inset 0 1px var(--track-highlight), inset 0 0 0 1px color-mix(in srgb, var(--cell-border) 58%, transparent);border-radius:3px;position:relative}.ludo-cell--home,.ludo-cell--red{background:linear-gradient(145deg, var(--ludo-red-hi), var(--ludo-red))}.ludo-cell--green{background:linear-gradient(145deg, var(--ludo-green-hi), var(--ludo-green))}.ludo-cell--yellow{background:linear-gradient(145deg, var(--ludo-yellow-hi), var(--ludo-yellow))}.ludo-cell--blue{background:linear-gradient(145deg, var(--ludo-blue-hi), var(--ludo-blue))}.ludo-cell__star{clip-path:polygon(50% 0,61% 34%,98% 34%,68% 55%,79% 92%,50% 70%,21% 92%,32% 55%,2% 34%,39% 34%);filter:drop-shadow(0 1px 1px #00000038);background:#e8a822;position:absolute;inset:16%}.ludo-cell__star--red{background:var(--ludo-red)}.ludo-cell__star--green{background:var(--ludo-green)}.ludo-cell__star--yellow{background:var(--ludo-yellow)}.ludo-cell__star--blue{background:var(--ludo-blue)}.ludo-center-home{z-index:4;background:conic-gradient(from -45deg, var(--ludo-green) 0 25%, var(--ludo-yellow) 25% 50%, var(--ludo-blue) 50% 75%, var(--ludo-red) 75% 100%);border-radius:2px;margin:0;position:relative;box-shadow:inset 0 1px 1px #ffffff57,0 2px 4px #0003}.ludo-token-layer{z-index:8;pointer-events:none;position:absolute;inset:2px;container-type:inline-size}.ludo-token{--token-color:var(--text-secondary);--piece-size:clamp(15px, 5.8cqw, 18px);--piece-shift:0px;pointer-events:none;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:50%;width:44px;height:44px;margin-top:-22px;margin-left:-22px;padding:0;position:absolute}.ludo-token--red{--token-color:var(--ludo-red)}.ludo-token--green{--token-color:var(--ludo-green)}.ludo-token--yellow{--token-color:var(--ludo-yellow)}.ludo-token--blue{--token-color:var(--ludo-blue)}.ludo-token.is-stacked{--piece-size:clamp(8px, 2.7cqw, 9.5px);--piece-shift:clamp(4.2px, 1.35cqw, 5px)}.ludo-token.is-stacked[data-stack-size="2"]{--piece-size:clamp(10px, 3.2cqw, 12px);--piece-shift:clamp(4.9px, 1.55cqw, 6px)}.ludo-token.is-stacked[data-stack-size="3"]{--piece-size:clamp(8.5px, 2.9cqw, 10.5px);--piece-shift:clamp(4.6px, 1.45cqw, 5.5px)}.ludo-token.is-crowded{--piece-size:clamp(6.5px, 2.2cqw, 7.5px)}.ludo-token.is-packed{--piece-size:5px}.ludo-token.is-legal{pointer-events:auto;z-index:6}.ludo-token.is-legal.is-stacked{pointer-events:none}.ludo-token.is-legal.is-stacked .ludo-token__piece{pointer-events:auto;cursor:pointer;touch-action:manipulation}.ludo-token__piece{width:var(--piece-size);height:var(--piece-size);transform:translate(calc(-50% + var(--piece-x)), calc(-50% + var(--piece-y)));transition:width .18s,height .18s,transform .18s;position:absolute;top:50%;left:50%}.ludo-token.is-legal.is-stacked .ludo-token__piece:before{content:"";border-radius:50%;position:absolute;inset:-3px}.ludo-token__motion,.ludo-token__cap{border-radius:50%;width:100%;height:100%;display:block;position:relative}.ludo-token__cap{border:1px solid color-mix(in srgb, var(--token-color) 58%, white);background:linear-gradient(155deg, color-mix(in srgb, var(--token-color) 74%, white), var(--token-color) 52%, color-mix(in srgb, var(--token-color) 70%, black));transition:transform .13s,box-shadow .18s,filter .18s;box-shadow:0 3px 4px #00000057,0 1px 1px #0003,inset 0 1px 1px #ffffff6b,inset 0 -2px 2px #0000003d}.ludo-token__body{background:radial-gradient(circle at 31% 24%, #ffffffb8 0 8%, transparent 10%), radial-gradient(circle at 40% 34%, color-mix(in srgb, var(--token-color) 52%, white), var(--token-color) 54%, color-mix(in srgb, var(--token-color) 76%, black) 100%);border-radius:50%;position:absolute;inset:1.5px;overflow:hidden;box-shadow:inset 0 2px 2px #ffffff57,inset 0 -3px 3px #00000038}.ludo-token__shine{filter:blur(.35px);background:#ffffff9e;border-radius:50%;width:30%;height:18%;position:absolute;top:17%;left:21%;transform:rotate(-24deg)}.ludo-token__cap:after{content:"";pointer-events:none;border:1px solid #0000;border-radius:50%;position:absolute;inset:-1px}.ludo-token__impact{z-index:-1;border:2px solid color-mix(in srgb, var(--token-color) 58%, white);background:linear-gradient(45deg, transparent 43%, color-mix(in srgb, var(--token-color) 54%, white) 46% 54%, transparent 57%), linear-gradient(-45deg, transparent 43%, color-mix(in srgb, var(--token-color) 54%, white) 46% 54%, transparent 57%);width:34px;height:34px;box-shadow:0 0 0 1px color-mix(in srgb, var(--token-color) 35%, transparent);pointer-events:none;border-radius:50%;margin:-17px 0 0 -17px;position:absolute;top:50%;left:50%}.ludo-token.is-stacked .ludo-token__body{inset:1px}.ludo-token.is-stacked .ludo-token__shine{width:34%;height:22%}.ludo-token.is-crowded .ludo-token__body{inset:.5px}.ludo-token.is-crowded .ludo-token__shine{display:none}.ludo-token__piece.is-landing .ludo-token__motion{animation:.28s cubic-bezier(.2,.86,.34,1) ludo-token-land}.ludo-token.is-legal .ludo-token__cap{animation:1.05s ease-in-out infinite ludo-token-ready;box-shadow:0 4px 5px #00000052,inset 0 1px 1px #ffffff75,inset 0 -2px 2px #0000003d}.ludo-token.is-legal .ludo-token__cap:after,.ludo-token.is-selected .ludo-token__cap:after{border-color:color-mix(in srgb, var(--token-color) 60%, white);animation:1.2s ease-out infinite ludo-token-ring}.ludo-token.is-selected .ludo-token__cap{transform:scale(1.04)}.ludo-token.is-six:not(.is-legal) .ludo-token__cap{animation:.9s ease-in-out infinite ludo-token-ready}.ludo-token.is-legal:active .ludo-token__cap{animation:none;transform:scale(.95)}.ludo-token:focus-visible{outline:none}.ludo-token:focus-visible .ludo-token__cap{box-shadow:0 0 0 2px var(--focus-ring), 0 3px 4px #0000004d}@media (hover:hover) and (pointer:fine){.ludo-token.is-legal:hover .ludo-token__cap{animation:none;transform:translateY(-2px)}}@keyframes ludo-token-ready{50%{transform:translateY(-1.5px)scale(1.025)}}@keyframes ludo-token-ring{0%{opacity:.72;transform:scale(.86)}72%,to{opacity:0;transform:scale(1.12)}}@keyframes ludo-token-land{0%{transform:translateY(-1px)scale(1)}58%{transform:translateY(0)scale(1.08)}to{transform:translateY(0)scale(1)}}.ludo-roll-heading{z-index:5;min-width:180px;height:36px;color:var(--text-primary);letter-spacing:0;box-shadow:var(--shadow-control);border-radius:19px;flex:none;place-items:center;margin-top:7px;padding:0 20px;font-size:15.5px;font-weight:800;display:grid;position:relative}.ludo-roll-heading:after{content:"";background:linear-gradient(180deg, var(--border-strong), transparent);pointer-events:none;width:2px;height:8px;position:absolute;bottom:-8px;left:50%;translate:-50%}.ludo-dice-zone{z-index:5;flex:none;justify-content:center;align-items:flex-end;width:100%;height:120px;margin-top:7px;display:flex;position:relative}.ludo-turnbar{display:none}.ludo-dice-control{border:1px solid color-mix(in srgb, var(--dice-pedestal) 48%, var(--border));width:156px;min-width:156px;height:76px;color:var(--text-primary);background:linear-gradient(160deg, color-mix(in srgb, var(--dice-pedestal) 78%, white), var(--dice-pedestal) 62%, color-mix(in srgb, var(--dice-pedestal) 80%, black));border-radius:38px 38px 27px 27px;justify-content:center;align-items:flex-end;padding:0 15px 8px;transition:transform .11s,filter .15s;display:flex;position:relative;box-shadow:0 12px 20px #00000040,inset 0 2px 2px #ffffff38,inset 0 -5px 7px #00000029}.ludo-dice-control:before{content:"";background:color-mix(in srgb, var(--dice-pedestal) 88%, var(--surface-raised));border:1px solid #ffffff1f;border-radius:50%;height:39px;position:absolute;top:-2px;left:11px;right:11px;box-shadow:inset 0 5px 9px #0003}.ludo-dice-control:active:not(:disabled){transform:translateY(2px)scale(.98)}.ludo-dice-control:disabled{filter:saturate(.76)}.ludo-dice-control__stage{z-index:2;perspective:900px;perspective-origin:50% 44%;width:96px;height:90px;position:absolute;top:-40px;left:50%;transform:translate(-50%)}.ludo-die-shadow{background:radial-gradient(#00000052,#0000 70%);border-radius:50%;width:68px;height:14px;position:absolute;bottom:1px;left:50%;transform:translate(-50%)}.ludo-die{width:70px;height:70px;transform-style:preserve-3d;-webkit-transform-style:preserve-3d;transition:transform .32s cubic-bezier(.2,.9,.35,1.15);will-change:transform;margin:5px auto;-webkit-transition:-webkit-transform .32s cubic-bezier(.2,.9,.35,1.15);display:block;position:relative;transform:translateZ(-35px)rotateX(-15deg)rotateY(20deg)}.ludo-die__face{background:radial-gradient(circle at 30% 22%, #fffef6, var(--dice-body) 66%, color-mix(in srgb, var(--dice-body) 78%, #8e806d));backface-visibility:hidden;border:1px solid #ffffffc2;border-radius:16px;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:3px;padding:10px;display:grid;position:absolute;inset:0;box-shadow:inset 0 4px 7px #ffffffb8,inset 0 -5px 7px #533f2b21}.ludo-die__face--front{transform:rotateY(0)translateZ(35px)}.ludo-die__face--back{transform:rotateY(180deg)translateZ(35px)}.ludo-die__face--right{transform:rotateY(90deg)translateZ(35px)}.ludo-die__face--left{transform:rotateY(-90deg)translateZ(35px)}.ludo-die__face--top{transform:rotateX(90deg)translateZ(35px)}.ludo-die__face--bottom{transform:rotateX(-90deg)translateZ(35px)}.ludo-die__pip{background:0 0;border-radius:50%}.ludo-die__pip.is-on{background:radial-gradient(circle at 35% 30%, #4b4d4d, var(--dice-pip) 72%);box-shadow:inset 0 2px 2px #0000008f,0 1px #ffffff73}.ludo-dice-control__label{z-index:3;min-height:23px;color:color-mix(in srgb, var(--text-primary) 92%, white);text-transform:uppercase;font-size:18px;font-weight:800;line-height:23px;position:relative}:root[data-theme=light] .ludo-dice-control__label{color:#fff8ef}.ludo-dice-burst{display:none}.ludo-dice-control.is-rollable{animation:1.8s ease-in-out infinite ludo-dice-idle}.ludo-dice-control.is-landed .ludo-dice-control__stage{animation:.36s ease-out ludo-dice-land}@keyframes ludo-dice-idle{50%{transform:translateY(-2px)}}@keyframes ludo-dice-land{40%{transform:translate(-50%)scale(1.1)}}.ludo-decor{z-index:0;pointer-events:none;opacity:.86;height:164px;position:absolute;bottom:0;left:0;right:0;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0,#000 22% 100%);mask-image:linear-gradient(#0000 0,#000 22% 100%)}.ludo-decor__plant{width:108px;height:130px;position:absolute;bottom:28px;overflow:visible}.ludo-decor__plant--left{left:-22px}.ludo-decor__plant--right{right:-22px;transform:scaleX(-1)}.ludo-decor__leaves{fill:var(--plant);stroke:color-mix(in srgb, var(--plant) 72%, black);stroke-width:1px}.ludo-decor__leaves path:nth-child(2),.ludo-decor__leaves path:nth-child(4){fill:var(--plant-light)}.ludo-decor__stones{fill:var(--stone)}.ludo-decor__cloud{fill:var(--cloud)}.ludo-decor__stones,.ludo-decor__cloud{transform:translateY(-12px)}:root[data-theme=dark] .ludo-decor{opacity:.58}.ludo-screen-fx{--fx-a:#ffd45a;--fx-b:#ef8f24;z-index:80;pointer-events:none;contain:layout paint style;place-items:center;padding:20px;display:grid;position:absolute;inset:0}.ludo-screen-fx__burst{aspect-ratio:1;border:2px solid color-mix(in srgb, var(--fx-a) 56%, transparent);opacity:.56;width:clamp(138px,44cqw,190px);box-shadow:0 0 0 7px color-mix(in srgb, var(--fx-a) 14%, transparent), 0 0 0 15px color-mix(in srgb, var(--fx-b) 8%, transparent);will-change:transform, opacity;border-radius:50%;animation:.72s ease-out both ludo-fx-burst;position:absolute}.ludo-screen-fx__text{z-index:1;color:#0000;background:linear-gradient(180deg, color-mix(in srgb, var(--fx-a) 78%, white), var(--fx-a) 42%, var(--fx-b));text-shadow:0 7px 8px #00000057;text-align:center;text-transform:uppercase;-webkit-text-stroke:1.5px #271812b8;-webkit-background-clip:text;background-clip:text;width:100%;font-size:clamp(36px,12cqw,54px);font-weight:900;line-height:.95;position:relative}.ludo-screen-fx--capture{--fx-a:#ff766c;--fx-b:#d7272f}.ludo-screen-fx--win{--fx-a:#fff18a;--fx-b:#e6a51c}.ludo-screen-fx--six .ludo-screen-fx__text,.ludo-screen-fx--win .ludo-screen-fx__text{font-style:italic}@keyframes ludo-fx-burst{0%{opacity:0;transform:scale(.34)rotate(-18deg)}46%{opacity:.64}to{opacity:0;transform:scale(1.35)rotate(12deg)}}.ludo-scene.is-capture-impact .ludo-stage{animation:.34s cubic-bezier(.2,.82,.28,1) ludo-board-clash}@keyframes ludo-board-clash{0%,to{transform:translate(0,0)}24%{transform:translate(-3px,1px)rotate(-.35deg)}48%{transform:translate(3px,-1px)rotate(.35deg)}72%{transform:translate(-1.5px)}}.ludo-results{--results-gold:#e7aa20;--results-gold-hi:#ffe27a;z-index:150;min-height:0;padding:calc(var(--tg-safe-top) + 18px) calc(var(--tg-safe-right) + 12px) calc(var(--tg-safe-bottom) + 16px) calc(var(--tg-safe-left) + 12px);isolation:isolate;background:radial-gradient(ellipse at 50% 35%, color-mix(in srgb, var(--board-aura) 86%, transparent), transparent 55%), linear-gradient(180deg, var(--page-bg), var(--page-bottom));color:var(--text-primary);flex-direction:column;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.ludo-results__spotlight{z-index:0;clip-path:polygon(27% 0,73% 0,100% 100%,0 100%);background:linear-gradient(180deg, color-mix(in srgb, var(--results-gold) 11%, transparent), transparent 78%);filter:blur(12px);pointer-events:none;height:62%;position:absolute;top:0;left:9%;right:9%}.ludo-results__rays{z-index:0;aspect-ratio:1;opacity:.075;background:repeating-conic-gradient(from 0deg, var(--results-gold-hi) 0deg 7deg, transparent 7deg 22deg);pointer-events:none;border-radius:50%;width:min(126cqw,570px);animation:24s linear infinite ludo-results-rays;position:absolute;top:31%;left:50%;translate:-50% -50%}.ludo-results__confetti{z-index:20;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.ludo-results__floating-token{--float-token:var(--ludo-red);z-index:1;aspect-ratio:1;border:1px solid color-mix(in srgb, var(--float-token) 62%, white);opacity:.13;background:radial-gradient(circle at 30% 23%, #ffffffb8 0 9%, transparent 11%), radial-gradient(circle at 40% 35%, color-mix(in srgb, var(--float-token) 62%, white), var(--float-token) 58%, color-mix(in srgb, var(--float-token) 70%, black));pointer-events:none;border-radius:50%;width:clamp(24px,8cqw,34px);position:absolute;box-shadow:0 5px 9px #00000038,inset 0 1px 2px #ffffff61}.ludo-results__floating-token--red{--float-token:var(--ludo-red);top:18%;left:3%}.ludo-results__floating-token--green{--float-token:var(--ludo-green);top:29%;right:4%}.ludo-results__floating-token--yellow{--float-token:var(--ludo-yellow);top:58%;left:4%}.ludo-results__floating-token--blue{--float-token:var(--ludo-blue);top:69%;right:3%}.ludo-results__header{z-index:5;text-align:center;flex-direction:column;flex:none;align-items:center;width:100%;display:flex;position:relative}.ludo-results__trophy{border:1px solid color-mix(in srgb, var(--results-gold) 52%, var(--border));background:linear-gradient(145deg, var(--surface-raised), color-mix(in srgb, var(--surface) 88%, var(--results-gold) 12%));width:38px;height:38px;color:var(--results-gold);box-shadow:var(--shadow-control);border-radius:50%;place-items:center;margin-bottom:5px;display:grid}.ludo-results__trophy svg{stroke-width:2.4px;width:21px;height:21px}.ludo-results__header h1{color:#0000;background:linear-gradient(180deg, color-mix(in srgb, var(--results-gold-hi) 72%, white), var(--results-gold) 58%, #a8650d);letter-spacing:0;text-shadow:0 3px 5px #00000029;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(25px,8.5cqw,36px);font-weight:900;line-height:1}.ludo-results__header p{color:var(--text-secondary);letter-spacing:0;margin:6px 0 0;font-size:10px;font-weight:900;line-height:1}.ludo-results__rule{background:linear-gradient(90deg, transparent, var(--results-gold), transparent);border-radius:2px;width:92px;height:2px;margin-top:10px}.ludo-results__local-rank{z-index:5;border:1px solid color-mix(in srgb, var(--results-gold) 32%, var(--border));background:var(--surface-raised);min-height:30px;color:var(--text-secondary);box-shadow:var(--shadow-control);border-radius:15px;align-items:center;gap:4px;margin-top:10px;padding:5px 12px;font-size:12px;font-weight:750;display:inline-flex;position:relative}.ludo-results__local-rank strong{color:var(--results-gold);font-weight:900}.ludo-results__stage{z-index:5;flex:1;justify-content:center;align-items:center;width:min(96cqw,452px);min-height:0;padding:22px 0 3px;display:flex;position:relative}.ludo-results__podium-row{justify-content:center;align-items:flex-end;gap:clamp(3px,1.2cqw,6px);width:100%;display:flex}.ludo-results__place{--player:var(--ludo-blue);--avatar-size:clamp(45px, 13cqw, 58px);--plinth-height:clamp(62px, 18cqh, 88px);min-width:0;color:var(--player);flex-direction:column;flex:1;align-items:center;display:flex}.ludo-results__place--red{--player:var(--ludo-red)}.ludo-results__place--green{--player:var(--ludo-green)}.ludo-results__place--yellow{--player:var(--ludo-yellow)}.ludo-results__place--blue{--player:var(--ludo-blue)}.ludo-results__place--1{--avatar-size:clamp(64px, 19cqw, 82px);--plinth-height:clamp(118px, 22cqh, 158px);flex:1.2}.ludo-results__place--2{--avatar-size:clamp(54px, 16cqw, 70px);--plinth-height:clamp(90px, 17cqh, 120px)}.ludo-results__place--3{--avatar-size:clamp(48px, 14cqw, 62px);--plinth-height:clamp(70px, 14cqh, 94px)}.ludo-results__place--4{--avatar-size:clamp(43px, 12cqw, 54px);--plinth-height:clamp(54px, 11cqh, 72px);filter:saturate(.72)}.ludo-results__crown-space{place-items:end center;width:100%;height:31px;display:grid}.ludo-results__crown{color:var(--results-gold);filter:drop-shadow(0 4px 5px #613d0947);place-items:center;display:grid}.ludo-results__crown svg{width:28px;height:28px;fill:color-mix(in srgb, var(--results-gold) 24%, transparent);stroke-width:2.5px}.ludo-results__avatar{width:var(--avatar-size);height:var(--avatar-size);border:3px solid color-mix(in srgb, var(--player) 72%, white);background:radial-gradient(circle at 31% 24%, #ffffff80, transparent 28%), linear-gradient(145deg, color-mix(in srgb, var(--player) 32%, var(--surface-raised)), color-mix(in srgb, var(--player) 16%, var(--surface)));color:var(--player);box-shadow:0 8px 13px #00000040, 0 0 0 3px color-mix(in srgb, var(--player) 12%, transparent), inset 0 2px 2px #ffffff4d;border-radius:50%;flex:none;place-items:center;display:grid;position:relative;overflow:hidden}.ludo-results__avatar img{object-fit:cover;width:100%;height:100%}.ludo-results__avatar>svg{stroke-width:2.1px;width:48%;height:48%}.ludo-results__you-dot{border:2px solid var(--surface-raised);background:var(--results-gold-hi);border-radius:50%;width:10px;height:10px;position:absolute;bottom:3px;right:3px;box-shadow:0 1px 3px #00000052}.ludo-results__place.is-local .ludo-results__avatar{box-shadow:0 8px 13px #00000040, 0 0 0 3px color-mix(in srgb, var(--results-gold) 30%, transparent), inset 0 2px 2px #ffffff4d}.ludo-results__player-copy{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:100%;min-height:32px;margin-top:5px;padding-inline:2px;display:flex}.ludo-results__player-copy strong{max-width:100%;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(10px,3.2cqw,13px);font-weight:900;line-height:1.05;overflow:hidden}.ludo-results__player-copy small{color:color-mix(in srgb, var(--player) 80%, var(--text-secondary));letter-spacing:0;font-size:7px;font-weight:900;line-height:1}.ludo-results__plinth-wrap{width:min(100%,72px);height:var(--plinth-height);border-radius:8px 8px 2px 2px;margin-top:6px;overflow:hidden}.ludo-results__place--1 .ludo-results__plinth-wrap{width:min(100%,86px)}.ludo-results__plinth{border-top:3px solid color-mix(in srgb, var(--player) 62%, white);border-radius:inherit;background:linear-gradient(145deg, #ffffff2e, transparent 35%), linear-gradient(180deg, color-mix(in srgb, var(--player) 76%, white), var(--player) 48%, color-mix(in srgb, var(--player) 70%, black));transform-origin:bottom;justify-content:center;width:100%;height:100%;padding-top:9px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 2px 2px #ffffff47,0 7px 12px #00000047}.ludo-results__plinth span{z-index:1;color:#fff;text-shadow:0 2px 3px #00000061;font-size:clamp(10px,3.3cqw,14px);font-weight:900;line-height:1;position:relative}.ludo-results__plinth b{color:#ffffff1a;text-align:center;font-size:clamp(42px,14cqw,62px);font-weight:900;line-height:1;position:absolute;bottom:-8px;left:0;right:0}.ludo-results__footer{z-index:30;flex-direction:column;flex:none;align-items:center;gap:10px;width:100%;padding-bottom:2px;display:flex;position:relative}.ludo-results__winner-line{border:1px solid color-mix(in srgb, var(--results-gold) 28%, var(--border));background:color-mix(in srgb, var(--surface-raised) 91%, var(--results-gold) 9%);min-height:34px;color:var(--text-secondary);box-shadow:var(--shadow-control);border-radius:17px;justify-content:center;align-items:center;gap:5px;margin:0;padding:6px 12px;font-size:11px;font-weight:700;display:inline-flex}.ludo-results__winner-line svg{width:14px;height:14px;color:var(--results-gold);flex:none}.ludo-results__winner-line strong{color:var(--text-primary);font-weight:900}.ludo-results__leave{border:1px solid color-mix(in srgb, var(--results-gold) 28%, var(--border-strong));background:linear-gradient(180deg, var(--surface-raised), var(--surface));width:min(72cqw,250px);min-height:48px;color:var(--text-primary);box-shadow:var(--shadow-raised);border-radius:15px;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:900;display:inline-flex}.ludo-results__leave svg{width:17px;height:17px;color:var(--results-gold);stroke-width:2.4px}.ludo-results__leave:active{transform:translateY(1px)}.ludo-results .ludo-decor{z-index:2;opacity:.58;height:126px}.ludo-results .ludo-decor__plant{transform-origin:bottom;bottom:2px;transform:scale(.82)}.ludo-results .ludo-decor__plant--right{transform:scale(-.82,.82)}@keyframes ludo-results-rays{to{rotate:360deg}}@container (height<=740px){.ludo-results{padding-top:calc(var(--tg-safe-top) + 10px);padding-bottom:calc(var(--tg-safe-bottom) + 9px)}.ludo-results__trophy{width:32px;height:32px;margin-bottom:3px}.ludo-results__header h1{font-size:clamp(23px,7.5cqw,31px)}.ludo-results__header p{margin-top:4px}.ludo-results__rule{margin-top:7px}.ludo-results__local-rank{min-height:27px;margin-top:7px}.ludo-results__stage{padding-top:2px}.ludo-results__place--1{--avatar-size:clamp(58px, 17cqw, 72px);--plinth-height:clamp(102px, 20cqh, 134px)}.ludo-results__place--2{--avatar-size:clamp(50px, 14cqw, 62px);--plinth-height:clamp(78px, 15cqh, 102px)}.ludo-results__place--3{--avatar-size:clamp(45px, 13cqw, 56px);--plinth-height:clamp(62px, 12cqh, 82px)}.ludo-results__place--4{--avatar-size:clamp(41px, 11cqw, 50px);--plinth-height:clamp(48px, 9cqh, 64px)}.ludo-results__crown-space{height:25px}.ludo-results__crown svg{width:23px;height:23px}.ludo-results__winner-line{min-height:30px;padding-block:4px}.ludo-results__leave{min-height:44px}.ludo-results__footer{gap:7px}}.ludo-notice{z-index:80;left:50%;top:calc(var(--tg-safe-top) + 66px);border:1px solid color-mix(in srgb, var(--ludo-red) 42%, var(--border));background:var(--surface-raised);width:min(100vw - 24px,390px);min-height:44px;color:var(--ludo-red);box-shadow:var(--shadow-raised);text-align:center;border-radius:14px;place-items:center;padding:8px 14px;font-size:13px;font-weight:800;display:grid;position:fixed;translate:-50%}.ludo-lobby-screen{--lobby-wood:#dba56d;--lobby-wood-hi:#efc99b;--lobby-wood-low:#b97647;--lobby-ink:#613a23;--lobby-cream:#fff8ed;--lobby-seat-hi:#fff5e8;--lobby-seat-low:#f4e3d1;z-index:1;width:100%;height:100%;padding:calc(var(--tg-safe-top) + 9px) calc(var(--tg-safe-right) + 12px) calc(var(--tg-safe-bottom) + 6px) calc(var(--tg-safe-left) + 12px);isolation:isolate;background:radial-gradient(at 50% 39%,#fff8ebeb 0%,#fdecd6a3 48%,#0000 73%),linear-gradient(#fbe8d2 0%,#fae3c8 100%);flex-direction:column;align-items:center;gap:4px;display:flex;position:relative;overflow:hidden}:root[data-theme=dark] .ludo-lobby-screen{--lobby-wood:#44392f;--lobby-wood-hi:#665344;--lobby-wood-low:#211d1a;--lobby-ink:var(--text-primary);--lobby-cream:#202a35;--lobby-seat-hi:#28323d;--lobby-seat-low:#1c2530;background:radial-gradient(at 50% 39%,#1f2c39ad 0%,#0d1925b8 52%,#0000 74%),linear-gradient(#0d1824 0%,#09131e 100%)}.ludo-lobby-screen:before{content:"";z-index:0;opacity:.44;background:radial-gradient(circle at 16% 29%, color-mix(in srgb, var(--ludo-green) 34%, transparent) 0 1.5px, transparent 2.2px), radial-gradient(circle at 86% 35%, color-mix(in srgb, var(--ludo-yellow) 32%, transparent) 0 1.4px, transparent 2.1px), radial-gradient(circle at 23% 57%, color-mix(in srgb, var(--ludo-red) 26%, transparent) 0 1.2px, transparent 2px), radial-gradient(circle at 78% 62%, color-mix(in srgb, var(--ludo-blue) 28%, transparent) 0 1.3px, transparent 2px);pointer-events:none;position:absolute;inset:0}.ludo-lobby-light{z-index:0;opacity:.86;background:radial-gradient(ellipse, color-mix(in srgb, var(--page-light) 86%, transparent), transparent 69%);filter:blur(12px);pointer-events:none;border-radius:50%;width:min(128cqw,580px);height:77%;position:absolute;top:3%;left:50%;translate:-50%}.ludo-lobby-foliage{z-index:1;pointer-events:none;position:absolute;inset:0;overflow:hidden}.ludo-lobby-foliage__sprig{opacity:.82;filter:drop-shadow(0 5px 5px #48592d2b);width:64px;height:70px;position:absolute;top:-24px}.ludo-lobby-foliage__sprig--left{left:-39px;rotate:-18deg}.ludo-lobby-foliage__sprig--right{right:-39px;rotate:-18deg;scale:-1 1}.ludo-lobby-foliage__sprig i{border:1px solid color-mix(in srgb, var(--plant) 70%, black);background:linear-gradient(135deg, var(--plant-light), var(--plant));transform-origin:bottom;border-radius:90% 10% 90% 12%;width:24px;height:45px;position:absolute;box-shadow:inset 4px 3px 7px #ffffff30}.ludo-lobby-foliage__sprig i:first-child{bottom:1px;left:7px;rotate:-30deg}.ludo-lobby-foliage__sprig i:nth-child(2){bottom:14px;left:23px;rotate:-3deg}.ludo-lobby-foliage__sprig i:nth-child(3){bottom:2px;left:38px;rotate:28deg}.ludo-lobby-topbar{z-index:5;flex:none;justify-content:space-between;align-items:center;width:min(100%,420px);height:48px;display:flex;position:relative}.ludo-lobby-mark,.ludo-lobby-help,.ludo-lobby-code,.ludo-lobby-presence,.ludo-lobby-meta,.ludo-lobby-actions,.ludo-lobby-waiting{border:1px solid color-mix(in srgb, var(--border-strong) 72%, white 28%);background:linear-gradient(145deg, var(--surface-raised), var(--surface));box-shadow:0 6px 12px color-mix(in srgb, var(--lobby-wood-low) 17%, transparent), inset 0 1px 1px #ffffffdb, inset 0 -2px 3px color-mix(in srgb, var(--lobby-wood-low) 9%, transparent)}:root[data-theme=dark] .ludo-lobby-mark,:root[data-theme=dark] .ludo-lobby-help,:root[data-theme=dark] .ludo-lobby-code,:root[data-theme=dark] .ludo-lobby-presence,:root[data-theme=dark] .ludo-lobby-meta,:root[data-theme=dark] .ludo-lobby-actions,:root[data-theme=dark] .ludo-lobby-waiting{box-shadow:var(--shadow-control)}.ludo-lobby-mark{border-radius:22px;align-items:center;gap:9px;min-width:114px;height:41px;padding:0 14px 0 11px;display:inline-flex}.ludo-lobby-mark__pips{grid-template-columns:repeat(2,10px);gap:3px;width:27px;display:grid}.ludo-lobby-mark__pip{border:1px solid #54301c33;border-radius:50%;width:10px;height:10px;box-shadow:inset 0 1px 1px #ffffffb3,0 1px 2px #502a1433}.ludo-lobby-mark__pip--red{background:var(--ludo-red)}.ludo-lobby-mark__pip--green{background:var(--ludo-green)}.ludo-lobby-mark__pip--yellow{background:var(--ludo-yellow)}.ludo-lobby-mark__pip--blue{background:var(--ludo-blue)}.ludo-lobby-mark__name{color:var(--lobby-ink);text-shadow:0 1px #ffffff8a;font-size:16px;font-weight:950;line-height:1}.ludo-lobby-topbar__actions{align-items:center;gap:7px;display:flex}.ludo-lobby-help,.ludo-lobby-code{height:44px;color:var(--lobby-ink);transition:color .16s,transform .14s,filter .14s}.ludo-lobby-help{border-radius:15px;place-items:center;width:44px;display:grid}.ludo-lobby-help svg{stroke-width:2.45px;width:22px;height:22px}.ludo-lobby-code{border-radius:18px;justify-content:center;align-items:center;gap:8px;min-width:106px;padding:0 11px 0 14px;display:inline-flex}.ludo-lobby-code span{letter-spacing:1.1px;font-size:13px;font-weight:950}.ludo-lobby-code svg{stroke-width:2.4px;width:17px;height:17px}.ludo-lobby-code.is-copied{color:var(--ludo-green)}.ludo-lobby-help:active,.ludo-lobby-code:active{filter:brightness(.97);transform:translateY(2px)scale(.98)}.ludo-lobby-stage{z-index:4;flex-direction:column;flex:1;align-items:center;gap:clamp(5px,.85cqh,7px);width:min(100%,420px);min-height:0;display:flex;position:relative}.ludo-lobby-roomline{flex:none;justify-content:flex-start;align-items:center;width:100%;min-height:40px;display:flex}.ludo-lobby-presence{border-radius:15px;align-items:center;gap:7px;min-width:125px;height:40px;padding:0 10px 0 8px;display:flex}.ludo-lobby-presence__lock{background:color-mix(in srgb, var(--ludo-green) 18%, var(--surface-raised));width:26px;height:26px;color:color-mix(in srgb, var(--ludo-green) 82%, #285c32);border-radius:9px;flex:none;place-items:center;display:grid;position:relative;box-shadow:inset 0 2px 3px #ffffffa6,0 2px 4px #5238251f}.ludo-lobby-presence__lock svg{stroke-width:2.4px;width:16px;height:16px}.ludo-lobby-presence__lock i{border:2px solid var(--surface-raised);background:var(--ludo-yellow);border-radius:50%;width:8px;height:8px;position:absolute;bottom:-2px;right:-2px}.ludo-lobby-presence__lock i.is-on{background:var(--ludo-green)}.ludo-lobby-presence>span:last-child{flex-direction:column;gap:1px;min-width:0;display:flex}.ludo-lobby-presence strong{color:var(--lobby-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:900;line-height:1.08;overflow:hidden}.ludo-lobby-presence small{color:var(--text-secondary);font-size:9px;font-weight:800;line-height:1.1}.ludo-lobby-heading{text-align:center;flex-direction:column;flex:none;justify-content:flex-end;align-items:center;gap:1px;min-height:67px;display:flex}.ludo-lobby-heading__crown{width:118px;height:20px;color:var(--ludo-yellow);grid-template-columns:1fr 28px 1fr;align-items:center;gap:6px;display:grid}.ludo-lobby-heading__crown i{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--ludo-yellow) 62%, var(--lobby-wood-low)));height:1px}.ludo-lobby-heading__crown i:last-child{transform:scaleX(-1)}.ludo-lobby-heading__crown svg{filter:drop-shadow(0 3px 2px #854d1840);width:28px;height:28px;translate:0 -3px}.ludo-lobby-heading__eyebrow{color:var(--text-secondary);align-items:center;gap:6px;font-size:10.5px;font-weight:850;line-height:1.1;display:inline-flex}.ludo-lobby-heading__eyebrow svg{width:11px;height:11px}.ludo-lobby-heading__eyebrow svg:first-child{color:var(--ludo-blue)}.ludo-lobby-heading__eyebrow svg:last-child{color:var(--ludo-yellow)}.ludo-lobby-heading h1{color:var(--lobby-ink);letter-spacing:0;text-shadow:0 2px #ffffff78,0 3px 3px #5f351b21;margin:0;font-size:clamp(22px,6.45cqw,27px);font-weight:950;line-height:1.02}.ludo-lobby-board{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--lobby-wood-hi) 70%, white 30%);background:linear-gradient(90deg, transparent 0 9%, #ffffff14 9.3%, transparent 9.7% 47%, #6c401e0d 47.3%, transparent 47.8% 100%), linear-gradient(145deg, var(--lobby-wood-hi), var(--lobby-wood) 58%, color-mix(in srgb, var(--lobby-wood-low) 74%, var(--lobby-wood)));width:min(100%,346px,43cqh);box-shadow:0 15px 24px color-mix(in srgb, var(--lobby-wood-low) 22%, transparent), 0 3px 5px color-mix(in srgb, var(--lobby-wood-low) 14%, transparent), inset 0 2px 2px #ffffffad, inset 0 0 0 2px color-mix(in srgb, var(--lobby-wood-hi) 48%, transparent), inset 0 -3px 5px color-mix(in srgb, var(--lobby-wood-low) 17%, transparent);border-radius:clamp(20px,5.7cqw,24px);flex:none;margin-top:0;padding:clamp(7px,2.2cqw,9px);position:relative}.ludo-lobby-board__wood{z-index:0;border:1px solid color-mix(in srgb, var(--lobby-wood-low) 25%, transparent);border-radius:17px;position:absolute;inset:5px;box-shadow:inset 0 2px 4px #5c361d24,inset 0 -1px #ffffff61}.ludo-lobby-board__grid{z-index:2;grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:2px;width:100%;height:100%;display:grid;position:relative}.ludo-lobby-board__grid>div{min-width:0;min-height:0}.ludo-lobby-seat-shell{--seat:var(--ludo-red);width:100%;height:100%;filter:drop-shadow(0 3px 3px color-mix(in srgb, var(--seat) 10%, #4e2c1617));position:relative}.ludo-lobby-seat-shell--green{--seat:var(--ludo-green)}.ludo-lobby-seat-shell--yellow{--seat:var(--ludo-yellow)}.ludo-lobby-seat-shell--red{--seat:var(--ludo-red)}.ludo-lobby-seat-shell--blue{--seat:var(--ludo-blue)}.ludo-lobby-seat{border:4px solid color-mix(in srgb, var(--seat) 78%, var(--lobby-wood-low));background:radial-gradient(circle at 22% 18%, color-mix(in srgb, var(--seat) 7%, transparent), transparent 35%), linear-gradient(145deg, color-mix(in srgb, var(--lobby-seat-hi) 97%, var(--seat) 3%), color-mix(in srgb, var(--lobby-seat-low) 94%, var(--seat) 6%));width:100%;min-width:0;height:100%;min-height:0;color:var(--lobby-ink);box-shadow:inset 0 2px 2px #ffffffbd, inset 0 -5px 7px color-mix(in srgb, var(--seat) 17%, transparent), 0 3px 0 color-mix(in srgb, var(--seat) 70%, var(--lobby-wood-low));flex-direction:column;justify-content:center;align-items:center;gap:clamp(4px,1.15cqw,6px);padding:8px 7px 7px;transition:transform .17s,filter .17s,border-color .17s;display:flex;position:relative;overflow:hidden}.ludo-lobby-seat--green{--seat:var(--ludo-green);border-radius:20px 20px 10px}.ludo-lobby-seat--yellow{--seat:var(--ludo-yellow);border-radius:20px 20px 20px 10px}.ludo-lobby-seat--red{--seat:var(--ludo-red);border-radius:20px 10px 20px 20px}.ludo-lobby-seat--blue{--seat:var(--ludo-blue);border-radius:10px 20px 20px}.ludo-lobby-seat:disabled{cursor:default}.ludo-lobby-seat.is-open{border-color:color-mix(in srgb, var(--seat) 64%, var(--lobby-wood));filter:saturate(.88)}.ludo-lobby-seat.is-open:not(:disabled){cursor:pointer;filter:none}.ludo-lobby-seat.is-self{border-color:var(--seat);box-shadow:inset 0 2px 2px #fffc, inset 0 -5px 7px color-mix(in srgb, var(--seat) 20%, transparent), 0 7px 12px color-mix(in srgb, var(--seat) 26%, transparent), 0 2px 0 color-mix(in srgb, var(--seat) 72%, var(--lobby-wood-low));transform:translateY(-1px)}.ludo-lobby-seat__stitch{z-index:0;border-radius:inherit;pointer-events:none;border:1.5px dashed #0000;position:absolute;inset:7px}.ludo-lobby-seat.is-open .ludo-lobby-seat__stitch{border-color:color-mix(in srgb, var(--seat) 72%, transparent)}.ludo-lobby-seat__well{z-index:2;aspect-ratio:1;border:1px solid color-mix(in srgb, var(--seat) 66%, var(--lobby-wood-low));background:linear-gradient(145deg, color-mix(in srgb, var(--seat) 72%, white), var(--seat));width:clamp(49px,14.4cqw,58px);box-shadow:inset 0 3px 5px #ffffff85, inset 0 -5px 6px color-mix(in srgb, var(--seat) 72%, black), 0 5px 7px color-mix(in srgb, var(--seat) 33%, #4f2e1933);border-radius:50%;flex:none;place-items:center;display:grid;position:relative}.ludo-lobby-seat__avatar{aspect-ratio:1;background:radial-gradient(circle at 32% 22%, #ffffffeb 0 6%, transparent 8%), linear-gradient(145deg, color-mix(in srgb, var(--seat) 45%, white), var(--seat) 68%, color-mix(in srgb, var(--seat) 72%, black));color:#fff9ed;border:1px solid #ffffffad;border-radius:50%;place-items:center;width:72%;display:grid;position:relative;box-shadow:inset 0 2px 3px #ffffff6b,0 3px 5px #482a1638}.ludo-lobby-seat__avatar svg{stroke-width:2.4px;width:54%;height:54%}.ludo-lobby-seat__avatar img,.ludo-spectators__avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.ludo-lobby-seat__avatar.is-open-avatar{background:linear-gradient(145deg, var(--surface-raised), color-mix(in srgb, var(--surface) 89%, var(--seat) 11%));width:72%;color:var(--seat);box-shadow:inset 0 3px 5px color-mix(in srgb, var(--seat) 13%, transparent), 0 2px 4px #482a161f}.ludo-lobby-pawn{filter:drop-shadow(0 2px 1px #41281638);width:25px;height:30px;display:block;position:relative}.ludo-lobby-pawn__head{background:#fff6e6;border-radius:50%;width:11px;height:11px;position:absolute;top:1px;left:50%;translate:-50%;box-shadow:inset 2px 2px 2px #fffc,inset -1px -2px 2px #5b3d262e}.ludo-lobby-pawn__body{background:#fff6e6;border-radius:48% 48% 30% 30%;width:22px;height:18px;position:absolute;bottom:1px;left:50%;translate:-50%;box-shadow:inset 3px 2px 3px #ffffffb3,inset -2px -3px 3px #5b3d262b}.ludo-lobby-pawn__keyhole{z-index:2;background:var(--seat);border-radius:3px;width:4px;height:7px;position:absolute;bottom:7px;left:50%;translate:-50%}.ludo-lobby-pawn__keyhole:before{content:"";background:var(--seat);border-radius:50%;width:5px;height:5px;position:absolute;top:-1px;left:50%;translate:-50%}.ludo-lobby-seat__copy{z-index:2;flex-direction:column;align-items:center;gap:1px;width:100%;min-width:0;display:flex;position:relative}.ludo-lobby-seat__name{width:82%;color:var(--lobby-ink);text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px #ffffff7a;font-size:clamp(12.5px,3.7cqw,15px);font-weight:950;line-height:1.1;overflow:hidden}.ludo-lobby-seat__state{color:color-mix(in srgb, var(--seat) 82%, var(--lobby-ink));font-size:clamp(9.5px,2.8cqw,11px);font-weight:900;line-height:1.15}.ludo-lobby-seat__ornaments{z-index:1;color:var(--seat);opacity:.65;pointer-events:none;position:absolute;inset:0}.ludo-lobby-seat__ornaments svg{filter:drop-shadow(0 1px #fff9);position:absolute}.ludo-lobby-seat__ornaments .is-star-a{width:14px;height:14px;top:13%;left:14%;rotate:-11deg}.ludo-lobby-seat__ornaments .is-star-b{width:14px;height:14px;bottom:14%;right:10%}.ludo-lobby-seat__host{z-index:4;border:1px solid color-mix(in srgb, var(--ludo-yellow) 55%, var(--border));background:var(--surface-raised);width:25px;height:25px;color:var(--ludo-yellow);border-radius:50%;place-items:center;display:grid;position:absolute;top:7px;right:7px;box-shadow:0 3px 5px #53301a2b,inset 0 1px #fffc}.ludo-lobby-seat__host svg{stroke-width:2.3px;width:14px;height:14px}.ludo-lobby-seat--red .ludo-lobby-seat__host{right:32px}.ludo-lobby-seat__remove{z-index:8;width:44px;height:44px;color:var(--ludo-red);background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;top:0;right:0}.ludo-lobby-seat__remove span{border:1px solid color-mix(in srgb, var(--ludo-red) 38%, var(--border));background:linear-gradient(145deg, var(--surface-raised), color-mix(in srgb, var(--surface) 88%, var(--ludo-red) 12%));border-radius:50%;place-items:center;width:29px;height:29px;transition:transform .14s,filter .14s;display:grid;box-shadow:0 4px 7px #6f362629,inset 0 1px #ffffffdb}.ludo-lobby-seat__remove svg{stroke-width:2.6px;width:15px;height:15px}.ludo-lobby-seat__remove:active span{filter:brightness(.96);transform:translateY(1px)scale(.94)}.ludo-lobby-meta{width:min(70%,236px);min-height:34px;color:var(--lobby-ink);border-radius:18px;flex:none;justify-content:center;align-items:center;gap:12px;margin-top:0;padding:0 14px;font-size:10px;font-weight:850;display:flex}.ludo-lobby-meta.is-needing-player{gap:8px;width:min(92%,312px);padding-inline:12px;font-size:9.5px}.ludo-lobby-meta span{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.ludo-lobby-meta svg{stroke-width:2.3px;width:14px;height:14px}.ludo-lobby-meta>i{background:color-mix(in srgb, var(--lobby-ink) 28%, transparent);width:1px;height:17px}.ludo-lobby-meta__watchers{min-width:0;min-height:34px;color:var(--ludo-green);font:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0 3px;display:inline-flex}.ludo-lobby-meta__watchers:active{transform:scale(.97)}.ludo-spectators{flex-direction:column;gap:15px;display:flex}.ludo-spectators__summary{border:1px solid color-mix(in srgb, var(--ludo-green) 28%, var(--border));background:radial-gradient(circle at 15% 0%, color-mix(in srgb, var(--ludo-green) 15%, transparent), transparent 42%), linear-gradient(145deg, var(--surface-raised), var(--surface));border-radius:21px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:76px;padding:11px 12px;display:grid;box-shadow:0 7px 13px #0000001f,inset 0 1px #ffffff2e}.ludo-spectators__live,.ludo-spectators__avatar,.ludo-spectators__empty>span{background:color-mix(in srgb, var(--ludo-green) 15%, var(--surface-raised));color:var(--ludo-green);border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff42,0 4px 8px #0000001f}.ludo-spectators__live{border:2px solid color-mix(in srgb, var(--ludo-green) 55%, var(--border));width:44px;height:44px}.ludo-spectators__live svg{width:20px;height:20px}.ludo-spectators__summary-copy,.ludo-spectators__person{flex-direction:column;gap:2px;min-width:0;display:flex}.ludo-spectators__summary-copy strong{color:var(--text-primary);font-size:13px;font-weight:900}.ludo-spectators__summary-copy small{color:var(--text-secondary);font-size:10px;font-weight:650;line-height:1.25}.ludo-spectators__summary button{border:1px solid var(--border-strong);background:linear-gradient(145deg, var(--surface-raised), var(--surface));min-width:66px;min-height:44px;color:var(--text-primary);border-radius:14px;justify-content:center;align-items:center;gap:5px;padding:0 9px;font-family:inherit;font-size:10px;font-weight:900;display:inline-flex;box-shadow:0 4px 8px #0000001f,inset 0 1px #fff3}.ludo-spectators__summary button svg{width:15px;height:15px}.ludo-spectators__list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.ludo-spectators__list li{border:1px solid var(--border);background:linear-gradient(145deg, var(--surface-raised), var(--surface));border-radius:19px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;min-height:64px;padding:9px 11px;display:grid;box-shadow:0 5px 10px #0000001a,inset 0 1px #ffffff29}.ludo-spectators__list li.is-away{filter:saturate(.65);opacity:.7}.ludo-spectators__avatar{width:42px;height:42px}.ludo-spectators__avatar svg{width:20px;height:20px}.ludo-spectators__person strong{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:900;overflow:hidden}.ludo-spectators__person small{color:var(--text-secondary);font-size:10px;font-weight:700}.ludo-spectators__state{color:var(--ludo-green);text-transform:uppercase;align-items:center;gap:5px;font-size:9px;font-weight:950;display:inline-flex}.ludo-spectators__state i{background:var(--ludo-green);width:8px;height:8px;box-shadow:0 0 0 3px color-mix(in srgb, var(--ludo-green) 14%, transparent);border-radius:50%}.ludo-spectators__state svg{width:13px;height:13px}.ludo-spectators__empty{min-height:160px;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:7px;padding:22px;display:flex}.ludo-spectators__empty>span{width:54px;height:54px;margin-bottom:4px}.ludo-spectators__empty svg{width:24px;height:24px}.ludo-spectators__empty strong{color:var(--text-primary);font-size:14px;font-weight:900}.ludo-spectators__empty small{max-width:240px;font-size:11px;line-height:1.4}.ludo-lobby-actions,.ludo-lobby-waiting{flex:none;width:min(100%,342px)}.ludo-lobby-actions{border-radius:23px;flex-direction:column;gap:10px;margin-top:4px;padding:11px 11px 13px;display:flex}.ludo-lobby-actions__status{justify-content:space-between;align-items:center;gap:8px;min-width:0;min-height:20px;padding:0 4px;display:flex}.ludo-lobby-actions__status>span{color:var(--text-secondary);align-items:center;gap:6px;font-size:11px;font-weight:950;display:inline-flex}.ludo-lobby-actions__status>span svg{width:16px;height:16px}.ludo-lobby-actions__status>span.is-ready{color:color-mix(in srgb, var(--ludo-green) 84%, #265831)}.ludo-lobby-actions__status small{color:var(--lobby-ink);font-size:9.5px;font-weight:800}.ludo-lobby-actions__buttons{grid-template-columns:.95fr 1.35fr;gap:9px;display:grid}.ludo-lobby-action{border:1px solid var(--border-strong);border-radius:17px;justify-content:center;align-items:center;gap:8px;min-width:0;min-height:64px;font-size:13.5px;font-weight:950;transition:transform .14s,filter .15s,opacity .15s,box-shadow .15s;display:inline-flex}.ludo-lobby-action svg{stroke-width:2.4px;width:19px;height:19px}.ludo-lobby-action--secondary{background:linear-gradient(145deg, var(--surface-raised), var(--surface));color:var(--lobby-ink);box-shadow:0 6px 10px #71472a1f,inset 0 1px 1px #ffffffdb,inset 0 -2px 3px #71472a14}.ludo-lobby-action--primary{border-color:color-mix(in srgb, var(--ludo-green) 74%, #2f6e37);background:linear-gradient(180deg, color-mix(in srgb, var(--ludo-green-hi) 88%, white), color-mix(in srgb, var(--ludo-green) 90%, #2b8138));color:#fff;text-shadow:0 1px 1px #1c552447;box-shadow:0 8px 13px color-mix(in srgb, var(--ludo-green) 27%, transparent), inset 0 2px 2px #ffffff6b, inset 0 -4px 4px #175b233b}.ludo-lobby-action:not(:disabled):hover{transform:translateY(-1px)}.ludo-lobby-action:not(:disabled):active{filter:brightness(.96);transform:translateY(2px)scale(.98)}.ludo-lobby-action:disabled{opacity:.42}.ludo-lobby-waiting{border-radius:22px;grid-template-columns:44px 1fr 8px;align-items:center;gap:10px;min-height:74px;padding:10px 14px;display:grid}.ludo-lobby-waiting__pawn{background:color-mix(in srgb, var(--ludo-green) 14%, var(--surface-low));width:42px;height:42px;color:var(--ludo-green);border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 2px 4px #0000001a,0 2px 4px #5531191c}.ludo-lobby-waiting__pawn svg{width:20px;height:20px}.ludo-lobby-waiting>span:nth-child(2){flex-direction:column;gap:2px;min-width:0;display:flex}.ludo-lobby-waiting strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:950;overflow:hidden}.ludo-lobby-waiting small{color:var(--text-secondary);font-size:10px;font-weight:750}.ludo-lobby-waiting>i{background:var(--ludo-green);border-radius:50%;width:7px;height:7px;animation:1.35s ease-in-out infinite ludo-lobby-wait}.ludo-lobby-empty{border:1px solid var(--border);background:linear-gradient(180deg, var(--surface-raised), var(--surface));width:min(100%,340px);min-height:220px;box-shadow:var(--shadow-raised);text-align:center;border-radius:26px;flex-direction:column;justify-content:center;align-items:center;gap:7px;margin:auto;padding:24px;display:flex}.ludo-lobby-empty__icon{background:var(--surface-low);width:52px;height:52px;color:var(--ludo-green);border-radius:50%;place-items:center;display:grid}.ludo-lobby-empty__icon svg{width:24px;height:24px}.ludo-lobby-empty strong{font-size:16px;font-weight:900}.ludo-lobby-empty>span:last-child{color:var(--text-secondary);font-size:12px;font-weight:700}.ludo-lobby-screen>.ludo-decor{z-index:2;opacity:.7;height:176px}.ludo-lobby-screen>.ludo-decor .ludo-decor__plant{transform-origin:0 100%;bottom:-1px;transform:scale(1.08)}.ludo-lobby-screen>.ludo-decor .ludo-decor__plant--right{transform-origin:bottom;transform:scale(-1.08,1.08)}:root[data-theme=dark] .ludo-lobby-screen>.ludo-decor{opacity:.42}@keyframes ludo-lobby-wait{50%{opacity:.34;transform:scale(.78)}}@container (height>=830px){.ludo-lobby-screen>.ludo-decor{height:210px}.ludo-lobby-screen>.ludo-decor .ludo-decor__plant{transform:scale(1.26)}.ludo-lobby-screen>.ludo-decor .ludo-decor__plant--right{transform:scale(-1.26,1.26)}}@container (height>=890px){.ludo-lobby-screen>.ludo-decor{height:260px}.ludo-lobby-screen>.ludo-decor .ludo-decor__plant{transform:scale(1.62)}.ludo-lobby-screen>.ludo-decor .ludo-decor__plant--right{transform:scale(-1.62,1.62)}}@container (height<=760px){.ludo-lobby-screen{padding-top:calc(var(--tg-safe-top) + 5px);padding-bottom:calc(var(--tg-safe-bottom) + 4px);gap:3px}.ludo-lobby-topbar{height:44px}.ludo-lobby-mark{height:38px}.ludo-lobby-help,.ludo-lobby-code{height:40px}.ludo-lobby-help{width:40px}.ludo-lobby-stage{gap:4px}.ludo-lobby-roomline{min-height:41px}.ludo-lobby-presence{height:41px}.ludo-lobby-heading{min-height:58px}.ludo-lobby-heading__crown{height:16px}.ludo-lobby-heading__crown svg{width:24px;height:24px}.ludo-lobby-heading h1{font-size:22px}.ludo-lobby-board{width:min(100%,332px,43cqh)}.ludo-lobby-seat__well{width:clamp(48px,14.5cqw,58px)}.ludo-lobby-meta{min-height:30px}.ludo-lobby-actions{gap:6px;padding:7px 9px 8px}.ludo-lobby-action{min-height:45px}.ludo-lobby-actions__status{min-height:18px}.ludo-lobby-screen>.ludo-decor{height:124px}}@container (width<=350px){.ludo-lobby-screen{padding-inline:9px}.ludo-lobby-mark{min-width:108px;padding-inline:9px 12px}.ludo-lobby-code{min-width:96px}.ludo-lobby-presence{min-width:132px}.ludo-lobby-meta.is-needing-player{gap:6px;width:100%;padding-inline:10px;font-size:9px}.ludo-lobby-meta.is-needing-player svg{width:13px;height:13px}.ludo-lobby-actions__status small{font-size:9px}}@media (prefers-reduced-motion:reduce){.ludo-lobby-waiting>i{animation:none}.ludo-lobby-action,.ludo-lobby-seat,.ludo-lobby-seat__remove span{transition:none}}.ludo-sheet{--sheet-accent:var(--ludo-blue);--sheet-surface:color-mix(in srgb, var(--surface-raised) 94%, var(--sheet-accent) 6%);--sheet-surface-low:color-mix(in srgb, var(--surface) 94%, var(--sheet-accent) 6%);z-index:100;height:var(--visual-height);padding:0 max(12px, var(--tg-safe-right)) max(12px, var(--tg-safe-bottom)) max(12px, var(--tg-safe-left));justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.ludo-sheet--amber{--sheet-accent:var(--ludo-yellow)}.ludo-sheet--emerald{--sheet-accent:var(--ludo-green)}.ludo-sheet--indigo{--sheet-accent:var(--ludo-red)}.ludo-sheet__backdrop{-webkit-backdrop-filter:blur(16px)saturate(.82);background:#00000073;border:0;position:absolute;inset:0}.ludo-sheet__assembly{z-index:1;width:min(100%,460px);max-height:calc(var(--visual-height) - var(--tg-safe-top) - 24px);flex-direction:column;align-items:center;animation:.22s ease-out ludo-sheet-in;display:flex;position:relative}@keyframes ludo-sheet-in{0%{opacity:0;transform:translateY(22px)}}.ludo-sheet__crest{z-index:4;border:1px solid color-mix(in srgb, var(--sheet-accent) 32%, var(--border-strong));background:linear-gradient(155deg, color-mix(in srgb, var(--sheet-surface) 86%, white), var(--sheet-surface));min-width:184px;max-width:calc(100% - 112px);min-height:58px;box-shadow:0 8px 16px color-mix(in srgb, var(--sheet-accent) 12%, #00000040), inset 0 1px #ffffff3d;border-radius:22px 22px 14px 14px;justify-content:center;align-items:center;gap:10px;padding:10px 24px;display:flex;position:relative}.ludo-sheet__crest:after{content:"";border:1px solid color-mix(in srgb, var(--sheet-accent) 18%, transparent);pointer-events:none;border-radius:17px 17px 10px 10px;position:absolute;inset:5px}.ludo-sheet__crest-icon{border:1px solid color-mix(in srgb, var(--sheet-accent) 48%, var(--border));background:linear-gradient(145deg, color-mix(in srgb, var(--sheet-accent) 24%, var(--surface-raised)), color-mix(in srgb, var(--sheet-accent) 10%, var(--surface)));width:38px;height:38px;color:var(--sheet-accent);border-radius:50%;flex:none;place-items:center;display:grid;box-shadow:0 4px 8px #0000002e,inset 0 1px #ffffff59}.ludo-sheet__title{color:var(--text-primary);letter-spacing:0;text-align:center;margin:0;font-size:19px;font-weight:950}.ludo-sheet__neck{z-index:3;border-inline:1px solid color-mix(in srgb, var(--sheet-accent) 28%, var(--border-strong));background:linear-gradient(180deg, var(--sheet-surface), var(--sheet-surface-low));clip-path:polygon(17% 0,83% 0,100% 100%,0 100%);flex:none;width:62px;height:20px;margin:-4px 0 -9px;position:relative;box-shadow:inset 0 1px #ffffff2e}.ludo-sheet__panel{width:100%;min-height:0;max-height:calc(var(--visual-height) - var(--tg-safe-top) - 88px);border:1px solid color-mix(in srgb, var(--sheet-accent) 22%, var(--border-strong));background:radial-gradient(circle at 50% 0, color-mix(in srgb, var(--sheet-accent) 9%, transparent), transparent 34%), linear-gradient(155deg, color-mix(in srgb, var(--sheet-surface) 88%, white), var(--sheet-surface-low));color:var(--text-primary);border-radius:34px 34px 28px 28px;flex-direction:column;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 38px #0000004d,0 5px 12px #0000002e,inset 0 1px #fff3,inset 0 -2px #00000014}.ludo-sheet__panel:before{content:"";border:1px solid color-mix(in srgb, var(--sheet-accent) 12%, transparent);pointer-events:none;border-radius:27px 27px 22px 22px;position:absolute;inset:7px}.ludo-sheet__close{z-index:5;border:1px solid color-mix(in srgb, var(--sheet-accent) 46%, var(--border-strong));background:linear-gradient(145deg, color-mix(in srgb, var(--surface-raised) 88%, white), var(--surface));width:44px;height:44px;color:var(--text-secondary);border-radius:50%;place-items:center;transition:transform .11s,color .14s;display:grid;position:absolute;top:54px;right:10px;box-shadow:0 7px 13px #00000038,inset 0 1px #ffffff57}.ludo-sheet__close:active{color:var(--sheet-accent);transform:scale(.94)}.ludo-sheet__body{z-index:1;min-height:0;padding:32px 18px calc(var(--tg-safe-bottom) + 18px);overscroll-behavior:contain;scrollbar-color:color-mix(in srgb, var(--sheet-accent) 35%, transparent) transparent;flex:1;position:relative;overflow-y:auto}.ludo-sheet--amber .ludo-sheet__panel,.ludo-sheet--emerald .ludo-sheet__panel{height:min(66dvh,570px)}.ludo-sheet--purple .ludo-sheet__panel{min-height:min(44dvh,390px)}.ludo-chat{flex-direction:column;gap:14px;min-height:100%;display:flex}.ludo-chat__list{flex-direction:column;gap:10px;min-height:130px;max-height:44dvh;margin:0;padding:2px 2px 8px;list-style:none;display:flex;overflow-y:auto}.ludo-chat__msg{flex-direction:column;align-items:flex-start;gap:4px;max-width:82%;font-size:14px;display:flex}.ludo-chat__msg.is-own{align-self:flex-end;align-items:flex-end}.ludo-chat__name{color:var(--text-secondary);padding-inline:7px;font-size:11px;font-weight:850}.ludo-chat__bubble{border:1px solid var(--border);background:linear-gradient(145deg, var(--surface-raised), var(--surface));color:var(--text-primary);overflow-wrap:anywhere;border-radius:17px 17px 17px 7px;padding:10px 13px;display:block;position:relative;box-shadow:0 5px 10px #0000001f,inset 0 1px #ffffff2e}.ludo-chat__empty,.ludo-log__empty{min-height:170px;color:var(--text-secondary);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:5px;display:flex}.ludo-chat__empty strong,.ludo-log__empty strong{color:var(--text-primary);font-size:15px}.ludo-chat__empty-icon,.ludo-log__empty-icon{background:color-mix(in srgb, var(--sheet-accent) 14%, var(--surface));width:52px;height:52px;color:var(--sheet-accent);box-shadow:var(--shadow-soft);border-radius:50%;place-items:center;margin-bottom:5px;display:grid}.ludo-chat__compose{border:1px solid var(--border-strong);background:var(--surface-low);border-radius:28px;align-items:center;gap:7px;min-height:56px;margin-top:auto;padding:5px;display:flex;box-shadow:inset 0 2px 5px #0000001f,0 4px 9px #0000001a}.ludo-chat__input{min-width:0;min-height:44px;color:var(--text-primary);background:0 0;border:0;outline:0;flex:1;padding:0 13px;font-size:16px}.ludo-chat__input::placeholder{color:var(--text-secondary);opacity:.72}.ludo-chat__send{background:linear-gradient(145deg, var(--ludo-blue-hi), var(--ludo-blue));color:#fff;width:46px;height:46px;box-shadow:0 6px 10px color-mix(in srgb, var(--ludo-blue) 30%, transparent), inset 0 1px #ffffff5c;border:0;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.ludo-chat__send svg{width:20px;height:20px}.ludo-chat__send:disabled{opacity:.36;box-shadow:none}.ludo-log{flex-direction:column;gap:9px;margin:0;padding:1px 2px 8px;list-style:none;display:flex}.ludo-log__card{--event-accent:var(--ludo-blue);border:1px solid color-mix(in srgb, var(--event-accent) 28%, var(--border));background:linear-gradient(145deg, color-mix(in srgb, var(--event-accent) 8%, var(--surface-raised)), var(--surface));border-radius:18px;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:64px;padding:10px 12px;display:grid;position:relative;box-shadow:0 5px 10px #0000001c,inset 0 1px #ffffff29}.ludo-log__card--roll{--event-accent:var(--ludo-yellow)}.ludo-log__card--capture{--event-accent:var(--ludo-red)}.ludo-log__card--home{--event-accent:var(--ludo-green)}.ludo-log__card--red{--event-accent:var(--ludo-red)}.ludo-log__card--green{--event-accent:var(--ludo-green)}.ludo-log__card--yellow{--event-accent:var(--ludo-yellow)}.ludo-log__card--blue{--event-accent:var(--ludo-blue)}.ludo-log__icon{background:color-mix(in srgb, var(--event-accent) 18%, var(--surface-raised));width:42px;height:42px;color:var(--event-accent);border-radius:14px;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff40,0 3px 7px #0000001f}.ludo-log__icon svg{width:20px;height:20px}.ludo-log__copy{flex-direction:column;gap:2px;min-width:0;display:flex}.ludo-log__copy strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:900;overflow:hidden}.ludo-log__copy span{color:var(--text-secondary);font-size:12px}.ludo-log__value{background:color-mix(in srgb, var(--event-accent) 13%, var(--surface-low));color:var(--event-accent);white-space:nowrap;border-radius:11px;padding:5px 8px;font-size:12px;font-weight:900}.ludo-log__tag{background:var(--event-accent);color:#fff;text-transform:uppercase;border-radius:8px;padding:2px 7px;font-size:9px;font-weight:900;position:absolute;top:-5px;right:10px}.ludo-rules{font-size:14px}.ludo-rules__lead{max-width:300px;color:var(--text-secondary);text-align:center;margin:0 auto 14px;font-size:13px;font-weight:750;line-height:1.4}.ludo-rules__grid{gap:9px;display:grid}.ludo-rule-card{--rule-accent:var(--ludo-blue);border:1px solid color-mix(in srgb, var(--rule-accent) 28%, var(--border));background:linear-gradient(145deg, color-mix(in srgb, var(--rule-accent) 8%, var(--surface-raised)), var(--surface));border-radius:19px;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:11px;min-height:72px;padding:10px 12px;display:grid;box-shadow:0 5px 10px #0000001a,inset 0 1px #ffffff2b}.ludo-rule-card--red{--rule-accent:var(--ludo-red)}.ludo-rule-card--green{--rule-accent:var(--ludo-green)}.ludo-rule-card--yellow{--rule-accent:var(--ludo-yellow)}.ludo-rule-card--blue{--rule-accent:var(--ludo-blue)}.ludo-rule-card__icon{background:color-mix(in srgb, var(--rule-accent) 18%, var(--surface-raised));width:46px;height:46px;color:var(--rule-accent);border-radius:50%;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff47,0 4px 8px #00000021}.ludo-rule-card__icon svg{stroke-width:2.4px;width:21px;height:21px}.ludo-rule-card>span:last-child{flex-direction:column;gap:2px;min-width:0;display:flex}.ludo-rule-card strong{font-size:13px;font-weight:900}.ludo-rule-card small{color:var(--text-secondary);font-size:11.5px;line-height:1.35}.ludo-settings{flex-direction:column;gap:13px;display:flex}.ludo-settings__label{color:var(--text-secondary);text-transform:uppercase;padding-inline:4px;font-size:11px;font-weight:900}.ludo-settings__group{grid-template-columns:1fr 1fr;gap:10px;display:grid}.ludo-settings__group button{border:1px solid var(--border-strong);background:linear-gradient(145deg, var(--surface-raised), var(--surface));min-width:0;min-height:96px;color:var(--text-secondary);text-align:left;border-radius:20px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid;position:relative;box-shadow:0 6px 11px #0000001f,inset 0 1px #ffffff2e}.ludo-settings__group button.is-active{border-color:color-mix(in srgb, var(--ludo-blue) 58%, var(--border));background:linear-gradient(145deg, color-mix(in srgb, var(--ludo-blue) 16%, var(--surface-raised)), color-mix(in srgb, var(--ludo-blue) 8%, var(--surface)));color:var(--text-primary)}.ludo-settings__option-icon,.ludo-settings__link-icon{background:var(--surface-low);width:42px;height:42px;color:var(--ludo-blue);border-radius:14px;place-items:center;display:grid;box-shadow:inset 0 1px #fff3}.ludo-settings__option-icon svg,.ludo-settings__link-icon svg{width:20px;height:20px}.ludo-settings__option-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.ludo-settings__option-copy strong{font-size:14px;font-weight:900}.ludo-settings__option-copy small{color:var(--text-secondary);font-size:10.5px;line-height:1.2}.ludo-settings__check{border:2px solid var(--border-strong);border-radius:50%;width:15px;height:15px;position:absolute;top:10px;right:10px}.ludo-settings__group button.is-active .ludo-settings__check{border-color:var(--ludo-blue);box-shadow:inset 0 0 0 3px var(--surface-raised);background:var(--ludo-blue)}.ludo-settings__links{gap:9px;display:grid}.ludo-settings__link{border:1px solid var(--border);background:linear-gradient(145deg, var(--surface-raised), var(--surface));min-height:68px;color:var(--text-primary);text-align:left;border-radius:19px;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:11px;padding:10px 13px;display:grid;box-shadow:0 5px 10px #0000001a,inset 0 1px #ffffff29}.ludo-settings__link>span:nth-child(2){flex-direction:column;gap:2px;min-width:0;display:flex}.ludo-settings__link strong{font-size:13px;font-weight:900}.ludo-settings__link small{color:var(--text-secondary);font-size:11px}.ludo-settings__link>svg{width:18px;color:var(--text-secondary)}.ludo-sheet{--panel-accent:var(--ludo-red);--panel-accent-hi:var(--ludo-red-hi);--panel-surface:#202a35;--panel-surface-hi:#293541;--panel-surface-low:#17212c;--panel-line:#ffffff21;--panel-shadow:#00000085;height:var(--visual-height);padding:max(14px, var(--tg-safe-top)) max(10px, var(--tg-safe-right)) max(10px, var(--tg-safe-bottom)) max(10px, var(--tg-safe-left));isolation:isolate;align-items:flex-end}.ludo-sheet--coral{--panel-accent:var(--ludo-red);--panel-accent-hi:var(--ludo-red-hi)}.ludo-sheet--blue{--panel-accent:var(--ludo-blue);--panel-accent-hi:var(--ludo-blue-hi)}.ludo-sheet--amber{--panel-accent:var(--ludo-yellow);--panel-accent-hi:var(--ludo-yellow-hi)}.ludo-sheet--purple{--panel-accent:#9b6de3;--panel-accent-hi:#c09af3}.ludo-sheet--green{--panel-accent:var(--ludo-green);--panel-accent-hi:var(--ludo-green-hi)}:root[data-theme=light] .ludo-sheet{--panel-surface:#fff3e5;--panel-surface-hi:#fffaf1;--panel-surface-low:#f2dfcc;--panel-line:#68473326;--panel-shadow:#5c3a253d}.ludo-sheet__backdrop{background:radial-gradient(circle at 50% 68%, color-mix(in srgb, var(--panel-accent) 9%, transparent) 0 18%, #03080e2e 40%, #03080ead 100%), #050a1157;-webkit-backdrop-filter:blur(13px)saturate(.76)}:root[data-theme=light] .ludo-sheet__backdrop{background:radial-gradient(circle at 50% 68%,#fff4e029 0 20%,#5c433033 52%,#3d2a1d61 100%),#503c2829}.ludo-sheet__assembly{width:min(94vw,430px);max-height:calc(var(--visual-height) - var(--tg-safe-top) - var(--tg-safe-bottom) - 18px);animation:none;overflow:visible}.ludo-sheet__crest{z-index:7;border:1px solid color-mix(in srgb, var(--panel-accent) 42%, var(--panel-line));background:linear-gradient(145deg, #ffffff1a, transparent 46%), linear-gradient(160deg, var(--panel-surface-hi), var(--panel-surface));width:max-content;min-width:174px;max-width:calc(100% - 116px);height:56px;min-height:56px;box-shadow:0 11px 20px color-mix(in srgb, var(--panel-accent) 9%, var(--panel-shadow)), 0 3px 5px var(--panel-shadow), inset 0 2px #ffffff2e, inset 0 -3px #0000001c;border-radius:20px;gap:11px;padding:8px 24px 9px 14px}.ludo-sheet__crest:after{border-color:color-mix(in srgb, var(--panel-accent) 18%, transparent);border-radius:15px;inset:5px}.ludo-sheet__crest-icon{border:2px solid color-mix(in srgb, var(--panel-accent) 72%, var(--panel-line));background:radial-gradient(circle at 34% 26%, #ffffff52, transparent 30%), linear-gradient(145deg, color-mix(in srgb, var(--panel-accent-hi) 24%, var(--panel-surface-hi)), color-mix(in srgb, var(--panel-accent) 14%, var(--panel-surface)));width:39px;height:39px;box-shadow:0 5px 8px #0000002e,inset 0 2px #ffffff40,inset 0 -3px #0000001f}.ludo-sheet__crest-icon svg{stroke-width:2.4px;width:20px;height:20px}.ludo-sheet__title{text-shadow:0 1px #ffffff1a;font-size:18px;font-weight:950}.ludo-sheet__bridge{z-index:5;transform-origin:50% 0;flex:none;place-items:center;width:64px;height:24px;margin:-3px 0 -10px;display:grid;position:relative}.ludo-sheet__bridge>span{z-index:2;border-inline:1px solid color-mix(in srgb, var(--panel-accent) 30%, var(--panel-line));background:linear-gradient(90deg, var(--panel-surface), var(--panel-surface-hi) 48%, var(--panel-surface));border-radius:12px 12px 7px 7px;width:40px;height:28px;position:relative;box-shadow:inset 0 2px #ffffff1f,0 4px 7px #00000024}.ludo-sheet__bridge:after{display:none}.ludo-sheet__panel,.ludo-sheet--amber .ludo-sheet__panel,.ludo-sheet--emerald .ludo-sheet__panel,.ludo-sheet--purple .ludo-sheet__panel{z-index:3;width:100%;height:auto;min-height:0;max-height:calc(var(--visual-height) - var(--tg-safe-top) - var(--tg-safe-bottom) - 90px);box-shadow:none;background:0 0;border:0;border-radius:0;position:relative;overflow:visible}.ludo-sheet__panel:before{display:none}.ludo-sheet__crown{z-index:3;border:1px solid color-mix(in srgb, var(--panel-accent) 26%, var(--panel-line));background:linear-gradient(180deg, #ffffff1a, transparent 54%), var(--panel-surface-hi);border-bottom:0;border-radius:28px 28px 9px 9px;width:86px;height:32px;position:absolute;top:-14px;left:50%;transform:translate(-50%);box-shadow:0 -7px 13px #0000001f,inset 0 2px #ffffff21}.ludo-sheet__crown:after{content:"";background:var(--panel-surface-hi);height:8px;position:absolute;bottom:-4px;left:5px;right:5px}.ludo-sheet__surface{z-index:2;max-height:inherit;border:1px solid color-mix(in srgb, var(--panel-accent) 28%, var(--panel-line));background:radial-gradient(circle at 50% -10%, color-mix(in srgb, var(--panel-accent) 11%, transparent), transparent 37%), linear-gradient(155deg, var(--panel-surface-hi), var(--panel-surface) 54%, var(--panel-surface-low));box-shadow:0 24px 46px var(--panel-shadow), 0 7px 13px #0000002e, inset 0 2px #fff3, inset 0 -5px #0000001c;border-radius:38px 38px 30px 30px;position:relative;overflow:hidden}.ludo-sheet__surface:after{content:"";z-index:3;border:1px solid color-mix(in srgb, var(--panel-accent) 12%, transparent);pointer-events:none;border-radius:30px 30px 23px 23px;position:absolute;inset:8px}.ludo-sheet__close{z-index:9;border:2px solid color-mix(in srgb, var(--panel-accent) 72%, var(--panel-line));background:radial-gradient(circle at 34% 24%, #ffffff47, transparent 30%), linear-gradient(145deg, color-mix(in srgb, var(--panel-accent-hi) 13%, var(--panel-surface-hi)), var(--panel-surface));width:52px;height:52px;color:var(--text-primary);box-shadow:0 10px 17px var(--panel-shadow), inset 0 2px #ffffff3d, inset 0 -4px #00000021;transition:transform .15s cubic-bezier(.2,.8,.3,1),box-shadow .15s,color .15s;top:41px;right:-5px}.ludo-sheet__close:hover{color:var(--panel-accent);transform:translateY(-2px)}.ludo-sheet__close:active{box-shadow:0 4px 8px var(--panel-shadow), inset 0 2px 5px #00000024;transform:translateY(1px)scale(.94)}.ludo-sheet__close:focus-visible{outline:3px solid color-mix(in srgb, var(--panel-accent) 72%, white);outline-offset:3px}.ludo-sheet__body{max-height:inherit;padding:38px 28px calc(var(--tg-safe-bottom) + 28px);scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--panel-accent) 38%, transparent) transparent;overflow-y:auto}@keyframes ludo-popup-backdrop-in{0%{opacity:0}}@keyframes ludo-popup-tab-in{0%{opacity:0;transform:translateY(15px)scale(.88)}72%{transform:translateY(-2px)scale(1.025)}}@keyframes ludo-popup-bridge-in{0%{opacity:0;transform:scaleY(0)}72%{transform:scaleY(1.08)}}@keyframes ludo-popup-card-in{0%{opacity:0;transform:translateY(38px)scale(.955)}76%{transform:translateY(-3px)scale(1.008)}}@keyframes ludo-popup-close-in{0%{opacity:0;transform:scale(.55)rotate(-18deg)}75%{transform:scale(1.08)rotate(3deg)}}@keyframes ludo-popup-backdrop-out{to{opacity:0}}@keyframes ludo-popup-tab-out{to{opacity:0;transform:translateY(10px)scale(.9)}}@keyframes ludo-popup-bridge-out{to{opacity:0;transform:scaleY(0)}}@keyframes ludo-popup-card-out{to{opacity:0;transform:translateY(30px)scale(.965)}}@keyframes ludo-popup-close-out{to{opacity:0;transform:scale(.62)rotate(15deg)}}.ludo-sheet.is-open .ludo-sheet__backdrop{animation:.26s ease-out both ludo-popup-backdrop-in}.ludo-sheet.is-open .ludo-sheet__crest{animation:.26s cubic-bezier(.2,1.35,.36,1) both ludo-popup-tab-in}.ludo-sheet.is-open .ludo-sheet__bridge{animation:.21s cubic-bezier(.2,1.25,.35,1) 38ms both ludo-popup-bridge-in}.ludo-sheet.is-open .ludo-sheet__panel{animation:.26s cubic-bezier(.2,1.18,.35,1) 72ms both ludo-popup-card-in}.ludo-sheet.is-open .ludo-sheet__close{animation:.21s cubic-bezier(.2,1.3,.35,1) .105s both ludo-popup-close-in}.ludo-sheet.is-closing{pointer-events:none}.ludo-sheet.is-closing .ludo-sheet__backdrop{animation:.19s ease-in both ludo-popup-backdrop-out}.ludo-sheet.is-closing .ludo-sheet__panel{animation:.18s ease-in both ludo-popup-card-out}.ludo-sheet.is-closing .ludo-sheet__bridge{animation:.145s ease-in 35ms both ludo-popup-bridge-out}.ludo-sheet.is-closing .ludo-sheet__crest{animation:.155s ease-in 55ms both ludo-popup-tab-out}.ludo-sheet.is-closing .ludo-sheet__close{animation:.145s ease-in both ludo-popup-close-out}.ludo-chat{gap:18px;min-height:min(430px,54dvh)}.ludo-chat.is-empty{min-height:min(340px,43dvh)}.ludo-chat.is-empty .ludo-chat__list{min-height:185px}.ludo-chat__list{gap:6px;min-height:250px;max-height:48dvh;padding:2px 1px 12px}.ludo-chat__msg{grid-template-columns:38px minmax(0,1fr);align-self:flex-start;align-items:end;gap:9px;width:min(88%,330px);max-width:none;display:grid}.ludo-chat__msg.is-own{grid-template-columns:minmax(0,1fr) 38px;align-self:flex-end}.ludo-chat__msg.is-grouped{margin-left:47px;display:flex}.ludo-chat__msg.is-own.is-grouped{margin-left:0;margin-right:47px}.ludo-chat__avatar{border:2px solid color-mix(in srgb, var(--ludo-blue) 70%, var(--panel-line));background:radial-gradient(circle at 34% 24%, #ffffff59, transparent 28%), linear-gradient(145deg, color-mix(in srgb, var(--ludo-blue-hi) 24%, var(--panel-surface-hi)), color-mix(in srgb, var(--ludo-blue) 18%, var(--panel-surface)));width:38px;height:38px;color:var(--ludo-blue-hi);border-radius:50%;place-items:center;display:grid;box-shadow:0 5px 9px #0003,inset 0 1px #ffffff40}.ludo-chat__avatar.is-self{border-color:color-mix(in srgb, var(--ludo-red) 70%, var(--panel-line));color:var(--ludo-red-hi)}.ludo-chat__avatar svg{width:19px;height:19px}.ludo-chat__message{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.ludo-chat__msg.is-own .ludo-chat__message{align-items:flex-end}.ludo-chat__meta{width:100%;color:var(--text-secondary);justify-content:space-between;align-items:baseline;gap:8px;padding-inline:7px;display:flex}.ludo-chat__meta strong{white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:900;overflow:hidden}.ludo-chat__meta time{opacity:.75;flex:none;font-size:9px;font-weight:750}.ludo-chat__bubble{border:1px solid color-mix(in srgb, var(--ludo-blue) 26%, var(--panel-line));background:linear-gradient(145deg, #ffffff14, transparent 45%), color-mix(in srgb, var(--ludo-blue) 8%, var(--panel-surface-low));border-radius:18px 18px 18px 7px;padding:10px 13px;font-size:13px;line-height:1.4;box-shadow:inset 0 1px #ffffff1f,0 4px 8px #0000001a}.ludo-chat__msg.is-own .ludo-chat__bubble{border-color:color-mix(in srgb, var(--ludo-red) 34%, var(--panel-line));background:linear-gradient(145deg, #ffffff1a, transparent 45%), color-mix(in srgb, var(--ludo-red) 15%, var(--panel-surface));border-radius:18px 18px 7px}.ludo-chat__empty,.ludo-log__empty{gap:7px;min-height:245px}.ludo-chat__empty strong,.ludo-log__empty strong{font-size:16px;font-weight:950}.ludo-chat__empty>span:last-child,.ludo-log__empty>span:last-child{max-width:220px;font-size:12px;line-height:1.45}.ludo-chat__empty-icon,.ludo-log__empty-icon{border:2px solid color-mix(in srgb, var(--panel-accent) 42%, var(--panel-line));background:radial-gradient(circle at 34% 25%, #ffffff47, transparent 28%), color-mix(in srgb, var(--panel-accent) 14%, var(--panel-surface-low));width:74px;height:74px;margin-bottom:9px;box-shadow:0 9px 16px #00000029,inset 0 2px #ffffff2e,inset 0 -4px #0000001a}.ludo-chat__empty-icon svg,.ludo-log__empty-icon svg{width:31px;height:31px}.ludo-chat__compose{border:1px solid color-mix(in srgb, var(--ludo-blue) 25%, var(--panel-line));background:color-mix(in srgb, var(--ludo-blue) 4%, var(--panel-surface-low));border-radius:30px;gap:8px;min-height:58px;padding:5px;box-shadow:inset 0 3px 7px #0000002b,0 7px 13px #0000001c}.ludo-chat__input{min-height:46px;padding-inline:15px 5px;font-size:16px}.ludo-chat__send{background:radial-gradient(circle at 34% 24%, #ffffff5c, transparent 28%), linear-gradient(145deg, var(--ludo-blue-hi), var(--ludo-blue));width:48px;height:48px;box-shadow:0 7px 11px color-mix(in srgb, var(--ludo-blue) 34%, transparent), inset 0 2px #ffffff4d, inset 0 -4px #00000026;transition:transform .15s cubic-bezier(.2,1.2,.35,1),filter .15s}.ludo-chat__send:not(:disabled):hover{filter:saturate(1.1);transform:translateY(-2px)rotate(-4deg)}.ludo-chat__send:not(:disabled):active{transform:scale(.9)rotate(3deg)}.ludo-log-wrap{flex-direction:column;gap:15px;display:flex}.ludo-log__intro{color:var(--text-secondary);text-align:center;margin:0;font-size:12px;font-weight:750;line-height:1.4}.ludo-log{gap:11px;padding:2px 0 10px;position:relative}.ludo-log:before{content:"";border:1px solid color-mix(in srgb, var(--panel-accent) 25%, var(--panel-line));background:color-mix(in srgb, var(--panel-accent) 15%, var(--panel-surface-low));border-radius:5px;width:6px;position:absolute;top:24px;bottom:24px;left:24px;box-shadow:inset 0 1px #ffffff21}.ludo-log__event{--event-accent:var(--ludo-blue);grid-template-columns:50px minmax(0,1fr);align-items:center;gap:11px;display:grid;position:relative}.ludo-log__event--roll{--event-accent:var(--ludo-yellow)}.ludo-log__event--capture{--event-accent:var(--ludo-red)}.ludo-log__event--home{--event-accent:var(--ludo-green)}.ludo-log__event--red{--event-accent:var(--ludo-red)}.ludo-log__event--green{--event-accent:var(--ludo-green)}.ludo-log__event--yellow{--event-accent:var(--ludo-yellow)}.ludo-log__event--blue{--event-accent:var(--ludo-blue)}.ludo-log__node{z-index:2;border:2px solid color-mix(in srgb, var(--event-accent) 72%, var(--panel-line));background:radial-gradient(circle at 34% 24%, #ffffff59, transparent 28%), linear-gradient(145deg, color-mix(in srgb, var(--event-accent) 22%, var(--panel-surface-hi)), color-mix(in srgb, var(--event-accent) 12%, var(--panel-surface-low)));width:50px;height:50px;color:var(--event-accent);border-radius:50%;place-items:center;display:grid;box-shadow:0 6px 10px #0003,inset 0 2px #ffffff38,inset 0 -3px #00000021}.ludo-log__node svg{stroke-width:2.5px;width:21px;height:21px}.ludo-log__card{border:1px solid color-mix(in srgb, var(--event-accent) 28%, var(--panel-line));background:linear-gradient(145deg, #ffffff12, transparent 45%), color-mix(in srgb, var(--event-accent) 7%, var(--panel-surface-low));border-radius:21px;align-items:center;gap:8px;min-height:76px;padding:14px 43px 13px 15px;display:flex;position:relative;box-shadow:inset 0 2px #ffffff1c,inset 0 -3px #00000014,0 5px 9px #0000001a}.ludo-log__copy{flex:1;gap:3px;min-width:0}.ludo-log__copy strong{font-size:13px;font-weight:950}.ludo-log__copy small{color:var(--text-secondary);font-size:11px;font-weight:700;line-height:1.3}.ludo-log__value{background:color-mix(in srgb, var(--event-accent) 14%, var(--panel-surface));color:var(--event-accent);border-radius:10px;flex:none;padding:5px 7px;font-size:10px;font-weight:950}.ludo-log__number{color:color-mix(in srgb, var(--event-accent) 72%, var(--text-secondary));letter-spacing:0;font-size:9px;font-weight:950;position:absolute;top:8px;right:9px}.ludo-settings{gap:22px}.ludo-settings__section{flex-direction:column;gap:11px;display:flex}.ludo-settings__section h3{color:var(--text-secondary);letter-spacing:0;text-transform:uppercase;margin:0;padding-inline:4px;font-size:11px;font-weight:950}.ludo-theme-deck{grid-template-columns:1fr 1fr;gap:11px;display:grid}.ludo-theme-card{border:1px solid var(--panel-line);background:var(--panel-surface-low);min-width:0;min-height:112px;color:var(--text-primary);text-align:left;border-radius:22px;flex-direction:column;justify-content:flex-end;align-items:flex-start;gap:7px;padding:11px;transition:transform .15s cubic-bezier(.2,1.1,.35,1),border-color .15s,box-shadow .15s;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 2px 5px #0000001f,0 5px 9px #0000001c}.ludo-theme-card:hover{transform:translateY(-2px)}.ludo-theme-card:active{transform:translateY(1px)scale(.97)}.ludo-theme-card.is-active{border-color:color-mix(in srgb, var(--panel-accent) 68%, var(--panel-line));box-shadow:0 7px 13px color-mix(in srgb, var(--panel-accent) 14%, transparent), inset 0 2px #ffffff1f}.ludo-theme-card__scene{border-radius:15px;grid-template-rows:repeat(2,13px);grid-template-columns:repeat(2,13px);place-content:center;gap:3px;height:52px;display:grid;position:absolute;top:8px;left:8px;right:8px;overflow:hidden;box-shadow:inset 0 2px 5px #00000026,inset 0 0 0 1px #ffffff29}.ludo-theme-card--light .ludo-theme-card__scene{color:#d68a2a;background:linear-gradient(145deg,#fff8ea,#f5d8b7)}.ludo-theme-card--dark .ludo-theme-card__scene{color:#84b8e9;background:linear-gradient(145deg,#234,#101a25)}.ludo-theme-card__scene>svg{width:14px;height:14px;position:absolute;top:7px;right:8px}.ludo-theme-card__scene i{border-radius:4px;width:13px;height:13px;box-shadow:inset 0 1px #ffffff4d}.ludo-theme-card__scene i:first-of-type{background:var(--ludo-green)}.ludo-theme-card__scene i:nth-of-type(2){background:var(--ludo-yellow)}.ludo-theme-card__scene i:nth-of-type(3){background:var(--ludo-red)}.ludo-theme-card__scene i:nth-of-type(4){background:var(--ludo-blue)}.ludo-theme-card>span:nth-child(2){flex-direction:column;gap:1px;min-width:0;display:flex}.ludo-theme-card strong{font-size:13px;font-weight:950}.ludo-theme-card small{color:var(--text-secondary);font-size:10px;font-weight:700}.ludo-theme-card__pick{border:2px solid var(--panel-line);background:var(--panel-surface);border-radius:50%;width:15px;height:15px;position:absolute;bottom:12px;right:10px}.ludo-theme-card.is-active .ludo-theme-card__pick{border-color:var(--panel-accent);background:var(--panel-accent);box-shadow:inset 0 0 0 3px var(--panel-surface-hi)}.ludo-sensory-deck{gap:9px;display:grid}.ludo-sensory-card,.ludo-settings__nav button{border:1px solid var(--panel-line);background:linear-gradient(145deg, #ffffff12, transparent 48%), color-mix(in srgb, var(--panel-accent) 3%, var(--panel-surface-low));min-height:64px;color:var(--text-primary);text-align:left;border-radius:20px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px;padding:9px 12px;transition:transform .14s cubic-bezier(.2,1.1,.35,1),border-color .14s;display:grid;box-shadow:inset 0 2px #ffffff1a,inset 0 -3px #00000014,0 4px 8px #00000017}.ludo-sensory-card:hover,.ludo-settings__nav button:hover{border-color:color-mix(in srgb, var(--panel-accent) 38%, var(--panel-line));transform:translateY(-2px)}.ludo-sensory-card:active,.ludo-settings__nav button:active{transform:translateY(1px)scale(.98)}.ludo-sensory-card__icon,.ludo-settings__nav-icon{border:1px solid color-mix(in srgb, var(--panel-accent) 34%, var(--panel-line));background:radial-gradient(circle at 34% 24%, #ffffff3d, transparent 28%), color-mix(in srgb, var(--panel-accent) 11%, var(--panel-surface));width:44px;height:44px;color:var(--panel-accent);border-radius:15px;place-items:center;display:grid;box-shadow:inset 0 1px #ffffff29,0 3px 6px #0000001c}.ludo-sensory-card__icon svg,.ludo-settings__nav-icon svg{stroke-width:2.4px;width:20px;height:20px}.ludo-sensory-card>span:nth-child(2),.ludo-settings__nav button>span:nth-child(2){flex-direction:column;gap:2px;min-width:0;display:flex}.ludo-sensory-card strong,.ludo-settings__nav strong{font-size:12px;font-weight:950}.ludo-sensory-card small,.ludo-settings__nav small{color:var(--text-secondary);font-size:10px;font-weight:700;line-height:1.25}.ludo-game-switch{border:1px solid var(--panel-line);background:color-mix(in srgb, var(--text-secondary) 16%, var(--panel-surface-low));border-radius:16px;align-items:center;width:46px;height:28px;padding:4px;transition:background .18s,border-color .18s;display:flex;box-shadow:inset 0 2px 4px #0000002b}.ludo-game-switch>span{background:linear-gradient(145deg, var(--panel-surface-hi), var(--panel-surface));border-radius:50%;width:20px;height:20px;transition:transform .21s cubic-bezier(.2,1.25,.35,1);box-shadow:0 3px 5px #0000003d,inset 0 1px #ffffff3d}.ludo-game-switch.is-on{border-color:color-mix(in srgb, var(--panel-accent) 62%, var(--panel-line));background:color-mix(in srgb, var(--panel-accent) 48%, var(--panel-surface))}.ludo-game-switch.is-on>span{transform:translate(18px)}.ludo-settings__nav{gap:9px;display:grid}.ludo-settings__nav button>svg{width:18px;height:18px;color:var(--text-secondary)}.ludo-tutorial{flex-direction:column;gap:15px;display:flex}.ludo-tutorial__intro{max-width:250px;color:var(--text-secondary);text-align:center;margin:0 auto;font-size:12px;font-weight:750;line-height:1.45}.ludo-tutorial__steps{gap:11px;display:grid}.ludo-tutorial__card{--tutorial-accent:var(--ludo-yellow);border:1px solid color-mix(in srgb, var(--tutorial-accent) 30%, var(--panel-line));background:linear-gradient(145deg, #ffffff12, transparent 46%), color-mix(in srgb, var(--tutorial-accent) 6%, var(--panel-surface-low));border-radius:23px;grid-template-columns:27px 76px minmax(0,1fr);align-items:center;gap:9px;min-height:108px;padding:11px;display:grid;position:relative;box-shadow:inset 0 2px #ffffff1c,inset 0 -3px #00000014,0 5px 9px #00000017}.ludo-tutorial__card--move{--tutorial-accent:var(--ludo-blue)}.ludo-tutorial__card--capture{--tutorial-accent:var(--ludo-red)}.ludo-tutorial__card--home{--tutorial-accent:var(--ludo-green)}.ludo-tutorial__number{background:var(--tutorial-accent);color:#fff;width:27px;height:27px;box-shadow:0 4px 7px color-mix(in srgb, var(--tutorial-accent) 30%, transparent), inset 0 1px #ffffff59;border-radius:50%;align-self:start;place-items:center;font-size:12px;font-weight:950;display:grid}.ludo-tutorial__art{border:1px solid color-mix(in srgb, var(--tutorial-accent) 35%, var(--panel-line));background:radial-gradient(circle at 40% 28%, color-mix(in srgb, var(--tutorial-accent) 18%, transparent), transparent 44%), var(--panel-surface);width:76px;height:76px;color:var(--tutorial-accent);border-radius:21px;place-items:center;display:grid;position:relative;overflow:hidden;box-shadow:inset 0 3px 7px #00000021,inset 0 1px #ffffff1f}.ludo-tutorial__art>svg{stroke-width:2px;width:35px;height:35px}.ludo-tutorial__copy{flex-direction:column;gap:4px;min-width:0;display:flex}.ludo-tutorial__copy strong{font-size:13px;font-weight:950}.ludo-tutorial__copy small{color:var(--text-secondary);font-size:10px;font-weight:700;line-height:1.35}.ludo-tutorial__art--roll>i{background:var(--tutorial-accent);opacity:.45;border-radius:50%;width:8px;height:8px;position:absolute}.ludo-tutorial__art--roll>i:first-of-type{top:12px;left:13px}.ludo-tutorial__art--roll>i:nth-of-type(2){bottom:13px;right:12px}.ludo-mini-track{gap:2px;display:flex;position:absolute;bottom:8px;left:6px;right:6px}.ludo-mini-track i{border:1px solid color-mix(in srgb, var(--tutorial-accent) 36%, var(--panel-line));background:color-mix(in srgb, var(--tutorial-accent) 15%, var(--panel-surface-hi));border-radius:3px;flex:1;height:12px}.ludo-mini-track b{background:var(--tutorial-accent);border:2px solid #ffffff6b;border-radius:50%;width:13px;height:13px;position:absolute;top:-5px;left:26px;box-shadow:0 3px 5px #00000038}.ludo-tutorial__art--capture>i{border-radius:50%;width:18px;height:18px;position:absolute;bottom:13px;box-shadow:0 4px 6px #00000040,inset 0 2px #ffffff59}.ludo-tutorial__art--capture .token-a{background:var(--ludo-red);left:17px}.ludo-tutorial__art--capture .token-b{background:var(--ludo-blue);right:17px}.ludo-tutorial__art--capture>b{border:3px dotted var(--tutorial-accent);border-radius:50%;width:16px;height:16px;position:absolute;bottom:14px;left:50%;transform:translate(-50%)scale(1.4)}.ludo-mini-home{grid-template-columns:10px 10px;gap:2px;display:grid;position:absolute;bottom:8px;right:8px;transform:rotate(45deg)}.ludo-mini-home i{background:var(--tutorial-accent);opacity:.72;width:10px;height:10px}.ludo-about{flex-direction:column;align-items:center;gap:18px;display:flex}.ludo-about__emblem{border:2px solid color-mix(in srgb, var(--panel-accent) 50%, var(--panel-line));background:var(--panel-surface-low);border-radius:28px;grid-template-columns:1fr 1fr;gap:4px;width:92px;height:92px;padding:13px;display:grid;transform:rotate(3deg);box-shadow:0 10px 18px #0000002e,inset 0 3px 7px #00000024,inset 0 1px #ffffff29}.ludo-about__emblem i{border-radius:9px;box-shadow:inset 0 2px #ffffff4d,inset 0 -3px #0000001f}.ludo-about__emblem i:first-child{background:var(--ludo-green)}.ludo-about__emblem i:nth-child(2){background:var(--ludo-yellow)}.ludo-about__emblem i:nth-child(3){background:var(--ludo-red)}.ludo-about__emblem i:nth-child(4){background:var(--ludo-blue)}.ludo-about__intro{text-align:center;max-width:280px}.ludo-about__intro strong{font-size:19px;font-weight:950}.ludo-about__intro p{color:var(--text-secondary);margin:6px 0 0;font-size:12px;font-weight:700;line-height:1.45}.ludo-about__features{gap:10px;width:100%;display:grid}.ludo-about__features article{border:1px solid var(--panel-line);background:color-mix(in srgb, var(--panel-accent) 5%, var(--panel-surface-low));border-radius:21px;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px;min-height:72px;padding:11px 13px;display:grid;box-shadow:inset 0 2px #ffffff1a,inset 0 -3px #00000012}.ludo-about__features article>span{background:color-mix(in srgb, var(--panel-accent) 13%, var(--panel-surface));width:46px;height:46px;color:var(--panel-accent);border-radius:16px;grid-row:1/3;place-items:center;display:grid}.ludo-about__features article svg{width:21px;height:21px}.ludo-about__features article strong{align-self:end;font-size:13px;font-weight:950}.ludo-about__features article small{color:var(--text-secondary);align-self:start;font-size:10px;font-weight:700;line-height:1.3}.ludo-sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:fixed!important;overflow:hidden!important}@container (height<=740px){.ludo-scene{--board-size:min(94cqw, 420px, calc(100cqh - 375px - var(--tg-safe-top) - var(--tg-safe-bottom)));padding-top:calc(var(--tg-safe-top) + 8px)}.ludo-topbar{margin-bottom:4px}.ludo-turn-status{margin-bottom:6px}.ludo-player-row{height:48px}.ludo-av{height:48px;padding:6px 9px}.ludo-player-row--top{margin-bottom:3px}.ludo-player-row--bottom{margin-top:3px}.ludo-roll-heading{margin-top:5px}.ludo-dice-zone{height:116px}}@container (width<=340px){.ludo-roomchip{min-width:74px;padding-inline:9px;font-size:13px}.ludo-icons{gap:3px}.ludo-icon{width:44px;min-width:44px}.ludo-turn-status{font-size:12px}.ludo-av__name{max-width:70px}}@media (width>=700px) and (height>=700px){.ludo-app{border-inline:1px solid var(--border)}.ludo-sheet{align-items:center;padding:24px}.ludo-sheet__assembly{width:min(440px,90vw)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
