*{box-sizing:border-box}:root{--bg-1: #0b1020;--bg-2: #111d33;--bg-3: #1d2f4d;--panel: #1b1330;--panel-strong: #110d1d;--line: #7ce8ff;--text: #edf8ff;--text-soft: #d8efff;--muted: #9fbedf;--primary: #69d9ff;--primary-strong: #2eb2ff;--secondary: #7bd88d;--gold: #ffe46d;--coral: #ff8f6b;--shadow: rgba(10, 16, 28, .7);--retro-cream: #ebf7ff;--retro-purple: #1b1230;--retro-cyan: #7ce8ff;--retro-orange: #ff915e;--retro-green: #7ce58c;--arcade-blue: #5dd7ff;--arcade-pink: #ff7bb6;--arcade-bg: #0d1324;font-family:Courier New,Lucida Console,monospace;line-height:1.5;font-weight:400;color:var(--text);background:var(--bg-1);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html{scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scroll-padding-top:20px}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden;background:radial-gradient(circle at top,rgba(124,232,255,.18),transparent 28rem),radial-gradient(circle at bottom right,rgba(255,145,94,.18),transparent 24rem),linear-gradient(180deg,#07111d 0%,var(--bg-2) 40%,var(--bg-3) 100%);letter-spacing:.02em;scrollbar-color:#7ce8ff #07111d}html::-webkit-scrollbar,body::-webkit-scrollbar{width:10px;height:10px}html::-webkit-scrollbar-track,body::-webkit-scrollbar-track{background:#07111de6}html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#7ce8ff,#ffe46d);border-radius:999px;border:2px solid rgba(7,17,29,.9)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(to bottom,rgba(125,220,255,.08),rgba(125,220,255,.08) 1px,transparent 1px,transparent 4px);opacity:.9;mix-blend-mode:screen}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer;font-family:inherit}.app-shell{width:min(1180px,calc(100% - 36px));margin:0 auto;padding:22px 0 52px;position:relative;z-index:1}.topbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:28px;animation:fadeUp .55s ease both}.brand{display:inline-flex;align-items:center;gap:10px;background:transparent;color:#edf8ff;font-size:1rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:0;text-shadow:0 0 12px rgba(93,215,255,.8)}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:3px solid #dff9ff;background:linear-gradient(135deg,#ffe882,#ffaf6d);color:#0a1221;font-size:1.1rem;font-weight:900;box-shadow:0 0 18px #ffd45eb3,4px 4px #0a101ce6}.account{display:flex;align-items:center;gap:12px;color:var(--retro-purple);font-size:.85rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.signout,.back-link,.primary-action,.ghost-action,.nav-pill{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:3px solid var(--retro-purple);background:linear-gradient(180deg,#edf8ff,#d8eaff);color:var(--retro-purple);box-shadow:4px 4px #2d2245e6,0 0 0 2px #7ce8ff33;font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:transform .12s ease,box-shadow .12s ease}.signout:hover,.back-link:hover,.primary-action:hover,.ghost-action:hover,.nav-pill:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #2d2245e6}.eyebrow,.composer-heading p,.panel-kicker{margin:0 0 12px;font-size:.72rem;letter-spacing:.18em;font-weight:700;text-transform:uppercase;color:var(--coral)}.hero,.choice-hero,.dashboard-hero{animation:fadeUp .65s .1s ease both}.hero,.hero-form{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}.hero h1,.hero-form h1,.auth-card h2,.auth-visual h1,.dashboard-hero h1{margin:0;letter-spacing:-.04em;line-height:1;text-transform:uppercase}.hero h1,.hero-form h1{max-width:620px;font-size:clamp(2.2rem,5vw,4rem);color:#edf8ff;text-shadow:0 0 12px rgba(93,215,255,.35)}.hero>div>p:last-child,.hero-form>div>p:last-child,.hero-copy p:last-child{margin:12px 0 0;color:#dceeff;font-size:1rem;font-weight:700}.live-total{min-width:210px;padding:18px 20px;border:4px solid var(--retro-purple);background:linear-gradient(135deg,var(--gold),#ffb777 48%,#ff8b6b 100%);box-shadow:6px 6px #2d2245e6;color:var(--retro-purple)}.live-total span,.live-total small{display:block;font-size:.66rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.live-total strong{display:block;margin:10px 0 8px;font-size:clamp(1.7rem,4vw,2.5rem);letter-spacing:-.05em}.live-total small{letter-spacing:0;text-transform:none;font-size:.8rem}.auth-page{min-height:100vh;display:grid;place-items:center;padding:30px 18px}.auth-shell{width:min(1080px,100%);display:grid;grid-template-columns:1.2fr .8fr;gap:18px;padding:18px;border:4px solid #9be8ff;background:#0a1424e6;box-shadow:10px 10px #080f1af2,0 0 28px #5dd7ff40}.auth-visual,.auth-card,.panel-surface,.expense-composer,.insight-panel{background:var(--retro-purple);border:4px solid #7ce8ff;box-shadow:8px 8px #0a101cf2,0 0 22px #5dd7ff2e}.auth-visual{position:relative;overflow:hidden;padding:28px 24px 20px;background:linear-gradient(180deg,#0d1d36,#0a1323)}.auth-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#7ce8ff26,#ff915e14);pointer-events:none}.brand-lockup{display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--text)}.mini-badges{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0 16px}.mini-badges span{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:3px solid var(--gold);background:#ffd75f1f;color:var(--text-soft);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:.7rem}.auth-visual h1{max-width:520px;font-size:clamp(2.3rem,4vw,3.8rem);color:var(--text)}.auth-copy{max-width:500px;margin:18px 0 0;color:var(--text-soft);font-size:.96rem;line-height:1.7}.feature-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:24px}.feature-list div{display:flex;flex-direction:column;gap:8px;min-height:110px;padding:16px 14px;border:3px solid rgba(255,255,255,.25);background:#ffffff0a}.feature-list strong{color:var(--gold);font-size:1.15rem}.feature-list span{color:var(--text-soft);font-size:.76rem;font-weight:700;line-height:1.5;letter-spacing:.04em}.auth-card{display:flex;flex-direction:column;justify-content:center;padding:26px 22px;background:linear-gradient(180deg,#dff8ff,#8bddff);color:var(--retro-purple);border-color:var(--retro-purple)}.auth-card .eyebrow,.auth-card .auth-copy,.auth-card h2{color:var(--retro-purple)}.auth-card h2{font-size:clamp(1.8rem,3vw,2.5rem);text-shadow:0 0 10px rgba(255,255,255,.5)}.auth-copy.muted{margin-top:8px;color:#2d2245cc;max-width:320px}.google-signin{display:flex;justify-content:center;margin-top:20px}.dashboard-shell{padding-top:0}.dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:4px solid #7ce8ff;background:linear-gradient(135deg,#08121efa,#111b2bfa);box-shadow:8px 8px #0a101cf2,0 0 20px #5dd7ff29}.dashboard-hero h1{max-width:430px;font-size:clamp(2rem,4vw,3rem);color:#edf8ff;text-shadow:0 0 10px rgba(124,232,255,.45)}.hero-copy .eyebrow{color:var(--retro-purple)}.hero-copy p:last-child{color:#2d2245d1}.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.primary-action,.ghost-action{min-height:44px;background:var(--retro-cream)}.primary-action{background:var(--gold)}.choice-hero{margin-top:10px}.hero-intro{margin-bottom:18px}.hero-intro h1{margin:0;max-width:700px;color:#edf8ff;font-size:clamp(2.2rem,4vw,3.6rem);letter-spacing:-.04em;line-height:1.02;text-transform:uppercase;text-shadow:0 0 12px rgba(93,215,255,.3)}.hero-intro p:last-child{margin-top:12px;color:#dceeff;font-size:1rem;font-weight:700}.period-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.period-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;width:100%;min-height:280px;padding:24px 22px;border:4px solid #7ce8ff;background:linear-gradient(180deg,#0c1826fa,#08111dfa);color:#edf8ff;text-align:left;box-shadow:8px 8px #0a101cf2,0 0 22px #5dd7ff1f;transition:transform .18s ease,box-shadow .18s ease}.period-card.primary{background:linear-gradient(180deg,#0d1d34fa,#08111dfa)}.period-card.secondary{background:linear-gradient(180deg,#201736fa,#0c0b14fa)}.period-card:hover{transform:translate(-2px,-2px);box-shadow:10px 10px #0a101cf5,0 0 25px #5dd7ff2e}.period-card span{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:3px solid #ffe46d;background:#ffe46d24;color:#ffe46d;font-size:.9rem;font-weight:900}.period-card strong{margin-top:16px;font-size:clamp(1.6rem,2.2vw,2.2rem);letter-spacing:-.04em;text-transform:uppercase;color:#edf8ff}.period-card small{margin-top:10px;color:#dceeff;font-size:.92rem;line-height:1.6}.period-card b{margin-top:auto;padding-top:20px;color:#7ce8ff;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px}.summary-card{display:flex;align-items:center;gap:14px;min-height:120px;padding:18px;border:4px solid #7ce8ff;background:linear-gradient(180deg,#111d2d,#0b1627);box-shadow:6px 6px #0a101cf2,0 0 18px #5dd7ff1f}.summary-card span{display:block;color:var(--muted);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.summary-card strong{display:block;margin-top:8px;font-size:clamp(1.5rem,2vw,2rem);letter-spacing:-.04em}.summary-icon{display:grid;place-items:center;width:52px;height:52px;border:3px solid var(--text);background:#ffffff0f;color:var(--text);font-size:1.4rem}.summary-card.cyan .summary-icon{background:#69d9ff2e}.summary-card.gold .summary-icon{background:#ffd75f2e}.summary-card.violet .summary-icon{background:#a08cff2e}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:20px;margin-top:20px}.panel-surface{padding:20px 18px;border:4px solid #7ce8ff;background:linear-gradient(180deg,#111d2d,#0a1422);box-shadow:6px 6px #0a101cf2,0 0 18px #5dd7ff1f}.panel-head h2{margin:0;font-size:clamp(1.5rem,2vw,2.1rem);letter-spacing:-.04em;text-transform:uppercase}.ledger-list{display:grid;gap:14px}.ledger-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:102px;padding:15px 16px;text-align:left;border:4px solid var(--text);background:#ffffff08;color:var(--text);box-shadow:4px 4px #ffffff1f}.ledger-icon{display:grid;place-items:center;width:52px;height:52px;border:3px solid var(--text);background:#7ce8ff1f;font-size:1.3rem}.ledger-card strong{display:block;margin-bottom:6px;font-size:1.1rem;letter-spacing:-.04em;text-transform:uppercase}.ledger-card span{display:block;color:var(--muted);font-size:.75rem;line-height:1.5}.ledger-card b{display:block;color:var(--gold);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}.side-panel{display:flex;flex-direction:column}.mini-stat{display:flex;align-items:center;gap:12px;margin-bottom:14px}.mini-badge{display:grid;place-items:center;width:48px;height:48px;border:3px solid var(--secondary);color:var(--secondary);background:#7bd88d1f}.mini-stat span{display:block;color:var(--muted);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.mini-stat strong{display:block;margin-top:6px;font-size:1.1rem}.budget-ring{width:170px;height:170px;margin:18px auto 16px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--secondary) 0 84%,rgba(255,255,255,.12) 84% 100%);border:4px solid var(--text);position:relative}.budget-ring:before{content:"";position:absolute;inset:16px;border-radius:50%;background:#1d1829;border:3px solid var(--text)}.ring-value{position:relative;z-index:1;font-size:1.55rem;font-weight:900;letter-spacing:-.04em}.activity-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:12px}.activity-list li{display:flex;align-items:center;gap:10px;color:var(--text-soft);font-size:.9rem}.dot{width:10px;height:10px;border:2px solid rgba(255,255,255,.7);display:inline-block}.dot.green{background:var(--secondary)}.dot.purple{background:#b49cff}.dot.gold{background:var(--gold)}.workspace{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.72fr);gap:22px;align-items:stretch}.expense-composer{padding:22px 22px 20px;border:4px solid #9be8ff;background:linear-gradient(180deg,#091827,#10263c);box-shadow:8px 8px #0a101cf5,0 0 24px #5dd7ff29,inset 0 0 0 2px #7ce8ff1f}input,select,textarea{width:100%;min-height:52px;padding:12px 14px;border:3px solid #7ce8ff;background:#08111deb;color:#edf8ff;box-shadow:inset 0 0 0 1px #7ce8ff2e,0 0 12px #5dd7ff14;transition:border-color .12s ease,box-shadow .12s ease}input::placeholder,textarea::placeholder{color:#ddf0ff9e}input:hover,select:hover,textarea:hover{background:#0f1b2afa}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px #ffe46d29,0 0 14px #5dd7ff2e}button[type=submit]{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;margin-top:22px;border:4px solid #0d1a2a;background:linear-gradient(135deg,#ffe46d,#ffb269 35%,#7ce8ff);color:#0a1221;box-shadow:6px 6px #0a101cf2,0 0 16px #ffbe6161;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.composer-heading{display:flex;align-items:center;gap:14px;margin-bottom:22px}.entry-icon{display:grid;place-items:center;width:48px;height:48px;border:3px solid var(--retro-purple);background:var(--gold);color:var(--retro-purple);font-size:1.75rem;font-weight:900;box-shadow:3px 3px #2d2245d9}.composer-heading h2{margin:0;font-size:clamp(1.3rem,2vw,1.8rem);letter-spacing:-.04em;text-transform:uppercase;color:#edf8ff;text-shadow:0 0 10px rgba(124,232,255,.28)}.entry-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:flex;flex-direction:column;gap:8px}.amount-field,.description-field,.notes-field{grid-column:1 / -1}label{color:#dff9ff;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--retro-purple) 50%),linear-gradient(135deg,var(--retro-purple) 50%,transparent 50%);background-position:calc(100% - 18px) 22px,calc(100% - 13px) 22px;background-size:6px 6px;background-repeat:no-repeat;padding-right:38px}textarea{min-height:92px;resize:vertical}.amount-input{position:relative}.amount-input span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--retro-purple);font-size:1.7rem;font-weight:900}.amount-input input{min-height:68px;padding-left:40px;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:900;letter-spacing:-.05em}button[type=submit]{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:56px;margin-top:22px;border:4px solid var(--retro-purple);background:linear-gradient(135deg,#ffd75f,#ff9a65 55%,#7ce8ff);color:var(--retro-purple);box-shadow:6px 6px #2d2245e6;font-weight:900;letter-spacing:.08em;text-transform:uppercase}button[type=submit] b{font-size:1.5rem;line-height:0}button[type=submit]:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:8px 8px #2d2245e6}button[type=submit]:disabled{cursor:not-allowed;opacity:.72}.status{margin-top:18px;padding:12px 14px;border:3px solid var(--retro-purple);background:#fffaf0;font-size:.82rem;font-weight:700}.status.success{background:#7bd88d2e;color:#1b3e1f}.status.error{background:#ff765b2e;color:#5d1f1f}.success-overlay{position:fixed;inset:0;display:grid;place-items:center;padding:20px;background:#140a1cb3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;animation:overlayFade .26s ease}.success-modal{position:relative;width:min(500px,100%);padding:28px 24px 20px;border:4px solid var(--retro-purple);background:linear-gradient(180deg,#fbf1d1,#f4d88b);box-shadow:8px 8px #2d2245e6;text-align:center;color:var(--retro-purple);animation:modalRise .42s cubic-bezier(.2,.8,.2,1) both}.success-badge{position:relative;display:grid;place-items:center;width:90px;height:90px;margin:0 auto 14px}.success-ring{position:absolute;inset:0;border-radius:50%;border:5px solid var(--retro-purple);background:#ffffff42}.success-check{position:relative;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--retro-purple);color:var(--gold);font-size:2rem;font-weight:900}.success-kicker{margin-bottom:10px;color:var(--retro-purple)}.success-modal h2{margin:0;font-size:clamp(1.8rem,3vw,2.4rem);letter-spacing:-.04em;text-transform:uppercase}.success-modal p:not(.success-kicker){margin:12px auto 0;max-width:360px;color:#2d2245cc;line-height:1.6}.success-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:20px}.success-primary,.success-secondary{min-height:44px;padding:0 16px;border:3px solid var(--retro-purple);background:var(--retro-cream);color:var(--retro-purple);font-weight:800;letter-spacing:.08em;text-transform:uppercase;box-shadow:3px 3px #2d2245cc}.success-primary{background:var(--gold)}.insight-panel{position:relative;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;padding:24px 20px;border:4px solid var(--retro-purple);background:linear-gradient(180deg,#2c2441,#1d162d);box-shadow:6px 6px #2d2245d9}.insight-orb{position:absolute;top:18px;left:18px;display:grid;place-items:center;width:52px;height:52px;border:3px solid var(--gold);background:#ffd75f1f;color:var(--gold)}.insight-panel h2{position:relative;margin:0 0 10px;max-width:220px;font-size:clamp(1.4rem,2.5vw,1.9rem);letter-spacing:-.04em;line-height:1.1;text-transform:uppercase}.panel-copy{position:relative;max-width:290px;margin:0 0 18px;color:#f9f1d7cc;font-size:.88rem;line-height:1.6}.metric-stack{position:relative;display:grid;gap:10px;margin-top:16px}.metric-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:3px solid rgba(255,255,255,.18);background:#ffffff0a}.metric-row span{color:var(--muted);font-size:.68rem;letter-spacing:.12em;text-transform:uppercase}.metric-row strong{text-align:right;font-size:.82rem;color:var(--text)}.entry-preview{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding-top:16px;border-top:3px solid rgba(255,255,255,.12);color:var(--text-soft);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.entry-preview strong{font-size:1.4rem;letter-spacing:-.05em;color:var(--gold)}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes overlayFade{0%{opacity:0}to{opacity:1}}@keyframes modalRise{0%{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:1100px){.auth-shell,.workspace,.dashboard-grid{grid-template-columns:1fr}.feature-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.app-shell{width:min(100% - 22px,1180px);padding-top:14px}.topbar,.dashboard-hero,.hero,.hero-form{flex-direction:column;align-items:flex-start}.topbar{gap:12px}.account{width:100%;justify-content:space-between;flex-wrap:wrap}.period-cards,.summary-grid{grid-template-columns:1fr}.live-total{width:100%;min-width:0}.hero h1,.hero-form h1,.dashboard-hero h1,.auth-visual h1,.auth-card h2{max-width:100%}}@media(max-width:640px){.auth-page{padding:18px 12px}.auth-shell{grid-template-columns:1fr;padding:14px;gap:14px}.auth-visual,.auth-card{padding:18px 16px}.auth-visual h1{font-size:clamp(1.8rem,9vw,2.7rem)}.auth-card h2{font-size:clamp(1.5rem,7vw,2rem)}.feature-list{grid-template-columns:1fr}.google-signin{width:100%;overflow:hidden}.google-signin>div,.google-signin>iframe{width:100%!important;max-width:100%!important;min-width:0!important}.app-shell{width:min(100% - 18px,1180px)}.feature-list,.entry-grid,.summary-grid,.period-cards{grid-template-columns:1fr}.period-card,.summary-card,.expense-composer,.panel-surface,.auth-card,.auth-visual,.dashboard-hero{padding-left:16px;padding-right:16px}.brand,.brand-lockup{font-size:.9rem}.account{gap:8px;font-size:.72rem}.signout,.back-link,.nav-pill,.primary-action,.ghost-action{min-height:38px;padding:0 12px;font-size:.66rem}.expense-composer{padding-top:18px;padding-bottom:18px}.amount-input input{min-height:58px;font-size:1.8rem}}@media(max-width:420px){.app-shell{width:min(100% - 12px,1180px)}.topbar{padding-bottom:18px}.brand,.brand-lockup{font-size:.82rem;letter-spacing:.08em}.account{align-items:flex-start}.signout,.back-link,.nav-pill,.primary-action,.ghost-action{width:100%;justify-content:center}input,select,textarea{font-size:16px}.feature-list{gap:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
