@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;700&display=swap";:root{--bq-bg-deep: #12161f;--bq-bg-1: #181e2d;--bq-bg-2: #1f273e;--bq-bg-3: #29364e;--bq-glass: rgba(31, 39, 62, .7);--bq-border-1: #2c3a54;--bq-border-2: #3e5070;--bq-border-glow: rgba(46, 196, 228, .5);--bq-fg-1: #f7f5f0;--bq-fg-2: #bdc0cc;--bq-fg-3: #858998;--bq-fg-4: #5d6271;--bq-cyan: #2ec4e4;--bq-cyan-deep: #009cc4;--bq-cyan-glow: #71e0ee;--bq-gold: #dcc550;--bq-gold-deep: #b1961e;--bq-magenta: #de77c3;--bq-clean: #69c475;--bq-clean-soft: #273c3a;--bq-warn: #d4bd4d;--bq-warn-soft: #3a3b33;--bq-reject: #e06750;--bq-reject-soft: #3c2c33;--bq-info: var(--bq-cyan);--bq-info-soft: #1b3547;--bq-rarity-common: #aaadbc;--bq-rarity-rare: #53b0da;--bq-rarity-epic: #b072de;--bq-rarity-legendary: #dcc550;--bq-font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;--bq-font-body: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--bq-font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--bq-text-xs: 11px;--bq-lh-xs: 14px;--bq-text-sm: 13px;--bq-lh-sm: 18px;--bq-text-md: 15px;--bq-lh-md: 22px;--bq-text-lg: 17px;--bq-lh-lg: 24px;--bq-text-xl: 22px;--bq-lh-xl: 28px;--bq-text-2xl: 28px;--bq-lh-2xl: 32px;--bq-text-3xl: 40px;--bq-lh-3xl: 44px;--bq-text-stat: 72px;--bq-lh-stat: 72px;--bq-tracking-tight: -.02em;--bq-tracking-normal: 0;--bq-tracking-wide: .04em;--bq-tracking-eyebrow: .18em;--bq-space-1: 4px;--bq-space-2: 8px;--bq-space-3: 12px;--bq-space-4: 16px;--bq-space-5: 20px;--bq-space-6: 24px;--bq-space-8: 32px;--bq-space-10: 40px;--bq-space-12: 48px;--bq-space-16: 64px;--bq-radius-xs: 4px;--bq-radius-sm: 8px;--bq-radius-md: 12px;--bq-radius-lg: 16px;--bq-radius-xl: 22px;--bq-radius-pill: 999px;--bq-shadow-card: 0 1px 0 0 rgba(255,255,255,.04) inset, 0 12px 32px -16px rgba(0,0,0,.6);--bq-shadow-pop: 0 1px 0 0 rgba(255,255,255,.06) inset, 0 24px 48px -16px rgba(0,0,0,.7);--bq-shadow-inset: inset 0 1px 0 rgba(255,255,255,.05);--bq-glow-cyan: 0 0 0 1px rgba(46,196,228,.5), 0 0 32px -4px rgba(46,196,228,.4);--bq-glow-gold: 0 0 0 1px rgba(220,197,80,.5), 0 0 32px -4px rgba(220,197,80,.4);--bq-ease-snap: cubic-bezier(.2, .8, .2, 1);--bq-ease-pop: cubic-bezier(.34, 1.56, .64, 1);--bq-ease-out: cubic-bezier(.16, 1, .3, 1);--bq-dur-fast: .12s;--bq-dur-base: .22s;--bq-dur-slow: .42s;--bq-dur-celebrate: .72s;--bq-bg-quest: radial-gradient(120% 80% at 50% -10%, #173542 0%, #12161f 50%, #12161f 100%);--bq-bg-celebrate: radial-gradient(80% 60% at 50% 30%, #4b472c 0%, #12161f 70%)}@supports (color: oklch(0 0 0)){:root{--bq-bg-deep: oklch(14% .018 252);--bq-bg-1: oklch(19% .022 252);--bq-bg-2: oklch(24% .028 252);--bq-bg-3: oklch(30% .032 252);--bq-border-1: oklch(32% .035 252);--bq-border-2: oklch(42% .045 252);--bq-fg-1: oklch(97% .008 90);--bq-fg-2: oklch(78% .015 250);--bq-fg-3: oklch(58% .02 250);--bq-fg-4: oklch(42% .025 250);--bq-cyan: oklch(78% .16 205);--bq-cyan-deep: oklch(60% .18 220);--bq-cyan-glow: oklch(85% .18 200);--bq-gold: oklch(82% .155 85);--bq-gold-deep: oklch(65% .155 75);--bq-magenta: oklch(70% .22 340);--bq-clean: oklch(74% .17 148);--bq-warn: oklch(80% .155 78);--bq-reject: oklch(66% .205 25);--bq-rarity-common: oklch(72% .02 250);--bq-rarity-rare: oklch(72% .16 240);--bq-rarity-epic: oklch(68% .22 305);--bq-rarity-legendary: oklch(82% .155 85);--bq-shadow-card: 0 1px 0 0 oklch(100% 0 0 / .04) inset, 0 12px 32px -16px oklch(0% 0 0 / .6);--bq-shadow-pop: 0 1px 0 0 oklch(100% 0 0 / .06) inset, 0 24px 48px -16px oklch(0% 0 0 / .7);--bq-shadow-inset: inset 0 1px 0 oklch(100% 0 0 / .05)}}@supports (color: color-mix(in oklab,red,blue)){:root{--bq-glass: color-mix(in oklab, var(--bq-bg-2) 70%, transparent);--bq-border-glow: color-mix(in oklab, var(--bq-cyan) 50%, transparent);--bq-clean-soft: color-mix(in oklab, var(--bq-clean) 18%, var(--bq-bg-1));--bq-warn-soft: color-mix(in oklab, var(--bq-warn) 18%, var(--bq-bg-1));--bq-reject-soft: color-mix(in oklab, var(--bq-reject) 18%, var(--bq-bg-1));--bq-info-soft: color-mix(in oklab, var(--bq-cyan) 14%, var(--bq-bg-1));--bq-glow-cyan: 0 0 0 1px var(--bq-border-glow), 0 0 32px -4px color-mix(in oklab, var(--bq-cyan) 40%, transparent);--bq-glow-gold: 0 0 0 1px color-mix(in oklab, var(--bq-gold) 50%, transparent), 0 0 32px -4px color-mix(in oklab, var(--bq-gold) 40%, transparent);--bq-bg-quest: radial-gradient(120% 80% at 50% -10%, color-mix(in oklab, var(--bq-cyan) 18%, var(--bq-bg-deep)) 0%, var(--bq-bg-deep) 50%, var(--bq-bg-deep) 100%);--bq-bg-celebrate: radial-gradient(80% 60% at 50% 30%, color-mix(in oklab, var(--bq-gold) 28%, var(--bq-bg-deep)) 0%, var(--bq-bg-deep) 70%)}}.bq-display{font-family:var(--bq-font-display);font-weight:700;letter-spacing:var(--bq-tracking-tight);color:var(--bq-fg-1)}.bq-h1{font:700 var(--bq-text-3xl)/var(--bq-lh-3xl) var(--bq-font-display);letter-spacing:var(--bq-tracking-tight);color:var(--bq-fg-1)}.bq-h2{font:700 var(--bq-text-2xl)/var(--bq-lh-2xl) var(--bq-font-display);letter-spacing:var(--bq-tracking-tight);color:var(--bq-fg-1)}.bq-h3{font:600 var(--bq-text-xl)/var(--bq-lh-xl) var(--bq-font-display);letter-spacing:var(--bq-tracking-tight);color:var(--bq-fg-1)}.bq-lead{font:500 var(--bq-text-lg)/var(--bq-lh-lg) var(--bq-font-body);color:var(--bq-fg-2)}.bq-body{font:400 var(--bq-text-md)/var(--bq-lh-md) var(--bq-font-body);color:var(--bq-fg-1)}.bq-small{font:400 var(--bq-text-sm)/var(--bq-lh-sm) var(--bq-font-body);color:var(--bq-fg-2)}.bq-label{font:600 var(--bq-text-xs)/var(--bq-lh-xs) var(--bq-font-body);letter-spacing:var(--bq-tracking-eyebrow);text-transform:uppercase;color:var(--bq-fg-3)}.bq-stat{font-family:var(--bq-font-display);font-weight:700;font-size:var(--bq-text-stat);line-height:var(--bq-lh-stat);letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--bq-fg-1)}.bq-mono{font-family:var(--bq-font-mono);font-variant-numeric:tabular-nums;letter-spacing:0}.bq-root,.bq-root *{box-sizing:border-box}.bq-root{background:var(--bq-bg-deep);color:var(--bq-fg-1);font-family:var(--bq-font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body,#root{min-height:100%;margin:0}body{background:radial-gradient(700px 360px at 50% -120px,rgba(46,196,228,.14),transparent 70%),#12161f;background:radial-gradient(700px 360px at 50% -120px,color-mix(in oklab,var(--bq-cyan) 14%,transparent),transparent 70%),var(--bq-bg-deep);color:var(--bq-fg-1);font-family:var(--bq-font-body)}button,input,select,textarea{font:inherit}button{-webkit-tap-highlight-color:transparent}.app-page{min-height:100vh;display:grid;place-items:center;padding:24px}.phone-shell{width:min(100%,430px);height:min(100vh - 32px,880px);min-height:720px;border-radius:34px;overflow:hidden;background:var(--bq-bg-quest);border:1px solid var(--bq-border-1);box-shadow:0 30px 90px -40px #000c,var(--bq-shadow-inset);display:flex;flex-direction:column}.screen-scroll{flex:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--bq-border-2) transparent}.screen{padding-bottom:24px}.top-header{height:56px;padding:10px 16px;display:grid;grid-template-columns:40px 1fr 40px;align-items:center}.top-header__title{text-align:center;font:600 17px/20px var(--bq-font-display);letter-spacing:-.01em}.section{padding:8px 16px}.section-tight{padding:4px 16px 12px}.eyebrow{font:600 var(--bq-text-xs) / var(--bq-lh-xs) var(--bq-font-body);letter-spacing:var(--bq-tracking-eyebrow);text-transform:uppercase;color:var(--bq-fg-3)}.card{background:var(--bq-bg-2);border:1px solid var(--bq-border-1);border-radius:var(--bq-radius-lg);box-shadow:var(--bq-shadow-card),var(--bq-shadow-inset);padding:18px}.card--cyan{box-shadow:var(--bq-glow-cyan),var(--bq-shadow-inset)}.card--gold{box-shadow:var(--bq-glow-gold),var(--bq-shadow-inset)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:13px 18px;border-radius:var(--bq-radius-md);border:1px solid transparent;cursor:pointer;font:600 15px/1 var(--bq-font-body);transition:transform var(--bq-dur-fast) var(--bq-ease-snap),background var(--bq-dur-fast)}.button:active{transform:scale(.97)}.button--primary{background:var(--bq-cyan);color:#0b0f14}.button--secondary{background:var(--bq-bg-2);border-color:var(--bq-border-1);color:var(--bq-fg-1)}.button--ghost{background:transparent;color:var(--bq-fg-2)}.button--full{width:100%}.icon-button{width:36px;height:36px;border-radius:var(--bq-radius-pill);display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--bq-border-1);color:var(--bq-fg-2);cursor:pointer}.tabbar{height:80px;display:grid;grid-template-columns:repeat(4,1fr);padding:10px 8px 22px;background:var(--bq-glass);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--bq-border-1)}.tabbar button{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 4px;background:transparent;border:0;color:var(--bq-fg-3);cursor:pointer;font:600 10px/12px var(--bq-font-body);letter-spacing:.14em;text-transform:uppercase}.tabbar button.active{color:var(--bq-cyan)}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--bq-radius-pill);font:600 11px/14px var(--bq-font-body);letter-spacing:.14em;text-transform:uppercase}.status-pill:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}.status-pill--info{background:var(--bq-info-soft);color:var(--bq-cyan);border:1px solid rgba(46,196,228,.3);border:1px solid color-mix(in oklab,var(--bq-cyan) 30%,transparent)}.status-pill--clean{background:var(--bq-clean-soft);color:var(--bq-clean);border:1px solid rgba(105,196,117,.3);border:1px solid color-mix(in oklab,var(--bq-clean) 30%,transparent)}.status-pill--warn{background:var(--bq-warn-soft);color:var(--bq-warn);border:1px solid rgba(212,189,77,.3);border:1px solid color-mix(in oklab,var(--bq-warn) 30%,transparent)}.status-pill--reject{background:var(--bq-reject-soft);color:var(--bq-reject);border:1px solid rgba(224,103,80,.3);border:1px solid color-mix(in oklab,var(--bq-reject) 30%,transparent)}.asset-img{display:block;max-width:100%}.exercise-img{filter:invert(82%) sepia(28%) saturate(540%) hue-rotate(155deg)}.list-row{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:12px 14px;border-radius:14px;background:var(--bq-bg-2);border:1px solid var(--bq-border-1);color:inherit;text-align:left;box-shadow:var(--bq-shadow-inset)}.list-row--button{cursor:pointer}.list-row--button:active{transform:scale(.99)}.list-row--active{border-color:#2d7f9c;border-color:color-mix(in oklab,var(--bq-cyan) 50%,var(--bq-border-1));box-shadow:var(--bq-glow-cyan)}.stat-number{font-family:var(--bq-font-display);font-weight:700;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.auth-panel{width:min(100%,430px);display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:7px}.field input,.field select,.field textarea{width:100%;box-sizing:border-box;padding:13px 14px;border-radius:var(--bq-radius-sm);border:1px solid var(--bq-border-1);background:var(--bq-bg-1);color:var(--bq-fg-1);outline:none}.field textarea{min-height:96px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:var(--bq-glow-cyan)}.camera-panel{min-height:420px;margin:8px 16px;border-radius:22px;background:linear-gradient(180deg,#192131,#0e1422);background:linear-gradient(180deg,#0f171f,#02060d);border:1px solid var(--bq-border-1);box-shadow:var(--bq-shadow-inset);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.camera-preview{width:100%;max-height:280px;aspect-ratio:9 / 16;object-fit:cover;border-radius:18px;background:var(--bq-bg-deep);border:1px solid var(--bq-border-1)}.progress-track{width:100%;height:8px;overflow:hidden;border-radius:var(--bq-radius-pill);background:var(--bq-bg-1);border:1px solid var(--bq-border-1)}.progress-fill{height:100%;border-radius:inherit;background:var(--bq-cyan);box-shadow:var(--bq-glow-cyan);transition:width var(--bq-dur-med) var(--bq-ease-standard)}.spinner{width:48px;height:48px;border-radius:999px;border:3px solid var(--bq-border-1);border-top-color:var(--bq-cyan);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes medal-glow-rare{0%,to{filter:drop-shadow(0 0 4px rgba(124,215,232,.3))}50%{filter:drop-shadow(0 0 12px rgba(124,215,232,.85))}}@keyframes medal-glow-epic{0%,to{filter:drop-shadow(0 0 5px rgba(213,136,240,.35))}50%{filter:drop-shadow(0 0 16px rgba(213,136,240,.95))}}@media(max-width:520px){.app-page{padding:0}.phone-shell{width:100%;height:100vh;min-height:100vh;border-radius:0;border:0}}.recording-instructions{background:var(--bq-bg-2);border:1px solid var(--bq-border-1);border-radius:var(--bq-radius-lg);box-shadow:var(--bq-shadow-card),var(--bq-shadow-inset)}.recording-instructions--result{border-color:var(--bq-border-2)}.recording-instructions__summary{width:100%;display:flex;align-items:center;gap:8px;padding:13px 16px;background:transparent;border:0;color:var(--bq-fg-2);cursor:pointer;font:600 13px/18px var(--bq-font-body);text-align:left}.recording-instructions__summary:hover{color:var(--bq-fg-1)}.recording-instructions__chevron{margin-left:auto;transition:transform var(--bq-dur-base) var(--bq-ease-snap);flex-shrink:0}.recording-instructions--open .recording-instructions__chevron{transform:rotate(180deg)}.recording-instructions__body{padding:0 16px 16px;display:flex;flex-direction:column;gap:12px}.recording-instructions__diagram{display:flex;justify-content:center}.recording-instructions__diagram-img{max-width:240px;width:100%;height:auto;opacity:.8}.recording-instructions__badges{display:flex;flex-wrap:wrap;gap:6px}.recording-instructions__badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--bq-radius-pill);font:500 11px/16px var(--bq-font-body);background:var(--bq-bg-3);border:1px solid var(--bq-border-1);color:var(--bq-fg-2)}.recording-instructions__badge--wide{width:100%}.recording-instructions__steps{margin:0;padding:0 0 0 20px;display:flex;flex-direction:column;gap:5px;font:400 13px/18px var(--bq-font-body);color:var(--bq-fg-1)}.recording-instructions__steps li{padding-left:2px}.recording-instructions__mistakes-label{display:flex;align-items:center;gap:6px;margin-bottom:6px;font:600 10px/14px var(--bq-font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--bq-warn)}.recording-instructions__mistakes{margin:0;padding:0 0 0 18px;display:flex;flex-direction:column;gap:4px;font:400 12px/17px var(--bq-font-body);color:var(--bq-fg-2)}.ach-group{padding:6px 16px}.ach-group__header{width:100%;display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--bq-bg-2);border:1px solid var(--bq-border-1);border-radius:var(--bq-radius-lg);box-shadow:var(--bq-shadow-inset);cursor:pointer;text-align:left;color:inherit;transition:border-color var(--bq-dur-base),box-shadow var(--bq-dur-base)}.ach-group__header:hover{border-color:var(--bq-border-2)}.ach-group__header:active{transform:scale(.99)}.ach-group__header--complete{border-color:#dcc55066;border-color:color-mix(in oklab,var(--bq-gold) 40%,var(--bq-border-1));box-shadow:var(--bq-glow-gold),var(--bq-shadow-inset)}.ach-group__info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.ach-group__title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ach-group__title{font:600 15px/20px var(--bq-font-display);color:var(--bq-fg-1);letter-spacing:-.01em}.ach-group__count{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--bq-radius-pill);font:700 12px/18px var(--bq-font-body);letter-spacing:.04em;background:color-mix(in oklab,var(--bq-accent) 12%,var(--bq-bg-3));border:1px solid color-mix(in oklab,var(--bq-accent) 30%,transparent);color:var(--bq-accent)}.ach-group__count--complete{color:var(--bq-gold);background:#dcc5501a;background:color-mix(in oklab,var(--bq-gold) 12%,var(--bq-bg-2));border-color:#dcc5504d;border-color:color-mix(in oklab,var(--bq-gold) 30%,transparent)}.ach-group__desc{font:400 12px/16px var(--bq-font-body);color:var(--bq-fg-3)}.ach-group__chevron{flex-shrink:0;color:var(--bq-fg-3);transition:transform var(--bq-dur-base) var(--bq-ease-snap)}.ach-group__header--open .ach-group__chevron{transform:rotate(180deg)}.ach-group__body{display:flex;flex-direction:column;gap:8px;padding-top:8px}
