:root{--brand-primary: #1976D2;--brand-primary-dark: #0D47A1;--brand-primary-light: #64B5F6;--brand-accent: #43A047;--brand-accent-light: #66BB6A;--brand-navy: #1A237E;--brand-bg: #F5F9FF;--brand-surface: #ffffff;--brand-border: #D6E4F0;--brand-text: #263238;--brand-text-muted: #546E7A;--brand-code-bg: #0D1B2A;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;color:var(--brand-text);background:var(--brand-bg);line-height:1.6}.app{min-height:100vh;display:flex;flex-direction:column}.section{padding:60px 20px;max-width:900px;margin:0 auto;width:100%}.border-section{border-bottom:1px solid var(--brand-border)}.hero{text-align:center;padding-top:60px;padding-bottom:60px;background:linear-gradient(180deg,#E3F2FD 0%,var(--brand-bg) 100%);max-width:100%;border-bottom:1px solid var(--brand-border)}.hero-inner{max-width:900px;margin:0 auto;padding:0 20px}.hero-logo{width:100px;height:auto;margin-bottom:16px;filter:drop-shadow(0 4px 12px rgba(25,118,210,.2))}.hero h1{font-size:2.4rem;font-weight:700;color:var(--brand-navy);margin-bottom:8px}.hero .subtitle{font-size:1.15rem;color:var(--brand-text-muted);margin-bottom:40px}.try-widget{background:var(--brand-surface);border:2px solid var(--brand-border);border-radius:var(--radius-md);padding:32px;max-width:500px;margin:0 auto;box-shadow:0 2px 12px #1976d214}.try-widget label{font-size:.85rem;color:var(--brand-text-muted);text-transform:uppercase;letter-spacing:1px;display:block;margin-bottom:8px}.try-input-row{display:flex;gap:12px;margin-bottom:16px}.try-input{flex:1;padding:14px 16px;border:2px solid var(--brand-border);border-radius:var(--radius-sm);font-size:1.1rem;outline:none;transition:border-color .2s,box-shadow .2s}.try-input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px #1976d21f}.try-btn{padding:14px 28px;background:var(--brand-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:1rem;cursor:pointer;font-weight:600;min-width:100px;display:flex;align-items:center;justify-content:center;transition:background .2s,box-shadow .2s}.try-btn:hover{background:var(--brand-primary-dark);box-shadow:0 2px 8px #0d47a140}.try-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.try-result{background:#e8f5e9;border:1px dashed var(--brand-accent);border-radius:var(--radius-sm);padding:16px;font-family:SF Mono,Fira Code,monospace;font-size:.9rem;color:#1b5e20}.try-result pre{white-space:pre-wrap;word-break:break-word}.try-error{background:#fff3e0;border:1px dashed #FF9800;border-radius:var(--radius-sm);padding:12px 16px;color:#e65100;font-size:.9rem;margin-bottom:12px}.steps{display:flex;gap:24px;margin-top:32px}.step{flex:1;background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--radius-md);padding:24px;text-align:center;transition:box-shadow .2s,border-color .2s}.step:hover{border-color:var(--brand-primary-light);box-shadow:0 4px 16px #1976d21a}.step-num{width:36px;height:36px;background:var(--brand-primary);color:#fff;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;margin-bottom:12px}.step h3{font-size:1rem;margin-bottom:8px;color:var(--brand-navy)}.step p{font-size:.85rem;color:var(--brand-text-muted)}.code-block{background:var(--brand-code-bg);color:#e2e8f0;border-radius:var(--radius-sm);padding:24px;font-family:SF Mono,Fira Code,monospace;font-size:.85rem;overflow-x:auto;margin-top:20px;line-height:1.7;border:1px solid #1E3A5F}.code-block .method{color:var(--brand-accent-light)}.code-block .url{color:var(--brand-primary-light)}.code-block .comment{color:#90a4ae}.code-block .key{color:#ce93d8}.code-block .val{color:#ffd54f}.code-example-heading{margin-top:24px;font-size:.95rem;color:var(--brand-text-muted)}.pricing-grid{display:flex;gap:24px;margin-top:32px;justify-content:center}.price-card{flex:0 1 270px;background:var(--brand-surface);border:2px solid var(--brand-border);border-radius:var(--radius-lg);padding:28px;text-align:center;transition:border-color .2s,box-shadow .2s}.price-card:hover{border-color:var(--brand-primary-light);box-shadow:0 4px 20px #1976d21a}.price-card.featured{border-color:var(--brand-primary);box-shadow:0 4px 20px #1976d226;position:relative}.price-card.featured:before{content:"Most Popular";position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--brand-primary);color:#fff;font-size:.75rem;font-weight:600;padding:4px 16px;border-radius:12px;letter-spacing:.5px}.price-card h3{font-size:1.2rem;margin-bottom:4px;color:var(--brand-navy)}.price-card .price{font-size:2rem;font-weight:700;margin:12px 0;color:var(--brand-primary-dark)}.price-period{font-size:1rem;font-weight:400;color:var(--brand-text-muted)}.price-annual{font-size:.85rem;color:var(--brand-text-muted);margin-bottom:8px}.card-cta-btn{display:inline-block;margin-top:16px;padding:10px 24px;background:var(--brand-primary);color:#fff;text-decoration:none;border-radius:var(--radius-sm);font-weight:600;font-size:.9rem;transition:background .2s,box-shadow .2s}.card-cta-btn:hover{background:var(--brand-primary-dark);box-shadow:0 2px 8px #0d47a140}.price-card ul{list-style:none;text-align:left;margin-top:16px}.price-card li{list-style:none;padding:6px 0;font-size:.9rem;color:var(--brand-text-muted);border-bottom:1px solid #EEF2F6}.price-card li:before{content:"✓ ";color:var(--brand-accent);font-weight:700}.cta-section{text-align:center;margin-top:40px}.cta-section p{color:var(--brand-text-muted);margin-bottom:16px}.cta-btn{display:inline-block;padding:14px 32px;background:var(--brand-accent);color:#fff;text-decoration:none;border-radius:var(--radius-sm);font-weight:600;font-size:1rem;transition:background .2s,box-shadow .2s}.cta-btn:hover{background:#2e7d32;box-shadow:0 2px 8px #2e7d324d}.footer{text-align:center;padding:40px 20px;color:var(--brand-text-muted);font-size:.85rem;border-top:1px solid var(--brand-border);margin-top:auto;background:linear-gradient(180deg,var(--brand-bg) 0%,#E3F2FD 100%)}.trust-banner{text-align:center;padding:48px 20px;max-width:900px;margin:0 auto;width:100%}.trust-banner h2{font-size:1.3rem;color:var(--brand-navy);margin-bottom:8px}.trust-banner p{color:var(--brand-text-muted);font-size:.95rem;max-width:640px;margin:0 auto 20px;line-height:1.6}.trust-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:16px}.trust-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:20px;font-size:.82rem;color:var(--brand-text-muted);white-space:nowrap}.trust-badge-icon{font-size:1rem}.trust-links{margin-top:16px;font-size:.82rem}.trust-links a{color:var(--brand-primary);text-decoration:none;margin:0 8px}.trust-links a:hover{text-decoration:underline}.footer-links{margin-top:8px}.footer-links a{color:var(--brand-text-muted);text-decoration:none}.footer-links a:hover{color:var(--brand-primary);text-decoration:underline}.footer-sep{margin:0 8px;color:var(--brand-border)}h2{font-size:1.6rem;margin-bottom:8px;color:var(--brand-navy)}.section-sub{color:var(--brand-text-muted);margin-bottom:24px}.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}.user-bar{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-bottom:16px}.user-email{font-size:.8rem;color:var(--brand-text-muted)}.dashboard-link{background:none;border:1px solid var(--brand-primary);color:var(--brand-primary);padding:6px 16px;border-radius:var(--radius-sm);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .2s,color .2s}.dashboard-link:hover{background:var(--brand-primary);color:#fff}.annual-link{display:block;margin-top:8px;background:none;border:none;color:var(--brand-text-muted);font-size:.8rem;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.annual-link:hover{color:var(--brand-primary)}.annual-link:disabled{opacity:.5;cursor:not-allowed}.current-plan{opacity:.7;cursor:default;background:var(--brand-text-muted)}.current-plan:hover{background:var(--brand-text-muted);box-shadow:none}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:var(--brand-surface);border-radius:var(--radius-lg);padding:32px;max-width:420px;width:100%;position:relative;box-shadow:0 8px 32px #00000026;max-height:90vh;overflow-y:auto}.modal-close{position:absolute;top:12px;right:16px;background:none;border:none;font-size:1.5rem;color:var(--brand-text-muted);cursor:pointer;line-height:1;padding:4px}.modal-close:hover{color:var(--brand-text)}.auth-modal h2{text-align:center;margin-bottom:4px}.auth-subtitle{text-align:center;color:var(--brand-text-muted);font-size:.9rem;margin-bottom:24px}.google-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:12px;border:2px solid var(--brand-border);border-radius:var(--radius-sm);background:#fff;font-size:.95rem;font-weight:500;cursor:pointer;transition:border-color .2s,box-shadow .2s;color:var(--brand-text)}.google-btn:hover{border-color:var(--brand-primary-light);box-shadow:0 2px 8px #1976d21a}.google-btn:disabled{opacity:.6;cursor:not-allowed}.auth-divider{display:flex;align-items:center;margin:20px 0;gap:12px}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--brand-border)}.auth-divider span{font-size:.8rem;color:var(--brand-text-muted);text-transform:uppercase;letter-spacing:1px}.auth-input{width:100%;padding:12px 16px;border:2px solid var(--brand-border);border-radius:var(--radius-sm);font-size:1rem;margin-bottom:12px;outline:none;transition:border-color .2s;box-sizing:border-box}.auth-input:focus{border-color:var(--brand-primary)}.auth-error{background:#fff3e0;border:1px solid #FF9800;border-radius:var(--radius-sm);padding:10px 14px;color:#e65100;font-size:.85rem;margin-bottom:12px}.auth-submit{width:100%;padding:12px;background:var(--brand-primary);color:#fff;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.auth-submit:hover{background:var(--brand-primary-dark)}.auth-submit:disabled{opacity:.7;cursor:not-allowed}.auth-toggle{text-align:center;margin-top:16px;font-size:.85rem;color:var(--brand-text-muted)}.auth-toggle-btn{background:none;border:none;color:var(--brand-primary);font-weight:600;cursor:pointer;font-size:.85rem}.auth-toggle-btn:hover{text-decoration:underline}.dashboard-modal h2{text-align:center;margin-bottom:20px}.dashboard-loading{text-align:center;color:var(--brand-text-muted);padding:20px}.dashboard-error{text-align:center;color:#e65100;padding:16px}.dashboard-retry{margin-top:8px;padding:8px 20px;background:var(--brand-primary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem}.api-key-display{background:var(--brand-code-bg);border-radius:var(--radius-sm);padding:16px;margin-bottom:20px}.api-key-value{display:block;color:#66bb6a;font-size:.85rem;word-break:break-all;margin-bottom:10px;font-family:SF Mono,Fira Code,monospace}.api-key-actions{display:flex;gap:8px}.key-action-btn{padding:6px 14px;background:#ffffff1a;color:#e2e8f0;border:1px solid rgba(255,255,255,.15);border-radius:6px;font-size:.8rem;cursor:pointer;transition:background .2s}.key-action-btn:hover{background:#fff3}.key-copy-btn{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.key-copy-btn:hover{background:var(--brand-primary-dark)}.dashboard-stats{margin-bottom:20px}.stat-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--brand-border)}.stat-label{color:var(--brand-text-muted);font-size:.9rem}.stat-value{font-weight:600;font-size:.9rem;color:var(--brand-text)}.usage-bar{height:8px;background:var(--brand-border);border-radius:4px;margin-top:8px;overflow:hidden}.usage-fill{height:100%;background:var(--brand-accent);border-radius:4px;transition:width .3s ease}.dashboard-example{margin-bottom:20px}.example-label{font-size:.8rem;color:var(--brand-text-muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}.dashboard-code{font-size:.75rem;padding:14px}.dashboard-signout{width:100%;padding:10px;background:none;border:1px solid var(--brand-border);border-radius:var(--radius-sm);color:var(--brand-text-muted);font-size:.85rem;cursor:pointer;transition:border-color .2s,color .2s}.dashboard-signout:hover{border-color:#e65100;color:#e65100}.auth-loading-screen{display:flex;align-items:center;justify-content:center;min-height:100vh}.dashboard-header{background:var(--brand-surface);border-bottom:1px solid var(--brand-border);padding:12px 20px;position:sticky;top:0;z-index:100;box-shadow:0 1px 4px #0000000f}.dashboard-header-inner{max-width:900px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.dashboard-brand{display:flex;align-items:center;gap:10px}.dashboard-logo{width:40px;height:auto}.dashboard-title{font-size:1.1rem;font-weight:700;color:var(--brand-navy)}.dashboard-user{display:flex;align-items:center;gap:12px}.plan-badge{display:inline-block;background:var(--brand-primary);color:#fff;font-size:.7rem;font-weight:700;padding:3px 10px;border-radius:12px;letter-spacing:.5px;text-transform:uppercase}.api-key-card{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--radius-md);overflow:hidden;box-shadow:0 2px 8px #0000000a}.usage-card{background:var(--brand-surface);border:1px solid var(--brand-border);border-radius:var(--radius-md);padding:24px;box-shadow:0 2px 8px #0000000a}.usage-percent{font-size:.85rem;color:var(--brand-text-muted);margin-top:6px;margin-bottom:8px;text-align:right}.hero-compact{padding-top:24px;padding-bottom:40px}@media(max-width:640px){.steps{flex-direction:column}.pricing-grid{flex-direction:column;align-items:center}.price-card{width:100%;max-width:320px}.hero h1{font-size:1.8rem}.hero-logo{width:72px}.try-input-row{flex-direction:column}.dashboard-header-inner{flex-direction:column;gap:10px;text-align:center}.dashboard-user{flex-wrap:wrap;justify-content:center}}
