.home{width:100%;min-height:100vh;background-color:var(--brand-blue);display:flex;flex-direction:column}.home-content{flex:1;display:flex;align-items:center;justify-content:center;padding:6rem 2rem}.home-inner{max-width:800px}.home-headline{font-size:clamp(3rem,12vw,7rem);font-weight:800;line-height:1;margin:0 0 2rem;letter-spacing:-.03em;color:#fff}.home-body{font-size:clamp(1.5rem,4vw,2.25rem);font-weight:500;line-height:1.5;margin:0 0 3rem;color:#fffc}.home-cta{display:inline-block;background-color:#fff;color:var(--brand-blue);font-size:1.125rem;font-weight:600;padding:1rem 2.5rem;border-radius:4px;text-decoration:none;transition:transform .2s,box-shadow .2s}.home-cta:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000004d;text-decoration:none;color:var(--brand-blue)}.home-footer{padding:1.5rem 2rem;text-align:center}.home-footer span{font-size:.875rem;color:#ffffff80;font-weight:500}@media (max-width: 768px){.home-content{padding:4rem 1.5rem}}.onboarding{min-height:100vh;background-color:var(--brand-blue);display:flex;align-items:center;justify-content:center;padding:2rem}.onboarding-loading{color:#ffffffb3;font-size:1.125rem}.onboarding-content{max-width:500px;text-align:center;display:flex;flex-direction:column;align-items:center}.onboarding-headline{font-size:clamp(2rem,6vw,3rem);font-weight:800;line-height:1.1;margin:0 0 1rem;letter-spacing:-.02em;color:#fff}.onboarding-subtext{font-size:1.25rem;color:#ffffffbf;margin:0 0 2.5rem}.onboarding-benefits{list-style:none;padding:0;margin:0 0 2.5rem;text-align:left}.onboarding-benefits li{font-size:1.125rem;color:#ffffffd9;padding:.5rem 0 .5rem 1.5rem;position:relative}.onboarding-benefits li:before{content:"•";position:absolute;left:0;color:#ffffff80}.onboarding-action{margin-bottom:2rem;display:flex;justify-content:center}.onboarding-disclaimer{font-size:.875rem;color:#ffffff80;margin:0;text-align:center}.dashboard{min-height:100vh;background-color:var(--bg-primary);padding-top:80px}.dashboard-loading{display:flex;align-items:center;justify-content:center;min-height:50vh;color:var(--text-secondary);font-size:1.125rem}.dashboard-content{max-width:800px;margin:0 auto;padding:3rem 2rem}.dashboard-header{margin-bottom:3rem}.dashboard-headline{font-size:clamp(1.5rem,4vw,2.5rem);font-weight:700;color:var(--brand-blue);margin:0 0 .5rem;letter-spacing:-.02em}.dashboard-status{font-size:1.125rem;color:var(--text-secondary);margin:0}.dashboard-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:3rem}.dash-card{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem}.dash-card h2{font-size:1rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin:0 0 1.25rem}.status-list{display:flex;flex-direction:column;gap:1rem}.status-row{display:flex;justify-content:space-between;align-items:center}.status-row span:first-child{color:var(--text-primary);font-weight:500}.status-indicator{font-size:.875rem;font-weight:600;padding:.25rem .75rem;border-radius:4px}.status-indicator.on{background-color:#22c55e1a;color:#16a34a}.status-indicator.off{background-color:#ef44441a;color:#dc2626}.wallet-details{display:flex;flex-direction:column;gap:1rem}.wallet-row{display:flex;justify-content:space-between;align-items:center}.wallet-label{color:var(--text-secondary);font-weight:500}.wallet-value{font-family:SF Mono,Consolas,monospace;font-size:.875rem;color:var(--text-primary);background-color:var(--bg-light);padding:.25rem .5rem;border-radius:4px}.wallet-value.not-set{font-family:inherit;color:var(--text-muted);background-color:transparent;padding:0}.wallet-empty{color:var(--text-muted);font-size:.9rem;margin:0}.dashboard-action{text-align:center;padding:2rem;background-color:var(--bg-light);border-radius:8px}.action-button{background-color:var(--brand-blue);color:#fff;font-size:1rem;font-weight:600;padding:.875rem 2rem;border:none;border-radius:4px;cursor:pointer;transition:background-color .2s}.action-button:hover{background-color:var(--brand-blue-light)}.action-hint{margin:1rem 0 0;font-size:.9rem;color:var(--text-secondary)}@media (max-width: 768px){.dashboard-content{padding:2rem 1.5rem}.dashboard-cards{grid-template-columns:1fr}}.layout{min-height:100vh;display:flex;flex-direction:column}.navbar{position:absolute;top:0;left:0;right:0;z-index:100;padding:1.25rem 0;transition:background-color .3s}.navbar-transparent{background-color:transparent}.navbar-transparent .nav-brand,.navbar-transparent .nav-link,.navbar-transparent .user-name{color:var(--text-on-dark)}.navbar-transparent .btn-logout{color:var(--text-on-dark);border-color:#fff6}.navbar-transparent .btn-logout:hover{background-color:#ffffff1a;border-color:#fff9}.navbar-solid{background-color:var(--brand-blue);position:relative}.navbar-solid .nav-brand,.navbar-solid .nav-link,.navbar-solid .user-name{color:var(--text-on-dark)}.navbar-solid .btn-logout{color:var(--text-on-dark);border-color:#fff6}.navbar-solid .btn-logout:hover{background-color:#ffffff1a;border-color:#fff9}.nav-container{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.nav-brand{font-size:1.25rem;font-weight:700;letter-spacing:-.01em}.nav-brand:hover{text-decoration:none}.nav-links{display:flex;align-items:center;gap:2rem}.nav-link{font-weight:500;transition:opacity .2s}.nav-link:hover{opacity:.8;text-decoration:none}.user-menu{display:flex;align-items:center;gap:1rem}.user-name{font-weight:500;font-size:.9rem}.btn-logout{background-color:transparent;border:1px solid;padding:6px 16px;font-size:.875rem}.main-content{flex:1;width:100%}.footer{background-color:var(--brand-blue);padding:2rem;text-align:center}.footer p{margin:0;font-size:.875rem;color:var(--text-on-dark);opacity:.7;font-weight:500}.btn-primary{background-color:var(--primary-color);color:#fff;padding:12px 32px;border-radius:4px;font-weight:500;display:inline-block}.btn-primary:hover{background-color:var(--primary-hover);text-decoration:none;box-shadow:var(--shadow-hover)}.btn-secondary{background-color:var(--bg-primary);color:var(--primary-color);border:1px solid var(--primary-color)}.btn-secondary:hover{background-color:var(--primary-color);color:#fff}.google-login-button{display:flex;align-items:center;justify-content:center;gap:12px;background-color:#fff;color:var(--text-primary);border:1px solid var(--border-color);padding:12px 24px;font-size:16px;font-weight:500;border-radius:4px;box-shadow:var(--shadow);transition:all .2s;width:100%;max-width:400px}.google-login-button:hover:not(:disabled){box-shadow:var(--shadow-hover);background-color:var(--bg-secondary)}.google-icon{width:24px;height:24px}.home-page{max-width:1200px;margin:0 auto;padding:3rem 1.5rem}.hero{text-align:center;padding:4rem 0}.hero-title{font-size:3rem;margin-bottom:1rem;color:var(--text-primary)}.hero-emoji{font-size:3.5rem;display:block;margin-bottom:1rem}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary)}.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin:4rem 0}.feature-card{background-color:var(--bg-primary);padding:2rem;border-radius:8px;box-shadow:var(--shadow);text-align:center;transition:transform .2s,box-shadow .2s}.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-hover)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{margin-bottom:1rem;color:var(--text-primary)}.how-it-works{text-align:center;margin:4rem 0}.how-it-works h2{font-size:2rem;margin-bottom:3rem}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.step{text-align:center}.step-number{display:inline-flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background-color:var(--primary-color);color:#fff;font-size:1.5rem;font-weight:600;margin-bottom:1rem}.cta{text-align:center;margin:4rem 0}.about{background-color:var(--bg-primary);padding:3rem;border-radius:8px;margin:4rem 0;box-shadow:var(--shadow)}.about h2{margin-bottom:1.5rem}@media (max-width: 768px){.nav-container{flex-direction:column;gap:1rem}.hero-title{font-size:2rem}.features,.steps,.dashboard-grid,.next-steps-grid{grid-template-columns:1fr}.onboarding-container{padding:2rem 1.5rem}.user-menu{flex-direction:column;gap:.5rem}}.setup-container{max-width:800px;margin:0 auto;padding:2rem}.progress-steps{display:flex;justify-content:space-between;margin:2rem 0;padding:0 1rem}.progress-steps .step{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1;position:relative}.progress-steps .step:not(:last-child):after{content:"";position:absolute;top:15px;left:60%;width:80%;height:2px;background-color:var(--border-color)}.progress-steps .step.completed:not(:last-child):after{background-color:var(--success-color)}.step-number{width:32px;height:32px;border-radius:50%;background-color:var(--bg-secondary);border:2px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-weight:600;z-index:1}.step.active .step-number{background-color:var(--primary-color);color:#fff;border-color:var(--primary-color)}.step.completed .step-number{background-color:var(--success-color);color:#fff;border-color:var(--success-color)}.step-label{font-size:.875rem;color:var(--text-secondary);text-align:center}.step.active .step-label{color:var(--text-primary);font-weight:600}.step-content{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:2rem;margin-top:2rem}.step-content h2{margin-top:0;margin-bottom:1rem}.radio-group{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0}.radio-option{display:flex;gap:1rem;padding:1rem;border:2px solid var(--border-color);border-radius:8px;cursor:pointer;transition:all .2s}.radio-option:hover{border-color:var(--primary-color);background-color:var(--bg-secondary)}.radio-option input[type=radio]{margin-top:.25rem}.address-preview{margin-top:.5rem}.address-preview code{font-size:.875rem;color:var(--text-secondary)}.info-box,.warning-box{padding:1rem;border-radius:8px;margin:1.5rem 0}.info-box{background-color:#e3f2fd;border:1px solid #2196f3;color:#1565c0}.warning-box{background-color:#fff3e0;border:1px solid #ff9800;color:#e65100}.info-box h3,.warning-box h3{margin-top:0;margin-bottom:.5rem}.address-display{font-family:Courier New,monospace;background-color:var(--bg-secondary);padding:.25rem .5rem;border-radius:4px;font-size:.875rem}.auth-callback-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem}.auth-callback-container{text-align:center;max-width:400px;width:100%}.auth-callback-container h2{margin-bottom:.5rem}.auth-callback-container .retry-button{margin-top:1.5rem;background-color:var(--primary-color);color:#fff;padding:12px 32px}.auth-callback-container .retry-button:hover{background-color:var(--primary-hover)}.success-icon,.error-icon{font-size:4rem;text-align:center;margin:2rem 0 1rem}.success-icon{color:var(--success-color)}.error-icon{color:var(--error-color)}.button-group{display:flex;gap:1rem;margin-top:2rem;justify-content:flex-end}.wallet-connect-container{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;background-color:var(--bg-secondary);border-radius:8px;margin:1rem 0}.wallet-info{display:flex;align-items:center;gap:1rem}.wallet-label{font-weight:600;color:var(--text-primary)}.wallet-address{font-family:Courier New,monospace;background-color:var(--bg-primary);padding:.25rem .5rem;border-radius:4px;font-size:.875rem}.approve-container{max-width:700px;margin:0 auto;padding:2rem}.approval-content,.success-content,.error-content{background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;padding:2rem;margin-top:2rem}.approval-details{background-color:var(--bg-secondary);padding:1.5rem;border-radius:8px;margin:1.5rem 0}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.detail-row:last-child{border-bottom:none}.detail-row .label{font-weight:600;color:var(--text-secondary)}.detail-row .value{color:var(--text-primary)}.loading{text-align:center;padding:3rem}.spinner{width:50px;height:50px;margin:0 auto 1rem;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.help-text{font-size:.875rem;color:var(--text-secondary);margin-top:.5rem}.link{color:var(--primary-color);text-decoration:underline}.link:hover{text-decoration:none}@media (max-width: 768px){.progress-steps{flex-direction:column;align-items:flex-start;gap:1.5rem}.progress-steps .step{flex-direction:row;width:100%}.progress-steps .step:not(:last-child):after{display:none}.button-group{flex-direction:column}.button-group button{width:100%}}:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.4;font-weight:400;--brand-blue: #211698;--brand-blue-light: #2a1bb8;--brand-blue-dark: #1a1278;--primary-color: #211698;--primary-hover: #2a1bb8;--secondary-color: #34a853;--danger-color: #ea4335;--warning-color: #fbbc04;--text-primary: #1a1a1a;--text-secondary: #666666;--text-on-dark: #ffffff;--text-muted: #999999;--bg-primary: #ffffff;--bg-dark: #211698;--bg-light: #f5f5f5;--bg-secondary: #f5f5f5;--border-color: #e0e0e0;--shadow: 0 2px 8px rgba(33, 22, 152, .08);--shadow-hover: 0 4px 16px rgba(33, 22, 152, .15);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;min-width:320px;min-height:100vh;background-color:var(--bg-primary);color:var(--text-primary)}#root{min-height:100vh;display:flex;flex-direction:column}a{color:var(--primary-color);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-hover);text-decoration:underline}button{cursor:pointer;border:none;border-radius:4px;font-family:inherit;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s}button:disabled{opacity:.6;cursor:not-allowed}h1,h2,h3,h4,h5,h6{color:var(--text-primary);margin-bottom:.5em}p{margin-bottom:1em;color:var(--text-secondary)}code{font-family:Courier New,monospace;background-color:var(--bg-secondary);padding:2px 6px;border-radius:3px;font-size:.9em}.loading{text-align:center;padding:40px;color:var(--text-secondary)}.loading-container{display:flex;justify-content:center;align-items:center;min-height:400px}
