@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";
:root{--color-bg:#000;--color-bg-secondary:#0a0a0a;--color-surface:#111;--color-surface-elevated:#1a1a1a;--color-surface-hover:#222;--color-border:#2a2a2a;--color-border-light:#333;--color-green:#00e676;--color-green-dark:#00c853;--color-green-light:#69f0ae;--color-green-glow:#00e67640;--color-green-subtle:#00e67614;--color-text-primary:#fff;--color-text-secondary:#8e8e93;--color-text-tertiary:#636366;--color-text-disabled:#48484a;--color-error:#ff3b30;--color-error-bg:#ff3b301a;--color-warning:#ff9500;--color-warning-bg:#ff95001a;--color-success:#00e676;--color-success-bg:#00e6761a;--gradient-brand:linear-gradient(180deg, #fff 0%, #00e676 100%);--gradient-green:linear-gradient(135deg, #00e676 0%, #00c853 100%);--gradient-green-hover:linear-gradient(135deg, #69f0ae 0%, #00e676 100%);--gradient-surface:linear-gradient(180deg, #1a1a1a 0%, #111 100%);--gradient-glow:radial-gradient(circle at center, #00e67626 0%, transparent 70%);--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs:11px;--font-size-sm:13px;--font-size-base:15px;--font-size-md:16px;--font-size-lg:18px;--font-size-xl:20px;--font-size-2xl:24px;--font-size-3xl:28px;--font-size-4xl:32px;--font-size-5xl:40px;--font-size-hero:48px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:20px;--space-2xl:24px;--space-3xl:32px;--space-4xl:40px;--space-5xl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-green:0 4px 24px #00e6764d;--shadow-green-lg:0 8px 40px #00e67666;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--transition-spring:.5s cubic-bezier(.34, 1.56, .64, 1);--bottom-nav-height:72px;--header-height:56px;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px)}*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}html{height:100%;overflow:hidden}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none;height:100%;overflow:hidden}#app-root{background:var(--color-bg);max-width:430px;height:100dvh;margin:0 auto;position:relative;overflow:hidden}::-webkit-scrollbar{width:0;height:0}*{scrollbar-width:none}.text-hero{font-size:var(--font-size-hero);letter-spacing:-1.5px;font-weight:900;line-height:1.1}.text-h1{font-size:var(--font-size-4xl);letter-spacing:-1px;font-weight:800;line-height:1.2}.text-h2{font-size:var(--font-size-2xl);letter-spacing:-.5px;font-weight:700;line-height:1.25}.text-h3{font-size:var(--font-size-xl);font-weight:600;line-height:1.3}.text-body{font-size:var(--font-size-base);font-weight:400;line-height:1.5}.text-caption{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:400;line-height:1.4}.text-tiny{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.5px;font-weight:500;line-height:1.3}.text-green{color:var(--color-green)}.text-gradient{background:var(--gradient-brand);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg)}.card-elevated{background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg)}.card-glass{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);padding:var(--space-lg);background:#ffffff0a;border:1px solid #ffffff14}.card-green-glow{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-green);border:1px solid #00e67633}.btn{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);width:100%;height:52px;font-family:var(--font-family);font-size:var(--font-size-md);cursor:pointer;transition:all var(--transition-fast);border:none;font-weight:600;display:flex;position:relative;overflow:hidden}.btn:active{transform:scale(.97)}.btn-primary{background:var(--gradient-green);color:#000;box-shadow:var(--shadow-green)}.btn-primary:hover{background:var(--gradient-green-hover);box-shadow:var(--shadow-green-lg)}.btn-primary:disabled{background:var(--color-surface-elevated);color:var(--color-text-disabled);box-shadow:none;cursor:not-allowed;transform:none}.btn-secondary{background:var(--color-surface-elevated);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface-hover);border-color:var(--color-border-light)}.btn-outline{color:var(--color-green);border:1px solid var(--color-green);background:0 0}.btn-outline:hover{background:var(--color-green-subtle)}.btn-ghost{color:var(--color-text-secondary);height:40px;font-size:var(--font-size-sm);background:0 0}.btn-ghost:hover{color:var(--color-text-primary);background:#ffffff0d}.btn-danger{color:var(--color-error);background:0 0;border:1px solid #ff3b304d}.btn-danger:hover{background:var(--color-error-bg)}.btn-sm{height:36px;font-size:var(--font-size-sm);border-radius:var(--radius-sm);padding:0 var(--space-lg);width:auto}.input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;height:48px;padding:0 var(--space-lg);font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text-primary);transition:border-color var(--transition-fast);outline:none}.input:focus{border-color:var(--color-green);box-shadow:0 0 0 3px var(--color-green-subtle)}.input::placeholder{color:var(--color-text-disabled)}.input-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-sm);font-weight:500;display:block}.input-error{border-color:var(--color-error)}.input-error-text{font-size:var(--font-size-xs);color:var(--color-error);margin-top:var(--space-xs)}.badge{border-radius:var(--radius-full);font-size:var(--font-size-xs);align-items:center;gap:4px;padding:4px 10px;font-weight:600;display:inline-flex}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.badge-neutral{color:var(--color-text-secondary);background:#ffffff14}.overlay{-webkit-backdrop-filter:blur(4px);z-index:100;animation:fadeIn var(--transition-fast) ease-out;background:#000000b3;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.bottom-sheet{background:var(--color-surface);border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;width:100%;max-width:430px;padding:var(--space-2xl);padding-bottom:calc(var(--space-2xl) + var(--safe-area-bottom));animation:slideUp var(--transition-base) var(--transition-spring);max-height:85dvh;overflow-y:auto}.bottom-sheet-handle{background:var(--color-border-light);border-radius:var(--radius-full);width:36px;height:4px;margin:0 auto var(--space-xl)}.divider{background:var(--color-border);height:1px;margin:var(--space-lg) 0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes glow{0%,to{box-shadow:0 0 20px #00e67633}50%{box-shadow:0 0 40px #00e67680}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounceIn{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.15)}70%{transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes checkmark{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade-in{animation:fadeIn var(--transition-base) ease-out}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) ease-out}.animate-scale-in{animation:scaleIn var(--transition-spring) ease-out}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-glow{animation:2s ease-in-out infinite glow}.animate-shimmer{background:linear-gradient(90deg, var(--color-surface) 25%, var(--color-surface-elevated) 50%, var(--color-surface) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}.animate-float{animation:3s ease-in-out infinite float}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.gap-2xl{gap:var(--space-2xl)}.w-full{width:100%}.text-center{text-align:center}.text-right{text-align:right}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.relative{position:relative}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}.spinner{border:2.5px solid var(--color-border);border-top-color:var(--color-green);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}.spinner-lg{border-width:3px;width:40px;height:40px}.toast{top:calc(var(--safe-area-top) + 16px);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-sm);z-index:200;animation:fadeInDown var(--transition-base) ease-out;box-shadow:var(--shadow-lg);text-align:center;max-width:calc(100% - 32px);padding:10px 20px;font-weight:500;position:fixed;left:50%;transform:translate(-50%)}
