.pwa-update-banner[data-v-647d3cd0]{border-radius:var(--border-radius-lg);border:1px solid var(--color-border-strong);-webkit-backdrop-filter:blur(16px);color:var(--color-text);z-index:50;background:#131315eb;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 1.25rem 2.5rem #00000073}.pwa-update-banner__text[data-v-647d3cd0]{color:var(--color-text-secondary);font-size:.84375rem}.banner-button[data-v-647d3cd0]{border-radius:var(--border-radius-pill);background:var(--color-accent);min-height:2.5rem;color:var(--color-accent-contrast);font:inherit;border:none;padding:.4rem .9rem;font-size:.8125rem;font-weight:600}.banner-button.secondary[data-v-647d3cd0]{color:var(--color-muted);border:1px solid var(--color-border-strong);background:0 0}.install-banner[data-v-58d994ef]{border-radius:var(--border-radius-lg);border:1px solid var(--color-border-strong);-webkit-backdrop-filter:blur(16px);width:min(22rem,92vw);color:var(--color-text);z-index:60;background:#131315eb;padding:1.125rem 1.25rem;position:fixed;bottom:1rem;left:50%;transform:translate(-50%);box-shadow:0 1.25rem 2.5rem #00000073}.install-banner__title[data-v-58d994ef]{margin:0 0 .5rem;font-size:.9375rem;font-weight:600}.install-banner__steps[data-v-58d994ef]{color:var(--color-text-secondary);margin:0 0 .75rem;padding-left:1.125rem;font-size:.8125rem;line-height:1.5}.install-banner__actions[data-v-58d994ef]{align-items:center;gap:.75rem;display:flex}.banner-button[data-v-58d994ef]{border-radius:var(--border-radius-pill);background:var(--color-accent);min-height:2.5rem;color:var(--color-accent-contrast);border:none;padding:.4rem 1.125rem;font-size:.875rem;font-weight:600}.banner-link[data-v-58d994ef]{min-height:auto;color:var(--color-muted);background:0 0;border:none;font-size:.8125rem}.bottom-nav[data-v-bef9bd8b]{z-index:40;padding:.625rem .5rem calc(env(safe-area-inset-bottom,0px) + 1rem);border-top:1px solid var(--color-border);-webkit-backdrop-filter:blur(20px);background:#0b0b0cf0;display:flex;position:fixed;bottom:0;left:0;right:0}.tab[data-v-bef9bd8b]{min-height:var(--touch-target-min);color:var(--color-faint);background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.375rem;padding:.4rem .2rem;display:flex}.tab-icon[data-v-bef9bd8b]{width:1.375rem;height:1.375rem}.tab.active[data-v-bef9bd8b]{color:var(--color-accent)}.tab-label[data-v-bef9bd8b]{letter-spacing:-.01em;text-align:center;font-size:.65625rem;font-weight:500;line-height:1.1}.app-shell[data-v-a45eab5f]{background:var(--color-bg);min-height:100dvh;color:var(--color-text);flex-direction:column;display:flex}.app-content[data-v-a45eab5f]{flex-direction:column;flex:1;min-height:0;display:flex}.app-content.has-nav[data-v-a45eab5f]{padding-bottom:5.5rem}:root{--font-family-base:"Poppins", system-ui, -apple-system, "Segoe UI", sans-serif;--font-size-base:1rem;--font-size-small:.875rem;--font-size-large:1.5rem;--touch-target-min:3rem;--border-radius-sm:.875rem;--border-radius-base:1.25rem;--border-radius-lg:1.625rem;--border-radius-xl:1.875rem;--border-radius-pill:999px;--spacing-unit:.5rem;--color-bg:#0b0b0c;--color-surface:#131315;--color-surface-alt:#151517;--color-surface-raised:#1d1d20;--color-primary:#1d1d20;--color-accent:#3ecfa0;--color-accent-hover:#57dcb1;--color-accent-contrast:#0b0b0c;--color-text:#f2f2f0;--color-text-secondary:#f2f2f0b8;--color-muted:#f2f2f080;--color-faint:#f2f2f061;--color-border:#ffffff14;--color-border-strong:#ffffff24;--color-success:#3ecfa0;--color-success-bg:#3ecfa024;--color-warning:#f2c46b;--color-warning-bg:#f2c46b24;--color-error:#ff6b6b;--color-error-bg:#ff6b6b24}*,:before,:after{box-sizing:border-box}html,body{min-height:100%;margin:0}body{font-family:var(--font-family-base);font-size:var(--font-size-base);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased}button{font:inherit;min-height:var(--touch-target-min);cursor:pointer}a{color:var(--color-accent)}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
