html,body,#root{height:100%}body{background:var(--felt);color:var(--chalk);overscroll-behavior:none;-webkit-tap-highlight-color:transparent}.phone{min-height:100dvh;max-width:560px;margin:0 auto;display:flex;flex-direction:column;padding:max(14px,env(safe-area-inset-top)) 14px max(14px,env(safe-area-inset-bottom))}.conn{position:fixed;top:10px;left:10px;right:10px;z-index:5;background:#b3541e;color:#fff;font-weight:700;text-align:center;padding:12px 14px;border-radius:14px;box-shadow:0 8px 24px #0000004d}.ph-head{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 0 16px;text-align:center}.ph-quiz{font:750 26px/1.1 var(--display);letter-spacing:-.01em}.ph-team{font-size:16px;font-weight:700;color:var(--chalk-dim);display:flex;gap:10px;align-items:center}.ph-team span{background:var(--brass);color:#2a1d05;border-radius:999px;padding:1px 10px;font-size:14px}.ph-card{flex:1;background:var(--chalk);color:var(--felt);border-radius:26px;padding:26px 20px;display:flex;flex-direction:column;justify-content:center;box-shadow:0 20px 40px #00000040}.msg{text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;animation:pop .35s cubic-bezier(.2,1.3,.4,1)}@keyframes pop{0%{transform:scale(.94);opacity:0}}.msg h1{font:750 32px/1.1 var(--display);margin:0;text-wrap:balance}.msg p{font-size:20px;margin:0;color:var(--ink-soft);line-height:1.4;display:flex;flex-direction:column;align-items:center;gap:14px}.msg-icon{width:96px;height:96px;border-radius:50%;background:var(--felt);color:var(--chalk);display:grid;place-items:center;font-size:46px;margin-bottom:6px}.msg.ok .msg-icon{background:var(--ok)}.msg.bad .msg-icon{background:var(--bad)}.given{color:var(--felt);font-size:26px;font-family:var(--display);word-break:break-word}.ph-link{background:none;border:0;color:var(--felt-light);text-decoration:underline;font-size:16px;padding:8px}.join{display:flex;flex-direction:column;gap:18px}.join h1{font:750 36px var(--display);margin:0 0 4px;text-align:center}.ph-field{display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:17px}.ph-field input,.text-input input{width:100%;min-height:62px;border:3px solid #b9c4bd;border-radius:16px;padding:12px 16px;font-size:22px;background:#fff;color:var(--ink)}.ph-field input:focus,.text-input input:focus{outline:none;border-color:var(--felt)}.ph-error{background:#fdecea;color:var(--bad);border-radius:12px;padding:12px 14px;font-weight:700;text-align:center}.ph-btn{min-height:64px;width:100%;border:0;border-radius:16px;background:var(--felt);color:var(--chalk);font:750 23px var(--display);box-shadow:inset 0 -5px #00000040}.ph-btn:active:not(:disabled){transform:translateY(2px);box-shadow:inset 0 -2px #00000040}.ph-btn:disabled{opacity:.4}.ph-btn.ghost{background:transparent;color:var(--felt);border:3px solid #b9c4bd;box-shadow:none}.play{flex:1;display:flex;flex-direction:column;gap:16px;justify-content:flex-start}.play-head{display:flex;flex-direction:column;gap:10px;font-weight:700;color:var(--ink-soft);text-align:center}.ph-timer{position:relative;height:34px;border-radius:999px;background:#e3e0d4;overflow:hidden}.ph-timer-bar{position:absolute;inset:0;background:var(--brass);transform-origin:left;transition:transform .1s linear}.ph-timer.warn .ph-timer-bar{background:var(--a-red)}.ph-timer span{position:relative;display:block;text-align:center;line-height:34px;font:750 20px var(--display);color:var(--felt);font-variant-numeric:tabular-nums}.tiles{flex:1;display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:340px}.tiles.wide{grid-template-columns:1fr}.tile{border:0;border-radius:20px;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px;box-shadow:inset 0 -7px #0003}.tile:active:not(:disabled){transform:scale(.97)}.tile:disabled{opacity:.55}.tile-key{font:800 64px/1 var(--display)}.tiles.wide .tile-key{font-size:46px}.tile-text{font-size:16px;font-weight:700;line-height:1.2;text-align:center;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.t-red{background:var(--a-red)}.t-blue{background:var(--a-blue)}.t-yellow{background:var(--a-yellow);color:#2b2205}.t-green{background:var(--a-green)}.text-input{display:flex;flex-direction:column;gap:14px}.ti-row{display:flex;align-items:center;gap:10px}.ti-unit{font-weight:700;font-size:18px;color:var(--ink-soft)}.hint{margin:0;text-align:center;color:var(--ink-soft);font-size:17px}.order-input{display:flex;flex-direction:column;gap:14px}.order-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.order-btn{position:relative;min-height:110px;border:3px solid #b9c4bd;border-radius:16px;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:center;padding:34px 10px 12px;font-size:18px;font-weight:700;overflow:hidden}.order-btn b{position:absolute;top:6px;left:6px;width:32px;height:32px;border-radius:50%;background:var(--felt);color:var(--chalk);display:grid;place-items:center;font:800 17px var(--display);z-index:1}.order-btn.img{padding:0}.order-btn.img img{width:100%;height:130px;object-fit:cover}.order-btn.picked{border-color:var(--brass);background:#fbf2dc}.order-btn.picked b{background:var(--brass);color:#2a1d05}.order-btn.picked img{opacity:.55}.order-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px}.gallery-input{display:flex;flex-direction:column;gap:14px}.attempts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:16px}.attempts li{background:#ece9dd;border-radius:10px;padding:8px 12px}.attempts li.no{color:var(--bad);text-decoration:line-through}.joker-bar{margin-top:18px;display:flex;flex-direction:column;gap:8px}.joker-bar.on{background:#fbefd2;color:#6b4a07;border:2px solid #e2a83a;border-radius:14px;padding:12px;text-align:center;font-weight:700}.joker-btn{background:#e2a83a;color:#2a1d05}.joker-info{font-size:16px;background:#fbefd2;color:#6b4a07;border-radius:12px;padding:10px 12px}.team-photo{display:flex;flex-direction:column;align-items:center;gap:8px}.team-photo img{width:120px;height:120px;border-radius:50%;object-fit:cover;border:4px solid var(--felt)}.team-photo small{font-size:14px;color:var(--ink-soft)}.photo-btn{display:inline-block;cursor:pointer}.phone.flash-ok{animation:flash-ok 1.2s ease-out}.phone.flash-bad{animation:flash-bad 1.2s ease-out}@keyframes flash-ok{0%{background:var(--ok)}}@keyframes flash-bad{0%{background:var(--bad)}}.photo-btn{display:flex;align-items:center;justify-content:center}.ask-back{position:fixed;inset:0;z-index:50;background:#08181299;display:flex;align-items:flex-end;justify-content:center;padding:16px;animation:pop .2s ease-out}.ask{width:100%;max-width:520px;background:var(--chalk);color:var(--felt);border-radius:22px;padding:22px 18px 18px;display:flex;flex-direction:column;gap:12px;text-align:center;box-shadow:0 20px 50px #0006}.ask h2{margin:0;font:750 24px/1.15 var(--display)}.ask p{margin:0 0 4px;font-size:17px;color:var(--ink-soft)}
