@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-arabic-wght-normal-CGnJ-sf6.woff2)format("woff2-variations");unicode-range:U+6??,U+750-77F,U+870-88E,U+890-891,U+897-8E1,U+8E3-8FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-cyrillic-ext-wght-normal-BjodpZir.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-cyrillic-wght-normal-DveCct9I.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-hebrew-wght-normal-BIkpbuMU.woff2)format("woff2-variations");unicode-range:U+307-308,U+590-5FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-ext-wght-normal-OacczzuJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Rubik Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/rubik-latin-wght-normal-CnQIisVs.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-cyrillic-ext-opsz-normal-MLaiUPgC.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-cyrillic-opsz-normal-UHb1prrp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-vietnamese-opsz-normal-Bakgl0hx.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-latin-ext-opsz-normal-DI5IQvxm.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Sans Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-sans-latin-opsz-normal-D33Im7Cz.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bree Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bree-serif-latin-ext-400-normal-amfO-E0k.woff2)format("woff2"),url(/assets/bree-serif-latin-ext-400-normal-CnorAOA2.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bree Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/bree-serif-latin-400-normal-DFKDEHQE.woff2)format("woff2"),url(/assets/bree-serif-latin-400-normal-Dbaz2OwO.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-body:"Nunito Sans Variable", "Nunito Sans", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.875rem;--leading-tight:1.1;--leading-normal:1.5;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-12:3rem;--radius-full:999px;--tap-target:44px;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--dur-press:.12s;--dur-fast:.16s;--dur-normal:.22s;--shadow-card:0 3px 0 var(--edge), 0 10px 20px -12px #00000073;--shadow-pressed:0 1px 0 var(--edge);--sidebar-width:260px;--content-max:40rem}:root,[data-theme=green-felt]{--table:#1f5a3f;--table-texture:repeating-linear-gradient(45deg, #ffffff09 0 6px, transparent 6px 12px);--card:#fff8ea;--card-2:#f1e6cd;--border:#d9c9a5;--edge:#c9b88f;--ink:#2a2115;--ink-2:#6b5b43;--ink-3:#9a8a6f;--on-table:#fff8ea;--on-table-2:#fff8eabf;--primary:#d8433a;--on-primary:#fff8ea;--primary-soft:#f9dcd6;--secondary:#e7a92b;--secondary-soft:#fbeccb;--danger:#b4322a;--danger-soft:#f8e5e3;--focus:#2f7fd6;--font-display:"Rubik Variable", "Rubik", "Trebuchet MS", Verdana, sans-serif;--display-weight:700;--radius-lg:14px;--radius-md:10px}[data-theme=green-felt][data-mode=dark]{--table:#0f2a1e;--table-texture:repeating-linear-gradient(45deg, #ffffff08 0 6px, transparent 6px 12px);--card:#1b3327;--card-2:#24402f;--border:#325242;--edge:#0b1c14;--ink:#f3ecdc;--ink-2:#b7c2b5;--ink-3:#7f8f83;--on-table:#f3ecdc;--on-table-2:#f3ecdca6;--primary:#f0b23a;--on-primary:#1b2a1f;--primary-soft:#3a3a1c;--secondary:#ff8a70;--secondary-soft:#4a2a24;--danger:#f08a82;--danger-soft:#3a1c19;--focus:#6fb0f2}[data-theme=walnut]{--table:#5a3a22;--table-texture:linear-gradient(180deg, #ffffff0f, #0000002e), repeating-linear-gradient(90deg, #0000001a 0 2px, transparent 2px 9px, #ffffff0d 9px 11px, transparent 11px 23px);--card:#fbf3e3;--card-2:#efe2c8;--border:#d6c39c;--edge:#c9b27f;--ink:#2a2115;--ink-2:#6b5b43;--ink-3:#9a8a6f;--on-table:#fbf3e3;--on-table-2:#fbf3e3b8;--primary:#b7382f;--on-primary:#fbf3e3;--primary-soft:#f6d9d3;--secondary:#b8892e;--secondary-soft:#f5e6c4;--danger:#b4322a;--danger-soft:#f8e5e3;--focus:#2f7fd6;--font-display:"Bree Serif", "Rockwell", Georgia, serif;--display-weight:400;--radius-lg:12px;--radius-md:8px}[data-theme=walnut][data-mode=dark]{--table:#2b1a10;--table-texture:linear-gradient(180deg, #ffffff08, #00000040), repeating-linear-gradient(90deg, #0000001f 0 2px, transparent 2px 9px, #ffffff08 9px 11px, transparent 11px 23px);--card:#3a2618;--card-2:#46301f;--border:#5a4330;--edge:#1a0f08;--ink:#f6ead6;--ink-2:#cbb79e;--ink-3:#927f68;--on-table:#f6ead6;--on-table-2:#f6ead6a6;--primary:#e0a24a;--on-primary:#2b1a10;--primary-soft:#4a3418;--secondary:#ff8a70;--secondary-soft:#4a2a24;--danger:#f08a82;--danger-soft:#3a1c19;--focus:#6fb0f2}[data-theme=navy-baize]{--table:#16304a;--table-texture:repeating-linear-gradient(45deg, #ffffff0a 0 6px, transparent 6px 12px), repeating-linear-gradient(-45deg, #0000000d 0 6px, transparent 6px 12px);--card:#fffaf0;--card-2:#f0e9d8;--border:#d8cfb6;--edge:#cbbf9f;--ink:#23201a;--ink-2:#66604f;--ink-3:#958c78;--on-table:#fffaf0;--on-table-2:#fffaf0b3;--primary:#c99a2e;--on-primary:#16304a;--primary-soft:#f7ead0;--secondary:#e8624a;--secondary-soft:#fbe0d8;--danger:#b4322a;--danger-soft:#f8e5e3;--focus:#2f7fd6;--font-display:"Rubik Variable", "Rubik", "Trebuchet MS", Verdana, sans-serif;--display-weight:700;--radius-lg:14px;--radius-md:10px}[data-theme=navy-baize][data-mode=dark]{--table:#0b1a2a;--table-texture:repeating-linear-gradient(45deg, #ffffff08 0 6px, transparent 6px 12px);--card:#14263a;--card-2:#1c3149;--border:#2a4460;--edge:#050d16;--ink:#eef2f7;--ink-2:#b1bfd0;--ink-3:#7a8ba0;--on-table:#eef2f7;--on-table-2:#eef2f7a6;--primary:#e7b84a;--on-primary:#0b1a2a;--primary-soft:#3a3218;--secondary:#ff8a70;--secondary-soft:#4a2a24;--danger:#f08a82;--danger-soft:#3a1c19;--focus:#6fb0f2}[data-theme=card-room]{--table:#6b1f2e;--table-texture:radial-gradient(900px 500px at 50% 0%, #ffffff1a, transparent 60%), repeating-linear-gradient(45deg, #ffffff08 0 6px, transparent 6px 12px);--card:#fffbf4;--card-2:#f3ebdc;--border:#e0d4bf;--edge:#d9ccb3;--ink:#26201d;--ink-2:#6a5f59;--ink-3:#9a8f88;--on-table:#fffbf4;--on-table-2:#fffbf4b8;--primary:#177e78;--on-primary:#fffbf4;--primary-soft:#d6ecea;--secondary:#e0a728;--secondary-soft:#fbeccb;--danger:#b4322a;--danger-soft:#f8e5e3;--focus:#2f7fd6;--font-display:"Rubik Variable", "Rubik", "Trebuchet MS", Verdana, sans-serif;--display-weight:700;--radius-lg:20px;--radius-md:14px}[data-theme=card-room][data-mode=dark]{--table:#2c0d14;--table-texture:repeating-linear-gradient(45deg, #ffffff08 0 6px, transparent 6px 12px);--card:#3a1a22;--card-2:#47232c;--border:#5e3540;--edge:#170509;--ink:#f7ece6;--ink-2:#ccb6b0;--ink-3:#93777a;--on-table:#f7ece6;--on-table-2:#f7ece6a6;--primary:#4fc3bb;--on-primary:#10211f;--primary-soft:#163a37;--secondary:#f0b23a;--secondary-soft:#3a3a1c;--danger:#f08a82;--danger-soft:#3a1c19;--focus:#6fb0f2}:root,[data-theme=green-felt]{--lamp:#ffe7a038}[data-theme=green-felt][data-mode=dark]{--lamp:#ffc87829}[data-theme=walnut]{--lamp:#ffe0aa42}[data-theme=walnut][data-mode=dark]{--lamp:#ffbe6e29}[data-theme=navy-baize]{--lamp:#d2e1ff29}[data-theme=navy-baize][data-mode=dark]{--lamp:#bed2ff1f}[data-theme=card-room]{--lamp:#ffd6c833}[data-theme=card-room][data-mode=dark]{--lamp:#ffbeaa24}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--grain:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .07 0'/></filter><rect width='140' height='140' filter='url(%23n)'/></svg>");--paper:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='90' height='90'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='1' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 .3 0 0 0 0 .2 0 0 0 0 .1 0 0 0 .045 0'/></filter><rect width='90' height='90' filter='url(%23n)'/></svg>")}body{font-family:var(--font-body);font-size:var(--text-md);line-height:var(--leading-normal);color:var(--ink);background-color:var(--table);background-image:radial-gradient(120% 70% at 50% -10%, var(--lamp,transparent), transparent 60%), var(--grain), var(--table-texture);-webkit-font-smoothing:antialiased;background-attachment:fixed,scroll,scroll;min-height:100dvh;margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:var(--display-weight);line-height:var(--leading-tight);letter-spacing:-.01em;margin:0}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}p{margin:0}a{color:var(--primary)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.shell{flex-direction:column;min-height:100dvh;display:flex}.shell-main{width:100%;max-width:var(--content-max);padding-inline:max(var(--space-4), env(safe-area-inset-left)) max(var(--space-4), env(safe-area-inset-right));padding-block:calc(var(--space-6) + env(safe-area-inset-top)) calc(96px + env(safe-area-inset-bottom));gap:var(--space-4);flex-direction:column;flex:1;margin-inline:auto;display:flex}.shell-sidebar{display:none}.tabbar{inset-inline:0;gap:var(--space-1);padding:var(--space-2) var(--space-3) calc(var(--space-2) + env(safe-area-inset-bottom));background:var(--card-2);border-top:1px solid var(--border);z-index:5;display:flex;position:fixed;bottom:0}.tab{border-radius:var(--radius-md);min-height:52px;color:var(--ink-3);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;transition:background-color var(--dur-fast) ease, color var(--dur-fast) ease;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-weight:700;text-decoration:none;display:flex}.tab[aria-current=page]{background:var(--card);color:var(--primary);box-shadow:0 2px 0 var(--edge)}@media (width>=900px){.shell{flex-direction:row}.shell-sidebar{gap:var(--space-6);width:var(--sidebar-width);min-height:100dvh;padding:var(--space-6) var(--space-4);background:#0003;background-image:linear-gradient(90deg, #0000002e, #0000), var(--grain);border-right:7px solid #4a2e18;flex-direction:column;flex-shrink:0;align-self:flex-start;display:flex;position:sticky;top:0;box-shadow:inset -2px 0 #ffffff14}.shell-main{max-width:1100px;padding:var(--space-8) var(--space-8) var(--space-12);margin-inline:0}.tabbar{display:none}.grid-2{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}}.brand{align-items:center;gap:var(--space-3);padding:0 var(--space-2);color:var(--on-table);font-family:var(--font-display);font-weight:var(--display-weight);font-size:var(--text-lg);display:flex}.brand-mark{background:var(--primary);border-radius:8px;flex-shrink:0;width:28px;height:28px}.side-label{padding:0 var(--space-2);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--on-table-2);font-weight:700}.side-link{align-items:center;gap:var(--space-3);min-height:48px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--on-table);font-weight:700;text-decoration:none;display:flex}.side-link[aria-current=page]{background:var(--card);color:var(--primary);box-shadow:0 2px 0 var(--edge)}.side-link .sub{font-size:var(--text-xs);color:var(--on-table-2);font-weight:600;display:block}.side-link[aria-current=page] .sub{color:var(--ink-2)}.side-spacer{margin-top:auto}.page-head{gap:var(--space-1);color:var(--on-table);flex-direction:column;display:flex}.page-head .eyebrow{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--on-table-2);font-weight:700}.page-head h1{color:var(--on-table)}.page-head .sub{color:var(--on-table-2);font-size:var(--text-sm)}.back{color:var(--on-table-2);font-weight:700;font-size:var(--text-sm);text-decoration:none}.stack{gap:var(--space-3);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.spread{justify-content:space-between}.grow{flex:1;min-width:0}.muted{color:var(--ink-2)}.small{font-size:var(--text-sm)}.card{background:var(--card);background-image:var(--paper);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);box-shadow:var(--shadow-card);gap:var(--space-3);flex-direction:column;display:flex}.btn{appearance:none;border-radius:var(--radius-md);min-height:var(--tap-target);padding:0 var(--space-4);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:var(--space-2);background:var(--primary);color:var(--on-primary);transition:transform var(--dur-press) var(--ease-out), filter var(--dur-fast) ease;touch-action:manipulation;border:1px solid #0000;font-weight:700;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}@media (hover:hover) and (pointer:fine){.btn:hover{filter:brightness(1.06)}}.btn:disabled{opacity:.55;cursor:default;transform:none}.btn-secondary{background:var(--card);color:var(--ink);border-color:var(--border)}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-quiet{color:var(--ink-2);min-height:36px;padding-inline:var(--space-3);background:0 0}.btn-block{width:100%}.btn-on-table{color:var(--on-table);background:#ffffff24}.field{gap:var(--space-1);flex-direction:column;display:flex}.label{font-size:var(--text-sm);color:var(--ink-2);font-weight:700}.input{font:inherit;min-height:var(--tap-target);padding:0 var(--space-3);border-radius:var(--radius-md);border:1px solid var(--border);background:var(--card);color:var(--ink);transition:border-color var(--dur-fast) ease}.input:focus{border-color:var(--focus);outline:none}.input-code{font-family:var(--font-mono);font-size:var(--text-lg);letter-spacing:.15em;text-transform:uppercase}.list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list>li{align-items:center;gap:var(--space-3);min-height:56px;padding-block:var(--space-2);border-top:1px solid var(--border);display:flex}.list>li:first-child{border-top:0}.list-link{color:inherit;align-items:center;gap:var(--space-3);flex:1;min-width:0;text-decoration:none;display:flex}.member-row{flex-wrap:wrap}.member-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.member-actions{gap:var(--space-1);padding-left:calc(36px + var(--space-3));flex-basis:100%}.member-actions .btn-quiet{padding-inline:var(--space-2)}.avatar{border-radius:var(--radius-full);background:var(--primary-soft);width:36px;height:36px;color:var(--primary);font-family:var(--font-display);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar-lg{width:56px;height:56px;font-size:var(--text-xl)}.pill{font-size:var(--text-xs);padding:2px var(--space-2);border-radius:var(--radius-full);background:var(--card-2);color:var(--ink-2);text-transform:capitalize;white-space:nowrap;font-weight:700}.pill-primary{background:var(--primary-soft);color:var(--primary)}.pill-secondary{background:var(--secondary-soft);color:var(--ink)}.code{font-family:var(--font-mono);font-size:var(--text-xl);letter-spacing:.18em;font-weight:700}.notice{border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-size:var(--text-sm);background:var(--card-2)}.notice-danger{background:var(--danger-soft);color:var(--danger)}.notice-warning{background:var(--secondary-soft);color:var(--ink)}.theme-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.theme-option{appearance:none;border:2px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3);background:var(--card);color:var(--ink);text-align:left;cursor:pointer;gap:var(--space-2);transition:transform var(--dur-press) var(--ease-out), border-color var(--dur-fast) ease;flex-direction:column;display:flex}.theme-option:active{transform:scale(.98)}.theme-option[aria-pressed=true]{border-color:var(--primary)}.theme-swatch{border-radius:8px;align-items:flex-end;gap:6px;height:44px;padding:6px;display:flex}.theme-swatch span{border-radius:5px;width:18px;height:18px}.segmented{background:var(--card-2);border-radius:var(--radius-md);gap:3px;padding:3px;display:flex}.segmented button{appearance:none;border-radius:calc(var(--radius-md) - 3px);min-height:40px;font:inherit;color:var(--ink-2);cursor:pointer;transition:background-color var(--dur-fast) ease, color var(--dur-fast) ease;background:0 0;border:0;flex:1;font-weight:700}.segmented button[aria-pressed=true]{background:var(--card);color:var(--ink);box-shadow:0 1px 0 var(--edge)}.impersonation-banner{z-index:10;padding:var(--space-2) var(--space-4);background:var(--secondary);color:#2a2115;font-size:var(--text-sm);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex;position:sticky;top:0}.impersonation-banner .btn-quiet{color:#2a2115}.enter{opacity:1;transition:opacity var(--dur-normal) var(--ease-out), transform var(--dur-normal) var(--ease-out);transform:translateY(0)}@starting-style{.enter{opacity:0;transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.enter{transition:opacity var(--dur-normal) ease}@starting-style{.enter{transform:none}}.btn:active,.theme-option:active{transform:none}}.board{gap:var(--gap,6px);flex-direction:column;align-items:center;display:flex}.row-tiles{gap:var(--gap,6px);perspective:700px;display:flex}.row-num,.row-total{width:calc(var(--tile,46px) * .85);font-family:var(--font-display);font-weight:700;line-height:1;font-size:clamp(10px, calc(var(--tile,46px) * .3), 22px);flex:none}.row-num{text-align:right;color:var(--ink-3)}.row-total{text-align:left;color:var(--primary)}.tile{--c:var(--card-2);width:var(--tile,46px);height:var(--tile,46px);font-family:var(--font-display);font-weight:700;font-size:calc(var(--tile,46px) * .56);text-transform:uppercase;border-radius:calc(var(--tile,46px) * .2);color:var(--ink);-webkit-user-select:none;user-select:none;background:linear-gradient(155deg, color-mix(in srgb, var(--card) 70%, #fff), var(--card) 60%, var(--card-2));box-shadow:inset 0 2px 1px #ffffffd9, inset 0 -3px 5px #00000014, 0 3px 0 var(--edge), 0 5px 8px -4px #00000059;justify-content:center;align-items:center;display:inline-flex;position:relative}.tile-empty{box-shadow:inset 0 0 0 2px var(--border);background:0 0}.tile-caret{box-shadow:inset 0 0 0 2px var(--ink-3)}.tile-filled{animation:tile-pop .12s var(--ease-out)}.tile-correct,.tile-present,.tile-absent{color:#fff;background:linear-gradient(155deg, color-mix(in srgb, var(--c) 78%, #fff), var(--c) 55%, color-mix(in srgb, var(--c) 86%, #000));box-shadow:inset 0 2px 1px #ffffff80, inset 0 -4px 6px #00000038, 0 3px 0 color-mix(in srgb, var(--c) 60%, #000), 0 5px 8px -4px #0006}.tile-correct{--c:var(--primary)}.tile-present{--c:var(--secondary);color:#2a2115;transform:rotate(var(--tilt,0deg));transition:transform .35s cubic-bezier(.2,.8,.3,1.25)}.tile-absent{--c:var(--ink-3);color:#ffffffd9}[data-mode=dark] .tile-absent{--c:#3a4640}.tile-pts{font-family:var(--font-body);font-size:calc(var(--tile,46px) * .2);opacity:.75;font-weight:800;line-height:1;position:absolute;bottom:2px;right:4px}.tile-warn{isolation:isolate;box-shadow:inset 0 0 0 2px var(--danger), 0 3px 0 var(--edge)}.tile-warn:after{content:"";z-index:-1;border-radius:inherit;opacity:.35;background-image:linear-gradient(135deg, var(--danger) 25%, transparent 25%), linear-gradient(225deg, var(--danger) 25%, transparent 25%), linear-gradient(315deg, var(--danger) 25%, transparent 25%), linear-gradient(45deg, var(--danger) 25%, transparent 25%);background-position:calc(var(--tile,46px) * -.16) 0, calc(var(--tile,46px) * -.16) 0, 0 0, 0 0;background-size:calc(var(--tile,46px) * .32) calc(var(--tile,46px) * .32);position:absolute;inset:0}.tile-reveal{animation:.62s cubic-bezier(.2,.75,.3,1.35) both reveal-flip}@keyframes reveal-flip{0%{filter:brightness(1.5);transform:rotateX(-92deg)scale(.96)}45%{filter:brightness(1.2);transform:rotateX(8deg)scale(1.1)}70%{transform:rotateX(-4deg)scale(1.04)}to{filter:brightness();transform:rotateX(0)scale(1)}}.tile-slam{z-index:3;animation:.78s cubic-bezier(.2,.7,.3,1) both reveal-slam}@keyframes reveal-slam{0%{filter:brightness(1.5);transform:rotateX(-92deg)scale(.96)}28%{filter:brightness(1.2);transform:rotateX(0)scale(1.06)}46%,56%{filter:brightness(1.1);transform:scale(1.3)translateY(-3px);box-shadow:0 18px 26px #00000061}70%{filter:brightness();transform:scale(.93)}80%{transform:scale(1.06)}90%{transform:scale(.99)}to{transform:scale(1)}}.board-row.thud-a{animation:.32s ease-out .5s both row-thud}.board-row.thud-b{animation:.32s ease-out .5s both row-thud-b}@keyframes row-thud{0%,to{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(2px,-1px)}60%{transform:translate(-1px,1px)}80%{transform:translate(1px)}}@keyframes row-thud-b{0%,to{transform:translate(0)}20%{transform:translate(-2px,2px)}40%{transform:translate(2px,-1px)}60%{transform:translate(-1px,1px)}80%{transform:translate(1px)}}.board-row.bounce .row-tiles .tile{animation:.55s win-bounce}.board-row.bounce .row-tiles .tile:nth-child(2){animation-delay:90ms}.board-row.bounce .row-tiles .tile:nth-child(3){animation-delay:.18s}.board-row.bounce .row-tiles .tile:nth-child(4){animation-delay:.27s}.board-row.bounce .row-tiles .tile:nth-child(5){animation-delay:.36s}@keyframes win-bounce{0%,45%,80%,to{transform:translateY(0)}25%{transform:translateY(-24px)scale(1.05)}62%{transform:translateY(-10px)}90%{transform:translateY(-3px)}}.board-row.shake{animation:.5s shake}@keyframes shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-8px)}40%,60%{transform:translate(8px)}}.board-row.row-enter .row-tiles .tile{animation:row-in .22s var(--ease-out) both}@keyframes row-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes tile-pop{0%{transform:scale(.9)}to{transform:scale(1)}}.board-mini{--tile:14px;--gap:3px;align-items:flex-start}.board-mini .tile{box-shadow:0 1px 0 var(--edge);border-radius:3px;font-size:0}.board-mini .tile-empty{box-shadow:inset 0 0 0 1px var(--border)}.board-mini .tile-present{transform:none}.words-left{pointer-events:none;animation:words-left 1.3s var(--ease-out) both;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.words-left-n{font-family:var(--font-display);color:var(--primary);text-shadow:0 4px 0 var(--edge);font-size:clamp(3rem,18vw,6rem);font-weight:800;line-height:1}.words-left-label{color:var(--ink-2);font-weight:700}@keyframes words-left{0%{opacity:0;transform:scale(.6)}20%{opacity:1;transform:scale(1.05)}70%{opacity:1;transform:scale(1.1)}to{opacity:0;transform:scale(1.3)}}.keyboard{-webkit-user-select:none;user-select:none;touch-action:manipulation;flex:none;gap:clamp(5px,1vh,8px);display:grid}.keyboard-row{justify-content:center;gap:clamp(4px,1.2vw,7px);display:flex}.key{--c:var(--card);appearance:none;border-radius:var(--radius-md);background:linear-gradient(155deg, color-mix(in srgb, var(--card) 70%, #fff), var(--card) 60%, var(--card-2));min-width:0;max-width:48px;height:clamp(44px,6.4svh,66px);color:var(--ink);font-family:var(--font-body);box-shadow:inset 0 2px 1px #fffc, 0 3px 0 var(--edge), 0 4px 6px -3px #00000059;cursor:pointer;transition:transform var(--dur-press) var(--ease-out);-webkit-touch-callout:none;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;font-size:clamp(.95rem,3svh,1.3rem);font-weight:800;display:inline-flex}.key:active{box-shadow:inset 0 2px 1px #fffc, 0 1px 0 var(--edge);transform:translateY(2px)}.key:disabled{opacity:.5}.key-wide{letter-spacing:.02em;text-transform:uppercase;flex:1.7;max-width:76px;font-size:clamp(.65rem,1.5svh,.85rem)}.key-back .key-glyph{font-size:clamp(1rem,2.6svh,1.3rem)}.key-back .key-hint{opacity:.6;text-transform:uppercase;letter-spacing:.04em;font-size:.5rem}.key-correct,.key-present{color:#fff;background:linear-gradient(155deg, color-mix(in srgb, var(--c) 78%, #fff), var(--c) 60%, color-mix(in srgb, var(--c) 88%, #000));box-shadow:inset 0 2px 1px #ffffff73, 0 3px 0 color-mix(in srgb, var(--c) 60%, #000), 0 4px 6px -3px #0006}.key-correct{--c:var(--primary)}.key-present{--c:var(--secondary);color:#2a2115}.key-absent{background:linear-gradient(155deg, color-mix(in srgb, var(--ink-3) 70%, #000), var(--ink-3));color:#ffffff8c;transform:translateY(2px);box-shadow:inset 0 4px 7px #00000073,inset 0 -1px #ffffff0f}.keyboard-disabled{opacity:.6;pointer-events:none}.play{gap:var(--space-3);height:calc(100dvh - var(--space-8) - env(safe-area-inset-top) - env(safe-area-inset-bottom));flex-direction:column;display:flex}.play-head h1{font-size:var(--text-xl)}.play-region{flex:auto;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.play-note{text-align:center}.play-finish{text-align:center;align-items:center;gap:var(--space-2)}.play-finish-score{font-family:var(--font-display);font-weight:800;font-size:var(--text-2xl);color:var(--primary)}.shell:has(.play) .tabbar{display:none}.shell:has(.play) .shell-main{padding-block:calc(var(--space-4) + env(safe-area-inset-top)) calc(var(--space-4) + env(safe-area-inset-bottom))}@media (width>=900px){.shell:has(.play) .shell-main{padding-block:var(--space-6)}.play{height:calc(100dvh - var(--space-12));max-width:720px}}.switch{appearance:none;border-radius:var(--radius-full);background:var(--card-2);cursor:pointer;width:52px;height:32px;transition:background-color var(--dur-fast) ease;border:0;flex-shrink:0;position:relative;box-shadow:inset 0 2px 3px #00000026}.switch-knob{border-radius:var(--radius-full);background:var(--card);width:26px;height:26px;box-shadow:0 2px 0 var(--edge);transition:transform var(--dur-fast) var(--ease-out);position:absolute;top:3px;left:3px}.switch-on{background:var(--primary)}.switch-on .switch-knob{transform:translate(20px)}@media (prefers-reduced-motion:reduce){.tile-reveal,.tile-slam,.tile-filled,.board-row.thud-a,.board-row.thud-b,.board-row.bounce .row-tiles .tile,.board-row.row-enter .row-tiles .tile,.board-row.shake,.words-left{animation:none!important}.tile-present{transition:none}.key:active{transform:none}}.admin{gap:var(--space-6);grid-template-columns:180px minmax(0,1fr);align-items:start;display:grid}.shell:has(.admin) .shell-main{max-width:none}.admin-nav{gap:var(--space-1);top:var(--space-6);flex-direction:column;display:flex;position:sticky}.admin-link{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--on-table);font-weight:700;text-decoration:none;display:block}.admin-link[aria-current=page]{background:var(--card);color:var(--primary);box-shadow:0 2px 0 var(--edge)}.admin-body{gap:var(--space-4);flex-direction:column;min-width:0;display:flex}.admin-head h1{color:var(--on-table)}.admin-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.admin-span{grid-column:1/-1}.kpi-row{gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.kpi{background:var(--card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-4);flex-direction:column;gap:2px;display:flex}.kpi-label{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);font-weight:700}.kpi-value{font-family:var(--font-display);font-weight:800;font-size:var(--text-2xl);line-height:1.1}.chart-grid{gap:var(--space-4);grid-template-columns:1fr;display:grid}@media (width>=1700px){.chart-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.chart{gap:var(--space-2);flex-direction:column;margin:0;display:flex}.chart-title{justify-content:space-between;align-items:baseline;gap:var(--space-2);font-weight:700;display:flex}.chart-svg{width:100%;height:auto;overflow:visible}.chart-gridline{stroke:var(--border);stroke-width:1px}.chart-svg rect{stroke:none}.chart-tick{fill:var(--ink-3);font-size:10px;font-family:var(--font-body)}.chart-label{fill:var(--ink-2);font-size:11px;font-weight:700;font-family:var(--font-body)}.chart-bar{fill:#177e78;transition:opacity var(--dur-fast) ease}.chart-bar-hover{opacity:.75}.chart-bar-zero{fill:var(--border)}.chart-tip{fill:var(--ink);opacity:.92}.chart-tip-text{fill:var(--card);font-size:10px;font-family:var(--font-body)}.chart-tip-strong{font-size:12px;font-weight:800}.table-card{padding:var(--space-3) var(--space-4);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.table th{text-align:left;font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--border);white-space:nowrap;font-weight:700}.table td{padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--border);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table th.num,.table td.num{text-align:right;font-variant-numeric:tabular-nums}.table .nowrap{white-space:nowrap}.table-row-link{cursor:pointer}@media (hover:hover) and (pointer:fine){.table-row-link:hover td{background:var(--card-2)}}.table code{font-family:var(--font-mono);font-size:12px}.table .detail{margin:var(--space-2) 0 0;padding:var(--space-2);background:var(--card-2);border-radius:var(--radius-md);white-space:pre-wrap;max-width:420px;font-size:11px}.table-logs td{font-family:var(--font-mono);word-break:break-word;font-size:11px}.facts{gap:var(--space-1) var(--space-4);grid-template-columns:max-content minmax(0,1fr);margin:0;display:grid}.facts dt{color:var(--ink-2);font-size:var(--text-sm);font-weight:700}.facts dd{margin:0}.filters .input{min-height:40px}select.input{padding-right:var(--space-4)}@media (width<=899px){.admin{grid-template-columns:1fr}.admin-nav{flex-flow:wrap;position:static}.kpi-row,.chart-grid,.admin-grid{grid-template-columns:1fr}}.club-header{border-radius:var(--radius-lg);color:var(--on-table);position:relative;overflow:hidden}.club-header-image:after{content:"";pointer-events:none;background:radial-gradient(circle at 35% 35%,#f3dd9a,#8a6a24 52%,#0000 56%) 10px 10px/8px 8px no-repeat,radial-gradient(circle at 35% 35%,#f3dd9a,#8a6a24 52%,#0000 56%) calc(100% - 10px) 10px/8px 8px no-repeat,radial-gradient(circle at 35% 35%,#f3dd9a,#8a6a24 52%,#0000 56%) 10px calc(100% - 10px)/8px 8px no-repeat,radial-gradient(circle at 35% 35%,#f3dd9a,#8a6a24 52%,#0000 56%) calc(100% - 10px) calc(100% - 10px)/8px 8px no-repeat;position:absolute;inset:0}.club-header-image{min-height:180px;box-shadow:var(--shadow-card);background-position:50%;background-size:cover;align-items:flex-end;display:flex}.club-header-image:before{content:"";background:linear-gradient(#0000 30%,#000000a6);position:absolute;inset:0}.club-header-inner{align-items:center;gap:var(--space-4);display:flex;position:relative}.club-header-image .club-header-inner{padding:var(--space-4);width:100%}.club-header h1{color:inherit}.club-tagline{font-size:var(--text-md);color:var(--on-table-2);margin:2px 0}.club-header-image .club-tagline,.club-header-image .sub{color:#ffffffd9}.club-header .sub{font-size:var(--text-sm);color:var(--on-table-2)}.club-logo{object-fit:cover;background:var(--card);border-radius:14px;flex-shrink:0;width:56px;height:56px;box-shadow:0 3px #00000059}.avatar img{border-radius:inherit}.hint{color:var(--ink-3);margin-top:4px;font-size:.8125rem;display:block}.nickname-form{margin-top:var(--space-3);align-items:flex-end}.nickname-form .btn{margin-bottom:22px}.infra-map{width:100%;overflow-x:auto}.infra-svg{width:100%;min-width:720px;height:auto;display:block}.infra-edge{stroke:var(--ink-3);stroke-width:1.5px;fill:none}.infra-arrow{fill:var(--ink-3)}.infra-edge-label-bg{fill:var(--card)}.infra-edge-label{fill:var(--ink-2);font-size:10px;font-family:var(--font-body)}.infra-node{box-sizing:border-box;border-radius:var(--radius-md);background:var(--card-2);border:1px solid var(--border);height:100%;color:var(--ink);padding:8px 10px;font-size:12px;line-height:1.3;overflow:hidden}.infra-node-external{background:0 0;border-style:dashed}.infra-node-missing{border-color:var(--danger)}.infra-node-head{justify-content:space-between;align-items:center;font-size:13px;display:flex}.infra-node-role{color:var(--ink-2)}.infra-node-live{color:var(--ink-2);flex-direction:column;margin-top:4px;font-size:11px;display:flex}.infra-node-live code{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.infra-dot{background:#2f8f5b;border-radius:50%;flex:none;width:8px;height:8px}.infra-dot-missing{background:var(--danger)}@media (width>=1100px){.chart-grid.infra-grid{grid-template-columns:1fr 1fr}}.admin-head-note{color:var(--on-table-2);font-size:var(--text-sm)}.table-total td{border-top:2px solid var(--border);font-weight:700}.install-banner{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);background:var(--card);color:var(--ink);box-shadow:var(--shadow-card);flex-wrap:wrap;display:flex}.install-banner .grow{flex:240px}.install-banner .row{margin-left:auto}.sheet{border-radius:var(--radius-lg);background:var(--card);color:var(--ink);padding:var(--space-4);width:min(92vw,440px);max-height:min(88vh,88dvh);box-shadow:var(--shadow-card);border:none;overflow-y:auto}.sheet::backdrop{background:#00000073}.steps{gap:var(--space-2);flex-direction:column;margin:0;padding-left:1.4em;display:flex}.table-section{padding-block:var(--space-2)}.lane-head{align-items:center;gap:var(--space-2);margin-top:var(--space-2);display:flex}.lane-title{font-size:var(--text-lg);color:var(--on-table)}.lane-sub{font-size:var(--text-sm);color:var(--on-table-2);margin-left:auto}.seal{border-radius:var(--radius-full);color:#5a4315;font-family:var(--font-display);background:radial-gradient(circle at 35% 35%,#f3dd9a,#b8892e 70%);flex:none;place-items:center;font-weight:800;display:inline-grid;box-shadow:0 1px #0006}.clubbadge{background:var(--primary);color:var(--on-primary);font-family:var(--font-display);border-radius:6px;flex:none;place-items:center;font-weight:800;display:inline-grid;overflow:hidden}.clubbadge img{object-fit:cover;width:100%;height:100%}.pair{width:calc(var(--pair) * 1.6);height:var(--pair);flex:none;display:inline-flex;position:relative}.pair-a,.pair-b{width:var(--pair);height:var(--pair);border:2px solid var(--card);border-radius:50%;position:absolute;top:0}.pair-a{background:#5a7d9a;left:0}.pair-b{left:calc(var(--pair) * .6);background:#2f7a4d}.shield{flex:none;overflow:visible}.shield-body{fill:var(--card)}.shield-rim{fill:none;stroke:#b8892e;stroke-width:2.2px;stroke-linejoin:round}.shield-initial{font-family:var(--font-display);fill:var(--ink);font-size:22px;font-weight:800}.shield.selected .shield-body{fill:var(--primary)}.shield.selected .shield-initial{fill:var(--on-primary)}.shield.selected .shield-rim{stroke:#f3dd9a}.scope-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.scope-chip{border-radius:var(--radius-full);min-height:40px;color:var(--on-table);font:inherit;cursor:pointer;background:#ffffff1a;border:1px solid #ffffff38;align-items:center;gap:8px;padding:4px 14px 4px 8px;font-weight:700;transition:background .15s,transform .15s;display:inline-flex}.scope-chip:hover{background:#ffffff2e}.scope-chip[aria-pressed=true]{background:var(--card);border-color:var(--card);color:var(--ink);box-shadow:0 2px #00000040}.scope-chip:focus-visible{outline-offset:2px;outline:3px solid #f3dd9a}.scope-all{background:var(--table);border-radius:50%;width:22px;height:16px;box-shadow:inset 0 0 0 2px #00000040,0 0 0 2px #8a5a34}.scope-chip[aria-pressed=true] .scope-all{box-shadow:inset 0 0 0 2px #00000040,0 0 0 2px #b8892e}.scope-strip{align-items:center;gap:var(--space-3);color:var(--on-table-2);font-size:var(--text-sm);display:flex}.scope-strip strong{color:var(--on-table)}.update-notice{left:50%;bottom:calc(var(--tabbar-h,64px) + var(--space-3) + env(safe-area-inset-bottom));z-index:40;align-items:center;gap:var(--space-3);width:min(calc(100vw - 2 * var(--space-4)), 560px);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--card);color:var(--ink);box-shadow:var(--shadow-lg,0 12px 30px #0000004d);animation:.4s cubic-bezier(.2,.8,.2,1) rise-in;display:flex;position:fixed;translate:-50%}@media (width>=900px){.update-notice{bottom:var(--space-4)}}@keyframes rise-in{0%{opacity:0;translate:-50% 16px}}.doorway{z-index:60;background-color:var(--table);background-image:var(--grain), var(--table-texture);cursor:pointer;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.door-scene{aspect-ratio:5/4;transform-origin:50% 52%;width:min(92vw,520px);transition:transform .7s cubic-bezier(.6,0,.9,.4),opacity .5s .3s;position:relative}.door-wall{border-radius:var(--radius-lg);background:linear-gradient(#00000038,#0000 40%),repeating-linear-gradient(90deg,#0000001a 0 2px,#0000 2px 9px,#ffffff0d 9px 11px,#0000 11px 23px),#5a3a22;position:absolute;inset:0;box-shadow:inset 0 0 0 2px #0003}.door-wall:after{content:"";border-radius:0 0 var(--radius-lg) var(--radius-lg);background:#3b2415;height:4%;position:absolute;bottom:0;left:0;right:0}.door-sign{color:#4a3510;font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;background:linear-gradient(#f3dd9a,#b8892e);border-radius:6px;padding:6px 16px;font-size:15px;font-weight:800;position:absolute;top:6%;left:50%;translate:-50%;box-shadow:0 2px #6b4d16,0 4px 8px #0006}.door-lamp{background:linear-gradient(#ffe9a8,#d9a83c);border-radius:7px 7px 3px 3px;width:14px;height:22px;position:absolute;top:30%;box-shadow:0 0 34px 14px #ffdc8c47}.door-lamp-l{left:22%}.door-lamp-r{right:22%}.door-frame{perspective:700px;background:#2f1d11;border:8px solid #8a5a34;border-bottom:0;border-radius:12px 12px 0 0;width:34%;height:64%;position:absolute;bottom:4%;left:50%;overflow:hidden;translate:-50%;box-shadow:0 0 0 3px #3b2415}.door-fanlight{z-index:2;background:radial-gradient(60% 100% at 50% 100%,#ffe6a3,#d9a83c);border-radius:100px 100px 4px 4px;height:12%;position:absolute;top:4%;left:8%;right:8%;box-shadow:inset 0 0 0 2px #3b2415}.door-room{background:radial-gradient(80% 50% at 50% 30%, #ffe7a099, transparent 70%), var(--table);position:absolute;inset:0}.door-leaf{transform-origin:0;background:linear-gradient(90deg,#ffffff14,#00000024),#8a3b2b;transition:transform .55s cubic-bezier(.4,0,.2,1);position:absolute;inset:0;box-shadow:inset 0 0 0 5px #0003}.door-panel{border-radius:3px;position:absolute;left:18%;right:18%;box-shadow:inset 2px 2px #00000040,inset -2px -2px #ffffff1f}.door-panel-top{height:26%;top:22%}.door-panel-bottom{height:30%;top:56%}.door-handle{background:linear-gradient(#f3dd9a,#8a6a24);border-radius:3px;width:6px;height:22px;position:absolute;top:50%;right:10%;box-shadow:0 1px 2px #00000080}.door-mat{background:repeating-linear-gradient(90deg,#6b5b43 0 4px,#5a4a34 4px 8px);border-radius:3px;width:30%;height:4%;position:absolute;bottom:1.5%;left:50%;translate:-50%}.door-tilo{transition:left 1.1s linear;position:absolute;bottom:0;left:-14%}.mode-arrive.phase-open .door-tilo,.mode-arrive.phase-fly .door-tilo,.mode-arrive.phase-welcome .door-tilo{left:42%}.mode-arrive.phase-open .door-leaf,.mode-arrive.phase-fly .door-leaf,.mode-arrive.phase-welcome .door-leaf{transform:rotateY(-92deg)}.mode-arrive.phase-fly .door-scene,.mode-arrive.phase-welcome .door-scene{opacity:0;transform:scale(7)translateY(18%)}.mode-leave .door-tilo{left:42%}.mode-leave .door-leaf{transform:rotateY(-92deg)}.mode-leave.phase-inside .door-scene{opacity:0;transition:none;transform:scale(7)translateY(18%)}.mode-leave .door-scene{transition:transform .7s cubic-bezier(.2,.6,.3,1),opacity .3s}.mode-leave.phase-leave .door-tilo,.mode-leave.phase-closed .door-tilo,.mode-leave.phase-gone .door-tilo{left:-14%}.mode-leave.phase-closed .door-leaf,.mode-leave.phase-gone .door-leaf{transform:rotateY(0)}.mode-leave .door-tilo .tilo{transform:scaleX(-1)}.door-welcome{text-align:center;color:var(--on-table);opacity:0;pointer-events:none;place-content:center;transition:opacity .5s;display:grid;position:absolute;inset:0}.door-welcome h1{color:var(--on-table);font-size:var(--text-2xl)}.door-welcome .eyebrow{color:var(--on-table-2)}.mode-arrive.phase-welcome .door-welcome,.mode-leave.phase-gone .door-welcome{opacity:1}.mode-leave.phase-gone .door-scene{opacity:0}.door-skip{bottom:max(var(--space-4), env(safe-area-inset-bottom));color:var(--on-table-2);position:absolute}.profile-head{align-items:center;gap:var(--space-4);display:flex}.profile-head h1{font-size:var(--text-xl)}.name-link{color:inherit;text-decoration:none}.name-link:hover strong{text-decoration:underline}.facts-row{gap:var(--space-2) var(--space-4);flex-wrap:wrap;margin:0;display:flex}.fact{flex-direction:column;display:flex}.fact dt{color:var(--ink-2);font-size:var(--text-sm);font-weight:700}.fact dd{font-family:var(--font-display);font-weight:800;font-size:var(--text-lg);margin:0}.scope-chip.on-card{background:var(--paper,var(--bg));border-color:var(--border);color:var(--ink);min-height:36px;text-decoration:none}.chess-stage{--light:#e9d3a8;--dark:#8a5a34;--edge-light:#b99c6c;--edge-dark:#4e3018;perspective:1100px;perspective-origin:50% 20%;margin-inline:auto;position:relative}.board-felt{--light:#d3e2c6;--dark:#2f6a4a;--edge-light:#9db08e;--edge-dark:#1b3f2c}.board-slate{--light:#dcdfe4;--dark:#5b6370;--edge-light:#a4a9b2;--edge-dark:#343941}.chess-board{grid-template-columns:repeat(8, var(--sq));grid-auto-rows:var(--sq);transform-style:preserve-3d;transform:rotateX(var(--tilt));transform-origin:50% 100%;background:#3b2415;border-radius:8px;gap:0;padding:8px;display:grid;position:relative;box-shadow:0 10px #24150c,0 22px 30px -14px #0009}.tile{width:var(--sq);height:var(--sq);cursor:default;transform-style:flat;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0;position:relative}.tile:not(:disabled){cursor:pointer}.tile-svg{width:100%;height:115%;display:block;position:absolute;inset:0;overflow:visible}.tile-light .tile-top{fill:var(--light)}.tile-dark .tile-top{fill:var(--dark)}.tile-light .tile-edge{fill:var(--edge-light)}.tile-dark .tile-edge{fill:var(--edge-dark)}.tile-bevel-top{fill:#ffffff47}.tile-bevel-side{fill:#0000002e}.tile-selected .tile-top{fill:#e7a92b}.tile-last .tile-top{fill:color-mix(in srgb, #e7a92b 45%, var(--dark))}.tile-light.tile-last .tile-top{fill:color-mix(in srgb, #e7a92b 45%, var(--light))}.tile-check .tile-top{fill:#d8433a}.tile-capture .tile-top{stroke:#d8433a;stroke-width:4px}.tile-target{animation:.42s cubic-bezier(.2,.8,.2,1) both tile-reach;animation-delay:calc(var(--reach,0) * 55ms)}.tile-capture .tile-top{animation:1.3s ease-in-out infinite ring-pulse;animation-delay:calc(var(--reach,0) * 55ms)}@keyframes ring-pulse{50%{stroke-width:6px}}.tile-target .tile-top{fill:color-mix(in srgb, #f3dd9a 40%, var(--dark))}.tile-light.tile-target .tile-top{fill:color-mix(in srgb, #f3dd9a 55%, var(--light))}@keyframes tile-reach{0%{transform:translateZ(0)}to{transform:translateZ(9px)}}.tile-target .dot,.tile-capture .dot{animation:1.3s ease-in-out infinite dot-breathe;animation-delay:calc(var(--reach,0) * 55ms + .4s)}@keyframes dot-breathe{50%{opacity:.6;transform:scale(1.35)}}.dot{transform-origin:50%;pointer-events:none;background:#2a211559;border-radius:50%;width:28%;height:28%;position:absolute;top:50%;left:50%;translate:-50% -50%}.coord{color:#2a211599;pointer-events:none;font-size:9px;font-weight:800;position:absolute}.tile-dark .coord{color:#fff8eab3}.coord-rank{top:2px;left:3px}.coord-file{bottom:2px;right:4px}.pieces-layer{pointer-events:none;transform-style:preserve-3d;position:absolute;inset:8px}.piece-stand{width:12.5%;height:12.5%;transform-style:preserve-3d;transition:left .35s cubic-bezier(.2,.8,.2,1),top .35s cubic-bezier(.2,.8,.2,1);position:absolute}.piece-stand:before{content:""}.piece-stand .piece{transform-origin:50% 100%;width:84%;height:84%;transform:rotateX(calc(-1 * var(--tilt)));position:absolute;bottom:12%;left:8%}.piece-shadow{filter:blur(2px);background:#00000059;border-radius:50%;width:60%;height:22%;position:absolute;bottom:8%;left:50%;translate:-50%}.piece{object-fit:contain;filter:drop-shadow(0 2px 1px #00000059);transition:transform .15s}.piece-stand.lifted .piece{transform:rotateX(calc(-1 * var(--tilt))) translateY(-8%) scale(1.08)}.promotion{gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);background:var(--card);box-shadow:var(--shadow-card);z-index:3;display:flex;position:absolute;top:50%;left:50%;translate:-50% -50%}.chess-sheet{gap:var(--space-3);flex-direction:column;display:flex}.player-line{align-items:center;gap:var(--space-3);color:var(--on-table);border-radius:var(--radius-md);padding:4px 6px;display:flex}.player-line .muted{color:var(--on-table-2)}.player-line.to-move{background:#fff8ea1a}.turn-dot{background:#e7a92b;border-radius:50%;width:12px;height:12px;animation:1.4s ease-in-out infinite turn-pulse;box-shadow:0 0 0 4px #e7a92b4d}@keyframes turn-pulse{50%{box-shadow:0 0 0 8px #e7a92b26}}.on-table-note{color:var(--on-table-2)!important}.result-card{align-items:center;gap:var(--space-3);display:flex}.moves-panel{background:var(--card);color:var(--ink);border-radius:var(--radius-md);padding:var(--space-3);gap:var(--space-2);flex-direction:column;display:flex}.move-list{font-variant-numeric:tabular-nums;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:2px 12px;margin:0;padding:0;list-style:none;display:grid}.move-list li{grid-template-columns:28px 1fr 1fr;align-items:center;display:grid}.move-no{color:var(--ink-3);font-size:var(--text-sm)}.move-san{font:inherit;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:2px 6px;font-weight:700}.move-san.current{background:var(--primary-soft);color:var(--primary)}.board-preview{padding-block:var(--space-2);justify-content:center;display:flex}.game-choice{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.game-option{border:1px solid var(--border);background:var(--card);color:var(--ink);font:inherit;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:10px;display:flex}.game-option.chosen{border:2px solid var(--primary)}.game-option.soon{color:var(--ink-3);border-style:dashed}@media (prefers-reduced-motion:reduce){.turn-dot,.tile-target,.tile-capture .tile-top,.dot{animation:none}}.board-row{justify-content:center;align-items:stretch;gap:8px;display:flex}.eval-bar{background:#2a2115;border-radius:6px;flex-direction:column-reverse;width:20px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 0 0 2px #0000004d}.eval-bar.flipped{flex-direction:column}.eval-white{background:#fff8ea;width:100%;transition:height .4s;display:block}.eval-label{color:#e7a92b;writing-mode:vertical-rl;text-shadow:0 0 3px #000;font-size:9px;font-weight:800;position:absolute;top:50%;left:50%;translate:-50% -50%}.move-san.mark-blunder{color:#d8433a}.move-san.mark-mistake{color:#c0742a}.move-san.mark-dubious{color:#9a8a6f}.tile-threat-mark{fill:#d8433a;stroke:#fff8ea;stroke-width:1.2px}.tile-threat .tile-top{filter:drop-shadow(0 0 3px #d8433ab3)}.tile-exposed-ring{fill:none;stroke:#e7a92b;stroke-width:1.6px;stroke-dasharray:3 2.5}.tile-castle path{fill:#fff8ea;stroke:#2a2115;stroke-width:.8px;opacity:.85}.tile-cover{pointer-events:none}.assist-list{flex-direction:column;gap:6px;display:flex}.assist-row{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.assist-row input{width:18px;height:18px;accent-color:var(--primary);margin-top:4px}.coverage-toggle[aria-pressed=true]{background:var(--card);color:var(--ink)}.assist-chips{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.assist-chips .scope-chip{min-height:32px;font-size:var(--text-sm);padding:2px 10px}.deal-in{animation:.55s cubic-bezier(.2,.9,.3,1.1) both deal;animation-delay:calc(var(--i,0) * .11s);transform-origin:50% 120%}@keyframes deal{0%{opacity:0;transform:translate(40px,90px)rotate(7deg)}70%{opacity:1;transform:translateY(-3px)rotate(-.8deg)}to{transform:translate(0)rotate(0)}}.tilt-a{rotate:-.5deg}.tilt-b{rotate:.4deg}.stamp-stage{place-items:center;width:100%;min-height:110px;display:grid;position:relative}.stamp{font-family:var(--font-display);letter-spacing:.06em;color:var(--primary);border:4px solid var(--primary);opacity:.92;border-radius:8px;padding:2px 14px;font-size:clamp(28px,8vw,40px);font-weight:800;animation:.45s cubic-bezier(.2,1.4,.4,1) both stamp;position:relative;rotate:-8deg;-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='80' height='80'><filter id='n'><feTurbulence baseFrequency='.9' numOctaves='2'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1.6 -.15'/></filter><rect width='80' height='80' fill='white' filter='url(%23n)'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='80' height='80'><filter id='n'><feTurbulence baseFrequency='.9' numOctaves='2'/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 1.6 -.15'/></filter><rect width='80' height='80' fill='white' filter='url(%23n)'/></svg>")}.stamp-miss{color:var(--ink-2);border-color:var(--ink-2)}@keyframes stamp{0%{opacity:0;transform:scale(2.2)}60%{opacity:.95}to{transform:scale(1)}}.play-tilo{position:absolute;bottom:-6px;right:0}.chip-burst{pointer-events:none;width:0;height:0;position:absolute;top:55%;left:50%}.chip-bit{opacity:0;border-radius:50%;width:12px;height:12px;animation:1.1s cubic-bezier(.15,.7,.3,1) .25s both burst;position:absolute;box-shadow:inset 0 0 0 2px #fff8ea99}@keyframes burst{0%{opacity:0;transform:translate(0)scale(.4)}15%{opacity:1}to{transform:translate(var(--dx), var(--dy)) rotate(540deg) scale(1);opacity:0}}.rise-in{animation:.6s .45s both rise}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.table-wrap{gap:var(--space-2);flex-direction:column;display:flex}.table-scene{aspect-ratio:5/3.4;width:100%;max-width:560px;margin-inline:auto;position:relative}.table-top{background:radial-gradient(ellipse at 50% 38%, color-mix(in srgb, var(--table) 80%, white) 0%, var(--table) 70%);border-radius:50%;position:absolute;inset:22% 15%;box-shadow:0 6px #4a2f1c,0 10px #2f1d11,inset 0 0 0 6px #6b4a2c,0 18px 26px -14px #0009}.seat{width:var(--seat,44px);color:var(--on-table);font:inherit;cursor:pointer;animation:.4s cubic-bezier(.2,1.2,.4,1) both seat-pop;animation-delay:calc(var(--i,0) * 50ms + .2s);background:0 0;border:0;justify-items:center;gap:2px;padding:0;display:grid;position:absolute;translate:-50% -50%}.seat .avatar{width:var(--seat,44px);height:var(--seat,44px);font-size:calc(var(--seat,44px) * .42);box-shadow:0 0 0 3px var(--card), 0 3px 0 #00000059;transition:transform var(--dur-fast) ease}.seat-none .avatar{opacity:.45;filter:saturate(.4);box-shadow:0 0 0 2px #fff8ea73}.seat-playing .avatar{box-shadow:0 0 0 3px var(--secondary), 0 3px 0 #00000059}.seat-finished .avatar{box-shadow:0 0 0 3px #4f9a5c,0 3px #00000059}.seat-you .avatar{outline:3px solid var(--secondary);outline-offset:3px}.seat-selected .avatar,.seat:hover .avatar{transform:scale(1.08)}.seat:focus-visible{outline-offset:2px;border-radius:8px;outline:2px solid #fff}.seat-tick{right:-4px;top:calc(var(--seat,44px) - 12px);color:#fff8ea;border:2px solid var(--card);background:#4f9a5c;border-radius:50%;place-items:center;width:16px;height:16px;font-size:10px;font-weight:800;display:grid;position:absolute}.seat-streak{border:2px solid var(--card);background:radial-gradient(circle at 35% 35%,#f3dd9a,#b8892e);border-radius:50%;width:12px;height:12px;position:absolute;top:-4px;left:-4px}.seat-name{color:var(--on-table-2);max-width:calc(var(--seat,44px) + 24px);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:700;overflow:hidden}.seat-more{height:var(--seat,44px);cursor:default;background:#fff8ea24;border:1.5px dashed #fff8ea73;border-radius:50%;place-items:center;font-size:13px;font-weight:700;display:grid}@keyframes seat-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}.table-summary{text-align:center;color:var(--on-table-2)}.seat-card{align-items:center;gap:var(--space-3);background:var(--card);color:var(--ink);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);box-shadow:0 2px 0 var(--edge);flex-wrap:wrap;animation:.3s both rise;display:flex}@media (width<=600px){.seat-actions{flex-basis:100%;justify-content:flex-end}}.lid{flex:none;display:block}.game-head{align-items:center;gap:var(--space-3);display:flex}@media (prefers-reduced-motion:reduce){.deal-in,.stamp,.chip-bit,.rise-in,.seat,.seat-card{opacity:1;transform:none;animation:none!important}.stamp{transform:none}.chip-bit{display:none}}.podium{padding-inline:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:6px;display:grid}.podium-col{justify-items:center;display:grid}.podium-who{color:var(--on-table);text-align:center;font-size:var(--text-sm);justify-items:center;gap:2px;margin-bottom:8px;display:grid}.podium-who .muted{color:var(--on-table-2)}.podium-avatar{border-radius:50%;display:inline-grid;position:relative}.podium-avatar .avatar{box-shadow:0 0 0 3px var(--card), 0 3px 0 #00000059}.podium-you .avatar{outline:3px solid var(--secondary);outline-offset:3px}.crown{z-index:1;position:absolute;top:-12px;left:50%;translate:-50%}.podium-step{width:100%;font-family:var(--font-display);color:#f3e2b6;background:linear-gradient(#8a5a34,#5a3a22);border-radius:8px 8px 0 0;align-content:start;justify-items:center;padding-top:6px;font-weight:800;display:grid;box-shadow:inset 0 3px #ffffff24,inset 0 -4px #00000040}.step-1{height:84px}.step-2{height:62px}.step-3{height:46px}.avatar-brass .avatar{box-shadow:0 0 0 3px #b8892e,0 0 0 5px #e9c766,0 3px #00000059!important}.move{font-size:var(--text-xs);letter-spacing:.02em;font-weight:800}.move-up{color:#4f9a5c}.move-down{color:var(--danger)}.podium .move-up{color:#8fd19a}.pin-board{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--card-2);grid-template-columns:repeat(auto-fill,minmax(120px,1fr));display:grid}.pin-slot{text-align:center;justify-items:center;gap:4px;display:grid}.pin-slot .pin{filter:drop-shadow(0 2px #00000040)}.pin-slot-locked .pin{filter:none;opacity:.6}.pin-slot-locked .pin-name{color:var(--ink-3)}.pin-name{font-family:var(--font-display);font-weight:700;font-size:var(--text-sm)}.pin-desc{font-size:var(--text-xs);color:var(--ink-3)}.markers{animation:.4s cubic-bezier(.2,1.2,.4,1) both seat-pop;animation-delay:calc(var(--i,0) * 50ms + .35s);gap:3px;display:flex;position:absolute;translate:-50% -50%}.gm{box-sizing:border-box;opacity:.55;border:1.5px dashed #fff8ea80;border-radius:5px;place-items:center;width:20px;height:20px;display:grid}.gm-playing{border:1.5px solid var(--secondary);background:color-mix(in srgb, var(--secondary) 35%, transparent);opacity:1}.gm-finished{opacity:1;background:#4f9a5c;border:1.5px solid #4f9a5c}.glyph{flex:none;display:block}.table-arcs{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.arc-line{fill:none;stroke:#fff8ead9;stroke-width:2px;stroke-dasharray:6 6;stroke-linecap:round;animation:1.4s linear infinite arc-march}@keyframes arc-march{to{stroke-dashoffset:-12px}}.arc-tile{fill:var(--card);stroke:#6b5b43;stroke-width:1.5px}.arc-glyph{font-family:var(--font-display);fill:var(--primary);font-size:13px;font-weight:800}.arc-turn{fill:var(--secondary);stroke:var(--card);stroke-width:2px;transform-box:fill-box;transform-origin:50%;animation:1.2s ease-in-out infinite arc-pulse}@keyframes arc-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.5)}}@media (prefers-reduced-motion:reduce){.markers,.arc-line,.arc-turn{opacity:1;transform:none;animation:none!important}}.medal-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.medal-table th{font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);text-align:left;padding:var(--space-2) var(--space-1);border-bottom:1px solid var(--border);white-space:nowrap;font-weight:700}.medal-table td{padding:var(--space-2) var(--space-1);border-bottom:1px solid var(--border);vertical-align:middle}.medal-table tr:last-child td{border-bottom:0}.medal-table .num{text-align:center}.medal-table .you td{background:var(--primary-soft)}.medal-table .you td:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.medal-table .you td:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.medal{width:20px;height:20px;font-family:var(--font-display);color:#2a2115;border-radius:50%;place-items:center;font-size:10px;font-weight:800;display:inline-grid;box-shadow:inset 0 -2px #0003,0 1px #00000040}.medal-gold{background:radial-gradient(circle at 35% 35%,#f6e27a,#c99a2e 75%)}.medal-silver{background:radial-gradient(circle at 35% 35%,#f3f3f3,#a7a7a7 75%)}.medal-bronze{color:#fff8ea;background:radial-gradient(circle at 35% 35%,#e9b58a,#a0623a 75%)}.medal-row{align-items:center;gap:3px;display:inline-flex}.medal-none{color:var(--ink-3)}.today-place{font-size:var(--text-xs);color:var(--ink-2);margin-left:4px;font-weight:800;display:inline-block}.medal-cell{flex-direction:column;align-items:center;gap:2px;display:flex}.league-settings{padding:var(--space-3);border-radius:var(--radius-md);background:var(--card-2)}.league-archive summary{cursor:pointer}.tilo{--tilo-visor:var(--secondary);--tilo-visor-hi:color-mix(in srgb, var(--secondary) 60%, white);--tilo-visor-under:color-mix(in srgb, var(--secondary) 75%, black);flex:none;display:block;overflow:visible}.tilo .t-visor-fill{fill:var(--tilo-visor)}.tilo .t-visor-under{fill:var(--tilo-visor-under)}.tilo .t-visor-hi{stroke:var(--tilo-visor-hi)}.tilo *{transform-box:view-box}.tilo .t-shadow{transform-origin:66px 141px}.tilo .t-body{transform-origin:64px 116px}.tilo .t-eye{transform-origin:50%;transform-box:fill-box}.tilo .t-pupils{transform-origin:64px 70px}.tilo .t-armL{transform-origin:26px 84px}.tilo .t-armR{transform-origin:102px 84px}.tilo .t-legL{transform-origin:48px 116px}.tilo .t-legR{transform-origin:80px 116px}.tilo .t-visor{transform-origin:64px 38px}.tilo .t-mouth-open,.tilo .t-mouth-flat,.tilo .t-zz,.tilo .t-cards,.tilo .t-spark{opacity:0}.tilo .t-body{animation:2.6s ease-in-out infinite tilo-bob}.tilo .t-eye{animation:4.2s infinite tilo-blink}.tilo .t-shadow{animation:2.6s ease-in-out infinite tilo-shadow}.tilo.turn{animation:6s ease-in-out infinite tilo-sway}@keyframes tilo-sway{0%,to{transform:perspective(700px)rotateY(-9deg)}50%{transform:perspective(700px)rotateY(9deg)}}@keyframes tilo-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes tilo-shadow{0%,to{transform:scaleX(1)}50%{transform:scaleX(.94)}}@keyframes tilo-blink{0%,90%,to{transform:scaleY(1)}94%{transform:scaleY(.08)}}.tilo.s-wave .t-armR{animation:1.6s ease-in-out infinite tilo-wave}.tilo.s-wave .t-body{animation:1.6s ease-in-out infinite tilo-bob,1.6s ease-in-out infinite tilo-lean}@keyframes tilo-wave{0%,to{transform:rotate(-150deg)}50%{transform:rotate(-115deg)}}@keyframes tilo-lean{0%,to{rotate:0deg}50%{rotate:-3deg}}.tilo.s-think .t-armL{transform:rotate(-125deg)translate(2px)}.tilo.s-think .t-pupils{transform:translate(4px,-3px)}.tilo.s-think .t-mouth-smile{opacity:0}.tilo.s-think .t-mouth-flat{opacity:1}.tilo.s-think .t-visor{transform:rotate(-3deg)translateY(1px)}.tilo.s-think .t-body{animation:3.4s ease-in-out infinite tilo-bob,3.4s ease-in-out infinite tilo-hmm}@keyframes tilo-hmm{0%,to{rotate:0deg}50%{rotate:2.5deg}}.tilo.s-celebrate .t-body{animation:.9s cubic-bezier(.3,0,.2,1) infinite tilo-jump}.tilo.s-celebrate .t-armL{animation:.9s ease-in-out infinite tilo-armsL}.tilo.s-celebrate .t-armR{animation:.9s ease-in-out infinite tilo-armsR}.tilo.s-celebrate .t-legL,.tilo.s-celebrate .t-legR{animation:.9s ease-in-out infinite tilo-kick}.tilo.s-celebrate .t-mouth-smile{opacity:0}.tilo.s-celebrate .t-mouth-open{opacity:1}.tilo.s-celebrate .t-eye{animation:.9s ease-in-out infinite tilo-happyeyes}.tilo.s-celebrate .t-spark{animation:.9s ease-out infinite tilo-spark}.tilo.s-celebrate .t-spark:nth-child(2){animation-delay:.12s}.tilo.s-celebrate .t-spark:nth-child(3){animation-delay:.22s}.tilo.s-celebrate .t-shadow{animation:.9s cubic-bezier(.3,0,.2,1) infinite tilo-shadowjump}@keyframes tilo-jump{0%,to{transform:translateY(0)scale(1.04,.94)}35%{transform:translateY(-18px)scale(.96,1.06)}60%{transform:translateY(-14px)scale(1)}}@keyframes tilo-shadowjump{0%,to{opacity:1;transform:scaleX(1)}40%{opacity:.6;transform:scaleX(.72)}}@keyframes tilo-armsL{0%,to{transform:rotate(140deg)}50%{transform:rotate(160deg)}}@keyframes tilo-armsR{0%,to{transform:rotate(-140deg)}50%{transform:rotate(-160deg)}}@keyframes tilo-kick{0%,to{transform:rotate(0)}40%{transform:rotate(12deg)}}@keyframes tilo-happyeyes{0%,to{transform:scaleY(.3)translateY(1px)}50%{transform:scaleY(.3)translateY(0)}}@keyframes tilo-spark{0%{opacity:0;transform:translateY(6px)scale(.4)}30%{opacity:1}to{opacity:0;transform:translateY(-14px)scale(1.1)}}.tilo.s-deal .t-armR{animation:1.6s ease-in-out infinite tilo-dealarm}.tilo.s-deal .t-cards{opacity:1}.tilo.s-deal .t-card{animation:1.6s cubic-bezier(.2,.7,.3,1) infinite tilo-fly}.tilo.s-deal .t-card:nth-child(2){animation-delay:.18s}.tilo.s-deal .t-card:nth-child(3){animation-delay:.36s}.tilo.s-deal .t-pupils{animation:1.6s ease-in-out infinite tilo-watch}@keyframes tilo-dealarm{0%,to{transform:rotate(0)}25%{transform:rotate(-60deg)}55%{transform:rotate(10deg)}}@keyframes tilo-fly{0%,30%{opacity:0;transform:translate(0)rotate(0)}34%{opacity:1}80%,to{opacity:0;transform:translate(56px,-34px)rotate(40deg)}}@keyframes tilo-watch{0%,to{transform:translate(0)}60%{transform:translate(5px,-1px)}}.tilo.s-doze .t-eye{animation:none;transform:scaleY(.08)}.tilo.s-doze .t-body{animation:3.2s ease-in-out infinite tilo-snore}.tilo.s-doze .t-visor{transform:rotate(-9deg)translate(-3px,4px)}.tilo.s-doze .t-mouth-smile{opacity:0}.tilo.s-doze .t-mouth-flat,.tilo.s-doze .t-zz{opacity:1}.tilo.s-doze .t-z{animation:3.2s ease-in-out infinite tilo-zz}.tilo.s-doze .t-z:nth-child(2){animation-delay:1.1s}@keyframes tilo-snore{0%,to{transform:rotate(4deg)scale(1)}50%{transform:rotate(4deg)scale(1.03,.98)}}@keyframes tilo-zz{0%{opacity:0;transform:translate(0)scale(.6)}30%{opacity:1}to{opacity:0;transform:translate(10px,-22px)scale(1.1)}}.tilo.s-walk .t-legL{animation:.5s ease-in-out infinite tilo-stepL}.tilo.s-walk .t-legR{animation:.5s ease-in-out infinite tilo-stepR}.tilo.s-walk .t-armL{animation:.5s ease-in-out infinite tilo-swingL}.tilo.s-walk .t-armR{animation:.5s ease-in-out infinite tilo-swingR}.tilo.s-walk .t-body{animation:.5s ease-in-out infinite tilo-bob}@keyframes tilo-stepL{0%,to{transform:rotate(-18deg)}50%{transform:rotate(18deg)}}@keyframes tilo-stepR{0%,to{transform:rotate(18deg)}50%{transform:rotate(-18deg)}}@keyframes tilo-swingL{0%,to{transform:rotate(14deg)}50%{transform:rotate(-14deg)}}@keyframes tilo-swingR{0%,to{transform:rotate(-14deg)}50%{transform:rotate(14deg)}}.tilo.small .t-cheek,.tilo.small .t-shadow,.tilo.small .t-shine{display:none}.tilo-says{align-items:flex-end;gap:var(--space-2);display:flex}.tilo-says .bubble{background:var(--card);color:var(--ink);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);box-shadow:0 2px 0 var(--edge);border-radius:12px 12px 12px 4px;max-width:34ch;margin-bottom:10px}@media (prefers-reduced-motion:reduce){.tilo *{animation:none!important}.tilo.turn{animation:none}}
