@import"/web/app/tokens.css";@font-face{font-family:"Baloo 2";src:url(/shared/assets/fonts/baloo2.woff2) format("woff2");font-weight:400 800;font-display:block}:root{--cream: var(--aes-color-background);--card: var(--aes-color-card-background);--ink: var(--aes-color-outline);--ink-text: var(--ink);--yellow: var(--aes-color-accent-primary);--blue: var(--aes-color-accent-secondary);--green: var(--aes-color-accent-tertiary);--red: var(--aes-color-destructive);--paper: var(--aes-color-paper-background);--cover-paper: #FFFBF2;--muted: var(--aes-color-muted-text);--soft: var(--aes-color-soft-background);--on-accent: var(--aes-color-text-on-accent);--drop: var(--aes-color-drop-shadow);--line: var(--aes-outline-width);--radius: var(--aes-corner-radius);--touch: var(--aes-min-touch-target);--shadow: 0 4px 0 0 var(--drop);--shadow-sm: 0 3px 0 0 var(--drop);--gap: var(--aes-standard-spacing);--gutter: 16px;--inset-top: 0px;--inset-right: 0px;--inset-bottom: 0px;--inset-left: 0px;--site-strip: 0px;--safe-top: calc(max(var(--inset-top), env(safe-area-inset-top, 0px)) + var(--site-strip));--safe-right: max(var(--inset-right), env(safe-area-inset-right, 0px));--safe-bottom: max(var(--inset-bottom), env(safe-area-inset-bottom, 0px));--safe-left: max(var(--inset-left), env(safe-area-inset-left, 0px));--game-head: 60px;--fs: 1;--fast: var(--aes-motion-fast);--normal: var(--aes-motion-normal);--playful: var(--aes-motion-playful);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;height:100%}html{overflow:hidden;overscroll-behavior:none}body{background:var(--cream);color:var(--ink-text);font:600 calc(15px * var(--fs))/1.35 "Baloo 2",system-ui,sans-serif;font-synthesis:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overflow:hidden}button,input,textarea,select{font:inherit;color:inherit}:where(button:has(>label.tick)){position:relative}label.tick{position:absolute;inset:0;z-index:1;display:block;margin:0;border-radius:inherit;-webkit-tap-highlight-color:transparent}.fps-inline{font-weight:800}.fps-inline[data-grade=good]{color:#2f7a3b}.fps-inline[data-grade=fair]{color:#9a6a00}.fps-inline[data-grade=poor]{color:#b3261e}img{display:block}.icon{fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;flex:none}.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}:focus-visible{outline:3px solid var(--blue);outline-offset:2px}#app{position:absolute;inset:0}:root.website{--site-strip: 28px}.site-strip{position:fixed;z-index:40;top:0;left:0;right:0;height:var(--site-strip);box-sizing:border-box;display:flex;align-items:center;gap:8px;padding:0 calc(var(--gutter) - 4px);background:var(--yellow);color:var(--ink-text);border-bottom:2px solid var(--ink);font-size:11px;line-height:1;font-weight:700;white-space:nowrap}.site-strip span{overflow:hidden;text-overflow:ellipsis;min-width:0}.site-strip b{flex:none;font-weight:900;font-size:10px;letter-spacing:.06em;padding:2px 6px;background:var(--ink);color:var(--yellow);border-radius:5px}.site-strip .strip-link{flex:none;margin-left:auto;padding:3px 8px;border:2px solid #171717;border-radius:6px;background:#fffdf5;color:#171717;font:inherit;font-size:10px;font-weight:900;letter-spacing:.06em;cursor:pointer}a.btn{text-decoration:none}.screen{position:absolute;inset:0;display:flex;flex-direction:column;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left)}.scroll{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.screen>.scroll:last-child,.screen>.panes:last-child>.pane>.scroll:last-child{margin-bottom:calc(-1 * var(--safe-bottom));padding-bottom:var(--safe-bottom)}.scroll.stretchy{overflow-x:hidden}.pad{padding:12px var(--gutter) 24px}.stack{display:flex;flex-direction:column;gap:var(--gap)}.row{display:flex;align-items:center;gap:10px;min-width:0}.row.wrap{flex-wrap:wrap}.grow{flex:1 1 auto;min-width:0}.center{text-align:center}.muted{color:var(--muted)}.small{font-size:calc(13px * var(--fs))}.tiny{font-size:calc(11px * var(--fs))}.gap-lg{gap:20px}.display,.title,.label,.section{font-weight:800;text-transform:uppercase;letter-spacing:.04em;margin:0;line-height:1.1}.display{font-size:calc(30px * var(--fs))}.title{font-size:calc(22px * var(--fs))}.section{font-size:calc(16px * var(--fs))}.label{font-size:calc(12px * var(--fs));letter-spacing:.08em}.body{font-size:calc(15px * var(--fs));font-weight:600;margin:0}p{margin:0}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card{background:var(--card);border:var(--line) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px}.card.yellow{background:var(--yellow)}.card.flat{box-shadow:none}.card.tight{padding:10px 12px}.card>.label:first-child{margin-bottom:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--touch);padding:8px 18px;border:var(--line) solid var(--ink);border-radius:var(--radius);background:var(--card);color:var(--ink-text);box-shadow:var(--shadow);cursor:pointer;font-weight:800;font-size:calc(15px * var(--fs));letter-spacing:.05em;text-transform:uppercase;line-height:1.1;text-align:center;transition:transform var(--fast) ease-out,box-shadow var(--fast) ease-out,background var(--fast);touch-action:manipulation;user-select:none;-webkit-user-select:none}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 0 var(--drop)}.btn.block{display:flex;width:100%}.btn.primary{background:var(--yellow)}.btn.dark{background:var(--ink);color:var(--yellow)}.btn.danger{background:var(--red)}.btn.blue{background:var(--blue);color:#fff}.btn.small{min-height:44px;padding:4px 12px;font-size:calc(12px * var(--fs));border-radius:12px;box-shadow:var(--shadow-sm)}.btn.round{flex:none;width:var(--touch);padding:0;border-radius:50%}.btn.small.round{width:44px}.btn.ghost{background:transparent;border-color:transparent;box-shadow:none}.btn.ghost:active{transform:none;background:color-mix(in srgb,var(--ink) 6%,transparent)}.btn:disabled{opacity:.45;cursor:default;box-shadow:none;transform:none}.btn .badge{margin-left:2px}.btn-row{display:flex;gap:10px}.btn-row>.btn{flex:1 1 0}.link{background:none;border:0;padding:10px 4px;min-height:44px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;font-size:calc(13px * var(--fs));cursor:pointer;text-decoration:underline;text-underline-offset:3px}.badge{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:12px;background:var(--yellow);border:2px solid var(--ink);font-size:calc(12px * var(--fs));font-weight:800;line-height:1;color:var(--ink-text)}.tag{display:inline-flex;align-items:center;gap:4px;padding:1px 8px;border-radius:8px;border:2px solid var(--ink);font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.06em;text-transform:uppercase;background:var(--paper);white-space:nowrap}.tag.yellow{background:var(--yellow)}.tag.dark{background:var(--ink);color:var(--yellow)}.tag.blue{background:#dce8ff}.tag.red{background:var(--red)}.room-size .seg button{min-width:0;padding-inline:4px}.room-size .warn{margin:0;padding:6px 10px;border:2px solid var(--ink);border-radius:10px;background:#ffe9a8;color:var(--ink-text);font-weight:700}.tag.sitting-out{background:var(--soft);color:var(--muted);border-style:dashed}.tag.bot-easy{background:#8cd973}.tag.bot-normal{background:#5999fa}.tag.bot-hard{background:#d23a2f;color:#fff}.field{width:100%;min-height:var(--touch);padding:10px 14px;border:var(--line) solid var(--ink);border-radius:14px;background:var(--card);font-size:max(16px,calc(17px * var(--fs)));font-weight:700;outline:none}.field:focus{box-shadow:0 0 0 3px var(--yellow)}.field.code{font-size:calc(26px * var(--fs));letter-spacing:.4em;text-align:center;font-weight:800;padding-left:.4em}.field.invalid{border-color:#c0392b;box-shadow:0 0 0 3px #e98b8699}.error{color:#b3261e;font-weight:800;font-size:calc(13px * var(--fs))}.switch{position:relative;flex:none;width:64px;height:38px;border-radius:19px;border:var(--line) solid var(--ink);background:#e4dfea;cursor:pointer;padding:0}.switch:before{content:"";position:absolute;inset:-6px -4px}.switch:after{content:"";position:absolute;top:3px;left:3px;width:26px;height:26px;border-radius:50%;background:#7b7484;transition:transform var(--normal),background var(--normal)}.switch[aria-checked=true]{background:var(--ink)}.switch[aria-checked=true]:after{transform:translate(26px);background:#fff}.setting{display:flex;align-items:center;gap:12px;padding:6px 0}.setting .grow>b{display:block;font-size:calc(17px * var(--fs));font-weight:800}.setting .grow>span{display:block;font-size:calc(13px * var(--fs));color:var(--muted)}.setting.big{min-height:var(--touch);margin:6px 0 10px}.setting.big .switch:before{inset:-12px -8px}.seg{display:flex;border:var(--line) solid var(--ink);border-radius:var(--radius);background:var(--card);overflow:hidden;box-shadow:var(--shadow-sm)}.seg>button{flex:1 1 0;min-width:0;min-height:48px;padding:6px 4px;border:0;border-left:var(--line) solid var(--ink);background:transparent;cursor:pointer;font-weight:800;font-size:calc(13px * var(--fs));letter-spacing:.06em;text-transform:uppercase;display:inline-flex;align-items:center;justify-content:center;gap:6px}.seg>button:first-child{border-left:0}.seg>button[aria-selected=true],.seg>button[aria-checked=true]{background:var(--yellow)}.seg.small>button{min-height:44px;font-size:calc(12px * var(--fs))}.mix{display:grid;gap:2px}.slider{display:grid;gap:0}.slider-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.slider input{-webkit-appearance:none;appearance:none;display:block;width:100%;height:52px;margin:0;background:transparent;cursor:pointer;touch-action:pan-y}.slider input::-webkit-slider-runnable-track{box-sizing:border-box;height:14px;border:var(--line) solid var(--ink);border-radius:999px;background:linear-gradient(var(--yellow),var(--yellow)) 0 0 / var(--fill, 100%) 100% no-repeat,var(--card)}.slider input::-webkit-slider-thumb{-webkit-appearance:none;box-sizing:border-box;width:30px;height:30px;margin-top:calc(-8px - var(--line));border:var(--line) solid var(--ink);border-radius:50%;background:var(--card);box-shadow:var(--shadow-sm)}.slider input::-moz-range-track{box-sizing:border-box;height:14px;border:var(--line) solid var(--ink);border-radius:999px;background:var(--card)}.slider input::-moz-range-progress{height:14px;border-radius:999px;background:var(--yellow)}.slider input::-moz-range-thumb{box-sizing:border-box;width:30px;height:30px;border:var(--line) solid var(--ink);border-radius:50%;background:var(--card);box-shadow:var(--shadow-sm)}.slider input:focus-visible{outline:3px solid var(--ink);outline-offset:2px;border-radius:var(--radius)}.chips{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 8px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:46px;padding:4px 16px;border:var(--line) solid var(--ink);border-radius:23px;background:var(--card);cursor:pointer;font-weight:800;font-size:calc(12.5px * var(--fs));letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.chip img{width:28px;height:28px;object-fit:contain}.chip[aria-pressed=true]{background:var(--yellow)}.portrait{flex:none;position:relative;display:grid;place-items:center;border-radius:50%;background:var(--paper);border:2px solid var(--ink);overflow:visible}.portrait img{width:92%;height:92%;object-fit:contain}.portrait.leader{border-color:#b98a00;box-shadow:0 0 0 3px #ffd34d,0 0 14px 3px #ffc61a8c}.portrait .twinkle{position:absolute;width:34%;aspect-ratio:1;background:#ffd34d;pointer-events:none;clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);filter:drop-shadow(0 0 1px #171717);animation:twinkle 2.6s ease-in-out infinite}.portrait .twinkle.one{top:-14%;right:-16%}.portrait .twinkle.two{bottom:-6%;left:-20%;width:26%;animation-delay:.9s}.portrait .twinkle.three{top:30%;right:-26%;width:22%;animation-delay:1.7s}@keyframes twinkle{0%,70%,to{transform:scale(.2) rotate(0);opacity:0}20%{transform:scale(1) rotate(45deg);opacity:1}45%{transform:scale(.6) rotate(90deg);opacity:.8}}.reduce-motion .portrait .twinkle{animation:none;transform:scale(.8);opacity:1}.reduce-motion .portrait .twinkle.three{display:none}.bot-name.easy{color:#2b8a3e}.bot-name.normal{color:#1c64d9}.bot-name.hard{color:#d0312d}.portrait.bare{border:0;background:transparent}.topbar{flex:none;display:flex;align-items:center;gap:8px;min-height:64px;padding:8px var(--gutter)}.topbar .title{flex:1 1 auto;min-width:0}.topbar .title.end{text-align:right}.backlink{display:inline-flex;align-items:center;gap:2px;min-height:var(--touch);padding:0 8px 0 0;background:none;border:0;cursor:pointer;font-weight:800;font-size:calc(15px * var(--fs));letter-spacing:.05em;text-transform:uppercase}.overlay{position:fixed;inset:0;z-index:20;display:flex;align-items:flex-end;justify-content:center;background:#1717176b;animation:fade-in var(--normal) ease-out}.overlay.center{align-items:center;padding:max(16px,var(--safe-top)) max(16px,var(--safe-right)) max(16px,var(--safe-bottom)) max(16px,var(--safe-left))}.sheet{position:relative;width:100%;max-width:640px;max-height:calc(100% - 24px - var(--safe-top));display:flex;flex-direction:column;background:var(--cream);border:var(--line) solid var(--ink);border-bottom:0;border-radius:24px 24px 0 0;padding:8px var(--gutter) calc(16px + var(--safe-bottom));animation:sheet-up var(--playful) cubic-bezier(.2,.9,.3,1.1)}.sheet .grabber{width:44px;height:5px;border-radius:3px;background:var(--ink);opacity:.25;margin:2px auto 8px;flex:none}.sheet-head{display:flex;align-items:center;gap:10px;flex:none;padding-bottom:8px}.sheet-head .title{flex:1 1 auto;min-width:0}.sheet-body{overflow-y:auto;min-height:0;flex:1 1 auto;padding:4px 2px 8px;overscroll-behavior:contain}.sheet-body.fill{display:flex;flex-direction:column;overflow:hidden;padding:0}.sheet-body.fill>.chat{flex:1 1 auto}.sheet-foot{flex:none;padding-top:10px;display:flex;flex-direction:column;gap:10px}.dialog{width:100%;max-width:440px;max-height:100%;overflow-y:auto;background:var(--card);border:var(--line) solid var(--ink);border-radius:20px;box-shadow:0 6px 0 0 var(--drop);padding:20px;display:flex;flex-direction:column;gap:12px;animation:pop-in var(--playful) cubic-bezier(.2,.9,.3,1.3)}.dialog .btn-col{display:flex;flex-direction:column;gap:10px;margin-top:4px}.menu-list{display:flex;flex-direction:column;gap:10px}.menu-list .btn{justify-content:flex-start}.toasts{position:fixed;z-index:30;left:0;right:0;top:calc(var(--safe-top) + 10px);display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;padding:0 16px}.toast{display:flex;align-items:center;gap:10px;max-width:520px;padding:8px 16px 8px 8px;background:var(--card);border:var(--line) solid var(--ink);border-radius:18px;box-shadow:var(--shadow);font-weight:800;animation:toast-in var(--playful) cubic-bezier(.2,.9,.3,1.3)}.toast.plain{padding-left:16px}.asks{position:fixed;z-index:31;left:0;right:0;top:calc(var(--safe-top) + 10px);display:flex;flex-direction:column;align-items:center;gap:8px;padding:0 16px;pointer-events:none}.asks .request{pointer-events:auto;width:100%;max-width:440px;box-shadow:var(--shadow)}.toast.yellow{background:var(--yellow)}.brand{display:flex;align-items:center;gap:8px;padding:10px var(--gutter) 0}.brand .logo{--logo-w: 200px;--logo-h: .27;position:relative;width:var(--logo-w);height:calc(var(--logo-w) * var(--logo-h));background:url(/shared/assets/branding/aes-logo.webp) center calc(var(--logo-w) * -.235) / 110% auto no-repeat;mix-blend-mode:darken;animation:rocket-drift 6s ease-in-out infinite}.brand .logo:before{content:"";position:absolute;left:calc(var(--logo-w) * -.0328);top:calc(var(--logo-w) * .1059);width:calc(var(--logo-w) * .1146);height:calc(var(--logo-w) * .0888);background:url(/shared/assets/branding/aes-flame.svg) 0 0 / 400% 100% no-repeat;animation:logo-flame .44s steps(1) infinite}@keyframes logo-flame{0%{background-position:0 0}25%{background-position:33.333% 0}50%{background-position:66.667% 0}75%{background-position:100% 0}}.brand .logo-wrap{position:relative;margin-top:clamp(0px,calc(1.2svh - 4px),8px);width:fit-content}.brand .tier-tag{position:absolute;left:calc(100% + 9px);bottom:17%;height:44%;padding:0;margin:0;border:0;background:none;color:#0d0d0d;cursor:pointer;line-height:0;animation:rocket-drift 6s ease-in-out infinite,tag-glint 3.6s ease-in-out infinite}@keyframes tag-glint{0%,70%,to{color:#0d0d0d}85%{color:#f4a800}}.brand .tier-tag:after{content:"";position:absolute;inset:-12px -8px}.brand .tier-tag .pixel-word{display:block;height:100%;width:auto}@media(max-width:400px){.brand .settings-btn{font-size:0}}.brand .sub{font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.1em;margin-top:2px}.update{margin:8px var(--gutter) 0;padding:8px 12px;background:var(--card);border:var(--line) solid var(--ink);border-radius:14px;box-shadow:var(--shadow-sm);animation:toast-in var(--playful) cubic-bezier(.2,.9,.3,1.3)}.update-row{display:flex;align-items:center;gap:10px}.update-row .grow{min-width:0}.update-row b{display:block;font-weight:800;font-size:calc(13px * var(--fs));letter-spacing:.06em}.update-row span{display:block;font-size:calc(12px * var(--fs));color:var(--muted);line-height:1.25;overflow-wrap:anywhere}.update-row .btn{flex:none}.update.is-ready{background:var(--yellow)}.update.is-ready .update-row span{color:var(--ink-text)}.update.is-failed{background:var(--paper)}.update-track{margin-top:8px;height:12px;border:var(--line) solid var(--ink);border-radius:999px;background:var(--soft);overflow:hidden}.update-fill{height:100%;background:var(--green);transition:width .12s linear}@media(prefers-reduced-motion:reduce){.update{animation:none}.update-fill{transition:none}}.marquee{overflow:hidden;white-space:nowrap;border-block:var(--line) solid var(--ink);background:var(--yellow);margin:8px 0 4px;padding:6px 0;font-weight:800;font-size:calc(13px * var(--fs));letter-spacing:.06em}.marquee>div{display:inline-block;padding-left:100%;animation:marquee 240s linear infinite}.marquee.still>div{padding-left:var(--gutter);animation:none}.avatars{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.pick{position:relative;display:grid;place-items:center;aspect-ratio:1;border:var(--line) solid var(--ink);border-radius:var(--radius);background:var(--card);cursor:pointer;padding:6px;box-shadow:var(--shadow-sm);transition:transform var(--normal) cubic-bezier(.3,1.6,.5,1)}.pick img{width:100%;height:100%;object-fit:contain}.pick[aria-checked=true]{background:var(--yellow);transform:scale(1.04)}.pick .pick-label{position:absolute;bottom:4px;left:0;right:0;text-align:center;font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.06em}.pick .swatch{position:absolute;right:5px;bottom:5px;width:16px;height:16px;border-radius:50%;border:2px solid var(--ink)}.pick.locked{background:#e7e4dd}.pick.locked img,.pick.locked .swatch{filter:grayscale(1);opacity:.5}.pick .pick-lock{position:absolute;top:3px;right:3px;background:var(--yellow);color:var(--ink-text);border:2px solid var(--ink);border-radius:999px;padding:2px;line-height:0}.pick .swatch.own{background:conic-gradient(#ff9f8e,#ffd95a,#8edcc2,#75cbea,#c5a7f2,#e78ab3,#ff9f8e)}.hats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.colors{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.disclose{display:flex;align-items:center;gap:12px;width:100%;min-height:var(--touch);padding:6px 14px 6px 8px;border:var(--line) solid var(--ink);border-radius:var(--radius);background:var(--card);cursor:pointer;text-align:left;box-shadow:var(--shadow-sm)}.disclose b{display:block;font-weight:800;font-size:calc(13px * var(--fs));letter-spacing:.06em}.disclose span{display:block;font-size:calc(12px * var(--fs));color:var(--muted)}.disclose .plus{font-size:calc(26px * var(--fs));font-weight:800;width:24px;text-align:center}.home-actions{display:flex;flex-direction:column;gap:12px}.shake{animation:shake .36s ease-in-out}.room-item{display:flex;align-items:center;gap:12px;padding:12px 12px 12px 14px}.room-item .grow b{display:block;font-size:calc(17px * var(--fs));font-weight:800}.code-digits{font-size:calc(54px * var(--fs));font-weight:800;letter-spacing:.18em;line-height:1;font-variant-numeric:tabular-nums}.code-digits.mid{font-size:calc(38px * var(--fs))}.code-digits.online-code{letter-spacing:.14em;padding-left:.14em}.online-col{max-width:560px;margin:0 auto;width:100%}.spinner{width:28px;height:28px;border-radius:50%;border:4px solid var(--soft);border-top-color:var(--ink);animation:spin .9s linear infinite;flex:none}.status-card{display:flex;flex-direction:column;gap:12px}.qr{width:200px;height:200px;image-rendering:pixelated;border:var(--line) solid var(--ink);border-radius:12px;background:#fff;padding:6px;align-self:center}.qr.wifi,.qr.games{width:216px;height:216px;image-rendering:auto;padding:0;border-radius:18px}.qr.wifi{border-color:#1e64b4;box-shadow:0 5px #123a63}.qr.games{border-color:#8e2c9e;box-shadow:0 5px #2b1740}.step{width:100%}.step+.step{border-top:2px dashed var(--soft);padding-top:14px}.step-head{gap:10px;justify-content:center;align-items:center}.step-num{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:50%;color:#fff;font-weight:800;font-size:calc(19px * var(--fs));border:var(--line) solid var(--ink)}.step.wifi .step-num{background:#1e64b4}.step.games .step-num{background:#8e2c9e}.step-head .label{font-size:calc(16px * var(--fs));margin:0}.room-head{flex:none;display:flex;align-items:center;gap:8px;padding:8px var(--gutter) 8px}.room-head .grow .title{font-size:calc(20px * var(--fs))}.room-head .code-chip{font-size:calc(13px * var(--fs))}.tabs-wrap{flex:none;padding:0 var(--gutter) 10px}.panes{flex:1 1 auto;min-height:0;display:flex}.pane{flex:1 1 0;min-width:0;display:flex;flex-direction:column;min-height:0}.mode-switch{flex:none;display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%;max-width:760px;padding:0 var(--gutter) 10px}.mode-switch .mode{display:flex;align-items:center;gap:8px;min-width:0;min-height:56px;padding:6px 10px 6px 8px;text-align:left;color:var(--ink-text);font:inherit;border:var(--line) solid var(--ink);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-sm);cursor:pointer}.mode-switch .mode[aria-checked=true]{background:var(--yellow)}.mode-switch .mode.party[aria-checked=true]{background:#9dd672}.mode-switch .mode:active{transform:translateY(2px);box-shadow:0 1px 0 0 var(--drop)}.mode-ico{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--card);border:2px solid var(--ink)}.mode-art{flex:none;width:42px;height:42px;object-fit:contain;border-radius:10px;background:var(--paper);border:2px solid var(--ink)}.mode-text{display:flex;flex-direction:column;min-width:0}.mode-text b{font-weight:900;font-size:calc(14px * var(--fs));letter-spacing:.05em;white-space:nowrap}.mode-text span{font-size:calc(11.5px * var(--fs));font-weight:700;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mode-switch .mode[aria-checked=true] .mode-text span{color:var(--ink-text)}.party-stage{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;background:var(--paper);border-top:var(--line) solid var(--ink)}.screen>.party-stage:last-child{margin-bottom:calc(-1 * var(--safe-bottom))}.lobby>.vote-banner{margin:0 var(--gutter) 10px}.party-scroll{overflow-x:hidden}.party-hero{position:relative;overflow:hidden;isolation:isolate;height:max(250px,min(82vw,52vh));display:flex;flex-direction:column;align-items:center;padding-bottom:26px;background:#f9f5eb}.party-hero picture{flex:1 1 auto;min-height:0;width:100%;display:block}.party-hero-art{display:block;width:100%;height:100%;object-fit:contain;object-position:50% 50%;user-select:none}.party-logo{flex:none;order:-1;position:relative;z-index:2;margin-top:14px;display:flex;flex-direction:column;align-items:center;transform:rotate(-2deg);pointer-events:none;white-space:nowrap}.party-logo-zip{margin-bottom:4px;padding:1px 14px 0;border:3px solid var(--ink);border-radius:9px;background:#e5484d;color:#fff;box-shadow:0 3px 0 var(--drop);font-weight:900;font-size:calc(15px * var(--fs));letter-spacing:.14em;transform:rotate(-4deg);position:relative;z-index:1}.party-logo-main{display:block;height:clamp(40px,11vw,62px);width:auto;margin-top:2px}.party-logo-main .ink{fill:var(--ink)}.party-logo-main .fill{fill:#ffd23f}.party-burst{position:absolute;right:10px;top:104px;z-index:2;display:grid;place-content:center;justify-items:center;width:74px;height:74px;border:2.5px solid var(--ink);border-radius:50%;background:#ffb98a;color:var(--ink-text);box-shadow:1px 3px 0 var(--drop);text-align:center;transform:rotate(10deg)}.party-burst b{font-size:calc(14px * var(--fs));font-weight:900;letter-spacing:.02em;line-height:1;max-width:56px}.party-card{position:relative;z-index:3;margin-top:-22px;padding:22px var(--gutter) 22px;background:var(--paper);border-top:var(--line) solid var(--ink);border-radius:24px 24px 0 0}.party-inner{width:100%;max-width:640px;margin-inline:auto}.party-headline{margin:0;font-size:calc(27px * var(--fs));font-weight:900;line-height:1.08;letter-spacing:0;text-transform:none}.party-headline mark{color:inherit;background:linear-gradient(transparent 55%,#FFD23F 55% 92%,transparent 92%);padding:0 2px}.party-frame{position:relative;overflow:hidden;border:var(--line) solid var(--ink);border-radius:20px;box-shadow:var(--shadow);background:#8cc35c url(/shared/assets/games/party-trail/grass.webp) 0 0 / 150px 150px repeat;aspect-ratio:600 / 340}.party-trail,.party-trail>svg{position:absolute;inset:0;width:100%;height:100%;display:block}.party-trail .trail-edge{fill:none;stroke:var(--ink);stroke-width:50;stroke-linecap:round;stroke-linejoin:round;opacity:.85}.party-trail .trail{fill:none;stroke:url(#party-sand);stroke-width:43;stroke-linecap:round;stroke-linejoin:round}.party-trail .space{stroke:var(--ink);stroke-width:2.5}.party-trail .seat{fill:var(--paper);stroke:var(--ink);stroke-width:3.5}.party-trail .seat.open{fill:color-mix(in srgb,var(--paper) 80%,transparent);stroke-dasharray:6 5}.party-trail .icon{color:var(--muted)}.party-trail .hop{transform-box:fill-box;transform-origin:50% 100%;animation:party-hop 1.1s ease-in-out infinite;animation-delay:var(--d)}@keyframes party-hop{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-9px)}}.party-trail .fire-glow{transform-box:fill-box;transform-origin:center;animation:party-flicker 1.6s ease-in-out infinite}@keyframes party-flicker{0%,to{opacity:.55;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}.party-frame-tag{position:absolute;left:10px;top:10px;padding:3px 10px;border:2px solid var(--ink);border-radius:999px;background:var(--yellow);font-size:calc(12px * var(--fs));font-weight:800;box-shadow:0 2px 0 var(--drop)}.party-features{display:grid;grid-template-columns:1fr 1fr;gap:12px}.party-feature{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px 12px;border:var(--line) solid var(--ink);border-radius:18px;box-shadow:var(--shadow-sm)}.party-feature:nth-child(odd){transform:rotate(-1.2deg)}.party-feature:nth-child(2n){transform:rotate(1.2deg)}.party-feature.yellow{background:#ffe58a}.party-feature.pink{background:#ffc9df}.party-feature.purple{background:#e2d4ff}.party-feature.blue{background:#c9e9ff}.party-feature b{font-size:calc(16px * var(--fs));font-weight:900;line-height:1.1}.party-feature>span:last-child{font-size:calc(12.5px * var(--fs));font-weight:700;line-height:1.25;color:#3d3a33}.party-feature-art{display:flex;align-items:flex-end;height:60px;margin-bottom:4px}.party-art{display:inline-block;background-repeat:no-repeat;flex:none}.party-art.second{margin-left:-10px}.party-fan{display:flex;align-items:flex-end;padding-left:10px}.party-fan img{width:44px;height:44px;object-fit:contain;border:2px solid var(--ink);border-radius:10px;background:var(--paper);margin-left:-10px;box-shadow:0 2px 0 var(--drop)}.party-fan img:nth-child(1){transform:rotate(-12deg)}.party-fan img:nth-child(2){transform:translateY(-6px);position:relative;z-index:1}.party-fan img:nth-child(3){transform:rotate(12deg)}.party-belt{overflow:hidden;margin-inline:calc(-1 * var(--gutter));padding:4px 0 10px}.party-track{display:flex;gap:12px;width:max-content;padding-right:12px;animation:pitch-scroll 44s linear infinite}.party-belt:hover .party-track,.party-belt:focus-within .party-track,.party-belt:active .party-track{animation-play-state:paused}.party-card .mini{flex:0 0 auto;width:84px;display:flex;flex-direction:column;align-items:center;gap:5px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.party-card .mini:nth-child(odd) img{transform:rotate(-3deg)}.party-card .mini:nth-child(2n) img{transform:rotate(3deg) translateY(3px)}.party-card .mini img{width:74px;height:74px;object-fit:contain;border-radius:15px;background:var(--card);border:var(--line) solid var(--ink);box-shadow:var(--shadow-sm)}.party-card .mini span{font-size:calc(11px * var(--fs));font-weight:800;line-height:1.15;text-align:center}.party-card .mini.locked img{filter:grayscale(1);opacity:.55}.party-foot{flex:none;position:relative;z-index:4;padding:10px var(--gutter) calc(10px + var(--safe-bottom));background:var(--paper);border-top:var(--line) solid var(--ink)}.party-go{min-height:60px;font-size:calc(18px * var(--fs));letter-spacing:.08em;animation:party-glow 2s ease-in-out infinite}@keyframes party-glow{0%,to{box-shadow:var(--shadow)}50%{box-shadow:var(--shadow),0 0 0 7px #ffd23f73}}.party-who{margin:0;font-weight:700}.tv-badge{flex:none;display:grid;place-items:center;width:64px;height:64px;border-radius:18px;background:var(--yellow);border:var(--line) solid var(--ink);box-shadow:var(--shadow-sm)}@media(min-width:760px){.party-hero{height:max(300px,min(52vw,60vh))}.party-features{grid-template-columns:repeat(4,1fr)}.party-burst{right:4%;top:18px;width:86px;height:86px}}.reduce-motion .party-stage *,.reduce-motion .party-stage *:after,.reduce-motion .mode-switch .shine:after{animation:none!important}.reduce-motion .party-belt{overflow-x:auto}.reduce-motion .party-track .mini[aria-hidden=true]{display:none}.player{display:flex;align-items:center;gap:12px;padding:8px 0;border-top:2px dashed var(--soft)}.player:first-of-type{border-top:0}.player .grow>b{display:block;font-size:calc(17px * var(--fs));font-weight:800;line-height:1.15}.player .meta{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.player.away{opacity:.6}.request{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--yellow)}.request .grow b{display:block;font-weight:800;font-size:calc(16px * var(--fs))}.pulse{animation:pulse 1.4s ease-in-out infinite}.vote-banner{display:flex;align-items:center;gap:10px;margin:0 var(--gutter) 10px;padding:8px 8px 8px 14px}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:12px}.tile{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 6px;min-width:0;background:var(--card);border:var(--line) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow-sm);cursor:pointer;text-align:center;transition:transform var(--fast) ease-out}.tile:active{transform:translateY(2px)}.tile .cover{width:100%;aspect-ratio:1;object-fit:contain}img.cover,.game-sheet-cover,.score-cover{background-color:var(--cover-paper)}.tile .name{font-weight:800;font-size:calc(14.5px * var(--fs));line-height:1.12;min-height:2.24em;display:flex;align-items:center;justify-content:center}.tile .foot{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.04em;color:#2e6b1f}.tile .foot img{width:22px;height:22px;object-fit:contain}.tile.dim{opacity:.55}.tile.dim .foot{color:var(--muted)}.tile.coming{cursor:default;opacity:.5;filter:grayscale(.85);box-shadow:none;border-style:dashed}.tile[aria-checked=true]{background:var(--yellow)}.tile .check{position:absolute;top:6px;right:6px;width:28px;height:28px;border-radius:50%;border:var(--line) solid var(--ink);background:var(--card);display:grid;place-items:center}.tile[aria-checked=true] .check{background:var(--ink);color:var(--yellow)}.tile .votes{position:absolute;top:6px;left:6px}.library .chip{min-height:40px;padding:4px 14px}.library .chip.none{opacity:.55}.band{position:relative;isolation:isolate;overflow:hidden;margin-inline:calc(-1 * var(--gutter));padding:12px var(--gutter) 4px;border-block:var(--line) solid var(--ink);background-color:var(--band)}.band:before{content:"";position:absolute;inset:-64px;z-index:-1;pointer-events:none;background-image:var(--band-art);background-size:56px 56px;animation:band-drift 18s linear infinite}@keyframes band-drift{to{transform:translate(var(--drift, 56px),var(--drift, 56px))}}.reduce-motion .band:before{animation:none}.band.new{--band: #FFD9B8;--band-art: radial-gradient(circle at 14px 14px, rgba(255,255,255,.8) 2.5px, transparent 3.5px), radial-gradient(circle at 42px 40px, rgba(255,255,255,.5) 2px, transparent 3px)}.band.solo{--band: #E4D6F7;--band-art: radial-gradient(circle at 28px 28px, rgba(255,255,255,.7) 8px, transparent 9px), radial-gradient(circle at 0 0, rgba(255,255,255,.45) 5px, transparent 6px)}.band.room{--band: #D3E3FF;--band-art: repeating-linear-gradient(0deg, rgba(255,255,255,.45) 0 2px, transparent 2px 14px), repeating-linear-gradient(90deg, rgba(255,255,255,.45) 0 2px, transparent 2px 14px)}.band.party{--drift: 56.57px;--band: #F7C6D9;--band-art: repeating-linear-gradient(135deg, rgba(255,255,255,.5) 0 7px, transparent 7px 20px)}.band-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.band-head h3{margin:0;font-size:calc(13px * var(--fs));font-weight:800;letter-spacing:.1em;text-transform:uppercase}.band-ico{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--card);border:2px solid var(--ink)}.list-section{margin-inline:calc(-1 * var(--gutter));padding:18px var(--gutter) 0;border-top:3px solid var(--ink);display:flex;flex-direction:column;gap:10px}.list-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.list-head .section{margin:0;padding:5px 14px 4px;border-radius:999px;background:var(--ink);color:var(--cream);font-size:calc(14px * var(--fs));letter-spacing:.08em}.list-count{font-weight:800;font-size:calc(13px * var(--fs));letter-spacing:.05em;color:var(--muted)}.list-hint{margin:-4px 0 0}.library{--finder-h: 58px}.finder{position:sticky;top:0;z-index:6;display:flex;gap:8px;align-items:center;margin-inline:calc(-1 * var(--gutter));padding:6px var(--gutter);background:var(--cream)}.finder:after{content:"";position:absolute;left:0;right:0;top:100%;height:10px;background:linear-gradient(var(--cream),transparent);pointer-events:none}.list-section .chips{position:sticky;top:var(--finder-h);z-index:5;margin-inline:calc(-1 * var(--gutter));padding:8px var(--gutter);background:var(--cream)}.finder .search{position:relative;flex:1 1 auto;min-width:0;display:flex;align-items:center}.finder .search>.icon{position:absolute;left:14px;color:var(--muted);pointer-events:none}.finder .search .field{min-height:46px;padding:8px 44px 8px 40px;border-radius:23px}.finder .search .field::-webkit-search-cancel-button{-webkit-appearance:none;display:none}.finder .search .clear{position:absolute;right:6px;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:var(--soft);color:var(--ink-text);display:grid;place-items:center;cursor:pointer}.finder .sort{position:relative;flex:none;display:flex;align-items:center;gap:6px;min-height:46px;padding:4px 12px;border:var(--line) solid var(--ink);border-radius:23px;background:var(--card);color:var(--ink-text);font-weight:800;font-size:calc(12.5px * var(--fs));letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.finder .sort.on{background:var(--yellow)}.finder .sort .icon-down{stroke-width:3}.finder .sort select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;font-size:16px;border:0}.finder .sort:focus-within{box-shadow:0 0 0 3px var(--yellow)}.library .found{margin:-8px 2px 0}.library .chip .count{margin-left:6px;font-size:calc(11px * var(--fs));font-weight:800;opacity:.6}.shelf{display:flex;gap:12px;overflow-x:auto;margin-inline:calc(-1 * var(--gutter));padding:2px var(--gutter) 10px;scroll-snap-type:x proximity;scroll-padding-inline:var(--gutter);overscroll-behavior-x:contain;scrollbar-width:none}.shelf::-webkit-scrollbar{display:none}.shelf-card{flex:0 0 auto;width:132px;scroll-snap-align:start;display:flex;flex-direction:column;gap:2px;padding:8px 8px 10px;text-align:left;color:inherit;font:inherit;border:var(--line) solid var(--ink);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--fast) ease-out}.shelf-card .cover{width:100%;aspect-ratio:1;object-fit:contain;border-radius:12px}.shelf-card b{margin-top:6px;font-size:calc(15px * var(--fs));font-weight:800;line-height:1.15}.shelf-card span{font-size:calc(11.5px * var(--fs));font-weight:800;letter-spacing:.02em;color:var(--muted)}.shelf-card:active{transform:translateY(2px)}.game-list{display:flex;flex-direction:column;gap:8px}.game-row{display:flex;align-items:center;gap:8px;padding:6px 10px 6px 6px;border:var(--line) solid var(--ink);border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow-sm)}.game-row .row-main{flex:1 1 auto;min-width:0;display:flex;align-items:center;gap:10px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:transform var(--fast) ease-out}.game-row button.row-main:active{transform:translateY(2px)}.game-row .cover{flex:none;width:52px;height:52px;object-fit:contain;border-radius:10px}.game-row .text{display:flex;flex-direction:column;gap:1px;min-width:0}.game-row .text b{font-size:calc(15px * var(--fs));font-weight:800;line-height:1.15}.game-row .pitch{font-size:calc(12.5px * var(--fs));font-weight:600;line-height:1.2;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.game-row .meta{margin-top:2px;display:flex;flex-direction:row;align-items:center;gap:8px;font-size:calc(11.5px * var(--fs));font-weight:800;letter-spacing:.02em;color:var(--muted)}.game-row .cats{display:inline-flex;flex-wrap:nowrap;gap:3px}.cat,.dot{background:var(--paper)}.cat.new,.dot.new{background:#ffb98a}.cat.free,.dot.free{background:var(--green)}.zip-offer{display:flex;align-items:center;gap:12px}.zip-offer img{width:58px;height:67px;flex:none}.cover-wrap{position:relative;flex:none;display:block;line-height:0}.shelf-card .cover-wrap{width:100%}.new-sticker{position:absolute;top:-5px;left:-5px;z-index:2;background:#ffb98a;color:var(--ink-text);border:2px solid var(--ink);border-radius:8px;box-shadow:1px 2px 0 var(--drop);padding:3px 6px 2px;font-weight:800;font-size:calc(10.5px * var(--fs));letter-spacing:.06em;line-height:1;transform:rotate(-9deg)}.cover-wrap .lock-sticker{position:absolute;bottom:-5px;right:-5px;z-index:2;background:var(--yellow);color:var(--ink-text);border:2px solid var(--ink);border-radius:999px;padding:4px;line-height:0;box-shadow:1px 2px 0 var(--drop)}.cover-wrap .lock-sticker .icon{stroke-width:2.6}.cover-wrap .dev-sticker{position:absolute;bottom:-5px;left:-5px;z-index:2;background:#b9a7ff;color:var(--ink-text);border:2px solid var(--ink);border-radius:8px;box-shadow:1px 2px 0 var(--drop);padding:3px 5px 2px;font-weight:800;font-size:calc(9.5px * var(--fs));letter-spacing:.06em;line-height:1}.cat.quick,.dot.quick{background:var(--yellow)}.cat.party,.dot.party{background:#f7c6d9}.cat.cards,.dot.cards{background:#dce8ff}.cat.team,.dot.team{background:var(--green)}.cat.solo,.dot.solo{background:#e4d6f7}.cat.board,.dot.board{background:#f2ddb6}.cat.action,.dot.action{background:#bdebe6}.cat.words,.dot.words{background:#ddf0a5}.game-row .cat{display:inline-grid;place-items:center;width:19px;height:19px;padding:0;border:1.5px solid var(--ink);border-radius:50%;color:var(--ink-text)}.game-row .cat .icon{width:11px;height:11px;stroke-width:2.8}.game-row.dim .cat{opacity:.6}.chip .dot{flex:none;display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;border:1.5px solid var(--ink);color:var(--ink-text)}.chip .dot .icon{width:13px;height:13px;stroke-width:2.6}.game-row>.btn{flex:none}.game-row .why{flex:none;white-space:nowrap;background:var(--soft)}.game-row.dim .cover{filter:grayscale(.6);opacity:.7}.game-row.dim .text b,.game-row.dim .pitch{color:var(--muted)}.perk-ico{flex:none;display:grid;place-items:center;width:30px;height:30px;border:2px solid var(--ink);border-radius:50%;color:var(--ink-text)}.perk-ico .icon{stroke-width:2.4}.missing{background:linear-gradient(160deg,#fff6cf,#ffe3f0)}.pitch-marquee{overflow:hidden;border:var(--line) solid var(--ink);border-radius:var(--radius);background:#fff0b8;padding:10px 0}.pitch-marquee.mini{padding:7px 0;background:#fff0b8}.pitch-track{display:flex;gap:10px;width:max-content;animation:pitch-scroll 40s linear infinite}.pitch-track img{flex:none;width:84px;height:84px;object-fit:contain;border:2.5px solid var(--ink);border-radius:14px;background:var(--paper);box-shadow:2px 3px 0 var(--drop)}.pitch-track img:nth-child(odd){transform:rotate(-2.5deg)}.pitch-track img:nth-child(2n){transform:rotate(2.5deg) translateY(3px)}.pitch-marquee.mini .pitch-track{gap:8px;animation-duration:28s}.pitch-marquee.mini .pitch-track img{width:54px;height:54px;border-width:2px;border-radius:11px}@keyframes pitch-scroll{to{transform:translate(-50%)}}.pitch{display:flex;flex-direction:column;gap:14px;text-align:left}.pitch .center{text-align:center}.pitch-hero{position:relative;overflow:hidden;text-align:center;padding:26px 14px 20px;border:var(--line) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#ffd84a,#ff9ecf 58%,#b79cff)}.pitch-title{position:relative;z-index:1;margin:0;font-size:calc(38px * var(--fs));line-height:1;letter-spacing:.02em;color:var(--ink-text);text-shadow:3px 3px 0 #fff;font-family:inherit;font-weight:800}.pitch-ribbon{position:relative;z-index:1;display:inline-block;margin:12px 0 0;padding:5px 14px;border-radius:6px;background:var(--ink);color:var(--yellow);transform:rotate(-2deg);font-size:calc(12.5px * var(--fs));font-weight:800;letter-spacing:.08em;text-transform:uppercase}.pitch-hero.get-app-hero{background:linear-gradient(135deg,#7fe3c9,#7fc8ff 55%,#b79cff)}.pitch-spark{position:absolute;left:var(--x);top:var(--y);z-index:0;color:#fff;line-height:0;animation:pitch-twinkle 2.4s ease-in-out infinite;animation-delay:var(--d)}.pitch-spark .icon{fill:#fff;stroke:#fff}@keyframes pitch-twinkle{0%,to{transform:scale(.3) rotate(0);opacity:0}50%{transform:scale(1.15) rotate(40deg);opacity:1}}.pitch-float{position:absolute;bottom:-30px;left:calc(6% + var(--i) * 19%);z-index:0;font-size:28px;opacity:0;animation:pitch-rise 4.8s ease-in infinite;animation-delay:calc(var(--i) * .95s)}@keyframes pitch-rise{0%{transform:translateY(0) scale(.7);opacity:0}15%{opacity:1}to{transform:translateY(-170px) scale(1.25) rotate(14deg);opacity:0}}.pitch-sec{display:flex;flex-direction:column;gap:8px}.pitch-head{display:flex;align-items:center;gap:10px}.pitch-head b{display:block;font-size:calc(17px * var(--fs));font-weight:800;line-height:1.15}.pitch-head span{display:block;font-size:calc(12.5px * var(--fs));font-weight:700;color:var(--muted)}.pitch-dress{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 4px;padding:10px 6px;border:var(--line) solid var(--ink);border-radius:var(--radius);background:#e9deff}.pitch-dress img{width:56px;height:56px;object-fit:contain;animation:pitch-bob 1.9s ease-in-out infinite;animation-delay:calc(var(--i) * .2s)}@keyframes pitch-bob{50%{transform:translateY(-7px) rotate(4deg)}}.pitch-chat{display:flex;flex-direction:column;gap:8px;padding:10px;border:var(--line) solid var(--ink);border-radius:var(--radius);background:#d6f3ee}.pitch-msg{display:flex;align-items:flex-end;gap:8px}.pitch-msg img{flex:none;width:40px;height:40px}.pitch-bubble{padding:7px 12px;border:2px solid var(--ink);border-radius:14px 14px 14px 4px;background:var(--card);font-weight:700;font-size:calc(14px * var(--fs))}.pitch-bubble b:first-child{display:block;font-size:calc(11px * var(--fs));letter-spacing:.06em;text-transform:uppercase}.pitch-reacts{display:flex;gap:6px;padding-left:48px}.pitch-reacts .react-chip{animation:pitch-pop 2.6s ease-in-out infinite}.pitch-reacts .react-chip:nth-child(2){animation-delay:.3s}.pitch-reacts .react-chip:nth-child(3){animation-delay:.6s}.pitch-reacts .react-chip:nth-child(4){animation-delay:.9s}@keyframes pitch-pop{0%,70%,to{transform:scale(1)}80%{transform:scale(1.18) rotate(-4deg)}}.pitch-tools{display:flex;gap:8px;padding-left:48px}.pitch-tools .btn{pointer-events:none}.pitch-crowd{display:flex;align-items:center;padding:8px 10px 8px 22px;border:var(--line) solid var(--ink);border-radius:var(--radius);background:#dce8ff}.pitch-crowd img{flex:none;width:46px;height:46px;margin-left:-12px;border:2px solid var(--ink);border-radius:50%;background:var(--card)}.pitch-crowd b{margin-left:8px;font-size:calc(20px * var(--fs));font-weight:800}.pitch-sheet{max-height:94dvh}.pitch-close{position:absolute;top:8px;right:10px;z-index:3}.pitch-close .btn{background:var(--card);border:2px solid var(--ink)}.pitch-sheet .sheet-body{padding-top:6px}.shine{position:relative;overflow:hidden}.shine:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 38%,rgba(255,255,255,.6) 50%,transparent 62%);transform:translate(-120%);animation:pitch-shine 3.6s ease-in-out infinite;pointer-events:none}.game-row:nth-child(3n+2) .shine:after{animation-delay:-1.2s}.game-row:nth-child(3n) .shine:after{animation-delay:-2.4s}.pitch-sheet .shine:after{animation-duration:2.8s}@keyframes pitch-shine{0%,60%{transform:translate(-120%)}to{transform:translate(120%)}}.perks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;text-align:left}.perks li{display:flex;align-items:center;gap:10px;font-weight:700;font-size:calc(14px * var(--fs));line-height:1.2}.game-row.locked,.shelf-card.locked{background:#e7e4dd}.game-row.locked .cover,.shelf-card.locked .cover{filter:grayscale(1);opacity:.5}.game-row.locked .text b,.game-row.locked .pitch,.shelf-card.locked b{color:var(--muted)}.game-row.locked .cat{filter:grayscale(1);opacity:.5}.game-row.has-banner.locked:before,.shelf-card.has-banner.locked:before{filter:grayscale(1);opacity:.28}.game-row.picked{background:var(--yellow)}.game-row .check{flex:none;width:30px;height:30px;border-radius:50%;border:var(--line) solid var(--ink);background:var(--card);display:grid;place-items:center}.game-row.picked .check{background:var(--ink);color:var(--yellow)}.game-row.coming{border-style:dashed;box-shadow:none;opacity:.6}.game-row.coming .cover{filter:grayscale(.85)}.game-row.has-banner,.shelf-card.has-banner{position:relative;overflow:hidden}.game-row.has-banner>*,.shelf-card.has-banner>*{position:relative;z-index:1}.game-row.has-banner:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:var(--banner) right center / var(--banner-size, 220px);background-color:var(--banner-tint, transparent);background-blend-mode:multiply;-webkit-mask-image:linear-gradient(90deg,transparent 42%,rgba(0,0,0,.55) 64%,#000 84%);mask-image:linear-gradient(90deg,transparent 42%,rgba(0,0,0,.55) 64%,#000 84%)}.game-row.has-banner.dim:before{filter:grayscale(1);opacity:.45}.game-row.has-banner.picked:before{opacity:.35}.game-row.has-banner .why{box-shadow:0 0 0 2px var(--card)}.shelf-card.has-banner{padding-top:16px}.shelf-card.has-banner:before{content:"";position:absolute;left:0;right:0;top:0;height:9px;z-index:0;pointer-events:none;background:var(--banner) center / var(--banner-size, 220px);background-color:var(--banner-tint, transparent);background-blend-mode:multiply;border-bottom:2px solid var(--ink)}.fit-row{display:grid;grid-auto-flow:column;grid-auto-columns:132px;gap:12px;overflow-x:auto;padding:2px 2px 10px;scrollbar-width:thin}.select-bar{position:sticky;bottom:0;display:flex;gap:10px;align-items:center;padding:10px;margin-top:12px;background:var(--paper);border:var(--line) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow)}.game-sheet-cover{width:120px;height:120px;object-fit:contain;flex:none;border-radius:12px}.game-preview{--tv-leg: var(--aes-color-frame-line);position:relative;width:100%;max-width:480px;margin:44px auto 24px;padding:9px 9px 0;border:var(--line) solid var(--ink);border-radius:22px;box-shadow:var(--shadow);background:var(--blue);color:var(--ink-text)}.game-preview:before,.game-preview:after{content:"";position:absolute;bottom:-15px;left:14%;width:24px;height:8px;border-radius:0 0 7px 7px;background:var(--tv-leg)}.game-preview:after{left:auto;right:14%}.game-preview-ears{position:absolute;left:50%;bottom:calc(100% + var(--line))}.game-preview-ears:before{content:"";position:absolute;z-index:1;left:-18px;bottom:0;width:36px;height:14px;border:var(--line) solid var(--tv-leg);border-bottom:0;border-radius:18px 18px 0 0;background:var(--blue)}.game-preview-ears i{position:absolute;left:-2px;bottom:6px;width:4px;height:36px;border-radius:2px;background:var(--tv-leg);transform-origin:50% 100%;transform:rotate(-32deg)}.game-preview-ears i+i{transform:rotate(28deg)}.game-preview-ears i:after{content:"";position:absolute;left:-3px;top:-6px;width:10px;height:10px;border-radius:50%;background:var(--tv-leg)}.game-preview-glass{position:relative;border:var(--line) solid var(--ink);border-radius:12px;overflow:hidden;background:#3a3a44}.game-preview-glass:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:repeating-linear-gradient(transparent 0 2px,#0000000d 2px 3px),radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.3) 100%)}.game-preview-screen{position:relative;width:100%;height:0;padding-top:68.359375%}.game-preview-static{position:absolute;inset:0;overflow:hidden;background:#9a9aa0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120' viewBox='0 0 60 60'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='1.7 0 0 0 -.2 1.7 0 0 0 -.2 1.7 0 0 0 -.2 0 0 0 0 1'/%3E%3C/filter%3E%3Crect width='60' height='60' filter='url(%23n)'/%3E%3C/svg%3E") 0 0 / 120px 120px;animation:tv-snow .32s steps(1) infinite;transition:opacity .25s}.game-preview-static:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(transparent 0 2px,#00000029 2px 3px)}.game-preview-static:after{content:"";position:absolute;left:0;right:0;top:-30%;height:30%;background:linear-gradient(transparent,rgba(255,255,255,.28),transparent);animation:tv-roll 2.6s linear infinite}.game-preview-screen.live .game-preview-static{opacity:0;animation:none}.game-preview-screen.live .game-preview-static:after{animation:none}@keyframes tv-snow{0%{background-position:0 0}25%{background-position:-53px 31px}50%{background-position:41px -67px}75%{background-position:-19px 47px}}@keyframes tv-roll{to{transform:translateY(440%)}}.game-preview-loading{position:absolute;inset:0;margin:auto;width:46%;height:30%;image-rendering:pixelated;background:url(/shared/assets/branding/aes-logo.webp) center / 100% auto no-repeat;mix-blend-mode:darken;animation:rocket-drift 1.6s ease-in-out infinite}.game-preview-frame{position:absolute;left:0;top:0;width:1024px;height:700px;border:0;transform-origin:0 0;background:var(--cream);opacity:0;transition:opacity .25s;pointer-events:none}.game-preview-caption{display:flex;align-items:center;gap:8px;padding:3px 0 4px 6px;font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.08em}.game-preview-light{flex:none;width:9px;height:9px;border-radius:50%;border:2px solid var(--ink);background:#ff5a4e}.game-preview-grille{flex:none;width:34px;height:14px;background:repeating-linear-gradient(90deg,var(--ink) 0 2px,transparent 2px 6px);opacity:.55}.game-preview-sound{box-shadow:none}.reduce-motion .game-preview-frame,.reduce-motion .game-preview-static{transition:none;animation:none}.howto{margin:0;padding-left:0;list-style:none;counter-reset:step;display:flex;flex-direction:column;gap:8px}.howto li{counter-increment:step;display:flex;gap:10px;font-size:calc(15px * var(--fs))}.howto li:before{content:counter(step);flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--yellow);border:2px solid var(--ink);font-weight:800;font-size:calc(13px * var(--fs))}.howto-parts{display:flex;flex-direction:column;gap:18px}.howto-head{margin:0;display:flex;align-items:center;gap:6px;font-size:calc(12px * var(--fs));font-weight:800;letter-spacing:.08em;color:var(--muted)}.howto-overview{margin:0;font-size:calc(16px * var(--fs));font-weight:700;line-height:1.4}.howto-tips{margin:0;padding:12px 14px;list-style:none;display:flex;flex-direction:column;gap:10px;border-radius:14px;background:color-mix(in srgb,var(--yellow) 22%,transparent)}.howto-tips li{display:flex;gap:10px;align-items:flex-start;font-size:calc(15px * var(--fs))}.howto-tips li svg{flex:none;margin-top:2px}.stepper{display:flex;align-items:center;gap:10px}.stepper b{min-width:36px;text-align:center;font-size:calc(22px * var(--fs));font-weight:800}.vote-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.vote-count{font-weight:800;font-size:calc(15px * var(--fs));letter-spacing:.04em}@media(max-width:759px)and (min-width:340px){.tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tiles .tile .name,.fit-row .tile .name{font-size:calc(13px * var(--fs))}.fit-row{grid-auto-columns:108px;gap:10px}.vote-grid .tile .cover{height:96px;aspect-ratio:auto}}.chat{display:flex;flex-direction:column;min-height:0;flex:1 1 auto}.messages{flex:1 1 auto;min-height:0;overflow-y:auto;padding:8px var(--gutter) 12px;display:flex;flex-direction:column;gap:10px;overscroll-behavior:contain}.msg{display:flex;gap:8px;align-items:flex-start;max-width:92%;animation:msg-in var(--playful) cubic-bezier(.2,.9,.3,1.2)}.msg.mine{align-self:flex-end;flex-direction:row-reverse}.bubble{min-width:0;background:var(--card);border:var(--line) solid var(--ink);border-radius:16px 16px 16px 4px;padding:6px 12px;box-shadow:var(--shadow-sm)}.msg.mine .bubble{background:var(--yellow);border-radius:16px 16px 4px}.bubble .who{display:flex;gap:8px;align-items:baseline;font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.05em;text-transform:uppercase}.bubble .who time{color:var(--muted);font-weight:700}.bubble .text{font-size:calc(15.5px * var(--fs));font-weight:600;overflow-wrap:anywhere;white-space:pre-wrap}.bubble .mention{font-weight:800;color:#1f5fc4}.bubble .mention.me{color:var(--ink-text);background:var(--yellow);border-radius:6px;padding:0 3px;box-shadow:0 0 0 2px var(--ink)}.msg.for-me .bubble{box-shadow:0 0 0 3px var(--yellow),var(--shadow-sm)}.mention-picks{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 4px;scrollbar-width:none}.mention-picks:empty{display:none}.msg-reacts{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px}.msg.mine .msg-reacts{justify-content:flex-end}.react-chip,.react-pick{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:34px;padding:2px 10px;border:2px solid var(--ink);border-radius:17px;background:var(--card);color:var(--ink-text);font:inherit;font-size:calc(15px * var(--fs));line-height:1;cursor:pointer}.react-chip b{font-size:calc(12.5px * var(--fs));font-weight:800}.react-chip.mine,.react-pick.mine{background:#dce9ff;border-color:#1f5fc4;box-shadow:inset 0 0 0 1px #1f5fc4}.react-picks{display:flex;gap:4px;padding:3px;border:2px solid var(--ink);border-radius:20px;background:var(--paper);box-shadow:var(--shadow-sm)}.react-pick{min-width:40px;border-color:transparent;background:transparent;font-size:calc(20px * var(--fs));padding:2px 6px}.react-pick:active,.react-chip:active{transform:scale(.94)}.msg-actions button.on{color:var(--ink-text);text-decoration:underline}.mention-picks::-webkit-scrollbar{display:none}.mention-pick{flex:none;display:inline-flex;align-items:center;gap:6px;max-width:60%;min-height:40px;padding:4px 12px 4px 4px;border:2px solid var(--ink);border-radius:20px;background:var(--card);color:var(--ink-text);font:inherit;font-weight:800;cursor:pointer}.mention-pick:active{background:var(--yellow)}.reactions button.locked{filter:grayscale(1);opacity:.5}.msg-actions button.locked{color:var(--muted);opacity:.8}.mention-pick.locked{background:#e7e4dd;padding-left:12px}.bubble .quote{border-left:4px solid var(--ink);padding:2px 8px;margin:4px 0;background:color-mix(in srgb,var(--ink) 6%,transparent);border-radius:6px;font-size:calc(12.5px * var(--fs))}.bubble .quote b{display:block;font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.05em;text-transform:uppercase}.bubble .quote span{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.msg-actions{display:flex;gap:2px;margin-top:2px}.msg-actions button{background:none;border:0;cursor:pointer;font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:6px 8px;min-height:44px;margin:-6px 0;color:var(--muted);display:inline-flex;align-items:center;gap:2px}.msg.reported .bubble{background:var(--soft);box-shadow:none;border-style:dashed;color:var(--muted)}.doodle{display:block;width:160px;height:160px;background:#fff;border:2px solid var(--ink);border-radius:10px;margin:4px 0}.doodle path{fill:none;stroke-width:14;stroke-linecap:round;stroke-linejoin:round}.composer{flex:none;padding:8px var(--gutter) 10px;border-top:var(--line) solid var(--ink);background:var(--paper);display:flex;flex-direction:column;gap:8px}.composer .row .field{min-height:48px;font-size:max(16px,calc(16px * var(--fs)))}.reactions{display:flex;gap:6px}.reactions button{flex:1 1 0;min-height:44px;border:var(--line) solid var(--ink);border-radius:14px;background:var(--card);font-size:calc(22px * var(--fs));cursor:pointer;box-shadow:var(--shadow-sm);line-height:1;padding:0}.reactions button:active{transform:translateY(2px);box-shadow:none}.composer .react-more{display:none}.replying{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 12px;border:2px solid var(--ink);border-radius:12px;background:var(--card);font-size:calc(13px * var(--fs))}.replying b{font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.05em}.counter{font-size:calc(11px * var(--fs));font-weight:800;color:var(--muted);text-align:right}.chat-empty{margin:auto;text-align:center;padding:24px;color:var(--muted)}.game-head{position:fixed;z-index:3;top:0;left:0;right:0;height:calc(var(--game-head) + var(--safe-top));padding:var(--safe-top) calc(var(--safe-right) + 8px) 0 calc(var(--safe-left) + 10px);display:flex;align-items:center;gap:8px;background:var(--cream);border-bottom:var(--line) solid var(--ink)}.game-head .thumb{width:44px;height:44px;object-fit:contain;flex:none}.game-head .name{flex:1 1 auto;min-width:0;font-weight:800;font-size:calc(18px * var(--fs));line-height:1.1}.game-head .name small{display:block;font-size:calc(11px * var(--fs));letter-spacing:.06em;color:var(--muted);text-transform:uppercase}.game-head .head-actions{flex:none;display:flex;align-items:center;gap:6px}.game-head .name small.ellipsis{display:block}#stage{position:fixed;z-index:1;top:calc(var(--game-head) + var(--safe-top));left:var(--safe-left);right:var(--safe-right);bottom:var(--safe-bottom);display:none;background:var(--stage-bg, var(--cream))}body.show-stage #stage{display:block}body.show-stage{background:var(--stage-bg, var(--cream))}#stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;background:var(--stage-bg, var(--cream))}#stage .frame-loading{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.corner-tools{display:none}@media(orientation:landscape)and (max-height:560px){body.immersive .screen.game .game-head{display:none}body.immersive #stage{inset:0;background:#0b0710}body.immersive #stage iframe{top:var(--safe-top);left:var(--safe-left);width:calc(100% - var(--safe-left) - var(--safe-right));height:calc(100% - var(--safe-top) - var(--safe-bottom))}body.immersive .over-frame{top:calc(var(--safe-top) + 10px)}body.immersive .corner-tools{display:flex;position:fixed;z-index:4;top:calc(var(--safe-top) + 6px);right:calc(var(--safe-right) + 6px);gap:6px}body.immersive .corner-tools .btn{width:38px;height:38px;min-height:0;padding:0;opacity:.8;box-shadow:none}body.immersive .corner-tools .btn:active{opacity:1}}.bar-tab{display:none;touch-action:none}body.bar-auto #stage{top:var(--safe-top)}body.bar-auto .screen.game .game-head{animation:none;transform:translateY(-100%);transition:transform .22s ease}body.bar-auto.bar-peek .screen.game .game-head{transform:none;box-shadow:0 4px #17171738}body.bar-auto.bar-pulling .screen.game .game-head{transform:translateY(calc(-100% + var(--bar-pull, 0px)));transition:none}body.bar-auto:not(.bar-peek) .bar-tab{display:grid;place-items:start start;position:fixed;z-index:5;top:var(--safe-top);left:var(--safe-left);width:52px;height:52px;padding:0;border:0;background:none;cursor:pointer}.bar-tab .pill{display:grid;place-items:center;margin-left:10px;width:30px;height:14px;border:1.5px solid color-mix(in srgb,var(--ink) 25%,transparent);border-top:0;border-radius:0 0 9px 9px;background:color-mix(in srgb,var(--cream) 45%,transparent);color:color-mix(in srgb,var(--ink) 45%,transparent)}.bar-tab:active .pill{background:color-mix(in srgb,var(--cream) 90%,transparent)}.reduce-motion body.bar-auto .screen.game .game-head{transition:none}@media(orientation:landscape)and (max-height:560px){body.immersive .bar-tab{display:none!important}}.over-frame{position:fixed;z-index:4;left:calc(var(--safe-left) + 12px);right:calc(var(--safe-right) + 12px);top:calc(var(--game-head) + var(--safe-top) + 10px);display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.over-frame>*{pointer-events:auto;width:100%;max-width:560px}body.bar-auto .over-frame{top:calc(var(--safe-top) + 30px)}.first-time{display:flex;align-items:center;gap:10px;padding:6px 8px 6px 14px;background:var(--yellow)}.first-time .grow b{display:block;font-size:calc(18px * var(--fs));font-weight:800;line-height:1.1}.banner{display:flex;align-items:center;gap:10px;padding:10px 14px}.banner.reconnecting{background:var(--yellow)}.banner.stuck{flex-wrap:wrap}#fx{position:fixed;inset:0;z-index:5;pointer-events:none;overflow:hidden}#fx canvas{position:absolute;inset:0;width:100%;height:100%}.fx-flash{position:absolute;inset:0;background:#fff;animation:flash .52s ease-out forwards}.fx-ring{position:absolute;border-radius:18px;box-shadow:inset 0 0 0 6px var(--yellow),inset 0 0 36px 10px #f4c430bf;animation:ring 1s ease-out forwards}.fx-spark{position:absolute;width:18px;height:18px;margin:-9px;color:var(--yellow);animation:spark .62s ease-out forwards}.fx-spark svg{width:100%;height:100%;fill:currentColor;stroke:var(--ink);stroke-width:1.5}.fx-emoji{position:absolute;bottom:0;font-size:calc(38px * var(--fs));line-height:1;animation:float-up 2.4s cubic-bezier(.3,.6,.5,1) forwards;filter:drop-shadow(0 2px 0 rgba(23,23,23,.35))}.fx-emoji.still{animation:fade-out 1.8s ease-in forwards;bottom:90px}.fx-emoji small{display:block;font:800 11px/1 "Baloo 2",system-ui,sans-serif;letter-spacing:.05em;text-transform:uppercase;text-align:center;color:var(--ink-text);background:var(--card);border:2px solid var(--ink);border-radius:8px;padding:2px 5px;margin-top:2px;white-space:nowrap}.fx-count{position:absolute;display:grid;place-items:center;inset:0}.fx-count b{display:grid;place-items:center;min-width:150px;height:150px;padding:0 20px;border-radius:75px;background:var(--yellow);border:5px solid var(--ink);box-shadow:0 8px 0 var(--drop);font:800 88px/1 "Baloo 2",system-ui,sans-serif;color:var(--ink-text);animation:count-pop .42s cubic-bezier(.2,.9,.3,1.4)}.fx-count b.go{background:var(--green);font-size:calc(72px * var(--fs))}.fx-count.waiting{place-items:end center;padding-bottom:28px}.fx-count.waiting span{padding:8px 16px;border-radius:999px;background:var(--card);border:3px solid var(--ink);box-shadow:0 4px 0 var(--drop);font:800 calc(15px * var(--fs))/1 "Baloo 2",system-ui,sans-serif;letter-spacing:.04em;color:var(--ink-text);animation:fade-in var(--normal) ease-out .9s both}.celebrate{position:fixed;inset:0;z-index:4;display:grid;place-items:center;padding:20px;background:color-mix(in srgb,var(--cream) 82%,transparent);animation:fade-in var(--normal) ease-out}.celebrate .card{width:100%;max-width:380px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 20px 20px;animation:pop-in .42s cubic-bezier(.2,.9,.3,1.4)}.celebrate .icon{width:96px;height:96px;color:var(--ink-text)}.celebrate .icon-trophy path:first-child{fill:var(--yellow)}.celebrate .title{font-size:calc(28px * var(--fs));text-transform:none}.result-row{display:flex;align-items:center;gap:12px;padding:8px 0;border-top:2px dashed var(--soft)}.result-row:first-of-type{border-top:0}.result-row .rank{width:40px;flex:none;font-size:calc(22px * var(--fs));font-weight:700;text-align:center}.result-row.first .rank{font-weight:800;font-size:calc(26px * var(--fs))}.result-row .grow b{display:block;font-size:calc(17px * var(--fs));font-weight:800}.result-row .grow span{font-size:calc(12px * var(--fs));letter-spacing:.06em;color:var(--muted);text-transform:uppercase;font-weight:700}.crowns{display:inline-flex;align-items:center;gap:4px;flex:none;font-weight:800;font-size:calc(16px * var(--fs));white-space:nowrap}.icon-crown path:nth-child(2){fill:var(--yellow)}.crowns.none{opacity:.45}.crowns.won{padding:1px 8px 1px 5px;border:2px solid var(--ink);border-radius:12px;background:var(--yellow);font-size:calc(13px * var(--fs))}.crown-line,.winners-line{display:flex;align-items:center;gap:6px;margin-top:2px}.winners-line{flex-wrap:wrap}.tag.good{background:var(--green)}.tag.bad{background:var(--red)}.result-row .role-line{margin:2px 0 1px}.result-row .grow span.tag{display:inline-flex;color:var(--ink-text);font-size:calc(11px * var(--fs));letter-spacing:.06em}.best-line{display:flex;align-items:center;gap:12px}.best-line>.grow{min-width:0}.best-line .label{display:block}.best-line .body,.best-line .small{margin:0}.best-line .icon-trophy path:first-child,.best-row .icon-trophy path:first-child,.best-mark .icon-trophy path:first-child{fill:var(--yellow)}.best-line.new{background:var(--ink);color:var(--yellow)}.best-line.new .muted,.best-line.new .where{color:var(--cream)}.best-pop{display:inline-flex;align-items:center;gap:6px;margin:0;padding:4px 12px 4px 8px;border:2px solid var(--ink);border-radius:14px;background:var(--card);font-weight:800;font-size:calc(14px * var(--fs));letter-spacing:.06em}.best-pop .icon-trophy path:first-child{fill:var(--yellow)}.celebrate .best-pop .icon{width:20px;height:20px}.best-card{display:flex;flex-direction:column;gap:4px}.best-card .label{margin-bottom:2px}.best-row{display:flex;align-items:center;flex-wrap:wrap;gap:2px 8px;min-height:28px}.best-row b{font-size:calc(17px * var(--fs));font-weight:800}.best-line .where,.best-row .where{color:var(--muted);font-weight:700;font-size:calc(14px * var(--fs))}.best-mark{display:inline-flex;vertical-align:-1px;margin-left:6px}.best-mark .icon{stroke-width:2.8}.brand .scores-btn,.brand .settings-btn{min-height:var(--touch)}.brand .scores-btn{min-width:var(--touch)}.brand .scores-btn .icon,.brand .settings-btn .icon{width:24px;height:24px}@media(max-width:759px){.brand .scores-btn{font-size:0;gap:0}}@media(max-width:400px){.brand .settings-btn{gap:0}}.btn.tall{min-height:var(--touch)}.scores .pad{max-width:1100px;margin:0 auto;width:100%}.score-intro{margin:0 2px}.score-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:start}.score-card{display:flex;flex-direction:column;padding:0;overflow:hidden}.score-card.quiet{background:var(--paper);box-shadow:var(--shadow-sm)}.score-main{display:flex;align-items:center;gap:12px;width:100%;min-height:100px;padding:12px 12px 12px 14px;background:none;border:0;text-align:left;cursor:pointer;color:inherit}.score-main:active{background:color-mix(in srgb,var(--ink) 5%,transparent)}.score-cover{flex:none;width:72px;height:72px;object-fit:contain;border-radius:10px}.score-card.quiet .score-cover{opacity:.8}.score-text{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:1px}.score-name{display:flex;align-items:center;gap:6px;min-width:0}.score-name .title{font-size:calc(20px * var(--fs));text-transform:none;letter-spacing:0;overflow-wrap:anywhere}.score-trophy{flex:none;display:inline-flex}.score-trophy .icon-trophy path:first-child{fill:var(--yellow)}.score-trophy.none{opacity:.3}.score-trophy.none .icon-trophy path:first-child{fill:none}.score-big{display:flex;align-items:baseline;flex-wrap:wrap;gap:0 6px}.score-big b{font-size:calc(32px * var(--fs));line-height:1.05;font-weight:800}.score-big small{font-size:calc(14px * var(--fs));font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.score-text .where,.score-others .where{color:var(--muted);font-weight:700;font-size:calc(13px * var(--fs))}.score-none{font-size:calc(24px * var(--fs));line-height:1.1;font-weight:800;color:var(--muted)}.score-main .chev.go{flex:none;opacity:.5}.score-fold{border-top:2px solid color-mix(in srgb,var(--ink) 16%,transparent)}.score-toggle{display:flex;align-items:center;gap:10px;width:100%;min-height:var(--touch);padding:8px 12px 8px 14px;background:none;border:0;cursor:pointer;text-align:left;font-weight:800;font-size:calc(13px * var(--fs));letter-spacing:.06em;text-transform:uppercase}.score-toggle:active{background:color-mix(in srgb,var(--ink) 5%,transparent)}.score-toggle b{flex:1 1 auto;font-weight:800}.score-toggle .chev{display:inline-flex;transition:transform var(--fast)}.score-fold.open .score-toggle .chev{transform:rotate(180deg)}.chip-rank{padding:1px 10px;border:2px solid var(--ink);border-radius:12px;background:var(--yellow);font-weight:800;font-size:calc(13px * var(--fs));letter-spacing:.02em;text-transform:none}.score-fold-body{padding:2px 14px 14px}.score-others{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.score-others li{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.score-others li b{font-size:calc(16px * var(--fs));font-weight:800;text-align:right}.score-card>.btn{margin:0 14px 14px;width:calc(100% - 28px)}.score-nudge{display:flex;align-items:center;gap:12px}.score-nudge .small{margin:0;color:var(--muted)}.board{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.board-row{display:grid;grid-template-columns:2em minmax(0,1fr) auto;align-items:center;gap:8px;min-height:38px;padding:3px 10px;border:2px solid transparent;border-radius:12px}.board-row .rank{font-weight:800;color:var(--muted);text-align:center}.board-row .name{font-weight:700}.board-row .name em{font-style:normal;font-weight:800}.board-row .score{font-size:calc(15px * var(--fs));font-weight:800;white-space:nowrap}.board-row.me{background:var(--yellow);border-color:var(--ink)}.board-row.me .rank{color:var(--ink-text)}.board-gap{text-align:center;color:var(--muted);font-weight:800;line-height:.8}.board-note{margin:0;align-items:center}.board-note .spinner{width:18px;height:18px;border-width:3px}.place-card{display:flex;flex-direction:column;gap:10px}.place-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 10px}.place-head .where{color:var(--muted);font-weight:700;font-size:calc(13px * var(--fs))}.place-big{margin:0;font-size:calc(40px * var(--fs));line-height:1;font-weight:800}@media(min-width:760px){.score-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1180px){.score-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.award{display:flex;align-items:center;gap:12px;padding:8px 0;border-top:2px dashed var(--soft)}.award:first-of-type{border-top:0}.award .heads{display:flex;flex:none}.award .heads .portrait+.portrait{margin-left:-12px}.award .grow b{display:block;font-size:calc(14px * var(--fs));font-weight:800;letter-spacing:.05em}.award .grow .who{display:block;font-size:calc(15px * var(--fs));font-weight:700}.award .grow small{display:block;margin-top:1px;font-size:calc(12.5px * var(--fs));font-weight:600;color:var(--muted)}.result-row.me{background:linear-gradient(90deg,#f4c43059,#f4c43000);border-radius:12px}.headline{display:flex;flex-direction:column;gap:4px}.headline.yellow{background:var(--yellow)}.game-title{display:flex;align-items:center;gap:14px}.game-title img{width:72px;height:72px;object-fit:contain}.game-title .title{font-size:calc(26px * var(--fs));text-transform:none;letter-spacing:0}.game-title.compact img{width:56px;height:56px}.game-title.compact .label{color:var(--muted)}.game-title.compact .title{font-size:calc(24px * var(--fs))}.board-bar{position:fixed;z-index:6;left:0;right:0;bottom:0;display:flex;justify-content:center;padding:10px 16px calc(10px + var(--safe-bottom));pointer-events:none}.board-bar .btn{pointer-events:auto}.ended{margin:auto;max-width:520px;width:100%;padding:24px var(--gutter);display:flex;flex-direction:column;gap:14px}.ended .display{font-size:calc(40px * var(--fs))}.settings .card{display:flex;flex-direction:column;gap:10px}.bench-log{margin:0;padding:10px;max-height:46vh;overflow:auto;white-space:pre;background:#0000000f;border-radius:10px;font:11px/1.35 ui-monospace,Menlo,Consolas,monospace;user-select:text;-webkit-user-select:text}.screen-modes{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.screen-modes button{text-align:left;border:var(--line) solid var(--ink);border-radius:14px;background:var(--card);padding:10px 12px;cursor:pointer;min-height:var(--touch)}.screen-modes button[aria-checked=true]{background:var(--yellow)}.screen-modes b{display:block;font-weight:800}.screen-modes span{display:block;font-size:calc(12px * var(--fs));color:var(--muted);line-height:1.25}.about dt{font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.about dd{margin:0 0 8px;font-weight:700}.log{font:12px/1.4 ui-monospace,Consolas,monospace;white-space:pre-wrap;word-break:break-all;background:#fff;border:2px solid var(--ink);border-radius:10px;padding:10px;margin:0}.footer-bar{flex:none;padding:10px var(--gutter);background:linear-gradient(color-mix(in srgb,var(--cream) 0%,transparent),var(--cream) 30%)}.footer-bar .btn{max-width:1000px;margin:0 auto}@media(max-width:759px){.home .brand{padding-top:6px}.home .brand .logo{--logo-w: 168px}.home .brand .sub{white-space:nowrap;font-size:calc(10px * var(--fs));letter-spacing:.06em}.home .marquee{margin:6px 0 0;padding:4px 0}.home .home-me{padding-top:10px;padding-bottom:12px}.home .home-me>.stack{gap:12px}.home .home-me .card{padding:8px 12px 10px}.home .home-me .card.tight{padding:4px 12px}.home .home-me .card>.label:first-child{margin-bottom:4px}.home .home-me .field{min-height:44px;padding-block:8px}.home .home-me .setting{padding:2px 0}.home .home-me .setting .grow>span{display:none}.home .avatars{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x proximity;overscroll-behavior-x:contain;margin-inline:calc(-1 * var(--gutter));padding:4px var(--gutter) 8px;scroll-padding-inline:var(--gutter);scrollbar-width:none}.home .avatars::-webkit-scrollbar{display:none}.home .avatars .pick{flex:0 0 auto;width:min(76px,calc((100vw - var(--gutter) - 40px) / 5.6));padding:4px;scroll-snap-align:start}.home .disclose{min-height:52px;padding-block:4px}.home-foot{flex:none;padding:10px var(--gutter) 12px;border-top:var(--line) solid var(--ink);background:var(--paper)}.home-foot .home-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.home-foot .home-actions>.btn{min-height:50px;padding-inline:10px}.home-foot .home-actions>:nth-child(n+3){grid-column:1 / -1}.home-foot .home-actions>p{margin:0}.home-foot .home-actions.one-way{grid-template-columns:1fr}.home-foot .home-actions.online>:nth-child(3),.home-foot .home-actions.online>:nth-child(4){grid-column:auto}}@media(max-width:759px)and (max-height:600px){.home .marquee{display:none}.home .brand .logo{--logo-w: 150px}}@media(max-width:759px)and (max-height:600px){.home .brand{padding-top:2px}.home .home-me{padding-top:5px;padding-bottom:6px}.home .home-me>.stack{gap:9px}.home .disclose{min-height:46px}.home-foot{padding-block:8px 10px}.home-foot .home-actions{gap:8px}.home-foot .home-actions>.btn{min-height:46px}}@media(min-width:760px){:root{--gutter: 22px}.tiles{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:14px}.home-cols{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:24px;align-items:start;max-width:1180px;margin:0 auto;width:100%}.home-cols .side{position:sticky;top:0}.join-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start;max-width:1100px;margin:0 auto;width:100%}.results-cols{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:24px;align-items:start;max-width:1100px;margin:0 auto;width:100%}.panes{gap:0}.pane.side{flex:0 0 360px;border-right:var(--line) solid var(--ink)}.pane.side .tabs-wrap{padding-top:2px}.settings .cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;max-width:1000px;margin:0 auto}.sheet{border-radius:24px;border-bottom:var(--line) solid var(--ink);margin-bottom:6px;max-height:calc(100% - 48px);padding-bottom:16px;box-shadow:0 6px 0 var(--drop)}.overlay{align-items:center;padding:var(--safe-top) var(--safe-right) var(--safe-bottom) var(--safe-left)}.avatars{gap:10px;grid-template-columns:repeat(8,1fr)}.shelf-card{width:156px}.colors{grid-template-columns:repeat(9,1fr)}.hats{grid-template-columns:repeat(7,1fr)}}@media(min-width:760px)and (max-width:999px){.hats{grid-template-columns:repeat(4,1fr)}.colors{grid-template-columns:repeat(5,1fr)}}@media(min-width:1180px){.game-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.pane.chat-pane{flex:0 0 380px;border-left:var(--line) solid var(--ink)}.tiles{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}@media(max-height:500px)and (orientation:landscape){:root{--game-head: 52px}.brand .logo{--logo-w: 160px}.topbar{min-height:52px}.code-digits{font-size:calc(40px * var(--fs))}.room-head{padding-block:4px}.room-head .grow .title{font-size:calc(18px * var(--fs))}.tabs-wrap{padding-bottom:6px}.seg>button{min-height:44px}.sheet{max-height:calc(100% - 12px);margin-bottom:0;padding-top:6px;padding-bottom:12px}.sheet .grabber{display:none}.sheet-head{padding-bottom:4px}.game-sheet-cover{width:76px;height:76px}.game-preview{max-width:280px;margin-top:34px}.game-preview-ears i{height:26px}.composer{padding-top:6px;padding-bottom:8px;gap:6px}.composer .reactions{display:none}.composer .react-more{display:inline-flex}.replying{padding-block:2px}.footer-bar{padding-block:6px}.footer-bar .btn{min-height:46px}.celebrate{padding:10px}.celebrate .card{padding:14px 20px 16px;gap:6px}.celebrate .icon{width:64px;height:64px}.fx-count b{min-width:110px;height:110px;font-size:64px}}:root{--spring: cubic-bezier(.34, 1.9, .5, 1);--boing: cubic-bezier(.2, .9, .3, 1.35);--press: 70ms;--release: .34s}.btn,.tile,.shelf-card,.game-row .row-main,.pick,.chip,.disclose,.screen-modes button,.seg>button,.reactions button{transition:transform var(--release) var(--spring),box-shadow var(--release) var(--spring),background var(--fast)}.btn:active:not(:disabled){transform:translateY(3px) scale(.97,.94);transition-duration:var(--press),var(--press),var(--fast)}.btn.ghost:active:not(:disabled){transform:scale(.92)}.btn.round .icon{transition:transform var(--release) var(--spring)}.btn.round:active:not(:disabled) .icon{transform:scale(.82) rotate(-12deg);transition-duration:var(--press)}.backlink .icon{transition:transform var(--release) var(--spring)}.backlink:active .icon{transform:translate(-5px);transition-duration:var(--press)}.tile:active,.shelf-card:active,.game-row button.row-main:active,.chip:active,.disclose:active,.screen-modes button:active,.seg>button:active{transform:translateY(2px) scale(.96);transition-duration:var(--press),var(--press),var(--fast)}.pick:active{transform:translateY(2px) scale(.94);transition-duration:var(--press)}.reactions button:active{transform:translateY(2px) scale(.9);transition-duration:var(--press)}.switch:after{transition:transform var(--release) var(--spring),width var(--release) var(--spring),background var(--normal)}.switch:active:after{width:34px;transition-duration:var(--press)}.switch[aria-checked=true]:active:after{transform:translate(18px)}.disclose .plus{transition:transform var(--release) var(--spring)}.disclose[aria-expanded=true] .plus{transform:rotate(180deg)}.screen:not(.game)[data-go=in]{animation:screen-in .36s ease-out}.screen:not(.game)[data-go=back]{animation:screen-back .36s ease-out}.screen.game:not(.final) .game-head{animation:head-drop .42s var(--boing)}.screen.game:not(.final) .game-head .thumb{animation:hop .62s ease-out .16s backwards}.pane[role=tabpanel]{animation:pane-in .24s ease-out}.unfold{animation:rise-in .32s ease-out}.game-row,.shelf-card,.result-row,.tiles>.tile,.menu-list>*{animation:rise-in .38s ease-out backwards}.player{animation:hop-in .42s ease-out backwards}.player .portrait{animation:wave .64s ease-in-out .22s backwards}:is(.game-row,.shelf-card,.result-row,.tiles>.tile,.menu-list>*,.player):nth-child(2){animation-delay:40ms}:is(.game-row,.shelf-card,.result-row,.tiles>.tile,.menu-list>*,.player):nth-child(3){animation-delay:80ms}:is(.game-row,.shelf-card,.result-row,.tiles>.tile,.menu-list>*,.player):nth-child(4){animation-delay:.12s}:is(.game-row,.shelf-card,.result-row,.tiles>.tile,.menu-list>*,.player):nth-child(5){animation-delay:.16s}:is(.game-row,.shelf-card,.result-row,.tiles>.tile,.menu-list>*,.player):nth-child(6){animation-delay:.2s}:is(.game-row,.shelf-card,.result-row,.tiles>.tile,.menu-list>*,.player):nth-child(n+7){animation-delay:.24s}.result-row.first .rank{animation:stamp .52s var(--boing) .26s backwards}.seg>button[aria-selected=true],.seg>button[aria-checked=true],.chip[aria-pressed=true],.screen-modes button[aria-checked=true]{animation:jelly .44s ease-out}.pick[aria-checked=true]{animation:pick-pop .44s ease-out}.pick[aria-checked=true] img{animation:hop .56s ease-out}.tile[aria-checked=true] .check,.game-row.picked .check{animation:pop-check .42s var(--boing)}.badge,.bump{animation:bump .38s var(--boing)}:where(.bump){display:inline-block}.code-digits>span{display:inline-block;animation:digit-drop .46s var(--boing) backwards;animation-delay:calc(var(--i, 0) * 70ms + .12s)}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes sheet-up{0%{transform:translateY(40%);opacity:0}}@keyframes pop-in{0%{transform:scale(.82);opacity:0}}@keyframes toast-in{0%{transform:translateY(-24px) scale(.9);opacity:0}}@keyframes msg-in{0%{transform:translateY(10px) scale(.96);opacity:0}}@keyframes marquee{to{transform:translate(-100%)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.06)}}@keyframes shake{20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}@keyframes rocket-drift{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(3px,-2px) rotate(-1deg)}50%{transform:translateY(1px) rotate(0)}75%{transform:translate(-3px,-1px) rotate(1deg)}}@keyframes flash{0%{opacity:.85}to{opacity:0}}@keyframes ring{0%{opacity:0}20%{opacity:1}to{opacity:0}}@keyframes spark{0%{transform:translate(0) scale(.4) rotate(0);opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(1.1) rotate(160deg);opacity:0}}@keyframes float-up{0%{transform:translate(0) scale(.6);opacity:0}10%{transform:translateY(-40px) scale(1.1);opacity:1}to{transform:translate(var(--drift),-70vh) scale(1);opacity:0}}@keyframes count-pop{0%{transform:scale(1.6);opacity:0}}@keyframes screen-in{0%{transform:translate(44px);opacity:0}55%{transform:translate(-6px);opacity:1}to{transform:none}}@keyframes screen-back{0%{transform:translate(-44px);opacity:0}55%{transform:translate(6px);opacity:1}to{transform:none}}@keyframes head-drop{0%{transform:translateY(-100%)}}@keyframes pane-in{0%{transform:translateY(10px);opacity:0}}@keyframes rise-in{0%{transform:translateY(16px) scale(.96);opacity:0}65%{transform:translateY(-3px) scale(1.01);opacity:1}to{transform:none}}@keyframes hop-in{0%{transform:translate(-28px) scale(.9);opacity:0}60%{transform:translate(4px) scale(1.02);opacity:1}to{transform:none}}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(-14deg)}50%{transform:rotate(10deg)}75%{transform:rotate(-6deg)}}@keyframes hop{0%,to{transform:none}30%{transform:translateY(-16%) rotate(-6deg)}55%{transform:translateY(0) scale(1.08,.9)}75%{transform:translateY(-4%) scale(.98,1.03)}}@keyframes jelly{30%{transform:scale(1.1,.9)}55%{transform:scale(.95,1.06)}78%{transform:scale(1.02,.99)}}@keyframes pick-pop{0%{transform:scale(1)}40%{transform:scale(1.1) rotate(-3deg)}70%{transform:scale(.99) rotate(2deg)}to{transform:scale(1.04)}}@keyframes pop-check{0%{transform:scale(.3) rotate(-45deg)}}@keyframes stamp{0%{transform:scale(2.4) rotate(-18deg);opacity:0}60%{opacity:1}}@keyframes bump{0%{transform:scale(1.6)}60%{transform:scale(.9)}}@keyframes digit-drop{0%{transform:translateY(-70%) rotate(-14deg);opacity:0}60%{opacity:1}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation:none!important;transition:none!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.composer .btn.draw{position:relative;flex:none}.btn.round.locked{position:relative;background:#e7e4dd}.btn.round.locked>.icon:first-child{opacity:.5;filter:grayscale(1)}.btn-lock{position:absolute;bottom:-4px;right:-4px;background:var(--yellow);color:var(--ink-text);border:2px solid var(--ink);border-radius:999px;padding:2px;line-height:0}.draw-dot{position:absolute;top:-4px;right:-4px;width:16px;height:16px;border-radius:50%;background:var(--yellow);border:2.5px solid var(--ink)}.sketch{display:flex;flex-direction:column;gap:12px;--sketch-chrome: 336px;--sketch-size: max(150px, calc(100vh - var(--sketch-chrome) - var(--safe-top) - var(--safe-bottom)))}.sketch:has(>.sketch-sub){--sketch-chrome: 360px}@supports (height: 100dvh){.sketch{--sketch-size: max(150px, calc(100dvh - var(--sketch-chrome) - var(--safe-top) - var(--safe-bottom)))}}.sketch-sub{margin-top:-6px;text-align:center;font-size:calc(12px * var(--fs));font-weight:800;letter-spacing:.05em;color:var(--muted)}.sketch-board{position:relative;flex:none;width:min(100%,var(--sketch-size));aspect-ratio:1 / 1;margin:0 auto;background:#fff;border:var(--line) solid var(--ink);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.sketch-surface,.sketch-canvas{position:absolute;inset:0;display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.sketch-hint{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;transition:opacity var(--fast);font-size:calc(15px * var(--fs));font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#1717174d}.sketch-board:not(.blank) .sketch-hint{opacity:0}.sketch-colors{display:flex;justify-content:space-between;gap:6px;padding:0 4px}.sketch-color{flex:none;width:44px;height:44px;padding:0;border:var(--line) solid var(--ink);border-radius:50%;background:var(--pen);box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--fast),box-shadow var(--fast)}.sketch-color[aria-checked=true]{transform:translateY(-2px);box-shadow:0 0 0 3px var(--cream),0 0 0 6px var(--ink)}.sketch-color:active{transform:translateY(2px);box-shadow:none}.sketch-tools{display:flex;align-items:center;gap:8px}.sketch-sizes{display:flex;flex:none;border:var(--line) solid var(--ink);border-radius:14px;background:var(--card);overflow:hidden;box-shadow:var(--shadow-sm)}.sketch-sizes>button{display:grid;place-items:center;width:46px;height:44px;padding:0;border:0;border-left:var(--line) solid var(--ink);background:transparent;cursor:pointer}.sketch-sizes>button:first-child{border-left:0}.sketch-sizes>button[aria-checked=true]{background:var(--yellow)}.sketch-dot{width:var(--dot);height:var(--dot);border-radius:50%;background:var(--pen);box-shadow:0 0 0 1.5px var(--ink)}.sketch-tool.btn.small{min-height:44px;padding-inline:10px;gap:4px}@media(max-width:399px){.sketch-tool.btn.small{width:48px;padding:0}.sketch-tool-word{display:none}}.sketch-note{min-height:calc(18px * var(--fs));text-align:center;font-size:calc(13px * var(--fs));font-weight:800;color:var(--muted)}.sketch-note.error{color:#b3261e}.selfie{display:flex;flex-direction:column;align-items:center;gap:12px}.selfie-view,.selfie-shot{width:min(270px,66vw,max(112px,calc((100dvh - 440px)*.75)));aspect-ratio:3 / 4;border:var(--line) solid var(--ink);border-radius:16px;background:#23262e;overflow:hidden;box-shadow:var(--shadow-sm)}.selfie-view.off{display:grid;place-items:center}.selfie-canvas{display:block;width:100%;height:100%;image-rendering:auto}.selfie-shot{object-fit:cover;image-rendering:auto}.selfie-note{min-height:calc(18px * var(--fs));text-align:center;font-size:calc(13px * var(--fs));font-weight:800;color:var(--muted)}.selfie-note.error{color:#b3261e}.selfie-pick{cursor:pointer}.selfie-row{width:100%;display:flex;flex-direction:column;gap:4px}.selfie-row-label{font-size:calc(11px * var(--fs));font-weight:800;letter-spacing:1px;color:var(--muted);padding-left:2px}.selfie-chips{display:flex;gap:6px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none}.selfie-chips::-webkit-scrollbar{display:none}.selfie-chip{flex:none;min-height:38px;padding:0 14px;border:var(--line) solid var(--ink);border-radius:999px;background:var(--card);font:inherit;font-size:calc(13px * var(--fs));font-weight:800;color:var(--ink-text);cursor:pointer;box-shadow:var(--shadow-sm)}.selfie-chip[aria-checked=true]{background:var(--yellow);transform:translateY(-1px)}.selfie-chip:active{transform:translateY(2px);box-shadow:none}.selfie-chip.surprise{background:var(--blue)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.chat-photo{display:block;width:144px;height:192px;margin-top:6px;border:var(--line) solid var(--ink);border-radius:12px;object-fit:cover;image-rendering:auto;background:#23262e}.photo-gone{color:var(--muted);font-style:italic}.bubble .doodle{width:min(200px,100%);height:auto;aspect-ratio:1 / 1}.doodle-open{position:relative;display:block;margin:4px 0;padding:0;border:0;border-radius:10px;background:none;cursor:pointer;-webkit-touch-callout:none}.doodle-open .doodle{margin:0}.doodle-open:active{transform:translateY(1px)}.doodle-pen{position:absolute;right:6px;bottom:6px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--card);border:2px solid var(--ink);box-shadow:0 2px 0 var(--drop)}.bubble .quote .doodle,.replying .doodle{width:44px;height:44px;border-width:1.5px;border-radius:6px;margin:2px 0 0}.sheet-body:has(>.chat){display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}@media(orientation:landscape)and (max-height:560px){.sheet:has(.sketch) .grabber{display:none}.sketch{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px 18px;padding-top:6px;--sketch-size: max(140px, calc(100vh - 200px - var(--safe-top) - var(--safe-bottom)))}.sketch>*{grid-column:2}.sketch>.sketch-board{grid-column:1;grid-row:1 / span 4;width:var(--sketch-size)}}@supports (height: 100dvh){@media(orientation:landscape)and (max-height:560px){.sketch{--sketch-size: max(140px, calc(100dvh - 200px - var(--safe-top) - var(--safe-bottom)))}}}.doc-frame{flex:1 1 auto;width:100%;min-height:60vh;border:0;border-radius:14px;background:var(--cream)}.room-rules{margin:4px 0 12px;padding-left:1.2em;display:flex;flex-direction:column;gap:8px;text-align:left}.room-rules li{line-height:1.35}[data-channel=dev] .brand .logo{position:relative;background-image:var(--dev-logo, url(/shared/assets/branding/aes-logo.webp))}.brand .logo .dev-sticker{position:absolute;right:-8px;top:-4px;background:#2e9e44;color:#fff;border:2px solid var(--ink);border-radius:8px;box-shadow:1px 2px 0 var(--drop);padding:3px 7px 1px;font-weight:800;font-size:calc(11px * var(--fs));letter-spacing:.08em;line-height:1;transform:rotate(8deg)}.site-strip.dev{background:#2e9e44;color:#fff}.site-strip.dev b{color:#8cd973}.whats-new-item{align-items:flex-start;gap:12px}.whats-new-item .cover{width:44px;height:44px;flex:none;border-radius:10px;border:2px solid var(--ink);object-fit:cover}.whats-new-mark{width:44px;height:44px;flex:none;display:grid;place-items:center;background:var(--yellow);border:2px solid var(--ink);border-radius:10px}.whats-new-item b{display:block;margin-top:2px}.whats-new-lines{margin:4px 0 0;padding-left:18px;font-size:calc(14px * var(--fs));line-height:1.35}.whats-new-lines li{margin:3px 0}
