@font-face{font-family:Fredoka;src:url(/fonts/fredoka-500.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Fredoka;src:url(/fonts/fredoka-700.woff2) format("woff2");font-weight:700;font-display:swap}:root{--bg-1: #2b0b52;--bg-2: #5217a5;--card: #ffffff;--ink: #241640;--ink-soft: #6c5c8a;--white: #ffffff;--red: #e21b3c;--blue: #1368ce;--yellow: #f7b500;--green: #1d9e5f;--pop: #ff4fa3;--shadow: 0 10px 0 rgba(0, 0, 0, .25);--radius: 22px;--font: "Fredoka", "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;min-height:100%;font-family:var(--font);color:var(--ink);background:linear-gradient(160deg,var(--bg-1),var(--bg-2) 60%,#7b2ff7 120%);background-attachment:fixed}body{overscroll-behavior-y:none}#app{min-height:100dvh;display:flex;flex-direction:column}#confetti-canvas{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:999}h1,h2,h3{margin:0 0 .4em;line-height:1.15}p{margin:0 0 1em}.screen{flex:1;display:flex;flex-direction:column;align-items:center;padding:max(16px,env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom))}.screen-narrow{width:100%;max-width:480px;margin:0 auto}.screen-mid{width:100%;max-width:860px;margin:0 auto}.logo{display:inline-flex;align-items:center;gap:10px;font-weight:700;font-size:1.6rem;color:var(--white);text-decoration:none;letter-spacing:.5px}.logo .q-badge{width:44px;height:44px;border-radius:14px;background:conic-gradient(from 200deg,var(--pop),var(--yellow),var(--pop));display:grid;place-items:center;font-size:1.5rem;color:#fff;box-shadow:0 6px #0000004d}.topbar{width:100%;max-width:1100px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 4px 22px}.topbar .who{color:#e6d9ff;font-weight:500}.card{background:var(--card);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);width:100%}.card+.card{margin-top:16px}.card-dark{background:#ffffff14;color:#fff;border:2px solid rgba(255,255,255,.18)}.btn{font-family:var(--font);font-weight:700;font-size:1.05rem;border:none;border-radius:16px;padding:14px 26px;cursor:pointer;color:#fff;background:var(--green);box-shadow:0 6px #00000047;transition:transform .08s,box-shadow .08s;-webkit-user-select:none;user-select:none;text-decoration:none;display:inline-block}.btn:active{transform:translateY(4px);box-shadow:0 2px #00000047}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-blue{background:var(--blue)}.btn-red{background:var(--red)}.btn-yellow{background:var(--yellow);color:#4a3600}.btn-purple{background:#7b2ff7}.btn-ghost{background:#ffffff24;box-shadow:none}.btn-big{font-size:1.3rem;padding:18px 38px;border-radius:20px}.btn-block{display:block;width:100%}.btn-small{font-size:.9rem;padding:8px 14px;border-radius:12px;box-shadow:0 4px #00000040}.toast{position:fixed;top:14px;left:50%;transform:translate(-50%);background:var(--red);color:#fff;font-weight:700;padding:12px 20px;border-radius:16px;z-index:300;box-shadow:0 8px 24px #00000059;opacity:0;transition:opacity .2s;pointer-events:none}.toast.show{opacity:1}.pause-hint{position:fixed;top:12px;left:50%;transform:translate(-50%);background:#000000b8;color:var(--yellow);font-weight:700;padding:9px 18px;border-radius:999px;z-index:250;animation:popIn .25s}input,textarea,select{font-family:var(--font);font-size:1.05rem;width:100%;padding:14px;border-radius:14px;border:3px solid #d8ccf0;background:#fff;color:var(--ink);outline:none}input:focus,textarea:focus{border-color:#7b2ff7}label{display:block;font-weight:700;margin:0 0 6px;color:var(--ink)}.field{margin-bottom:16px}.hint{color:var(--ink-soft);font-size:.95rem}.error-banner{background:#ffe3e8;color:#8f0f26;border:2px solid #ffb3c2;border-radius:14px;padding:12px 14px;margin-bottom:14px;font-weight:500}.success-banner{background:#e0f7e9;color:#0c5c33;border:2px solid #9fe3bc;border-radius:14px;padding:12px 14px;margin-bottom:14px;font-weight:500}.shape{width:34px;height:34px;flex:0 0 auto}.triangle{clip-path:polygon(50% 6%,96% 94%,4% 94%)}.diamond{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.circle{border-radius:50%}.square{border-radius:8px}.c-red{background:var(--red)}.c-blue{background:var(--blue)}.c-yellow{background:var(--yellow)}.c-green{background:var(--green)}.answers-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;width:100%;max-width:640px;margin:0 auto}.answer-btn{position:relative;display:flex;align-items:center;gap:12px;min-height:clamp(110px,22dvh,200px);border:none;border-radius:20px;cursor:pointer;color:#fff;font-family:var(--font);font-weight:700;font-size:clamp(1rem,2.6vw + .4rem,1.5rem);text-align:left;padding:18px;box-shadow:0 8px #0000004d;transition:transform .1s,filter .2s,box-shadow .1s;line-height:1.25}.answer-btn:active:not(:disabled){transform:translateY(6px);box-shadow:0 2px #0000004d}.answer-btn:disabled{cursor:default}.answer-btn .shape{width:clamp(26px,5vw,40px);height:clamp(26px,5vw,40px)}.answer-btn.dim{filter:brightness(.45) saturate(.6)}.answer-btn.selected{outline:6px solid #fff;animation:pulse .8s infinite}.answer-btn.right-now{outline:6px solid #fff;filter:none;animation:bounce .5s}.answer-btn.wrong-pick{outline:5px dashed rgba(255,255,255,.95);outline-offset:-10px;filter:none}.answer-btn.wrong-now{filter:brightness(.4) saturate(.5)}.answer-btn.shake{animation:shake .45s}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes bounce{0%{transform:scale(.9)}60%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-10px)}40%{transform:translate(9px)}60%{transform:translate(-7px)}80%{transform:translate(5px)}}@keyframes popIn{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:1}}@keyframes riseUp{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}.pop-in{animation:popIn .45s cubic-bezier(.2,1.4,.4,1) both}.rise-up{animation:riseUp .5s ease-out both}.timer-wrap{width:100%;max-width:640px;margin:14px auto}.timer-bar{height:18px;border-radius:999px;background:#ffffff40;overflow:hidden;border:3px solid rgba(255,255,255,.5)}.timer-fill{height:100%;background:linear-gradient(90deg,var(--yellow),var(--pop));border-radius:999px;transition:width .25s linear}.timer-fill.danger{background:var(--red);animation:pulse .5s infinite}.timer-num{text-align:center;color:#fff;font-weight:700;font-size:1.2rem;margin-top:4px}.question-banner{color:#fff;text-align:center;width:100%;max-width:900px;font-size:clamp(1.25rem,3.2vw + .4rem,2.2rem);font-weight:700;text-shadow:0 3px 0 rgba(0,0,0,.3);padding:10px 6px;line-height:1.25}.question-meta{color:#ffd6f2;font-size:clamp(.85rem,1.5vw,1.05rem);font-weight:700;letter-spacing:.4px;text-transform:uppercase}.question-img{max-width:min(92vw,420px);max-height:30dvh;border-radius:18px;box-shadow:var(--shadow);margin:10px auto;display:block;background:#fff}.avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;background:#fff;border:3px solid #fff;box-shadow:0 4px 8px #00000040}.avatar-big{width:96px;height:96px}.avatar-row{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.player-chip{background:#ffffff1f;border:2px solid rgba(255,255,255,.2);border-radius:999px;padding:6px 14px 6px 6px;display:flex;align-items:center;gap:8px;color:#fff;font-weight:700;animation:popIn .35s both}.player-chip .avatar{width:34px;height:34px;border-width:2px}.player-chip.offline{opacity:.45}.pin-display{font-size:clamp(3rem,12vw,6rem);font-weight:700;color:#fff;letter-spacing:.18em;text-shadow:0 6px 0 rgba(0,0,0,.35);text-align:center;-webkit-user-select:all;user-select:all}.qr-box{background:#fff;padding:14px;border-radius:18px;display:inline-block;box-shadow:var(--shadow)}.qr-box canvas,.qr-box img{display:block;width:min(60vw,240px);height:auto}.me-card{display:flex;align-items:center;gap:14px;justify-content:center;background:#ffffff1f;border-radius:20px;padding:12px 18px;color:#fff;font-weight:700;margin:12px 0;flex-wrap:wrap}.dots-loading span{display:inline-block;width:12px;height:12px;margin:0 3px;border-radius:50%;background:#fff;animation:pulse 1s infinite}.dots-loading span:nth-child(2){animation-delay:.2s}.dots-loading span:nth-child(3){animation-delay:.4s}.feedback-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;background:#14052deb;color:#fff;text-align:center;animation:popIn .35s both;padding:20px}.feedback-emoji{font-size:clamp(4rem,20vw,8rem);line-height:1}.feedback-points{font-size:clamp(2rem,8vw,3.4rem);font-weight:700;color:var(--yellow)}.feedback-streak{color:#ffb3d9;font-weight:700;font-size:1.15rem}.rank-list{list-style:none;margin:0;padding:0}.rank-row{display:flex;align-items:center;gap:12px;padding:10px 8px;border-bottom:2px dashed #e5dcf5;color:var(--ink)}.rank-row:last-child{border-bottom:none}.rank-num{width:34px;text-align:center;font-weight:700;font-size:1.2rem;color:var(--ink-soft)}.rank-name{flex:1;font-weight:700;display:flex;align-items:center;gap:8px}.rank-score{font-weight:700;color:#7b2ff7;font-size:1.1rem}.rank-delta{font-size:.85rem;font-weight:700}.rank-delta.up{color:var(--green)}.rank-delta.down{color:var(--red)}.rank-streak{color:#ff7a00;font-weight:700}.rank-row.me{background:#f3ecff;border-radius:14px;border-bottom-color:transparent}.podium-stage{display:flex;align-items:flex-end;justify-content:center;gap:10px;width:100%;max-width:720px;margin:24px auto 0;min-height:42dvh}.podium-col{display:flex;flex-direction:column;align-items:center;flex:1;max-width:200px}.podium-name{color:#fff;font-weight:700;text-align:center;margin-bottom:8px;font-size:clamp(.85rem,2.5vw,1.2rem);text-shadow:0 2px 0 rgba(0,0,0,.35)}.podium-block{width:100%;border-radius:16px 16px 0 0;display:grid;place-items:start center;padding-top:12px;color:#fff;font-size:clamp(1.6rem,5vw,2.6rem);font-weight:700;box-shadow:inset 0 -6px #0003;animation:riseUp .7s cubic-bezier(.2,1.3,.4,1) both;position:relative}.podium-block .score{font-size:clamp(.9rem,2.5vw,1.3rem)}.podium-block .avatar{margin-bottom:6px}.podium-2{background:linear-gradient(#8f7bff,#6c56e6)}.podium-1{background:linear-gradient(#ffd94d,#f7b500);color:#5a4200}.podium-3{background:linear-gradient(#ff9d6c,#f4703a)}.quiz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px}.quiz-card{background:#fff;border-radius:18px;padding:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:10px}.quiz-card h3{font-size:1.15rem;margin:0}.quiz-card .meta{color:var(--ink-soft);font-size:.85rem;flex:1}.quiz-card .actions{display:flex;gap:8px;flex-wrap:wrap}.editor-layout{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 900px){.editor-layout{grid-template-columns:1fr 1fr}}.md-editor{font-family:ui-monospace,Cascadia Code,Menlo,Consolas,monospace;font-size:.95rem;line-height:1.5;min-height:46dvh;resize:vertical}.preview-q{background:#fff;border-radius:16px;padding:14px;box-shadow:0 6px #0003;margin-bottom:12px}.preview-q .q-text{font-weight:700;margin-bottom:8px}.preview-opt{display:flex;gap:8px;align-items:center;padding:6px 10px;border-radius:10px;margin-bottom:4px;background:#f4f0fc}.preview-opt.correct{background:#ddf7e8;font-weight:700}.err-list{list-style:none;padding:0;margin:0}.err-list li{background:#ffe3e8;color:#8f0f26;border-radius:10px;padding:8px 12px;margin-bottom:6px;font-size:.95rem}.err-list li b{cursor:pointer;text-decoration:underline}.host-bar{position:fixed;bottom:0;left:0;right:0;z-index:40;display:flex;gap:10px;justify-content:center;padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent,#14052dd9 40%);flex-wrap:wrap;pointer-events:none}.host-bar .btn,.host-bar a{pointer-events:auto}.screen:has(.host-bar){padding-bottom:120px}.host-status{color:#ffd6f2;font-weight:700;text-align:center;padding:6px}.sound-toggle{background:#ffffff26;border:none;border-radius:999px;width:44px;height:44px;font-size:1.25rem;cursor:pointer;color:#fff}.dist-chart{display:flex;gap:10px;align-items:flex-end;justify-content:center;height:clamp(120px,30dvh,240px);margin-top:10px}.dist-bar-wrap{display:flex;flex-direction:column;align-items:center;gap:6px;width:clamp(52px,12vw,90px)}.dist-bar{width:100%;border-radius:10px 10px 0 0;min-height:6px;transition:height .6s cubic-bezier(.3,1.2,.4,1)}.dist-count{color:#fff;font-weight:700}.dist-label{color:#ffffffb3;font-size:.8rem;font-weight:700;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.host-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%;max-width:900px;margin:8px auto}.host-option{min-height:clamp(70px,14dvh,140px);border-radius:18px;color:#fff;display:flex;align-items:center;gap:12px;padding:14px;font-weight:700;font-size:clamp(.9rem,2vw + .3rem,1.4rem);box-shadow:0 6px #0000004d;text-align:left;transition:filter .25s,transform .25s;line-height:1.2}.host-option.hidden-answer{filter:brightness(.55)}.host-option.reveal-right{outline:6px solid #fff;transform:scale(1.02)}.host-option.reveal-wrong{filter:brightness(.35)}.points-flyout{position:fixed;top:18%;left:50%;transform:translate(-50%);font-size:clamp(2.4rem,10vw,4.4rem);font-weight:700;color:var(--yellow);text-shadow:0 4px 0 rgba(0,0,0,.4);z-index:60;pointer-events:none;animation:flyUp 1.4s ease-out forwards}@keyframes flyUp{0%{opacity:0;transform:translate(-50%,30px) scale(.6)}25%{opacity:1;transform:translate(-50%) scale(1.15)}to{opacity:0;transform:translate(-50%,-60px) scale(1)}}.muted{color:var(--ink-soft)}.white-muted{color:#ffffffbf}.center{text-align:center}.mt-auto{margin-top:auto}.stack>*+*{margin-top:12px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.grow{flex:1}@media (max-width: 480px){.card{padding:16px}.answer-btn{padding:14px;gap:10px}.answer-btn .shape{margin-top:2px}}@media (min-width: 900px){.screen-wide{max-width:1100px;margin:0 auto;width:100%}}@media (display-mode: standalone){body{-webkit-user-select:none;user-select:none}}.badge-admin{display:inline-block;font-size:.65rem;font-weight:800;letter-spacing:.06em;background:#7b2ff7;color:#fff;border-radius:999px;padding:2px 8px;vertical-align:middle}
