:root{--color-brand-50: #eff7ff;--color-brand-100: #dbeafe;--color-brand-200: #bfdbfe;--color-brand-300: #93c5fd;--color-brand-400: #60a5fa;--color-brand-500: #3b82f6;--color-brand-600: #2563eb;--color-brand-700: #1d4ed8;--color-brand-800: #1e40af;--color-brand-900: #1e3a8a;--color-admin-500: #ef4444;--color-admin-600: #dc2626;--color-admin-700: #b91c1c;--color-success-500: #10b981;--color-success-600: #059669;--color-success-bg: #ecfdf5;--color-warning-500: #f59e0b;--color-warning-600: #d97706;--color-warning-bg: #fffbeb;--color-error-500: #ef4444;--color-error-600: #dc2626;--color-error-bg: #fef2f2;--color-gray-50: #f9fafb;--color-gray-100: #f3f4f6;--color-gray-200: #e5e7eb;--color-gray-300: #d1d5db;--color-gray-400: #9ca3af;--color-gray-500: #6b7280;--color-gray-600: #4b5563;--color-gray-700: #374151;--color-gray-800: #1f2937;--color-gray-900: #111827;--color-bg-page: var(--color-gray-50);--color-bg-surface: #ffffff;--color-bg-subtle: var(--color-gray-100);--color-fg-primary: var(--color-gray-900);--color-fg-secondary: var(--color-gray-700);--color-fg-muted: var(--color-gray-500);--color-fg-disabled: var(--color-gray-400);--color-border: var(--color-gray-200);--color-border-strong: var(--color-gray-300);--color-primary: var(--color-brand-600);--color-primary-hover: var(--color-brand-700);--color-on-primary: #ffffff;--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--radius-none: 0;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-none: none;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .08), 0 2px 4px -2px rgb(0 0 0 / .04);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .08), 0 4px 6px -4px rgb(0 0 0 / .04);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .05);--shadow-focus: 0 0 0 3px rgb(37 99 235 / .15);--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, Consolas, "Courier New", monospace;--text-xs: 11px;--text-sm: 13px;--text-base: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 22px;--text-2xl: 28px;--text-3xl: 36px;--text-4xl: 48px;--leading-tight: 1.2;--leading-normal: 1.5;--leading-relaxed: 1.7;--weight-regular: 400;--weight-medium: 500;--weight-semi: 600;--weight-bold: 700;--transition-fast: .12s ease-out;--transition-base: .2s ease-out;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--z-tooltip: 600;--bp-sm: 640px;--touch-min: 44px;--container-max: 1100px}*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{font-size:var(--text-base);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-sans);color:var(--color-fg-primary);background:var(--color-bg-page);min-height:100vh}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{margin:0;font-weight:var(--weight-semi);line-height:var(--leading-tight)}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}h4{font-size:var(--text-md)}p{margin:0}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}a:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-sm)}button{font:inherit;cursor:pointer}button:focus-visible{outline:none;box-shadow:var(--shadow-focus)}button:disabled{cursor:not-allowed;opacity:.6}input,select,textarea{font:inherit;color:inherit;min-height:var(--touch-min);font-size:16px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--shadow-focus)}img{max-width:100%;height:auto}ul,ol{margin:0;padding:0;list-style:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.kui-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--touch-min);min-width:var(--touch-min);padding:var(--space-2) var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--weight-semi);line-height:var(--leading-tight);cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);text-decoration:none;-webkit-user-select:none;user-select:none}.kui-btn--primary{background:var(--color-primary);color:var(--color-on-primary);border-color:var(--color-primary)}.kui-btn--primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.kui-btn--secondary{background:var(--color-bg-surface);color:var(--color-fg-primary);border-color:var(--color-border-strong)}.kui-btn--secondary:hover:not(:disabled){background:var(--color-bg-subtle)}.kui-btn--ghost{background:transparent;color:var(--color-fg-secondary);border-color:transparent}.kui-btn--ghost:hover:not(:disabled){background:var(--color-bg-subtle)}.kui-btn--danger{background:var(--color-error-500);color:#fff;border-color:var(--color-error-500)}.kui-btn--danger:hover:not(:disabled){background:var(--color-error-600);border-color:var(--color-error-600)}.kui-btn--sm{padding:var(--space-1) var(--space-3);font-size:var(--text-sm)}.kui-btn--lg{padding:var(--space-3) var(--space-6);font-size:var(--text-md)}.kui-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:clamp(var(--space-3),4vw,var(--space-6))}.kui-card--elevated{border:none;box-shadow:var(--shadow-md)}.kui-card--flat{border:none;background:var(--color-bg-subtle)}.kui-badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-semi);border-radius:var(--radius-full);background:var(--color-bg-subtle);color:var(--color-fg-secondary);border:1px solid var(--color-border)}.kui-badge--success{background:var(--color-success-bg);color:var(--color-success-600);border-color:var(--color-success-500)}.kui-badge--warning{background:var(--color-warning-bg);color:var(--color-warning-600);border-color:var(--color-warning-500)}.kui-badge--error{background:var(--color-error-bg);color:var(--color-error-600);border-color:var(--color-error-500)}.kui-badge--brand{background:var(--color-brand-50);color:var(--color-brand-700);border-color:var(--color-brand-200)}.kui-stack{display:flex;flex-direction:column;gap:var(--gap-stack, var(--space-4))}.kui-cluster{display:flex;flex-wrap:wrap;gap:var(--gap-cluster, var(--space-2));align-items:center}.kui-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(var(--col-min, 240px),1fr));gap:var(--gap-grid, var(--space-4))}.kui-container{width:100%;max-width:var(--container-max);margin-inline:auto;padding:clamp(var(--space-4),5vw,var(--space-8))}:root{--fg: #1a1a1a;--muted: #666;--border: #ddd;--bg: #f7f7f8;--primary: #0b6bcb}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--fg)}.container{max-width:480px;margin:0 auto;padding:24px 20px 48px}.brand-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.brand-header img{width:48px;height:48px;border-radius:8px}.brand-header h1{margin:0;font-size:20px}.form-field{display:flex;flex-direction:column;margin-bottom:16px}.form-field label{font-size:13px;margin-bottom:4px;color:var(--muted)}.form-field input{padding:10px 12px;border:1px solid var(--border);border-radius:6px;min-height:44px;font-size:16px}.form-error{color:#b00020;font-size:13px;margin-top:4px}.btn{width:100%;min-height:44px;padding:12px;border-radius:6px;border:none;font-size:16px;font-weight:600;cursor:pointer}.btn-primary{background:var(--primary);color:#fff}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-wallet{background:#1a1a1a;color:#fff;margin-bottom:8px}.btn-wallet:disabled{opacity:.4;cursor:not-allowed}.consent-row{display:flex;gap:8px;align-items:flex-start;margin:12px 0}.consent-row input{margin-top:3px;min-height:auto}.consent-row label{font-size:13px;color:var(--muted)}.loading,.error-state{text-align:center;padding:48px 16px;color:var(--muted)}.landing{--bg-dark: #09090b;--fg-dark: #fafafa;--muted-dark: #a1a1aa;--border-dark: rgba(255, 255, 255, .1);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);background:var(--bg-dark);color:var(--fg-dark);min-height:100vh;font-family:Inter,system-ui,sans-serif;overflow-x:hidden}.landing-header{display:flex;align-items:center;justify-content:space-between;max-width:1080px;margin:0 auto;padding:24px;border-bottom:1px solid var(--border-dark);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);position:sticky;top:0;z-index:10;background:#09090bb3}.landing-brand{display:flex;align-items:center;gap:12px}.landing-logo{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:20px;box-shadow:0 4px 12px #3b82f64d}.landing-brand-name{font-weight:700;font-size:19px;letter-spacing:.5px}.landing-nav-cta{display:inline-flex;align-items:center;padding:10px 20px;border-radius:999px;font-size:14px;font-weight:600;color:var(--fg-dark);text-decoration:none;background:var(--glass-bg);border:1px solid var(--glass-border);transition:all .2s ease;cursor:pointer}.landing-nav-cta:hover{background:#ffffff1a;transform:translateY(-1px)}.landing-hero{max-width:800px;margin:0 auto;padding:clamp(64px,12vw,120px) 24px clamp(40px,8vw,64px);text-align:center;position:relative}.landing-hero:before{content:"";position:absolute;top:-20%;left:50%;transform:translate(-50%);width:600px;height:600px;background:radial-gradient(circle,#3b82f626,#0000 70%);z-index:-1;pointer-events:none}.landing-hero h1{font-size:clamp(36px,7vw,64px);line-height:1.1;margin:0 0 24px;font-weight:800;letter-spacing:-1px}.landing-accent{background:linear-gradient(135deg,#60a5fa,#c084fc);-webkit-background-clip:text;background-clip:text;color:transparent}.landing-sub{font-size:clamp(17px,2.5vw,21px);color:var(--muted-dark);max-width:640px;margin:0 auto 40px;line-height:1.6}.landing-cta{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 36px;border-radius:16px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;text-decoration:none;font-size:18px;font-weight:600;border:none;cursor:pointer;box-shadow:0 8px 24px #2563eb4d;transition:all .3s cubic-bezier(.4,0,.2,1)}.landing-cta:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 12px 32px #2563eb66}.landing-microcopy{margin-top:20px;font-size:14px;color:var(--muted-dark);opacity:.8}.landing-features{max-width:1080px;margin:0 auto;padding:clamp(40px,8vw,80px) 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px}.landing-feature{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:20px;padding:32px;text-align:left;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:transform .3s ease,background .3s ease}.landing-feature:hover{transform:translateY(-4px);background:#ffffff0d;border-color:#ffffff26}.landing-feature-icon{font-size:40px;margin-bottom:20px;display:inline-block;padding:12px;background:#ffffff08;border-radius:16px;border:1px solid var(--glass-border)}.landing-feature h3{font-size:20px;margin:0 0 12px;font-weight:600}.landing-feature p{margin:0;font-size:16px;line-height:1.6;color:var(--muted-dark)}.landing-howitworks{max-width:760px;margin:0 auto;padding:clamp(40px,8vw,80px) 24px}.landing-howitworks h2{text-align:center;font-size:clamp(28px,5vw,40px);margin:0 0 48px;font-weight:800}.landing-steps{list-style:none;counter-reset:step;padding:0;margin:0;display:flex;flex-direction:column;gap:24px}.landing-steps li{counter-increment:step;position:relative;padding:28px 28px 28px 80px;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:20px;font-size:16px;line-height:1.6;color:var(--muted-dark);transition:border-color .3s ease}.landing-steps li:hover{border-color:#ffffff26}.landing-steps li:before{content:counter(step);position:absolute;left:24px;top:28px;width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;box-shadow:0 4px 12px #3b82f633}.landing-steps li strong{color:var(--fg-dark);display:block;margin-bottom:8px;font-size:18px}.landing-cta-section{max-width:800px;margin:0 auto;padding:clamp(64px,12vw,120px) 24px;text-align:center;position:relative}.landing-cta-section:before{content:"";position:absolute;bottom:-20%;left:50%;transform:translate(-50%);width:600px;height:600px;background:radial-gradient(circle,#8b5cf61a,#0000 70%);z-index:-1;pointer-events:none}.landing-cta-section h2{font-size:clamp(28px,5vw,48px);margin:0 0 20px;font-weight:800}.landing-cta-section p{color:var(--muted-dark);font-size:18px;margin:0 auto 40px;line-height:1.6;max-width:500px}.landing-footer{border-top:1px solid var(--border-dark);padding:40px 24px;font-size:14px;color:var(--muted-dark);background:#0003}.landing-footer-inner{max-width:1080px;margin:0 auto;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;align-items:center}.landing-footer-nav{display:flex;gap:24px;flex-wrap:wrap}.landing-footer-nav a{color:var(--muted-dark);text-decoration:none;transition:color .2s ease}.landing-footer-nav a:hover{color:var(--fg-dark)}.contact-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:100;padding:20px;animation:fadeIn .2s ease-out}.contact-modal{background:#18181b;border:1px solid var(--border-dark);border-radius:24px;width:100%;max-width:480px;padding:32px;position:relative;box-shadow:0 24px 48px #0006;animation:slideUp .3s cubic-bezier(.16,1,.3,1)}.contact-modal-close{position:absolute;top:24px;right:24px;background:transparent;border:none;color:var(--muted-dark);font-size:24px;cursor:pointer;line-height:1;padding:4px;border-radius:50%;transition:background .2s,color .2s}.contact-modal-close:hover{background:#ffffff1a;color:#fff}.contact-modal h2{margin:0 0 8px;font-size:24px;font-weight:700}.contact-modal p{color:var(--muted-dark);margin:0 0 24px;font-size:15px}.contact-modal .form-field label{color:var(--fg-dark)}.contact-modal .form-field input,.contact-modal .form-field textarea{background:#0003;border:1px solid var(--border-dark);color:#fff;border-radius:10px;padding:12px 16px;font-family:inherit;transition:border-color .2s}.contact-modal .form-field input:focus,.contact-modal .form-field textarea:focus{outline:none;border-color:#3b82f6;background:#0006}.contact-modal .form-field textarea{resize:vertical;min-height:100px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.legal-page{background:#fff;min-height:100vh;color:var(--fg)}.legal-header{max-width:720px;margin:0 auto;padding:24px 24px 0}.legal-header h1{font-size:clamp(26px,5vw,34px);margin:16px 0 0}.legal-back{display:inline-block;font-size:14px;color:var(--muted);text-decoration:none;padding:6px 0}.legal-back:hover{color:var(--fg)}.legal-content{max-width:720px;margin:0 auto;padding:16px 24px 64px;font-size:15px;line-height:1.6;color:#2a2a2a}.legal-content section{margin-top:28px}.legal-content h2{font-size:18px;margin:0 0 8px;color:var(--fg)}.legal-content p{margin:0 0 12px}.legal-content ul{margin:0 0 12px;padding-left:22px}.legal-content li{margin-bottom:6px}.legal-content a{color:var(--primary)}.legal-note{font-size:13px;color:var(--muted);font-style:italic}.legal-updated{margin-top:40px;font-size:13px;color:var(--muted);text-align:center}
