*,*:before,*:after{box-sizing:border-box}*{margin:0}@media(prefers-reduced-motion:no-preference){html{interpolate-size:allow-keywords}}body{line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}#root,#__next{isolation:isolate}ul{list-style:none;padding:0}:root{color-scheme:dark light;--color-primary: light-dark(#111827, #fafafa);--color-accent: light-dark(#6366f1, #818cf8);--color-text: light-dark(#111827, #fafafa);--color-white: #ffffff;--color-gray: light-dark(#9ca3af, #9aa3b2);--surface-bg: light-dark(#f9fafb, #0f1115);--surface-bg-muted: light-dark(#f3f4f6, #121418);--surface-bg-card: light-dark(#ffffff, #141820);--surface-bg-dark: #0f1115;--surface-fg-light: #fafafa;--surface-border: light-dark(#e5e7eb, #262a31);--state-success: light-dark(#00bb2d, #22c55e);--state-warning: light-dark(#f59e0b, #f59e0b);--state-error: light-dark(#ef4444, #f87171);--input-bg: light-dark(#ffffff, #1a1e26);--input-border: light-dark(#d1d5db, #374151);--input-border-focus: light-dark(#6366f1, #818cf8);--input-text: light-dark(#111827, #f3f4f6);--input-placeholder: light-dark(#6b7280, #9ca3af);--btn-primary-bg: light-dark(#6366f1, #818cf8);--btn-primary-text: #ffffff;--btn-primary-hover: light-dark(#5b5cd8, #747be6);--btn-google-bg: light-dark(#ffffff, var(--surface-bg-card));--btn-google-text: light-dark(#111827, #f3f4f6);--btn-google-border: light-dark(#d1d5db, #4b5563);--btn-google-hover: light-dark(#f9fafb, var(--surface-bg-muted));--btn-secondary-bg: light-dark(#f3f4f6, #374151);--btn-secondary-text: light-dark(#374151, #f3f4f6);--btn-secondary-hover: light-dark(#e5e7eb, #4b5563);--link-color: light-dark(#6366f1, #818cf8);--link-hover: light-dark(#5b5cd8, #747be6);--shadow-color-base: light-dark(#e5e7eb, rgba(0, 0, 0, .4));--shadow-xs: 0 1px 3px var(--shadow-color-base);--shadow-sm: 0 2px 4px var(--shadow-color-base);--shadow-md: 0 4px 6px var(--shadow-color-base);--shadow-lg: 0 20px 25px -5px var(--shadow-color-base);--checkout-primary: light-dark(#6366f1, #818cf8);--checkout-accent: light-dark(#818cf8, #a5b4fc);--color-midnight: #0b0f19;--color-primary-light: hsl(from var(--color-primary) h s calc(l + 20) );--color-primary-dark: hsl(from var(--color-primary) h s calc(l - 40) );--color-primary-overlay: hsl( from var(--color-primary) h s calc(l + 50) / .5 );--color-primary-blur: hsl(from var(--color-primary) h s calc(l + 70) / .8);--color-accent-light: hsl(from var(--color-accent) h s calc(l + 20) );--color-accent-dark: hsl( from var(--color-accent) h calc(s + 20) calc(l - 20) );--color-gray-light: hsl(from var(--color-gray) h s calc(l + 20) );--color-gray-dark: hsl(from var(--color-gray) h s calc(l - 20) );--color-gray-darker: hsl(from var(--color-gray-dark) h s calc(l - 20) );--color-gray-light-blur: hsl(from var(--color-gray) h s calc(l + 70) / .8);--color-text-light: hsl(from var(--color-text) h s calc(l + 40) );--state-error-dark: hsl(from var(--state-error) h s calc(l - 20) );--chart-1: #f97316;--chart-2: #06b6d4;--chart-3: #3b82f6;--chart-4: #84cc16;--chart-5: #eab308}:root.theme-light{--color-primary: #111827;--color-accent: #6366f1;--color-text: #111827;--color-gray: #9ca3af;--surface-bg: #f9fafb;--surface-bg-muted: #f3f4f6;--surface-bg-card: #ffffff;--surface-border: #e5e7eb;--state-success: #00bb2d;--state-warning: #f59e0b;--state-error: #ef4444;--shadow-color-base: #e5e7eb;--checkout-primary: #6366f1;--checkout-accent: #818cf8}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--surface-bg);padding:1rem}.auth-card{background:var(--surface-bg-card);border:1px solid var(--surface-border);border-radius:12px;padding:2rem;width:100%;max-width:400px;box-shadow:var(--shadow-lg)}.auth-header{text-align:center;margin-bottom:2rem}.auth-footer{text-align:center}.auth-title{font-size:1.875rem;font-weight:700;color:var(--color-primary);margin-bottom:.5rem}.auth-subtitle{color:var(--color-gray);font-size:.875rem}.auth-link{color:var(--link-color);text-decoration:none;font-weight:500;transition:color .2s ease}.auth-link:hover{color:var(--link-hover)}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-label{font-size:.875rem;font-weight:500;color:var(--color-text)}.form-input{padding:.75rem 1rem;background:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;color:var(--input-text);font-size:.875rem;transition:all .2s ease}.form-input:focus{outline:none;border-color:var(--input-border-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--input-border-focus) 20%,transparent)}.form-input::placeholder{color:var(--input-placeholder)}.btn{padding:.75rem 1.5rem;border:none;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:inline-flex;align-items:center;justify-content:center;gap:1rem;text-decoration:none}.btn-primary{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-primary:hover{background:var(--btn-primary-hover);transform:translateY(-1px)}.btn-google{background:var(--btn-google-bg);color:var(--btn-google-text);border:1px solid var(--btn-google-border)}.btn-google svg{height:30px}.btn-google:hover{background:var(--btn-google-hover);transform:translateY(-1px)}.btn-full{width:100%}.auth-divider{display:flex;align-items:center;gap:1rem;margin:.1rem 0;color:var(--color-gray);font-size:.875rem}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--surface-border)}.btn-secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-text);border:1px solid var(--surface-border)}.btn-secondary:hover{background:var(--btn-secondary-hover);transform:translateY(-1px)}body{font-family:system-ui,-apple-system,sans-serif;background:var(--surface-bg);color:var(--color-text);line-height:1.6}#app{min-height:100vh}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--surface-bg);text-align:center}.hero-content{max-width:600px;padding:2rem}.hero-title{font-size:3rem;font-weight:700;color:var(--color-primary);margin-bottom:1rem;text-wrap:balance}.hero-subtitle{font-size:1.25rem;color:var(--color-gray);margin-bottom:2rem}.hero-cta{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
