:root{--bg: #fff4e6;--ink: #2b1d14;--card: #ffffff;--muted: #8a7563;--a: #ff6b6b;--b: #4d96ff;--c: #ffc93c;--d: #6bcb77;--good: #2fbf71;--bad: #ff4d4d;--radius: 20px;--border: 3px solid var(--ink);--lift: 0 4px 0 var(--ink);--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--display: "Baloo 2", ui-rounded, system-ui, sans-serif;--body: "Nunito", system-ui, sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.4;overscroll-behavior:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%}#root{min-height:100dvh}button,input{font:inherit;color:inherit}button{-webkit-user-select:none;user-select:none;touch-action:manipulation}:focus-visible{outline:3px solid var(--b);outline-offset:2px}h1,h2,h3,p{margin:0}.screen{width:min(100%,480px);min-height:100dvh;margin-inline:auto;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));display:flex;flex-direction:column;gap:16px}.grow{flex:1}.row{display:flex;align-items:center;gap:12px}.stack{display:flex;flex-direction:column;gap:12px}.center{text-align:center}.muted{color:var(--muted)}.display{font-family:var(--display)}.card{background:var(--card);border:var(--border);border-radius:var(--radius);box-shadow:var(--lift);padding:16px}.eyebrow{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.pop{animation:pop .18s var(--ease-out) both}.btn{min-height:56px;padding:0 22px;border:var(--border);border-radius:var(--radius);background:var(--c);box-shadow:var(--lift);font-family:var(--display);font-weight:800;font-size:20px;line-height:1;cursor:pointer;transition:transform .1s var(--ease-out),box-shadow .1s var(--ease-out),opacity .15s ease}.btn.ghost{background:var(--card)}.btn.small{min-height:44px;padding:0 16px;font-size:17px}.btn.block{width:100%}.btn:active:not(:disabled){transform:translateY(3px);box-shadow:0 1px 0 var(--ink)}.btn:disabled{opacity:.45;cursor:not-allowed}.link{background:none;border:0;padding:8px 0;font-weight:700;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.field{width:100%;min-height:56px;padding:0 16px;border:var(--border);border-radius:var(--radius);background:var(--card);font-size:18px;font-weight:700}.field::placeholder{color:var(--muted);font-weight:400}.field.code{text-align:center;font-family:var(--display);font-size:28px;letter-spacing:.3em;text-transform:uppercase}@media(hover:hover)and (pointer:fine){.btn:hover:not(:disabled){transform:translateY(-1px)}.chip:hover,.char:hover:not(:disabled){transform:translateY(-1px)}}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{min-height:40px;padding:0 14px;border:2px solid var(--ink);border-radius:99px;background:var(--card);font-weight:700;font-size:15px;cursor:pointer;transition:transform .1s var(--ease-out)}.chip:active{transform:translateY(2px)}.segmented{display:grid;grid-template-columns:repeat(3,1fr);border:var(--border);border-radius:var(--radius);overflow:hidden;background:var(--card)}.segmented button{min-height:48px;border:0;border-right:2px solid var(--ink);background:transparent;font-family:var(--display);font-weight:700;font-size:17px;cursor:pointer;transition:background-color .15s ease}.segmented button:last-child{border-right:0}.segmented button[aria-pressed=true]{background:var(--c)}.avatar{--size: 48px;flex:none;width:var(--size);height:var(--size);border-radius:50%;border:3px solid var(--ring, var(--ink));background:var(--tint, #eee);display:inline-grid;place-items:center;overflow:hidden;font-size:calc(var(--size) * .55);line-height:1}.avatar.art{background-repeat:no-repeat;background-color:var(--tint)}.hero-title{font-family:var(--display);font-weight:800;font-size:clamp(56px,18vw,76px);line-height:.95;letter-spacing:-.02em;text-shadow:0 4px 0 var(--c)}.crew{display:flex;justify-content:center;gap:4px}.crew .avatar:nth-child(odd){rotate:-6deg}.crew .avatar:nth-child(2n){rotate:6deg;translate:0 8px}.char-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.char{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;border:var(--border);border-radius:var(--radius);background:var(--tint);box-shadow:var(--lift);cursor:pointer;text-align:center;transition:transform .1s var(--ease-out),opacity .15s ease}.char[aria-pressed=true]{border-color:var(--ring);outline:4px solid var(--ring);outline-offset:0}.char:disabled{opacity:.45;cursor:not-allowed}.char:active:not(:disabled){transform:translateY(3px)}.char b{font-family:var(--display);font-weight:800;font-size:20px;line-height:1}.char small{font-size:13px;color:var(--ink);opacity:.75}.power-list{display:flex;flex-direction:column;gap:8px}.power-line{display:grid;grid-template-columns:36px 1fr;gap:10px;align-items:center}.power-line .emoji{font-size:26px;text-align:center}.power-line b{font-family:var(--display);font-weight:700;font-size:17px}.player-line{display:flex;align-items:center;gap:12px;font-weight:700}.hint{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:2px dashed var(--ink);border-radius:var(--radius);font-size:14px}.dock{position:sticky;bottom:0;margin-top:auto;padding-top:16px;padding-bottom:4px;background:linear-gradient(to top,var(--bg) 75%,rgb(255 244 230 / 0))}.bounce{display:inline-block;animation:bounce .7s var(--ease-in-out) infinite alternate}.hud{display:flex;flex-direction:column;gap:10px}.hud-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.round-count{font-family:var(--display);font-weight:800;font-size:22px}.btn.exit{width:44px;padding:0}.bar{width:100%;height:16px;border:var(--border);border-radius:99px;background:var(--card);overflow:hidden}.bar i{display:block;height:100%;background:var(--c);transform-origin:left center}.scores{display:flex;gap:8px}.score{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:6px 10px 6px 6px;border:2px solid var(--ink);border-radius:99px;background:var(--card)}.score.me{background:var(--c)}.score .name{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-size:14px}.score .pts{font-family:var(--display);font-weight:800;font-size:18px}.question{font-family:var(--display);font-weight:800;font-size:clamp(22px,6vw,28px);line-height:1.15;overflow-wrap:anywhere;min-height:6em;display:flex;align-items:center}.opts-wrap{position:relative}.opts{--gap: 12px;display:grid;grid-template-columns:1fr 1fr;gap:var(--gap)}.opt{min-height:124px;padding:12px;border:var(--border);border-radius:18px;background:var(--oc, var(--card));box-shadow:var(--lift);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:8px;text-align:left;font-family:var(--display);font-weight:700;font-size:clamp(17px,4.8vw,21px);line-height:1.12;overflow-wrap:anywhere;cursor:pointer;translate:calc(var(--dx, 0) * (100% + var(--gap))) calc(var(--dy, 0) * (100% + var(--gap)));transition:translate .3s var(--ease-in-out),scale .1s var(--ease-out),opacity .2s ease,background-color .2s ease}.opts.compact .opt{min-height:84px;padding:10px 12px}.opt .glyph{font-size:22px;line-height:1}.opt.blank{--oc: #ece3d6;min-height:72px;cursor:default;box-shadow:none;color:var(--muted)}.opt:active:not(:disabled):not(.blank){scale:.97}.opt:disabled{cursor:default}.opt.is-hidden{opacity:.2}.opt.dim{opacity:.45}.opt.chosen{outline:5px solid var(--ink);outline-offset:2px}.opt.correct{--oc: var(--good);opacity:1}.opt.wrong{--oc: var(--bad);opacity:1;animation:shake .3s var(--ease-out)}.blot{position:absolute;inset:-8px;z-index:3;display:grid;place-items:center;opacity:0;scale:.92;pointer-events:none;transition:opacity .2s var(--ease-out),scale .2s var(--ease-out)}.blot[data-on=true]{opacity:1;scale:1;pointer-events:auto}.blot svg{position:absolute;inset:0;width:100%;height:100%}.blot span{position:relative;color:#fff;font-family:var(--display);font-weight:800;font-size:32px}.powers{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.power{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;min-height:112px;border:var(--border);border-radius:16px;background:var(--card);box-shadow:var(--lift);text-align:center;cursor:pointer;transition:transform .1s var(--ease-out),opacity .15s ease,background-color .15s ease}.power .emoji{font-size:32px;line-height:1}.power b{font-family:var(--display);font-weight:700;font-size:15px;line-height:1.05}.power small{font-size:11px;line-height:1.2;opacity:.8}.power:active:not(:disabled){transform:translateY(3px)}.power:disabled{cursor:default;opacity:.4}.power[data-spent=true] b{text-decoration:line-through}.power.ready{background:var(--good);opacity:1}.result{display:grid;grid-template-columns:auto 1fr auto;gap:4px 10px;align-items:center}.result .who{font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result .delta{font-family:var(--display);font-weight:800;font-size:26px;font-variant-numeric:tabular-nums}.result .delta.neg{color:var(--bad)}.result .breakdown{grid-column:2 / -1;display:flex;flex-wrap:wrap;gap:6px}.tag{padding:2px 10px;border:2px solid var(--ink);border-radius:99px;background:var(--bg);font-size:13px;font-weight:700}.rate{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:700}.thumbs{display:flex;gap:8px}.thumb{width:52px;height:48px;border:2px solid var(--ink);border-radius:14px;background:var(--card);font-size:22px;cursor:pointer;transition:transform .1s var(--ease-out),background-color .15s ease}.thumb:active{transform:translateY(2px)}.thumb[aria-pressed=true]{background:var(--c)}.podium{display:flex;align-items:flex-end;justify-content:center;gap:12px}.podium .place{flex:1;max-width:130px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.podium .place.first{order:-1}.podium .pts{font-family:var(--display);font-weight:800;font-size:24px;line-height:1}.podium .nm{font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}details.card summary{font-family:var(--display);font-weight:800;font-size:20px;cursor:pointer}.q-review{padding-block:12px;border-top:2px solid var(--ink)}.q-review p{font-weight:700}.q-review .ans{color:var(--good);font-weight:700}.toasts{position:fixed;top:max(12px,env(safe-area-inset-top));left:0;right:0;z-index:50;display:flex;flex-direction:column;align-items:center;gap:8px;padding-inline:16px;pointer-events:none}.toast{max-width:440px;padding:10px 16px;border:2px solid var(--ink);border-radius:16px;background:var(--ink);color:#fff;font-weight:700;text-align:center;box-shadow:0 3px #00000040;animation:toast-in .22s var(--ease-out) both;transition:opacity .2s ease,translate .2s var(--ease-out)}.toast.bad{background:var(--bad);color:var(--ink)}.toast.good{background:var(--good);color:var(--ink)}.toast[data-leaving=true]{opacity:0;translate:0 -12px}@keyframes pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes shake{20%{transform:translate(-7px) rotate(-1deg)}45%{transform:translate(6px) rotate(1deg)}70%{transform:translate(-4px)}to{transform:none}}@keyframes toast-in{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:none}}@keyframes bounce{0%{transform:translateY(0)}to{transform:translateY(-10px)}}@media(prefers-reduced-motion:reduce){.pop,.toast,.opt.wrong,.bounce{animation:none}.opt,.blot,.btn,.power,.char,.chip,.thumb{transition-property:opacity,background-color}}
