:root{color:#171717;font-synthesis:none;text-rendering:optimizelegibility;--paper:#f6f7f8;--surface:#fff;--surface-strong:#f0f3f2;--ink:#171717;--muted:#686f73;--line:#d9dee2;--teal:#087f73;--teal-dark:#05645b;--coral:#c94444;--coral-dark:#a93333;--amber:#b87900;--green:#1f8f51;--danger:#b42336;--shadow:0 16px 40px #11182714;background:#f6f7f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{min-width:320px;min-height:100%}body{background:linear-gradient(90deg, #087f7314 1px, transparent 1px), linear-gradient(0deg, #c944440d 1px, transparent 1px), var(--paper);background-size:44px 44px;min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit;letter-spacing:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}#root,.app-shell{min-height:100vh}.app-header{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#f6f7f8f0;justify-content:space-between;align-items:center;min-height:72px;padding:14px clamp(16px,4vw,36px);display:flex;position:sticky;top:0}.brand-button{min-height:44px;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:inline-flex}.brand-button strong,.brand-button small{display:block}.brand-button strong{font-size:1rem}.brand-button small{color:var(--muted);margin-top:2px;font-size:.8rem}.brand-mark,.panel-icon{background:var(--ink);color:#fff;border-radius:8px;place-items:center;width:44px;height:44px;display:inline-grid}.panel-icon{background:var(--teal);width:52px;height:52px}.panel-icon.accent{background:var(--coral)}.app-main{width:min(1280px,100%);margin:0 auto;padding:clamp(18px,4vw,36px)}.home-grid,.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.setup-layout{grid-template-columns:minmax(360px,.9fr) minmax(440px,1.1fr);align-items:start;gap:18px;display:grid}.home-grid{align-items:stretch;min-height:calc(100vh - 150px)}.home-panel,.panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:8px}.home-panel{flex-direction:column;justify-content:space-between;min-height:320px;padding:clamp(22px,4vw,36px);display:flex}.home-panel h1,.home-panel h2{max-width:12ch;color:var(--ink);letter-spacing:0;margin:28px 0;font-size:clamp(2rem,6vw,4.4rem);line-height:.98}.home-panel h2{font-size:clamp(1.8rem,5vw,3.6rem)}.primary-action{background:#fff}.panel{padding:clamp(18px,3vw,26px)}.narrow-panel{width:min(520px,100%);margin:0 auto}.setup-panel,.clue-setup-panel{align-self:start}.clue-setup-panel{grid-column:1/-1}.heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.section-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.section-heading h1,.section-heading h2,.player-top h1,.host-title h1,.loading-panel h1{color:var(--ink);letter-spacing:0;margin:0;line-height:1.05}.section-heading h1,.host-title h1,.player-top h1{font-size:clamp(1.7rem,4vw,2.8rem)}.section-heading h2{font-size:clamp(1.25rem,3vw,1.8rem)}.eyebrow{color:var(--teal-dark);letter-spacing:0;text-transform:uppercase;margin:0 0 7px;font-size:.76rem;font-weight:800}.action-row,.sticky-actions,.host-actions,.meta-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.sticky-actions{justify-content:flex-end;margin-top:18px}.button,.icon-button{cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;font-weight:800;transition:transform .16s,background-color .16s,border-color .16s,box-shadow .16s;display:inline-flex;position:relative;overflow:hidden}.button{padding:0 15px}.icon-button{flex:none;width:44px;padding:0}.button:hover,.icon-button:hover{transform:translateY(-1px)}.button:active,.icon-button:active{transform:translateY(1px)scale(.97)}.button:after,.icon-button:after{content:"";pointer-events:none;opacity:0;background:radial-gradient(circle,#ffffff6b,#0000 54%);transition:opacity .18s,transform .18s;position:absolute;inset:-40%;transform:scale(.45)}.button:hover:after,.icon-button:hover:after{opacity:1;transform:scale(1)}.button:disabled:after,.icon-button:disabled:after{opacity:0}.button:disabled,.icon-button:disabled,.host-clue-button:disabled,.player-clue:disabled{cursor:not-allowed;opacity:.56;transform:none}.button-primary{background:var(--teal);color:#fff;box-shadow:0 8px 0 var(--teal-dark), 0 16px 24px #087f732e}.button-primary:hover{background:var(--teal-dark)}.button-primary:active{box-shadow:0 3px 0 var(--teal-dark), 0 10px 16px #087f7329}.button-primary.coral{background:var(--coral);box-shadow:0 8px 0 var(--coral-dark), 0 16px 24px #c9444429}.button-primary.coral:hover{background:var(--coral-dark)}.button-primary.coral:active{box-shadow:0 3px 0 var(--coral-dark), 0 10px 16px #c9444424}.button-secondary{border-color:var(--line);background:var(--surface-strong);color:var(--ink)}.button-secondary:hover{background:#e8eeec;border-color:#c4ccd1;box-shadow:0 8px 18px #11182714}.button.danger,.icon-button.danger{color:var(--danger)}label{color:var(--ink);gap:7px;font-weight:800;display:grid}label span{color:var(--muted);font-size:.82rem}input,textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;outline:none}input{min-height:46px;padding:0 12px}textarea{resize:vertical;min-height:92px;padding:12px}input:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px #087f7324}.field-grid{grid-template-columns:minmax(0,1fr) minmax(120px,.42fr);gap:12px;margin-bottom:14px;display:grid}.wide-field{grid-column:1/-1}.code-input{text-transform:uppercase;height:62px;font-size:1.7rem;font-weight:900}.clue-editor-list{gap:14px;display:grid}.clue-setup-panel>.clue-editor-list{grid-template-columns:repeat(2,minmax(0,1fr))}.clue-editor-list.compact{gap:12px}.clue-io-panel{border:1px solid var(--line);background:var(--surface-strong);border-radius:8px;gap:12px;margin-bottom:16px;padding:12px;animation:.28s both card-deal;display:grid}.clue-io-status{color:var(--teal-dark);margin:0;font-weight:900}.clue-import-box{gap:12px;display:grid}.clue-io-actions{flex-wrap:wrap;gap:10px;display:flex}.clue-import-box textarea{min-height:180px;font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.9rem}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;min-height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.playlist-summary{border:1px solid var(--line);background:var(--surface-strong);border-radius:8px;gap:4px;margin-top:12px;padding:12px;display:grid}.spotify-setup-row{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 14px;display:flex}.playlist-summary span{color:var(--muted);font-size:.9rem}.track-list{gap:8px;max-height:560px;padding-right:4px;display:grid;overflow:auto}.track-row{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px;min-height:62px;padding:8px 10px;display:grid}.track-row.is-selected{border-color:var(--teal);background:#087f7314}.track-row input{width:20px;height:20px;min-height:20px}.track-row img,.selected-song img{object-fit:cover;border-radius:8px;width:44px;height:44px}.track-row strong,.track-row small,.selected-song strong,.selected-song small{overflow-wrap:anywhere;display:block}.track-row small,.selected-song small{color:var(--muted);font-weight:700}.clue-edit-card{border:1px solid var(--line);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid}.selected-song{background:var(--surface-strong);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:8px;display:grid}.clue-edit-head{justify-content:space-between;align-items:center;display:flex}.clue-number{background:var(--surface-strong);width:32px;height:32px;color:var(--ink);border-radius:8px;flex:none;place-items:center;font-weight:900;display:inline-grid}.add-wide{width:100%;margin-top:14px}.dashboard,.player-layout{gap:18px;display:grid}.host-hero,.player-top{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;display:grid}.host-title h1,.player-top h1{overflow-wrap:anywhere;margin-bottom:12px}.qr-box{border:1px solid var(--line);background:#fff;border-radius:8px;place-items:center;width:154px;height:154px;display:grid}.pill,.connection-badge{background:var(--surface-strong);min-height:32px;color:var(--ink);border-radius:8px;align-items:center;gap:7px;padding:0 10px;font-size:.88rem;font-weight:800;display:inline-flex}.score-pill{color:#6d4b00;background:#b8790024}.spotify-pill{color:#126238;background:#1f8f5121}.warning-pill{color:#6d4b00;background:#b8790024}.penalty-pill{color:var(--muted);background:#11182714}.penalty-pill.is-active{color:var(--danger);background:#b4233621;animation:.9s ease-in-out infinite penalty-tick}.connection-badge span{background:var(--amber);border-radius:999px;width:9px;height:9px}.connection-badge.open span{background:var(--green);animation:1.2s ease-in-out infinite live-dot}.connection-badge.closed span{background:var(--danger)}.now-panel,.scoreboard{min-height:220px}.active-clue{border-left:4px solid var(--coral);padding:12px 0 12px 14px}.spotify-track{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;min-height:64px;margin-bottom:12px;display:grid}.spotify-track img{object-fit:cover;border-radius:8px;width:56px;height:56px}.spotify-track strong,.spotify-track small{overflow-wrap:anywhere;display:block}.spotify-track small,.status-copy{color:var(--muted);line-height:1.4}.status-copy{margin:0 0 12px}.danger-copy{color:var(--danger)}.active-clue strong{margin-bottom:8px;display:block}.active-clue p,.empty-copy{color:var(--muted);margin:0;line-height:1.5}.progress-track{background:var(--surface-strong);border-radius:8px;height:14px;margin:10px 0 14px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--teal);height:100%;transition:width .2s;display:block}.host-clue-list,.player-clue-grid,.submission-list,.score-list{gap:10px;display:grid}.host-clue-button,.player-clue{border:1px solid var(--line);width:100%;min-height:74px;color:var(--ink);text-align:left;background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.player-clue{cursor:pointer;isolation:isolate;transition:transform .16s,border-color .16s,background-color .16s,box-shadow .16s;animation:.38s cubic-bezier(.2,.85,.2,1) both card-deal;position:relative;overflow:hidden}.player-clue:hover{border-color:#b9c3c8;transform:translateY(-2px)scale(1.006);box-shadow:0 12px 24px #11182717}.player-clue:active{transform:translateY(1px)scale(.985)}.player-clue-grid .player-clue:nth-child(2){animation-delay:35ms}.player-clue-grid .player-clue:nth-child(3){animation-delay:70ms}.player-clue-grid .player-clue:nth-child(4){animation-delay:.105s}.player-clue-grid .player-clue:nth-child(5){animation-delay:.14s}.player-clue-grid .player-clue:nth-child(6){animation-delay:.175s}.player-clue-grid .player-clue:nth-child(n+7){animation-delay:.21s}.host-clue-button.is-solved{background:#f2f5f4}.host-clue-button.is-active{border-color:var(--coral);box-shadow:inset 0 0 0 2px #c9444429}.clue-main,.player-clue-text{gap:4px;min-width:0;display:grid}.clue-main strong{overflow-wrap:anywhere}.clue-main small,.player-clue-text,.submission-row small{color:var(--muted);overflow-wrap:anywhere;line-height:1.4}.clue-state,.player-clue-action{min-width:92px;color:var(--teal-dark);justify-content:flex-end;align-items:center;gap:7px;font-size:.9rem;font-weight:900;display:inline-flex}.player-clue{min-height:96px}.player-clue.is-solved{background:#f2f5f4;animation:.46s both solved-settle}.player-clue.is-locked{color:var(--muted);opacity:.82;background:repeating-linear-gradient(-45deg,#b4233609 0 8px,#0000 8px 16px),#fff;border-color:#b4233647}.player-clue.is-locked .player-clue-action,.player-clue.is-locked .clue-number{color:var(--danger)}.player-clue.is-locked .clue-number{background:#b423361c}.player-clue.is-last-correct{background:#1f8f511a;border-color:#1f8f51b8;animation:.72s cubic-bezier(.2,.8,.2,1) clue-correct-pop,1.4s ease-out correct-glow;box-shadow:0 12px 28px #1f8f5129}.player-clue.is-last-correct:disabled{opacity:1}.player-clue.is-last-correct .clue-number{background:var(--green);color:#fff}.player-clue.is-last-wrong{background:#b4233612;border-color:#b4233694;animation:.42s clue-wrong-shake}.player-clue.is-last-wrong .clue-number{color:var(--danger);background:#b4233621}.player-clue.is-last-correct:after,.player-clue.is-last-wrong:after{content:"";pointer-events:none;position:absolute;inset:0;transform:translate(-120%)}.player-clue.is-last-correct:after{background:linear-gradient(100deg,#0000 12%,#ffffffc7 46%,#0000 78%);animation:.82s ease-out shine-pass}.player-clue.is-last-wrong:after{background:linear-gradient(100deg,#0000 20%,#b423361f 50%,#0000 80%);animation:.5s ease-out shine-pass}.settings-panel label+label,.join-panel label+label{margin-top:14px}.host-editor-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.new-clue-box{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.score-list{margin:0;padding:0;list-style:none}.score-list li{border:1px solid var(--line);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;padding:8px 10px;animation:.34s both score-row-in;display:grid}.score-list li.is-me{border-color:var(--teal);box-shadow:inset 4px 0 0 var(--teal);background:#087f7314}.score-list .rank{background:var(--ink);color:#fff;border-radius:8px;place-items:center;width:28px;height:28px;font-size:.82rem;font-weight:900;display:inline-grid}.submission-row{border:1px solid var(--line);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:54px;padding:10px;animation:.34s cubic-bezier(.2,.8,.2,1) both submission-slide;display:grid}.submission-row.is-correct{background:#1f8f5114;border-color:#1f8f5173;animation-name:submission-slide,correct-glow;animation-duration:.34s,1.1s;animation-timing-function:cubic-bezier(.2,.8,.2,1),ease-out}.submission-row strong,.submission-row small{display:block}.submission-row em{color:var(--teal-dark);font-style:normal;font-weight:900}.submission-row time{color:var(--muted);font-size:.82rem}.submission-icon{color:var(--coral);place-items:center;display:inline-grid}.submission-row.is-correct .submission-icon{color:var(--green)}.banner{border:1px solid var(--line);min-height:48px;box-shadow:var(--shadow);background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.banner button{width:34px;height:34px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;place-items:center;display:inline-grid}.error-banner{color:var(--danger);border-color:#b423365c}.penalty-banner{color:var(--danger);background:#fff7f7;border-color:#b4233657;animation:.24s both result-in}.result-banner{color:var(--coral-dark);border-color:#c944445c;animation:.32s cubic-bezier(.2,.9,.2,1) result-in;position:relative;overflow:hidden}.result-banner.is-correct{color:var(--green);background:#f1fbf5;border-color:#1f8f5173}.result-banner.is-wrong{background:#fff6f6;animation-name:result-in,wrong-nudge;animation-duration:.32s,.36s;animation-timing-function:cubic-bezier(.2,.9,.2,1),ease}.result-icon{background:#c944441a;border-radius:8px;place-items:center;width:34px;height:34px;display:inline-grid}.result-banner.is-correct .result-icon{background:#1f8f511f}.result-copy{z-index:1;overflow-wrap:anywhere;font-weight:900;position:relative}.result-burst{pointer-events:none;position:absolute;inset:0}.result-burst span{background:var(--coral);opacity:0;border-radius:3px;width:8px;height:18px;position:absolute;top:50%;left:26px}.result-banner.is-correct .result-burst span{background:var(--green)}.result-burst span:first-child{animation:.74s ease-out burst-a;transform:rotate(18deg)}.result-burst span:nth-child(2){background:var(--amber);animation:.72s ease-out 30ms burst-b;transform:rotate(64deg)}.result-burst span:nth-child(3){height:12px;animation:.76s ease-out 20ms burst-c;left:52px;transform:rotate(112deg)}.result-burst span:nth-child(4){background:var(--teal);animation:.74s ease-out 40ms burst-d;left:auto;right:58px;transform:rotate(38deg)}.result-burst span:nth-child(5){height:12px;animation:.7s ease-out 20ms burst-e;left:auto;right:32px;transform:rotate(82deg)}.result-burst span:nth-child(6){background:var(--amber);animation:.78s ease-out burst-f;left:auto;right:96px;transform:rotate(128deg)}.player-layout.has-correct-result .score-pill{animation:.72s cubic-bezier(.2,.8,.2,1) score-pop,1.15s ease-out correct-glow}.player-layout.has-wrong-result .player-top{animation:.42s soft-red-bump}.game-feedback-stage{z-index:30;pointer-events:none;place-items:center;animation:1.35s forwards stage-hide;display:grid;position:fixed;inset:0}.game-feedback-stage strong{z-index:2;color:var(--green);text-transform:uppercase;background:#ffffffe6;border:3px solid;border-radius:8px;padding:8px 16px;font-size:clamp(2rem,12vw,5rem);line-height:1;animation:.92s cubic-bezier(.18,1.25,.28,1) both arcade-score-pop;position:relative;transform:rotate(-4deg);box-shadow:0 18px 44px #1f8f5142}.game-feedback-stage.is-wrong strong{color:var(--danger);font-size:clamp(1.35rem,8vw,3.2rem);animation:.82s cubic-bezier(.18,1.25,.28,1) both arcade-score-pop,.42s 50ms clue-wrong-shake;box-shadow:0 18px 44px #b4233633}.game-feedback-glow{aspect-ratio:1;background:radial-gradient(circle, #1f8f5157, #1f8f5124 35%, transparent 68%), conic-gradient(from 12deg, transparent 0 10%, #ffffffd9 10% 14%, transparent 14% 25%);filter:blur(1px);border-radius:50%;width:min(72vw,440px);animation:1.05s ease-out forwards feedback-glow;position:absolute;transform:scale(.65)}.game-feedback-stage.is-wrong .game-feedback-glow{background:radial-gradient(circle, #b4233647, #b423361f 35%, transparent 68%), conic-gradient(from 22deg, transparent 0 13%, #ffffffc7 13% 16%, transparent 16% 31%)}.game-feedback-particles{position:absolute;inset:0}.game-feedback-particles span{background:var(--green);opacity:0;border-radius:3px;width:12px;height:12px;position:absolute;top:50%;left:50%}.game-feedback-stage.is-wrong .game-feedback-particles span{background:var(--danger)}.game-feedback-particles span:first-child{animation:1s ease-out 60ms forwards particle-arc-1}.game-feedback-particles span:nth-child(2){background:var(--amber);animation:1.05s ease-out 20ms forwards particle-arc-2}.game-feedback-particles span:nth-child(3){background:var(--teal);animation:1.02s ease-out 40ms forwards particle-arc-3}.game-feedback-particles span:nth-child(4){animation:1.1s ease-out 80ms forwards particle-arc-4}.game-feedback-particles span:nth-child(5){background:var(--coral);animation:.98s ease-out 30ms forwards particle-arc-5}.game-feedback-particles span:nth-child(6){background:var(--amber);animation:1.08s ease-out 70ms forwards particle-arc-6}.game-feedback-particles span:nth-child(7){background:var(--teal);animation:1.04s ease-out 40ms forwards particle-arc-7}.game-feedback-particles span:nth-child(8){animation:1.12s ease-out 50ms forwards particle-arc-8}.loading-panel{text-align:center;place-items:center;gap:14px;min-height:260px;display:grid}@media (width<=900px){.home-grid,.setup-layout,.dashboard-grid{grid-template-columns:1fr}.clue-setup-panel{grid-column:auto}.clue-setup-panel>.clue-editor-list{grid-template-columns:1fr}.home-grid{min-height:auto}.host-hero{grid-template-columns:minmax(0,1fr) auto}.qr-box{grid-column:1/-1;justify-self:start}.host-actions{justify-content:flex-end}}@media (width<=640px){.app-main{padding:14px}.app-header{min-height:64px;padding:10px 14px}.home-panel{min-height:260px}.field-grid,.host-editor-row{grid-template-columns:1fr}.host-hero,.player-top{grid-template-columns:1fr auto}.qr-box{width:132px;height:132px}.host-clue-button,.player-clue{grid-template-columns:auto minmax(0,1fr)}.clue-state,.player-clue-action{grid-column:2;justify-content:flex-start;min-width:0}.sticky-actions,.host-actions{align-items:stretch}.sticky-actions .button,.host-actions .button{flex:140px}.submission-row{grid-template-columns:auto minmax(0,1fr)}.submission-row em,.submission-row time{grid-column:2}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@keyframes live-dot{0%,to{transform:scale(1);box-shadow:0 0 #1f8f515c}50%{transform:scale(1.14);box-shadow:0 0 0 6px #1f8f5100}}@keyframes penalty-tick{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes card-deal{0%{opacity:0;transform:translateY(14px)rotate(-.8deg)scale(.98)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}@keyframes solved-settle{0%{transform:scale(1)}45%{transform:scale(1.012)}to{transform:scale(1)}}@keyframes score-row-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes submission-slide{0%{opacity:0;transform:translateY(-10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes correct-glow{0%{box-shadow:0 0 #1f8f5100}35%{box-shadow:0 0 0 5px #1f8f5121,0 16px 32px #1f8f512e}to{box-shadow:0 0 #1f8f5100}}@keyframes soft-red-bump{0%,to{transform:translate(0)}30%{transform:translate(-4px)}60%{transform:translate(3px)}}@keyframes stage-hide{0%,72%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes arcade-score-pop{0%{opacity:0;transform:translateY(28px)rotate(-7deg)scale(.48)}42%{opacity:1;transform:translateY(-4px)rotate(-4deg)scale(1.12)}to{opacity:0;transform:translateY(-76px)rotate(3deg)scale(.98)}}@keyframes feedback-glow{0%{opacity:0;transform:scale(.42)rotate(0)}38%{opacity:1;transform:scale(1)rotate(16deg)}to{opacity:0;transform:scale(1.22)rotate(32deg)}}@keyframes particle-arc-1{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}25%{opacity:1}to{opacity:0;transform:translate(calc(-50% - 132px),calc(-50% - 96px))scale(1)rotate(170deg)}}@keyframes particle-arc-2{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}25%{opacity:1}to{opacity:0;transform:translate(calc(118px - 50%),calc(-50% - 126px))scale(.95)rotate(220deg)}}@keyframes particle-arc-3{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}25%{opacity:1}to{opacity:0;transform:translate(calc(154px - 50%),calc(30px - 50%))scale(.9)rotate(150deg)}}@keyframes particle-arc-4{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}25%{opacity:1}to{opacity:0;transform:translate(calc(-50% - 112px),calc(104px - 50%))scale(1.05)rotate(260deg)}}@keyframes particle-arc-5{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}25%{opacity:1}to{opacity:0;transform:translate(calc(-50% - 28px),calc(-50% - 154px))scale(.85)rotate(140deg)}}@keyframes particle-arc-6{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}25%{opacity:1}to{opacity:0;transform:translate(calc(42px - 50%),calc(146px - 50%))scale(.9)rotate(210deg)}}@keyframes particle-arc-7{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}25%{opacity:1}to{opacity:0;transform:translate(calc(184px - 50%),calc(-50% - 46px))scale(.95)rotate(180deg)}}@keyframes particle-arc-8{0%{opacity:0;transform:translate(-50%,-50%)scale(.3)rotate(0)}25%{opacity:1}to{opacity:0;transform:translate(calc(-50% - 168px),calc(10px - 50%))scale(.95)rotate(230deg)}}@keyframes result-in{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes wrong-nudge{0%,to{transform:translate(0)}28%{transform:translate(-5px)}56%{transform:translate(4px)}}@keyframes score-pop{0%{transform:scale(1)}38%{color:var(--green);background:#1f8f5129;transform:scale(1.12)}to{transform:scale(1)}}@keyframes clue-correct-pop{0%{transform:scale(.985)}42%{transform:scale(1.018)}to{transform:scale(1)}}@keyframes clue-wrong-shake{0%,to{transform:translate(0)}22%{transform:translate(-6px)}48%{transform:translate(5px)}72%{transform:translate(-3px)}}@keyframes shine-pass{to{transform:translate(120%)}}@keyframes burst-a{0%{opacity:0;transform:translate(0)rotate(18deg)scale(.5)}35%{opacity:.95}to{opacity:0;transform:translate(-22px,-34px)rotate(18deg)scale(1)}}@keyframes burst-b{0%{opacity:0;transform:translate(0)rotate(64deg)scale(.5)}35%{opacity:.9}to{opacity:0;transform:translate(18px,-42px)rotate(64deg)scale(1)}}@keyframes burst-c{0%{opacity:0;transform:translate(0)rotate(112deg)scale(.5)}35%{opacity:.85}to{opacity:0;transform:translate(28px,28px)rotate(112deg)scale(1)}}@keyframes burst-d{0%{opacity:0;transform:translate(0)rotate(38deg)scale(.5)}35%{opacity:.9}to{opacity:0;transform:translate(20px,-38px)rotate(38deg)scale(1)}}@keyframes burst-e{0%{opacity:0;transform:translate(0)rotate(82deg)scale(.5)}35%{opacity:.85}to{opacity:0;transform:translate(-18px,30px)rotate(82deg)scale(1)}}@keyframes burst-f{0%{opacity:0;transform:translate(0)rotate(128deg)scale(.5)}35%{opacity:.9}to{opacity:0;transform:translate(-28px,-30px)rotate(128deg)scale(1)}}
