body{font-size:var(--text-body)}button,input,select,textarea{font-family:var(--font-ui)}input,textarea,select{color:var(--text)}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}input:not([type=checkbox]):not([type=radio]),select,textarea{border-color:var(--border-control);border-radius:var(--radius-control);font-size:max(16px,1em)}input[type=checkbox],input[type=radio]{accent-color:var(--action)}:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible,.hub-shell :focus-visible{outline:3px solid var(--focus);outline-offset:3px;box-shadow:none}[aria-invalid=true]{border-color:var(--error)}:disabled,[aria-disabled=true]{cursor:not-allowed}.skip-link{z-index:100;background:var(--surface-raised);color:var(--text);border-radius:var(--radius-control);padding:12px 16px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:16px}.hub-shell{background:radial-gradient(ellipse at 75% 0%, #4c8dff08, transparent 45%), var(--bg)}.hub-main{width:100%;max-width:var(--content-max);padding:var(--space-8) clamp(16px, 3vw, 48px) var(--space-12);margin-inline:auto}.desktop-sidebar{gap:var(--space-6);padding:var(--space-6) var(--space-4)}.brand-block strong{font-family:var(--font-ui)}.apocalypse-logo{width:216px;max-width:100%;height:auto;display:block}.brand-block>div{min-width:0}.brand-block .apocalypse-logo{width:180px}.apocalypse-mark{object-fit:contain;width:40px;height:40px;display:block}.topbar-identity{align-items:center;gap:var(--space-3);min-width:0;display:flex}.topbar-brand{flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;display:none}.topbar{background:var(--bg)}.topbar-copy .eyebrow{color:var(--text-muted);letter-spacing:.06em;font-weight:500}.nav-item{border-radius:var(--radius-control);font-weight:500}.nav-item.active{box-shadow:inset 2px 0 var(--accent);font-weight:650}.nav-item:hover{transform:none}.nav-coming{opacity:1;font-size:11px}.icon-button,.app-switcher select{box-shadow:none;border-color:var(--border-control);border-radius:var(--radius-control)}.mobile-more-link{border-radius:var(--radius-control)}.mobile-more-link.active{box-shadow:inset 2px 0 var(--accent)}.page-intro,.foundation-grid,.loading-stack{max-width:100%}.page-intro h1,.finance-command-header h1,.pulse-command-header h1{font-size:var(--text-title);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);font-weight:600}.ui-card,.finance-panel,.finance-section-block,.pulse-panel{box-shadow:none;border-radius:var(--radius-card)}.ui-card-tinted{background:var(--surface)}.ui-card-interactive:hover{border-color:var(--border-control);transform:none}.ui-button{border-radius:var(--radius-control);transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);font-weight:600}.ui-button:hover:not(:disabled){transform:none}.ui-button-primary:hover:not(:disabled),.google-sign-in:hover:not(:disabled){background:color-mix(in srgb, var(--action) 88%, var(--on-action))}.ui-button-secondary{border-color:var(--border-control)}.ui-button-secondary:hover:not(:disabled),.ui-button-quiet:hover:not(:disabled){background:var(--surface-raised)}.ui-button-danger:hover:not(:disabled){background:color-mix(in srgb, var(--destructive) 12%, var(--surface))}.ui-button:active:not(:disabled){box-shadow:inset 0 0 0 2px}.ui-button:disabled{opacity:.65;border-style:dashed}.ui-button[aria-busy=true]{cursor:progress}.ui-button-small{min-height:var(--control-height)}.ui-overlay::backdrop{background:#060a14b8}.ui-overlay-surface{background:var(--surface-solid);box-shadow:var(--shadow-overlay)}.ui-overlay-header{background:var(--surface-solid)}.ui-modal .ui-overlay-surface{border-radius:var(--radius-hero)}.ui-overlay[open] .ui-overlay-surface{animation:observatory-enter var(--motion-panel) var(--motion-ease)}@keyframes observatory-enter{0%{opacity:0}to{opacity:1}}.state-panel-error{border-inline-start:3px solid var(--error)}.skeleton{background:var(--surface-muted);border-radius:var(--radius-control);animation:none}.ap-status{border-radius:var(--radius-control)}.ap-status[data-state=ACTIVE]{color:var(--info);background:color-mix(in srgb, var(--info) 10%, var(--surface))}.ap-future{border-radius:var(--radius-hero);background:var(--surface)}.ap-future-orbit{opacity:.06}.vds-display,.ap-future h1,.login-card h1{font-family:var(--font-display);letter-spacing:-.025em;font-weight:400}.ap-future-scope li{border-radius:var(--radius-control)}.finance-app,.pulse-module{width:100%}.finance-app,html[data-mode=dark] .finance-app{--finance-navy:var(--text);--finance-blue:var(--accent);--finance-cyan:var(--module-secondary-dark);--finance-teal:var(--success);--finance-amber:var(--warning)}.pulse-module{--pulse-blue:var(--accent);--pulse-mint:var(--success);--pulse-lavender:var(--accent);--pulse-peach:var(--error);--pulse-yellow:var(--warning)}.finance-command-header,.pulse-command-header{min-height:0;padding:var(--space-6);border-radius:var(--radius-hero);background:var(--surface);box-shadow:none;border-color:var(--border)}.finance-hero,.finance-detail-hero{background:var(--surface-muted);color:var(--text);box-shadow:none;border:1px solid var(--border);border-radius:var(--radius-hero)}.finance-hero p,.finance-source-notice span,.finance-detail-hero span,.finance-detail-hero p{color:var(--text-muted)}.finance-hero .finance-kicker{color:var(--accent)}.finance-source-notice{background:var(--surface);border-color:var(--border)}.finance-hero .finance-source-notice strong{font-size:var(--text-sm);letter-spacing:normal;margin:0;line-height:1.5}.finance-source-status,.pulse-source-status{background:var(--surface);border-color:var(--border);border-radius:var(--radius-panel)}.finance-source-status>i,.pulse-source-status>i{background:var(--success);box-shadow:none}.finance-source-status.aging>i{background:var(--warning)}.finance-source-status.stale>i,.pulse-source-status.stale>i{background:var(--stale);box-shadow:none}.finance-navigation,.pulse-navigation{background:var(--surface);box-shadow:none;border-radius:var(--radius-panel)}.finance-navigation a.active,.pulse-navigation a.active{box-shadow:inset 0 -2px var(--accent)}.finance-metric,.pulse-metric,.pulse-streak-grid article,.pulse-insight{background:var(--surface);border-radius:var(--radius-panel)}.finance-metric>strong,.pulse-metric>strong,dd,progress{font-variant-numeric:tabular-nums}.finance-tone-blue,.finance-tone-cyan,.finance-tone-teal,.finance-tone-amber,.pulse-tone-blue,.pulse-tone-mint,.pulse-tone-lavender,.pulse-tone-peach,.pulse-tone-yellow{background:var(--surface)}.pulse-achievement-grid>article.unlocked{background:var(--surface-muted);border-color:var(--success)}.pulse-quality-list .quality-review{color:var(--warning);background:color-mix(in srgb, var(--warning) 10%, var(--surface))}.pulse-quality-list .quality-excluded{color:var(--error);background:color-mix(in srgb, var(--error) 10%, var(--surface))}.pulse-workout-row.quality-excluded{opacity:1}.pulse-day-cell.goal{border-width:2px;border-color:var(--success)}.finance-allocation-bars i,.finance-progress i,.finance-debt-chart i,.pulse-chart-column>i{background:var(--accent);border-radius:var(--radius-sm)}.finance-debt-chart,.pulse-chart{border-bottom:1px solid var(--border-control);overflow-x:auto}.chart-value{font-size:var(--text-xs);color:var(--text-muted);overflow-wrap:anywhere}.pulse-chart-column:hover>i,.pulse-chart-column:focus-visible>i{filter:none;outline:1px solid var(--text);transform:none}.chart-data{color:var(--text-muted);font-size:var(--text-xs);margin-top:16px}.chart-data summary{cursor:pointer;align-items:center;min-height:44px;display:flex}.chart-data table{border-collapse:collapse;width:100%}.chart-data th,.chart-data td{border-bottom:1px solid var(--border);text-align:left;padding:8px}.chart-data td{color:var(--text);font-variant-numeric:tabular-nums}.travel-v1{--tv-ink:var(--text);--tv-mist:var(--surface-muted)}.travel-v1 .tv-hero-story,.travel-v1 .tv-cover,.travel-v1 .tv-cover-1,.travel-v1 .tv-cover-2,.travel-v1 .tv-cover-3{background:var(--surface-muted);color:var(--text)}.travel-v1 .tv-hero-story{border:1px solid var(--border)}.travel-v1 .tv-cover-symbol{color:var(--accent);opacity:.15}.travel-v1 .tv-chips button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent);border-color:var(--accent);box-shadow:inset 0 -2px var(--accent)}.travel-v1 .tv-button{background:var(--action);color:var(--on-action);border-color:var(--action)}.travel-v1 .tv-map-pin{fill:var(--accent);stroke:var(--surface)}.travel-v1 .tv-map-pin.is-wishlist{fill:var(--surface-solid);stroke:var(--accent);stroke-dasharray:2 2}.travel-v1 .tv-map-pin.is-active{fill:var(--accent);stroke:var(--text)}.travel-v1 .tv-route{stroke:var(--accent)}.travel-v1 .tv-route.is-active{stroke:var(--text)}.travel-v1 .tv-magnet-placeholder,.travel-v1 .tv-memory-cover{color:var(--accent);background:var(--surface-muted)}.travel-v1 .tv-magnet-placeholder>span{border-color:var(--border-control);box-shadow:none;border-radius:var(--radius-control)}.travel-v1 .tv-shelf{border-bottom:1px solid var(--border-control)}.travel-v1 .tv-section-head h2,.travel-v1 .tv-card h3,.travel-v1 .tv-next h3{font-weight:600}.home-module-card{background:var(--surface);border-radius:var(--radius-card)}.home-module-card[data-module=pulse] .home-card-metrics>div:first-child{background:var(--surface-muted)}.home-card-heading h3{border-inline-start:2px solid var(--home-accent);padding-inline-start:8px}.home-state[data-state=stale],.home-state[data-state=partial]{color:var(--warning)}.home-state[data-state=unavailable]{color:var(--error)}.login-shell{background:radial-gradient(ellipse at 50% 0%, #4c8dff0c, transparent 60%), var(--bg)}.login-card{border-radius:var(--radius-hero);background:var(--surface);box-shadow:var(--shadow)}.google-sign-in{color:var(--on-action);background:var(--action);border-radius:var(--radius-control)}.login-error{color:var(--error)}@media (max-width:960px){.topbar-brand{display:flex}.topbar-actions{width:auto;margin-left:auto}.hub-main{padding:var(--space-6) var(--space-4) var(--space-8)}.mobile-bottom-nav{background:var(--surface-solid);border-radius:var(--radius-panel);box-shadow:var(--shadow)}.mobile-nav-item{border-radius:var(--radius-control)}.mobile-nav-item.active{box-shadow:inset 0 -2px var(--accent)}}@media (max-width:620px){.app-switcher{display:none}.topbar-copy strong{white-space:normal;max-width:none}.finance-command-header,.pulse-command-header{padding:var(--space-4)}.finance-command-header h1,.pulse-command-header h1,.page-intro h1{font-size:28px}.ap-section-heading{flex-wrap:wrap}.pulse-metric,.finance-metric{padding:var(--space-4)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media (forced-colors:active){.nav-item.active,.mobile-nav-item.active,.queue-item[aria-pressed=true]{outline:2px solid highlight}.ui-button{border:1px solid buttontext}}
.auth-experience{--auth-bg:#060a14;--auth-panel:#0e192b;--auth-text:#eef6ff;--auth-muted-text:#a7b7cd;--auth-border:#283b55;--auth-accent:var(--brand-blue);--auth-status-accent:var(--celestial-cyan);--auth-surface-tint:var(--deep-blue);--auth-artwork-overlay:var(--auth-bg);--auth-glow-intensity:.12;--auth-browser-color:var(--auth-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;isolation:isolate;background:var(--auth-bg);min-height:100dvh;color:var(--auth-text);place-items:center;padding:clamp(24px,5vw,72px);display:grid;position:relative}.auth-experience[data-phase=morning]{--auth-surface-tint:var(--info);--auth-glow-intensity:.17}.auth-experience[data-phase=evening]{--auth-surface-tint:var(--deep-blue);--auth-glow-intensity:.13}.auth-experience[data-phase=night]{--auth-glow-intensity:.07}.auth-experience[data-modifier=rain]{--auth-surface-tint:var(--auth-muted-text)}.auth-experience[data-modifier=snow]{--auth-surface-tint:var(--celestial-cyan)}.auth-experience[data-modifier=thunderstorm],.auth-experience[data-modifier=meteor-shower]{--auth-surface-tint:var(--deep-blue)}.auth-experience[data-modifier=aurora]{--auth-surface-tint:var(--celestial-cyan)}.auth-experience[data-modifier=eclipse]{--auth-surface-tint:var(--auth-muted-text);--auth-glow-intensity:.05}.auth-experience[data-tone=calm]{--auth-status-accent:#8bb7ff}.auth-experience[data-tone=denied]{--auth-status-accent:#ff9caa}.auth-experience[data-tone=warning]{--auth-status-accent:#e6bc73}.auth-experience[data-tone=muted]{--auth-status-accent:var(--auth-muted-text)}.auth-container{border:1px solid var(--auth-border);border-radius:calc(var(--radius-hero) + 4px);width:min(1180px,100%);min-height:640px;box-shadow:var(--shadow-overlay);background:var(--auth-bg);grid-template-columns:minmax(0,1.15fr) minmax(380px,1fr);display:grid;position:relative;overflow:hidden}.auth-world{background:var(--auth-bg);min-width:0;position:relative;overflow:hidden}.auth-art-image,.auth-atmosphere,.auth-clouds,.auth-halo,.auth-stars,.auth-weather,.auth-ribbons,.auth-lightning,.auth-scrim{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.auth-art-image{object-fit:cover;object-position:var(--art-position,center)}.auth-atmosphere{background:radial-gradient(ellipse at 35% 38%, color-mix(in srgb, var(--auth-surface-tint) 35%, transparent), transparent 65%), linear-gradient(160deg, transparent 15%, color-mix(in srgb, var(--deep-blue) 16%, var(--auth-bg)) 65%, var(--auth-bg))}.auth-clouds{background:radial-gradient(ellipse, color-mix(in srgb, var(--auth-muted-text) 9%, transparent), transparent 65%);width:140%;height:50%;animation:55s ease-in-out infinite alternate auth-drift;top:35%;left:-20%}.auth-halo{background:radial-gradient(ellipse at 40% 60%, var(--auth-surface-tint), transparent 63%);opacity:var(--auth-glow-intensity);animation:40s ease-in-out infinite alternate auth-breathe}.auth-experience[data-phase=morning] .auth-halo,.auth-experience[data-phase=evening] .auth-halo{background:radial-gradient(at 35% 85%,#e6bc73,#0000 65%)}.auth-scrim{background:linear-gradient(90deg, transparent 60%, color-mix(in srgb, var(--auth-artwork-overlay) 65%, transparent))}.auth-panel{background:color-mix(in srgb, var(--auth-panel) 97%, transparent);border-left:1px solid var(--auth-border);flex-direction:column;justify-content:center;align-items:flex-start;gap:36px;padding:clamp(32px,4.5vw,64px);display:flex;position:relative}.auth-panel:before{content:"";pointer-events:none;background:radial-gradient(ellipse at top right, color-mix(in srgb, var(--auth-surface-tint) 6%, transparent), transparent 65%);position:absolute;inset:0}.auth-panel>*{position:relative}.auth-panel .apocalypse-logo{object-fit:contain;width:216px;max-width:100%;height:72px}.auth-content{width:100%;animation:auth-enter .18s var(--motion-ease) both}.auth-status{color:var(--auth-status-accent);font-size:var(--text-sm);letter-spacing:.025em;margin:0 0 16px;font-weight:500}.auth-panel h1{font-family:var(--font-display);letter-spacing:var(--tracking-heading);text-wrap:balance;max-width:16ch;margin:0;font-size:clamp(2rem,3.2vw,2.9rem);font-weight:400;line-height:1.13}.auth-body{color:var(--auth-muted-text);font-size:var(--text-body);max-width:42ch;margin:24px 0 32px;line-height:1.7}.auth-primary{border-radius:var(--radius-control);width:100%;min-height:52px;color:var(--auth-bg);background:var(--brand-blue);cursor:pointer;transition:transform var(--motion-fast) var(--motion-ease), opacity var(--motion-fast);border:1px solid #0000;justify-content:center;align-items:center;gap:12px;padding:13px 18px;font-weight:600;display:flex}.auth-primary:hover:not(:disabled){transform:translateY(-1px)}.auth-primary:disabled{cursor:wait;opacity:.8}.auth-primary:focus-visible,.auth-secondary:focus-visible{outline:3px solid var(--celestial-cyan);outline-offset:4px;box-shadow:none}.auth-google{background:var(--auth-text);width:23px;height:23px;color:var(--deep-blue);border-radius:50%;place-items:center;font-weight:700;display:grid}.auth-secondary{min-height:44px;color:var(--auth-muted-text);text-underline-offset:4px;cursor:pointer;background:0 0;border:0;margin:12px auto 0;padding:8px 12px;text-decoration:underline;display:block}.auth-divider{width:100%;color:var(--auth-status-accent);justify-content:center;align-items:center;gap:20px;margin-top:4px;display:flex}.auth-divider span{background:var(--auth-border);flex:1;height:1px}.auth-experience[data-state=signing-in] .auth-divider svg{animation:12s linear infinite auth-orbit}.auth-stars{display:none}.auth-experience:is([data-phase=evening],[data-phase=night]) .auth-stars{display:block}.auth-stars i{background:var(--auth-text);opacity:.15;border-radius:50%;width:2px;height:2px;animation:19s ease-in-out infinite auth-twinkle;position:absolute}.auth-stars i:first-child{top:17%;left:18%}.auth-stars i:nth-child(2){animation-delay:-7s;top:28%;left:46%}.auth-stars i:nth-child(3){animation-delay:-13s;top:12%;left:72%}.auth-stars i:nth-child(4){animation-delay:-4s;top:51%;left:62%}.auth-stars i:nth-child(5){animation-delay:-11s;top:61%;left:29%}.auth-stars i:nth-child(6){animation-delay:-16s;top:38%;left:80%}.auth-weather,.auth-ribbons,.auth-lightning,.auth-meteor{display:none}.auth-experience:is([data-modifier=rain],[data-modifier=snow]) .auth-weather{display:block}.auth-weather i{left:calc(5% + var(--particle) * 8%);background:var(--celestial-cyan);opacity:.18;width:1px;height:26px;animation:4s linear infinite auth-rain;animation-delay:calc(var(--particle) * -.53s);position:absolute;top:-10%}.auth-experience[data-modifier=snow] .auth-weather i{background:var(--auth-text);width:3px;height:3px;animation:18s linear infinite auth-snow;animation-delay:calc(var(--particle) * -2.3s);border-radius:50%}.auth-experience[data-modifier=snow] .auth-weather i:nth-child(3n){opacity:.12;width:2px;height:2px;animation-duration:27s}.auth-experience[data-modifier=snow] .auth-weather i:nth-child(3n+1){opacity:.2;width:4px;height:4px;animation-duration:22s}.auth-experience[data-modifier=thunderstorm] .auth-lightning{background:var(--celestial-cyan);opacity:0;animation:47s linear infinite auth-lightning;display:block}.auth-experience[data-modifier=aurora] .auth-ribbons{display:block}.auth-ribbons i{background:linear-gradient(150deg, transparent 40%, color-mix(in srgb, var(--celestial-cyan) 12%, transparent), #79d5ae14, transparent 62%);animation:48s ease-in-out infinite alternate auth-ribbon;position:absolute;inset:10% -30% 30%;transform:rotate(-12deg)}.auth-ribbons i:nth-child(2){opacity:.6;animation-delay:-19s;transform:rotate(8deg)}.auth-ribbons i:nth-child(3){opacity:.4;animation-delay:-31s;transform:rotate(-24deg)}.auth-experience[data-modifier=meteor-shower] .auth-meteor{background:linear-gradient(90deg, transparent, var(--auth-text));opacity:0;width:80px;height:1px;animation:73s linear infinite auth-meteor;display:block;position:absolute;top:15%;left:20%}.auth-experience[data-modifier=eclipse] .auth-halo{animation-duration:60s}.auth-preview-controls{z-index:2;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:16px;padding:16px;display:flex;position:relative}.auth-preview-controls label{align-items:center;gap:8px;display:flex}.auth-preview-controls select{background:var(--surface);max-width:210px;min-height:44px;color:var(--text);border:1px solid var(--border-control);border-radius:var(--radius-control);padding:8px}@keyframes auth-drift{to{transform:translate(6%)}}@keyframes auth-breathe{to{opacity:calc(var(--auth-glow-intensity) * .65);transform:scale(1.04)}}@keyframes auth-twinkle{0%,to{opacity:.1}50%{opacity:.4}}@keyframes auth-rain{to{transform:translate(-25px,800px)}}@keyframes auth-snow{to{transform:translate(35px,800px)}}@keyframes auth-ribbon{to{opacity:.5;transform:translate(4%,6%)rotate(4deg)}}@keyframes auth-lightning{0%,65%,70%,to{opacity:0}67%{opacity:.08}}@keyframes auth-meteor{0%,11%,14%,52%,55%,to{opacity:0;transform:translate(0)rotate(25deg)}12%,53%{opacity:.3}13%,54%{opacity:0;transform:translate(220px,100px)rotate(25deg)}}@keyframes auth-orbit{to{transform:rotate(360deg)}}@keyframes auth-enter{0%{opacity:.85;transform:translateY(3px)}to{opacity:1;transform:none}}@media (min-width:700px) and (max-width:1100px){.auth-experience{padding:24px}.auth-container{grid-template-columns:minmax(0,.75fr) minmax(350px,1fr);min-height:610px}.auth-panel{gap:28px;padding:32px}}@media (max-width:699px){.auth-experience{padding:max(32px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(32px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));align-items:center;display:flex}.auth-container{width:100%;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;display:block;position:static;overflow:visible}.auth-world{z-index:-1;position:absolute;inset:0}.auth-art-image{object-position:var(--art-mobile-position,center)}.auth-scrim{background:linear-gradient(180deg, transparent, color-mix(in srgb, var(--auth-bg) 45%, transparent) 45%, var(--auth-bg))}.auth-panel{border:1px solid var(--auth-border);border-radius:var(--radius-hero);background:color-mix(in srgb, var(--auth-panel) 97%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);gap:24px;width:min(440px,100%);margin:0 auto;padding:clamp(24px,7vw,36px)}.auth-panel .apocalypse-logo{width:192px;height:64px}.auth-panel h1{font-size:clamp(1.9rem,8vw,2.5rem)}.auth-body{margin:20px 0 28px}.auth-weather i:nth-child(n+7),.auth-stars i:nth-child(n+4),.auth-ribbons i:nth-child(3){display:none}}.auth-experience[data-hidden=true] *,.auth-experience[data-hidden=true] :before{animation-play-state:paused!important}.auth-experience[data-reduced-motion=true] *,.auth-experience[data-reduced-motion=true] :before{transition:none!important;animation:none!important}@media (prefers-reduced-motion:reduce){.auth-experience *,.auth-experience :before{transition:none!important;animation:none!important}}@media (forced-colors:active){.auth-world{display:none}.auth-panel,.auth-primary{border:1px solid canvastext}}
