.ui-shell{--ui-color-canvas:#f8fafc;--ui-color-canvas-strong:#e2e8f0;--ui-color-surface:#fff;--ui-color-surface-muted:#f8fafc;--ui-color-border:#94a3b866;--ui-color-border-soft:#94a3b833;--ui-color-text:#0f172a;--ui-color-text-muted:#64748b;--ui-color-text-subtle:#475569;--ui-color-accent:#6366f1;--ui-color-accent-contrast:#fff;--ui-color-ghost-foreground:#4338ca;--ui-color-primary-from:#4f46e5;--ui-color-primary-to:#7c3aed;--ui-color-cta:#f59e0b;--ui-color-cta-strong:#d97706;--ui-color-cta-foreground:#451a03;--ui-color-danger:#b91c1c;--ui-color-danger-bg:#ef444414;--ui-color-danger-border:#ef44444d;--ui-color-danger-solid:#b91c1c;--ui-color-danger-solid-strong:#991b1b;--ui-color-danger-solid-contrast:#fff;--ui-color-focus-ring:#6366f1;--ui-color-secondary-border:#64748b;--ui-shadow-sm:0 6px 16px #0f172a1f;--ui-shadow-md:0 12px 30px #0f172a14;--ui-space-1:4px;--ui-space-2:8px;--ui-space-3:12px;--ui-space-4:16px;--ui-space-5:24px;--ui-space-6:32px;--ui-space-7:48px;--ui-radius-sm:10px;--ui-radius-md:14px;--ui-radius-lg:20px;--ui-radius-pill:999px;--ui-font-family:"Fredoka", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ui-motion-fast:.15s;--ui-motion-base:.2s;--ui-motion-ease:cubic-bezier(.22, 1, .36, 1);--ui-touch-target:44px;background:var(--ui-color-canvas);min-height:100dvh;color:var(--ui-color-text);font-family:var(--ui-font-family)}.ui-shell.ui-theme-dark{--ui-color-canvas:#0f172a;--ui-color-canvas-strong:#1e293b;--ui-color-surface:#0f172a99;--ui-color-surface-muted:#0f172ad9;--ui-color-border:#94a3b866;--ui-color-border-soft:#94a3b833;--ui-color-text:#e2e8f0;--ui-color-text-muted:#94a3b8;--ui-color-text-subtle:#cbd5e1;--ui-color-accent-contrast:#fff;--ui-color-ghost-foreground:#a5b4fc;--ui-color-danger:#fca5a5;--ui-color-danger-bg:#f871711f;--ui-color-danger-border:#f8717159;--ui-color-focus-ring:#9be7ff;--ui-color-secondary-border:#94a3b8;--ui-shadow-sm:0 8px 20px #02061766;--ui-shadow-md:0 16px 40px #02061780}.ui-btn{justify-content:center;align-items:center;gap:var(--ui-space-2);min-height:var(--ui-touch-target);min-width:var(--ui-touch-target);padding:0 var(--ui-space-5);border-radius:var(--ui-radius-pill);color:var(--ui-color-text);background:var(--ui-color-surface-muted);font-family:var(--ui-font-family);cursor:pointer;touch-action:manipulation;transition:background var(--ui-motion-base) var(--ui-motion-ease), border-color var(--ui-motion-base) var(--ui-motion-ease), box-shadow var(--ui-motion-base) var(--ui-motion-ease), transform var(--ui-motion-fast) var(--ui-motion-ease), opacity var(--ui-motion-fast) linear;border:1px solid #0000;font-size:14px;font-weight:700;line-height:1;display:inline-flex}.ui-btn--sm{padding:0 var(--ui-space-4);gap:var(--ui-space-1);font-size:12px}.ui-btn--primary{color:var(--ui-color-accent-contrast);background:linear-gradient(135deg, var(--ui-color-primary-from), var(--ui-color-primary-to));box-shadow:var(--ui-shadow-sm);border-color:#0000}.ui-btn--secondary{border-color:var(--ui-color-secondary-border);color:var(--ui-color-text-subtle);background:var(--ui-color-surface)}.ui-btn--accent{color:var(--ui-color-cta-foreground);background:linear-gradient(135deg, var(--ui-color-cta), var(--ui-color-cta-strong));box-shadow:var(--ui-shadow-sm);border-color:#0000}.ui-btn--ghost{border-color:var(--ui-color-accent);color:var(--ui-color-ghost-foreground);background:0 0}.ui-btn--danger{color:var(--ui-color-danger-solid-contrast);background:linear-gradient(135deg, var(--ui-color-danger-solid), var(--ui-color-danger-solid-strong));box-shadow:var(--ui-shadow-sm);border-color:#0000}.ui-btn:hover:not(:disabled){transform:translateY(-1px)}.ui-btn--secondary:hover:not(:disabled),.ui-btn--ghost:hover:not(:disabled){background:var(--ui-color-surface-muted)}.ui-btn:active:not(:disabled){transform:translateY(1px)scale(.98)}.ui-btn:focus-visible{outline:3px solid var(--ui-color-focus-ring);outline-offset:2px}.ui-btn:disabled{cursor:not-allowed;opacity:.5;box-shadow:none;transform:none}@media (prefers-reduced-motion:reduce){.ui-btn{transition:none}.ui-btn:hover:not(:disabled),.ui-btn:active:not(:disabled){transform:none}}.ui-card{background:var(--ui-color-surface);border:1px solid var(--ui-color-border-soft);border-radius:var(--ui-radius-lg);box-shadow:var(--ui-shadow-md);padding:var(--ui-space-6) var(--ui-space-5)}.ui-card--padding-none{padding:0}.ui-card--padding-md{padding:var(--ui-space-4)}.ui-back-link{align-items:center;gap:var(--ui-space-1);min-height:var(--ui-touch-target);padding:0 var(--ui-space-2);border-radius:var(--ui-radius-sm);color:var(--ui-color-text-muted);transition:color var(--ui-motion-base) var(--ui-motion-ease), background var(--ui-motion-base) var(--ui-motion-ease);font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.ui-back-link:hover{color:var(--ui-color-text);background:var(--ui-color-surface-muted)}.ui-back-link:focus-visible{outline:3px solid var(--ui-color-focus-ring);outline-offset:2px}.ui-back-link__icon{font-size:15px}.ui-page-header{margin-bottom:var(--ui-space-5)}.ui-page-header--row{justify-content:space-between;align-items:center;gap:var(--ui-space-4);display:flex}.ui-page-header--stacked .ui-page-header__back{margin:0 0 var(--ui-space-3) calc(var(--ui-space-2) * -1);display:inline-flex}.ui-page-header__title{color:var(--ui-color-text);letter-spacing:-.01em;margin:0;font-size:22px;font-weight:700}@media (prefers-reduced-motion:reduce){.ui-back-link{transition:none}}.ui-state-panel{align-items:flex-start;gap:var(--ui-space-3);padding:var(--ui-space-4) var(--ui-space-5);border:1px solid var(--ui-color-border-soft);border-radius:var(--ui-radius-md);background:var(--ui-color-surface-muted);color:var(--ui-color-text);display:flex}.ui-state-panel--full-page{min-height:var(--quest-viewport-height,100dvh);align-content:center;justify-items:center;gap:var(--ui-space-2);padding:var(--ui-space-6);background:var(--ui-color-canvas);text-align:center;border:0;border-radius:0;grid-auto-flow:row;display:grid}.ui-state-panel--full-page .ui-state-panel__spinner{margin:0 0 var(--ui-space-2)}.ui-state-panel--error{border-color:var(--ui-color-danger-border);background:var(--ui-color-danger-bg);color:var(--ui-color-danger)}.ui-state-panel__copy{min-width:0}.ui-state-panel__title{margin:0;font-size:1rem;font-weight:700}.ui-state-panel--full-page .ui-state-panel__title{font-size:1.4rem}.ui-state-panel__description{color:var(--ui-color-text-muted);margin:4px 0 0;font-size:13px;line-height:1.4}.ui-state-panel--error .ui-state-panel__description{color:inherit;opacity:.85}.ui-state-panel__spinner{border:3px solid var(--ui-color-border);border-top-color:var(--ui-color-accent);border-radius:50%;flex:none;width:22px;height:22px;margin-top:2px;animation:.8s linear infinite ui-state-panel-spin}@keyframes ui-state-panel-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.ui-state-panel__spinner{border-top-color:var(--ui-color-border);animation:none}}.ui-modal-overlay.ui-shell{z-index:1000;padding:var(--ui-space-4);background:#0f172a8c;place-items:center;min-height:0;display:grid;position:fixed;inset:0}.ui-modal-panel{outline:none;width:100%;max-width:min(92vw,480px);max-height:min(92vh,640px);overflow-y:auto}body.ui-modal-open{overflow:hidden}@media (prefers-reduced-motion:reduce){.ui-modal-overlay,.ui-modal-panel,.ui-modal-panel *{transition-duration:.001ms!important;animation-duration:.001ms!important}}
