body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.navbar{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:1000}.navbar-container{align-items:center;display:flex;gap:1.5rem;justify-content:space-between;margin:0 auto;max-width:1600px;min-height:48px;min-height:var(--nav-h,48px);padding:.375rem 1.5rem}.navbar-brand{cursor:pointer;transition:transform .2s}.navbar-brand:hover{transform:scale(1.02)}.navbar-brand h1{-webkit-text-fill-color:currentColor;color:var(--action);font-family:var(--font-display);font-size:1.125rem;font-weight:600;letter-spacing:-.01em;line-height:1}.navbar-menu{display:flex;flex:1 1;gap:.25rem;justify-content:center}.nav-link{background:#0000;border:none;border-radius:.5rem;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;line-height:1.2;padding:.45rem .9rem;transition:all .2s}.nav-link:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-link.active{background:var(--bg-hover);color:var(--color-blue);font-weight:600}.navbar-actions{align-items:center;display:flex;gap:.625rem}.credits-badge{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:999px;color:var(--text-primary);font-size:.75rem;font-weight:600;line-height:1.3;padding:.25rem .6rem}.nav-mobile-toggle{border:1px solid var(--border-color);border-radius:.5rem;display:none;font-size:1rem}.icon-btn,.nav-mobile-toggle{background:var(--bg-card);color:var(--text-primary);cursor:pointer;height:34px;width:34px}.icon-btn{align-items:center;border:1px solid var(--border-color);border-radius:50%;display:flex;font-size:1.05rem;justify-content:center;transition:all .2s}.icon-btn:hover{box-shadow:var(--shadow-md);transform:scale(1.05)}.profile-menu-container{position:relative}.profile-icon{background:#0000;border:none;cursor:pointer}.user-avatar{align-items:center;background:linear-gradient(135deg,var(--color-blue),var(--color-green));border-radius:50%;box-shadow:var(--shadow-md);color:#fff;display:flex;font-size:.875rem;font-weight:700;height:34px;justify-content:center;transition:transform .2s;width:34px}.user-avatar:hover{transform:scale(1.05)}.profile-dropdown{animation:slideDown .2s ease;background:var(--bg-card);border:1px solid var(--border-color);border-radius:.75rem;box-shadow:var(--shadow-xl);min-width:280px;overflow:hidden;position:absolute;right:0;top:calc(100% + .5rem)}.profile-header{align-items:center;background:linear-gradient(135deg,var(--color-blue),var(--color-green));display:flex;gap:1rem;padding:1.5rem}.user-avatar-large{align-items:center;background:#fff;border-radius:50%;color:var(--color-blue);display:flex;font-size:1.5rem;font-weight:700;height:60px;justify-content:center;width:60px}.user-info{color:#fff;flex:1 1}.user-email{font-size:.95rem;font-weight:600;margin-bottom:.25rem}.user-id{font-size:.75rem;opacity:.9}.profile-divider{background:var(--border-color);height:1px;margin:.25rem 0}.dropdown-item{background:#0000;border:none;color:var(--text-primary);cursor:pointer;font-size:.95rem;font-weight:500;padding:.875rem 1.5rem;text-align:left;transition:all .2s;width:100%}.dropdown-item:hover{background:var(--bg-hover)}.dropdown-item:disabled{cursor:not-allowed;opacity:.6}.dropdown-item:disabled:hover{background:#0000}.dropdown-item.logout{color:var(--color-red)}.dropdown-item.logout:hover{background:#ef44441a}.credit-display{align-items:center;background:var(--bg-primary);display:flex;justify-content:space-between;padding:.875rem 1.5rem}.credit-label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.credit-amount{color:var(--color-blue);font-size:1.125rem;font-weight:700}@media(max-width:768px){.navbar-container{align-items:center;flex-wrap:wrap;gap:.5rem;padding:.5rem 1rem}.nav-mobile-toggle{align-items:center;display:inline-flex;justify-content:center;margin-left:auto}.navbar-menu{align-items:stretch;display:none;flex-direction:column;gap:.25rem;justify-content:flex-start;margin-top:.5rem;order:3;width:100%}.navbar-menu.open{display:flex}.nav-link{font-size:.875rem;padding:.6rem .9rem;text-align:left}.navbar-actions{gap:.5rem;margin-left:.25rem}.credits-badge{font-size:.75rem;padding:.3rem .55rem}}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);margin-top:auto;padding:1.25rem 2rem}.footer-content{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin:0 auto;max-width:1600px}.footer-text{color:var(--text-secondary);font-size:.875rem}.footer-powered{color:var(--text-tertiary);font-size:.8125rem}.footer-links{align-items:center;display:flex;gap:.75rem}.footer-link{color:var(--text-secondary);font-size:.875rem;text-decoration:none;transition:color .2s}.footer-link:hover{color:var(--color-blue)}.footer-separator{color:var(--border-color);font-size:.875rem}@media(max-width:768px){.footer-content{flex-direction:column;text-align:center}}.about-hero{background:linear-gradient(135deg,#0a0a0a,#1f1f1f 55%,#4a3b05);border-radius:1.5rem;box-shadow:var(--shadow-xl);color:#fff;margin-bottom:3rem;overflow:hidden;padding:4rem 2rem;position:relative;text-align:center}.about-hero:before{background:radial-gradient(circle at 20% 20%,#ffffff14 0,#0000 55%);content:"";inset:0;pointer-events:none;position:absolute}.about-hero h1{font-size:3rem;font-weight:800;margin-bottom:.75rem;position:relative;text-shadow:0 2px 10px #0003;z-index:1}.about-subtitle{font-size:1.35rem;font-weight:500;opacity:.95;text-shadow:0 1px 5px #00000026}.about-link,.about-subtitle{position:relative;z-index:1}.about-link a{color:#fff;display:inline-block;font-size:1.1rem;margin-top:10px;text-decoration:none;transition:color .2s}.about-link a:hover{color:var(--bg-hover);text-decoration:underline}.about-section a{color:var(--accent-text);text-decoration:underline;text-underline-offset:2px}.about-section em{color:var(--text-primary);font-style:italic}.about-steps{grid-gap:.75rem;counter-reset:step;display:grid;gap:.75rem;list-style:none;margin:0;padding:0}.about-steps li{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;color:var(--text-secondary);counter-increment:step;font-size:.975rem;line-height:1.6;padding:.9rem 1rem .9rem 3.25rem;position:relative}.about-steps li strong{color:var(--text-primary)}.about-steps li:before{align-items:center;background:var(--action);border-radius:50%;color:var(--action-text);content:counter(step);display:flex;font-size:.85rem;font-weight:700;height:1.6rem;justify-content:center;left:1rem;position:absolute;top:.85rem;width:1.6rem}.about-list{color:var(--text-secondary);font-size:1rem;line-height:1.7;margin:0;padding-left:1.25rem}.about-list li+li{margin-top:.4rem}.about-content{margin:0 auto;max-width:1000px}.about-section{margin-bottom:3rem}.about-section h2{color:var(--text-primary);font-size:1.75rem;margin-bottom:1rem}.about-section p{color:var(--text-secondary);font-size:1.0625rem;line-height:1.7;margin-bottom:1rem}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:2rem}.feature-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:1rem;box-shadow:var(--shadow-sm);overflow:hidden;padding:2rem 1.5rem;position:relative;text-align:center;transition:all .3s ease}.feature-card:before{background:linear-gradient(90deg,var(--color-blue),var(--color-green));content:"";height:4px;left:0;position:absolute;right:0;top:0;transform:scaleX(0);transition:transform .3s ease}.feature-card:hover:before{transform:scaleX(1)}.feature-card:hover{border-color:var(--color-blue-light);box-shadow:0 12px 40px #0000001f;transform:translateY(-8px)}.feature-icon{filter:drop-shadow(0 2px 8px rgba(0,0,0,.1));font-size:3rem;margin-bottom:1rem;transition:transform .3s ease}.feature-card:hover .feature-icon{transform:scale(1.15)}.feature-card h3{color:var(--text-primary);font-size:1.25rem;font-weight:700;margin-bottom:.75rem}.feature-card p{color:var(--text-secondary);font-size:.9375rem;line-height:1.6}@media(max-width:768px){.about-hero h1{font-size:2rem}.domains-grid{grid-template-columns:1fr}}.domains-section h2{margin-bottom:.5rem}.domains-grid{grid-gap:1.75rem;display:grid;gap:1.75rem;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));margin-top:2rem}.domain-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:1rem;box-shadow:var(--shadow-sm);overflow:hidden;transition:all .3s ease}.domain-card:hover{box-shadow:0 10px 35px #0000001a;transform:translateY(-4px)}.domain-header{align-items:center;color:#fff;display:flex;font-weight:700;gap:.75rem;padding:1.25rem 1.5rem}.domain-header h3{font-size:1.15rem;margin:0}.domain-header.vegetation{background:linear-gradient(135deg,#2d9a2d,#56c456)}.domain-header.air-quality{background:linear-gradient(135deg,#7b68ae,#a78bfa)}.domain-header.water-quality{background:linear-gradient(135deg,#2980b9,#5dade2)}.domain-header.weather{background:linear-gradient(135deg,#e67e22,#f5b041)}.domain-header.business{background:linear-gradient(135deg,#e74c3c,#f1948a)}.domain-header.video{background:linear-gradient(135deg,#1abc9c,#48c9b0)}.domain-icon{filter:drop-shadow(0 1px 3px rgba(0,0,0,.2));font-size:1.75rem}.domain-body{padding:1.25rem 1.5rem 1.5rem}.domain-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-bottom:.75rem}.domain-source{background:#667eea1a;border-radius:4px;color:var(--color-blue);font-size:.8rem;font-weight:700;letter-spacing:.05em;padding:.2rem .6rem;text-transform:uppercase}.domain-availability{color:var(--text-secondary);font-size:.8rem;font-weight:500}.domain-desc{color:var(--text-secondary);font-size:.925rem;line-height:1.55;margin-bottom:.75rem}.domain-indexes{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}.index-tag{border-radius:20px;color:#fff;display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.02em;padding:.25rem .65rem;white-space:nowrap}.index-tag.ndvi{background:#27ae60}.index-tag.evi{background:#2ecc71}.index-tag.savi{background:#1e8449}.index-tag.no2{background:#8e44ad}.index-tag.co{background:#9b59b6}.index-tag.so2{background:#6c3483}.index-tag.o3{background:#a569bd}.index-tag.ch4{background:#7d3c98}.index-tag.aerosol{background:#bb8fce;color:#2c3e50}.index-tag.turbidity{background:#2980b9}.index-tag.chlorophyll{background:#1abc9c}.index-tag.water-temp{background:#3498db}.index-tag.ndwi{background:#2471a3}.index-tag.temp{background:#e74c3c}.index-tag.precip{background:#3498db}.index-tag.wind{background:#95a5a6;color:#2c3e50}.index-tag.humidity{background:#5dade2}.index-tag.pressure{background:#566573}.index-tag.visibility{background:#aab7b8;color:#2c3e50}.index-tag.poi{background:#e74c3c}.index-tag.ratings{background:#f39c12}.index-tag.density{background:#d35400}.index-tag.truecolor{background:#16a085}.index-tag.ndvi-anim{background:#27ae60}.index-tag.temporal{background:#1abc9c}.index-details{list-style:none;margin:0;padding:0}.index-details li{border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-size:.85rem;line-height:1.45;padding:.3rem 0}.index-details li:last-child{border-bottom:none}.index-details li strong{color:var(--text-primary)}.pricing-grid{grid-gap:2.5rem;display:grid;gap:2.5rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin:0 auto;max-width:1200px;padding:1rem}.pricing-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:1.5rem;box-shadow:var(--shadow-md);display:flex;flex-direction:column;overflow:hidden;padding:2.5rem 2rem;position:relative;transition:all .3s ease}.pricing-card.featured{background:linear-gradient(to bottom,var(--bg-secondary),var(--bg-primary));border-color:var(--color-blue);box-shadow:0 8px 30px var(--glow-action);transform:scale(1.05)}.pricing-card:hover{border-color:var(--color-blue-light);box-shadow:0 12px 40px #00000026;transform:translateY(-8px)}.pricing-badge{background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-primary)}.pricing-badge,.pricing-badge-featured{border-radius:1.25rem;font-size:.8125rem;font-weight:700;letter-spacing:.5px;padding:.5rem 1rem;position:absolute;right:1.5rem;text-transform:uppercase;top:1.5rem}.pricing-badge-featured{background:linear-gradient(135deg,var(--color-blue),var(--color-blue-light));box-shadow:0 4px 12px var(--glow-action);color:#fff}.pricing-card h3{color:var(--text-primary);font-size:1.75rem;margin-bottom:1rem}.price{margin-bottom:2rem}.price-amount{color:var(--text-primary);font-size:2.75rem;font-weight:700}.price-period{color:var(--text-secondary);font-size:1rem}.pricing-features{flex:1 1;list-style:none;margin-bottom:2rem}.pricing-features li{align-items:center;border-bottom:1px solid var(--border-color);color:var(--text-secondary);display:flex;font-size:.9375rem;gap:.5rem;padding:.875rem 0}.pricing-features li:before{color:var(--color-green);content:"✓";font-size:1.125rem;font-weight:700}.pricing-features li:last-child{border-bottom:none}@media(max-width:768px){.pricing-grid{grid-template-columns:1fr}.pricing-card.featured{transform:none}}.billing-toast{align-items:center;animation:billing-toast-slide-in .4s cubic-bezier(.16,1,.3,1);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;box-shadow:0 8px 32px #00000040;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:500;gap:.75rem;max-width:450px;padding:1rem 1.25rem;position:fixed;right:24px;top:80px;z-index:9999}.billing-toast-success{background:linear-gradient(135deg,#059669,#10b981);border:1px solid #ffffff26}.billing-toast-error{background:linear-gradient(135deg,#dc2626,#ef4444);border:1px solid #ffffff26}.billing-toast-info{background:linear-gradient(135deg,var(--color-blue-dark),var(--color-blue-light));border:1px solid #ffffff26}.billing-toast-icon{flex-shrink:0;font-size:1.1rem}.billing-toast-message{flex:1 1;line-height:1.4}.billing-toast-close{background:none;border:none;color:#ffffffb3;cursor:pointer;flex-shrink:0;font-size:1.3rem;line-height:1;padding:0 0 0 .5rem}.billing-toast-close:hover{color:#fff}@keyframes billing-toast-slide-in{0%{opacity:0;transform:translateX(100px)}to{opacity:1;transform:translateX(0)}}.billing-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-bottom:3rem}.billing-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:1rem;box-shadow:var(--shadow-md);overflow:hidden;transition:all .3s}.billing-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.billing-card-header{align-items:center;border-bottom:1px solid var(--border-color);display:flex;gap:1rem;justify-content:space-between;padding:1.5rem}.billing-card-header h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.billing-card-content{padding:1.5rem}.credit-badge{background:linear-gradient(135deg,var(--color-blue),var(--color-blue-light));box-shadow:var(--shadow-sm);color:#fff;font-size:1.125rem}.credit-badge,.plan-badge{border-radius:1.5rem;font-weight:700;padding:.5rem 1.25rem}.plan-badge{font-size:.875rem;letter-spacing:.05em;text-transform:uppercase}.plan-badge.plan-free{background:var(--bg-tertiary);color:var(--text-primary)}.plan-badge.plan-pro{background:linear-gradient(135deg,var(--color-green),var(--color-green-light));box-shadow:var(--shadow-sm);color:#fff}.stat-row{align-items:center;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:.75rem 0}.stat-row:last-child{border-bottom:none}.stat-label{color:var(--text-secondary);font-size:.9375rem;font-weight:500}.stat-value{color:var(--text-primary);font-size:1.125rem;font-weight:700}.stat-highlight{color:var(--color-blue);font-size:1.5rem}.status-badge{border-radius:1rem;font-size:.8125rem;font-weight:600;padding:.375rem .875rem;text-transform:capitalize}.status-badge.status-active{background:#48bb7826;color:var(--color-green)}.status-badge.status-inactive{background:#a0aec026;color:var(--text-tertiary)}.billing-note{color:var(--text-tertiary);font-size:.8125rem;font-style:italic;margin-top:.75rem}.billing-description{color:var(--text-secondary);font-size:.9375rem;line-height:1.6;margin-bottom:1.25rem}.billing-section{margin-bottom:3rem}.billing-section h2{color:var(--text-primary);font-size:1.75rem;font-weight:600;margin-bottom:1.5rem}.transaction-list{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;overflow:hidden}.transaction-item{grid-gap:1.5rem;align-items:center;border-bottom:1px solid var(--border-color);display:grid;gap:1.5rem;grid-template-columns:auto 1fr auto auto;padding:1.25rem 1.5rem;transition:background .2s}.transaction-item:last-child{border-bottom:none}.transaction-item:hover{background:var(--bg-hover)}.transaction-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:700;height:48px;justify-content:center;width:48px}.transaction-item .transaction-icon{background:var(--bg-tertiary);color:var(--text-primary)}.transaction-details{display:flex;flex-direction:column;gap:.25rem;min-width:0}.transaction-description{color:var(--text-primary);font-size:.9375rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-date{color:var(--text-tertiary);font-size:.8125rem}.transaction-amount{font-size:1.25rem;font-weight:700;white-space:nowrap}.transaction-amount.positive{color:var(--color-green)}.transaction-amount.negative{color:var(--text-primary)}.transaction-balance{color:var(--text-secondary);font-size:.875rem;font-weight:500;white-space:nowrap}.pricing-grid-simple{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));max-width:800px}.pricing-card-simple{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:1rem;display:flex;flex-direction:column;padding:2rem;transition:all .3s}.pricing-card-simple:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.pricing-card-simple.featured-simple{border-color:var(--color-blue);box-shadow:var(--shadow-md)}.pricing-card-simple h3{font-size:1.5rem;margin-bottom:1rem}.price-simple,.pricing-card-simple h3{color:var(--text-primary);font-weight:700}.price-simple{font-size:3rem;margin-bottom:1.5rem}.price-simple span{color:var(--text-secondary);font-size:1.125rem;font-weight:500}.pricing-card-simple ul{flex:1 1;list-style:none;margin-bottom:2rem}.pricing-card-simple ul li{align-items:flex-start;color:var(--text-secondary);display:flex;font-size:.9375rem;gap:.5rem;line-height:1.5;padding:.75rem 0}.pricing-card-simple ul li:before{color:var(--color-green);content:"✓";flex-shrink:0;font-size:1.125rem;font-weight:700}.billing-note-enhanced{font-size:14px;margin-top:10px}.subscription-actions{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:.75rem}.btn-cancel{background:#0000;border:2px solid #e53e3e;border-radius:.5rem;color:#e53e3e;cursor:pointer;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;transition:all .2s}.btn-cancel:hover,.btn-danger{background:#e53e3e;color:#fff}.btn-danger{border:none;border-radius:.5rem;cursor:pointer;font-size:.875rem;font-weight:600;padding:.625rem 1.25rem;transition:all .2s}.btn-danger:hover{background:#c53030}.btn-danger:disabled{cursor:not-allowed;opacity:.6}.cancel-confirm-box{animation:slideDown .2s ease-out;background:#e53e3e14;border:1px solid #e53e3e4d;border-radius:.75rem;margin-top:1rem;padding:1.25rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.cancel-confirm-title{color:#e53e3e;font-size:1rem;font-weight:700;margin-bottom:.5rem}.cancel-confirm-text{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin-bottom:1rem}.cancel-confirm-actions{display:flex;gap:.75rem}.reactivate-box{background:#4299e114;border:1px solid #4299e14d;border-radius:.75rem;margin-top:1rem;padding:1rem 1.25rem}.reactivate-text{color:var(--text-secondary);font-size:.875rem;font-weight:500;margin-bottom:.5rem}.credits-persist-text{color:#10b981;font-size:.85rem;line-height:1.5;margin-bottom:.75rem}.credits-persist-text strong{color:#059669;font-weight:600}.invoice-list{display:flex;flex-direction:column;gap:.5rem}.invoice-item{align-items:center;background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:.75rem;display:flex;gap:1rem;padding:1rem 1.25rem;transition:background .2s}.invoice-item:hover{background:#f9fafb;background:var(--card-hover-bg,#f9fafb)}.invoice-icon{flex-shrink:0;font-size:1.25rem}.invoice-details{flex:1 1;min-width:0}.invoice-description{color:#111;color:var(--text-primary,#111);font-size:.9rem;font-weight:500}.invoice-date{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.8rem;margin-top:.15rem}.invoice-amount{font-size:.9rem;font-weight:600;white-space:nowrap}.invoice-amount.paid{color:#059669}.invoice-amount.unpaid{color:#dc2626}.invoice-status{border-radius:9999px;font-size:.75rem;font-weight:600;padding:.2rem .6rem;text-transform:capitalize;white-space:nowrap}.invoice-status.status-paid{background:#10b9811a;color:#059669}.invoice-status.status-draft,.invoice-status.status-open{background:#f59e0b1a;color:#d97706}.invoice-status.status-uncollectible,.invoice-status.status-void{background:#6b72801a;color:#6b7280}.invoice-actions{display:flex;flex-shrink:0;gap:.5rem}.invoice-link{border-radius:.375rem;color:var(--accent-text);font-size:.8rem;padding:.25rem .5rem;text-decoration:none;transition:background .2s}.invoice-link:hover{background:#3b82f61a;text-decoration:none}.settings-section{margin-bottom:2rem}.settings-section h2{color:#111;color:var(--text-primary,#111);font-size:1.25rem;font-weight:600;margin-bottom:1rem}.settings-card{align-items:flex-start;background:#fff;background:var(--card-bg,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:1rem;display:flex;gap:2rem;padding:2rem}.profile-avatar-large{align-items:center;background:linear-gradient(135deg,var(--brand-from),var(--brand-to));border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:2rem;font-weight:700;height:80px;justify-content:center;width:80px}.settings-form{flex:1 1;gap:1.25rem}.form-group,.settings-form{display:flex;flex-direction:column}.form-group{gap:.35rem}.form-label{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:.85rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.settings-input{background:#f9fafb;background:var(--input-bg,#f9fafb);border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:.5rem;color:#111;color:var(--text-primary,#111);font-size:.9rem;max-width:400px;padding:.65rem .9rem;transition:border-color .2s}.settings-input:focus{border-color:var(--action);box-shadow:0 0 0 3px #3b82f61a;outline:none}.settings-input:disabled{cursor:not-allowed;opacity:.6}.form-hint{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:.75rem;margin:0}.form-value{color:#111;color:var(--text-primary,#111);font-size:.9rem;margin:0}.form-mono{color:#6b7280;color:var(--text-secondary,#6b7280);font-family:JetBrains Mono,Fira Code,monospace;font-size:.8rem;word-break:break-all}@media(max-width:640px){.settings-card{align-items:center;flex-direction:column;padding:1.5rem;text-align:center}.settings-form{width:100%}.settings-input{max-width:100%}.form-group{text-align:left}}.reset-hint{color:var(--text-tertiary);font-size:.8125rem;margin:-.25rem 0 .25rem}.modal-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:2000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUp .3s ease;background:var(--bg-card);border:1px solid var(--border-color);border-radius:1.25rem;box-shadow:var(--shadow-xl);max-width:450px;padding:2.5rem;position:relative;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-close{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:50%;color:var(--text-primary);cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;line-height:1;position:absolute;right:1rem;top:1rem;transition:all .2s;width:40px}.modal-close:hover{background:var(--color-red);border-color:var(--color-red);color:#fff;transform:rotate(90deg)}.auth-form h2{color:var(--text-primary);font-size:2rem;margin-bottom:.5rem;text-align:center}.auth-subtitle{color:var(--text-secondary);font-size:.95rem;margin-bottom:2rem;text-align:center}.form-content{display:flex;flex-direction:column;gap:1rem}.form-input{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:.5rem;color:var(--text-primary);font-size:1rem;padding:1rem;transition:all .2s;width:100%}.form-input:focus{border-color:var(--color-blue);box-shadow:0 0 0 3px #4299e11a;outline:none}.form-links{color:var(--text-secondary);display:flex;flex-direction:column;font-size:.9375rem;gap:.75rem;text-align:center}.link-button{background:none;border:none;color:var(--color-blue);cursor:pointer;font-size:inherit;font-weight:500;text-decoration:none;transition:color .2s}.link-button:hover{color:var(--color-blue-dark);text-decoration:underline}.error-message{background:#ef44441a;border:1px solid var(--color-red);border-radius:.5rem;color:var(--color-red-dark);font-size:.9375rem;padding:.875rem 1rem}.success-screen{padding:2rem 0;text-align:center}.success-icon{color:var(--color-green);font-size:4rem;margin-bottom:1.5rem}.success-screen h2{color:var(--text-primary);font-size:1.75rem;margin-bottom:.75rem}.success-screen p{color:var(--text-secondary);font-size:.95rem;margin-bottom:1.5rem}.analysis-thumbnail-frame{background:var(--bg-tertiary);height:200px;overflow:hidden;position:relative;width:100%}.analysis-thumbnail-frame .analysis-thumbnail{opacity:0;transition:opacity .25s ease}.analysis-thumbnail-frame.is-loaded .analysis-thumbnail{opacity:1}.analysis-thumbnail-skeleton{align-items:center;animation:thumb-shimmer 1.4s ease-in-out infinite;background:linear-gradient(100deg,var(--bg-tertiary) 30%,var(--bg-hover) 50%,var(--bg-tertiary) 70%);background-size:200% 100%;color:var(--text-tertiary);display:flex;inset:0;justify-content:center;position:absolute}.analysis-thumbnail-skeleton .placeholder-icon{font-size:2.5rem;line-height:1;opacity:.45}@keyframes thumb-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.analysis-meta-row{align-items:center;display:flex;gap:.5rem;justify-content:space-between}.analysis-meta-row p{margin:0}.analysis-card-id{align-items:center;color:var(--text-tertiary);display:inline-flex;font-family:var(--font-mono);font-size:.6875rem;gap:.3rem;letter-spacing:.08em;margin:0;-webkit-user-select:all;user-select:all}.analysis-card-id:before{content:"#";opacity:.6}.analysis-thumbnail-placeholder{flex-direction:column;gap:.35rem}.analysis-thumbnail-placeholder .placeholder-icon{font-size:3rem;line-height:1}.analysis-thumbnail-placeholder .placeholder-caption{font-size:.75rem;letter-spacing:.02em;opacity:.8;text-transform:uppercase}.viewer-expired{align-items:center;color:var(--text-tertiary);display:flex;flex-direction:column;gap:.75rem;justify-content:center;min-height:50vh;width:100%}.viewer-expired .placeholder-icon{font-size:3.5rem;line-height:1}.viewer-expired p{font-size:1rem;margin:0}.analysis-expired-note{color:var(--text-tertiary);font-size:.8rem;font-style:italic;margin:0}.details-tab-content{color:var(--text-primary);max-height:80vh;overflow-y:auto;padding:24px}.details-heading{font-size:1.2rem;font-weight:700;margin:0 0 16px}.details-block{margin-bottom:24px}.details-block-title{color:var(--accent-text);font-size:.95rem;font-weight:700;margin:0 0 8px}.details-block-title-results{color:var(--color-green)}.details-block-title-chat{color:var(--text-secondary)}.details-table{border-collapse:collapse;font-size:14px;width:100%}.details-table td{border-bottom:1px solid var(--border-color);padding:8px 12px;vertical-align:top;word-break:break-word}.details-table td:first-child{font-weight:600;white-space:nowrap;width:200px}.details-table pre{font-size:12px;margin:0;white-space:pre-wrap}.details-pre-scroll{max-height:200px;overflow:auto}.details-chat{display:flex;flex-direction:column;gap:8px}.details-chat-msg{border:1px solid var(--border-color);border-radius:10px;max-width:80%;padding:10px 14px}.details-chat-user{align-self:flex-end;background:var(--action);border-color:#0000;color:var(--action-text)}.details-chat-assistant{align-self:flex-start;background:var(--bg-secondary)}.details-chat-role{font-size:11px;font-weight:700;margin-bottom:4px;opacity:.8}.details-chat-text{font-size:13px;white-space:pre-wrap}@media(max-width:640px){.details-table td:first-child{white-space:normal;width:120px}.details-chat-msg{max-width:100%}}.conversation-header-info{flex:1 1;min-width:0}.conversation-header-info h2{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-header-subtitle{color:var(--text-secondary);font-size:13px;margin-top:5px}.conversation-viewer-content{max-height:calc(100vh - 150px);overflow-y:auto;padding:30px}.timeline-container{margin:0 auto;max-width:900px}.timeline-empty{color:var(--text-secondary);padding:40px 0;text-align:center}.timeline-message{margin-left:20px;padding-bottom:20px;padding-left:60px;position:relative}.timeline-message-user{align-items:flex-start;display:flex;flex-direction:row-reverse;gap:12px;margin-left:0;margin-right:20px;padding-left:0;padding-right:60px}.timeline-message-assistant{display:block}.timeline-avatar{align-items:center;border-radius:50%;color:#fff;display:flex;font-size:12px;height:24px;justify-content:center;left:-11px;position:absolute;top:0;width:24px}.timeline-message-user .timeline-avatar{flex-shrink:0;left:auto;position:relative;right:auto;top:auto}.timeline-avatar-user{background:#4caf50}.timeline-avatar-assistant{background:#2196f3}.timeline-avatar-analysis{background:var(--color-blue);font-weight:700}.message-bubble{border:1px solid var(--border-color);border-radius:12px;color:#1a202c;padding:15px}.message-bubble-user{background:#fef9c3;max-width:80%}.message-bubble-assistant{background:#f5f5f5;margin-left:0;max-width:100%}.message-header{font-size:11px;font-weight:600;margin-bottom:5px}.message-header-user{color:#854d0e;text-align:right}.message-header-assistant{color:#4a5568}.message-time{font-weight:400}.message-content{color:#1a202c;line-height:1.6;white-space:pre-wrap}.timeline-analysis{margin-left:20px;padding-bottom:40px;padding-left:60px;position:relative}.timeline-analysis-bordered{border-left:2px solid var(--border-color)}.analysis-info-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:15px;padding:15px}.analysis-info-title{font-weight:500;margin-bottom:5px;text-transform:capitalize}.analysis-info-date{color:var(--text-secondary);font-size:12px}.analysis-results-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.analysis-result-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:block;overflow:hidden;text-decoration:none;transition:transform .2s,border-color .2s}.analysis-result-card:hover{border-color:var(--color-blue);transform:scale(1.02)}.result-card-preview{background:var(--bg-tertiary);height:150px;overflow:hidden;position:relative}.result-card-preview .analysis-thumbnail,.result-card-preview .analysis-thumbnail-frame,.result-card-preview .analysis-thumbnail-placeholder{height:150px}.result-card-preview .analysis-thumbnail{object-fit:cover;object-position:center top;transition:transform .3s ease}.result-card-preview-icon{align-items:center;background:linear-gradient(135deg,var(--brand-from) 0,var(--brand-to) 100%);display:flex;justify-content:center}.result-card-icon{filter:drop-shadow(0 2px 6px rgba(0,0,0,.25));font-size:48px}.analysis-result-card:hover .result-card-preview .analysis-thumbnail{transform:scale(1.04)}.result-card-chip{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0b1a33b8;border-radius:999px;bottom:8px;color:#fff;font-size:11px;font-weight:600;left:8px;letter-spacing:.02em;padding:2px 8px;pointer-events:none;position:absolute}.result-card-label{padding:10px;text-align:center}@media(max-width:640px){.conversation-viewer-content{padding:16px}.timeline-analysis,.timeline-message{margin-left:10px;padding-left:40px}.timeline-message-user{margin-left:0;padding-left:0;padding-right:0}.message-bubble-user{max-width:100%}}.analysis-author{color:var(--color-blue);font-size:.875rem;font-weight:500}.community-badge{background:linear-gradient(135deg,var(--color-green),var(--color-blue));box-shadow:var(--shadow-md);color:#fff}.like-btn{color:var(--color-blue)!important;font-weight:600!important;transition:all .2s}.like-btn:hover:not(:disabled){background:var(--tint-blue)!important;transform:scale(1.05)}.like-btn.liked{background:var(--bg-tertiary)!important;color:var(--text-tertiary)!important;cursor:pointer}.like-btn.liked:hover{background:var(--bg-hover)!important;color:var(--text-secondary)!important;transform:scale(1.05)!important}.like-btn-static{cursor:default}.like-btn-static:hover{background:#0000!important;transform:none}.conversation-badge-secondary{top:3.25rem}.analysis-type-tag{background:var(--bg-tertiary);border-radius:999px;color:var(--text-secondary);margin-bottom:.5rem;padding:.2rem .6rem}.flex-auto{flex:1 1;text-align:center}.viewer-conversation-link{color:var(--color-blue);font-weight:600;text-decoration:none}.viewer-conversation-link:hover{text-decoration:underline}@media(max-width:768px){.analysis-grid{gap:.875rem;grid-template-columns:1fr}.analysis-card{align-items:stretch;display:grid;grid-template-columns:7.25rem minmax(0,1fr);grid-template-rows:auto}.analysis-card:hover{transform:none}.analysis-card .analysis-thumbnail,.analysis-card .analysis-thumbnail-frame,.analysis-card .analysis-thumbnail-placeholder{height:100%;min-height:7.25rem}.analysis-card .analysis-thumbnail-placeholder .placeholder-icon{font-size:2rem}.analysis-card .analysis-thumbnail-placeholder .placeholder-caption{font-size:.625rem;padding:0 .25rem;text-align:center}.analysis-card-content{gap:.375rem;min-width:0;padding:.75rem .875rem}.analysis-card h3{font-size:.9375rem;padding-right:5.5rem}.analysis-query{-webkit-line-clamp:2;line-clamp:2}.analysis-author,.analysis-location,.analysis-query{font-size:.8125rem}.card-badge{font-size:.6875rem;padding:.25rem .625rem;right:.625rem;top:.625rem}.conversation-badge-secondary{top:2.25rem}.card-actions{flex-wrap:wrap;gap:.5rem;padding-top:.5rem}.card-actions .btn-small{font-size:.75rem;padding:.375rem .625rem}}.analysis-count-text{color:var(--text-secondary);margin-block:1rem}.hidden{display:none!important}.toast-notification{border-radius:.625rem;box-shadow:var(--shadow-lg);color:#fff;padding:.875rem 1rem;right:2rem}.toast-success{background:var(--color-green)}.toast-error{background:var(--color-red)}.toast-close{background:#0000;font-size:1.125rem}.pubs-hero{margin-bottom:2.5rem;text-align:center}.pubs-hero h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--brand-from),var(--brand-to));-webkit-background-clip:text;background-clip:text;font-size:2.5rem;font-weight:700;letter-spacing:-.02em;margin-bottom:.5rem}.pubs-subtitle{color:var(--text-secondary);font-size:1.05rem;line-height:1.6;margin:0 auto;max-width:620px}.pubs-filters{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2.5rem}.pubs-filter{background:var(--bg-secondary);border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:500;min-height:2.25rem;padding:.5rem 1rem;transition:background-color .18s ease,border-color .18s ease,color .18s ease}.pubs-filter:hover{background:var(--bg-hover);border-color:var(--action);color:var(--text-primary)}.pubs-filter.active{background:var(--action);border-color:var(--action);color:var(--action-text);font-weight:600}.pubs-year-group{margin-bottom:2.5rem}.pubs-year{border-bottom:1px solid var(--border-color);color:var(--text-tertiary);font-size:1rem;font-weight:700;letter-spacing:.06em;margin-bottom:1rem;padding-bottom:.5rem;text-transform:uppercase}.pubs-list{grid-gap:1rem;display:grid;gap:1rem;list-style:none;margin:0;padding:0}.pub-card{background:var(--bg-card);border:1px solid var(--border-color);border-left:3px solid var(--action);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:1.25rem 1.5rem;transition:box-shadow .18s ease,transform .18s ease,border-color .18s ease}.pub-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.pub-title{color:var(--text-primary);font-size:1.125rem;font-weight:650;line-height:1.4;margin-bottom:.4rem}.pub-authors{color:var(--text-secondary);font-size:.9375rem;margin-bottom:.2rem}.pub-venue{color:var(--text-tertiary);font-size:.875rem;font-style:italic;margin-bottom:.75rem}.pub-abstract{color:var(--text-secondary);font-size:.9375rem;line-height:1.6;margin-bottom:.875rem}.pub-tags{display:flex;flex-wrap:wrap;gap:.375rem;list-style:none;margin:0 0 .875rem;padding:0}.pub-tag{background:var(--tint-blue);border-radius:var(--radius-pill);color:var(--on-tint-blue);font-size:.75rem;font-weight:600;letter-spacing:.02em;padding:.2rem .6rem}.pub-links{display:flex;flex-wrap:wrap;gap:.5rem}.pub-link{align-items:center;background:var(--bg-primary);border:1px solid var(--border-strong);border-radius:var(--radius-sm);color:var(--accent-text);display:inline-flex;font-size:.8125rem;font-weight:600;min-height:2rem;padding:.4rem .9rem;text-decoration:none;transition:background-color .18s ease,border-color .18s ease}.pub-link:hover{background:var(--bg-hover);border-color:var(--action)}.pubs-empty{background:var(--bg-card);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);margin:3rem auto;max-width:480px;padding:3rem 2rem;text-align:center}.pubs-empty-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.7}.pubs-empty h2{color:var(--text-primary);font-size:1.25rem;margin-bottom:.5rem}.pubs-empty p{color:var(--text-secondary);font-size:.9375rem;line-height:1.6}@media(max-width:640px){.pubs-hero h1{font-size:2rem}.pub-card{padding:1rem 1.125rem}}.analysis-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(4,1fr)}.analysis-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;cursor:pointer;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:all .2s}.analysis-card:hover{border-color:var(--color-blue);box-shadow:var(--shadow-lg);transform:translateY(-5px)}.analysis-thumbnail{background:var(--bg-tertiary);display:block;height:200px;object-fit:cover;width:100%}.analysis-thumbnail-placeholder{align-items:center;background:linear-gradient(135deg,var(--bg-tertiary),var(--bg-hover));color:var(--text-tertiary);display:flex;font-size:3rem;height:200px;justify-content:center;width:100%}.analysis-card-content{display:flex;flex:1 1;flex-direction:column;gap:.75rem;padding:1.5rem}.analysis-card h3{color:var(--text-primary);font-size:1.125rem;font-weight:600;line-height:1.3;margin:0}.analysis-query{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:.9375rem;line-height:1.5;overflow:hidden;text-overflow:ellipsis}.analysis-location{align-items:center;color:var(--text-secondary);display:flex;font-size:.875rem;gap:.25rem}.analysis-date{color:var(--text-tertiary);font-size:.8125rem}.card-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:1rem;color:#fff;font-size:.75rem;font-weight:600;padding:.4rem .875rem;position:absolute;right:1rem;top:1rem;z-index:1}.private-badge{background:#ffffffe6;border:1px solid var(--border-color);color:var(--text-primary)}.dark-mode .private-badge{background:#1e293be6;color:var(--text-primary)}.card-actions{border-top:1px solid var(--border-color);display:flex;gap:.75rem;margin-top:auto;padding-top:.75rem}.empty-state{color:var(--text-secondary);padding:5rem 2rem;text-align:center}.empty-state .empty-icon{font-size:5rem;margin-bottom:1.5rem;opacity:.4}.empty-state h3{color:var(--text-primary);font-size:1.5rem;margin-bottom:.75rem}@media(max-width:1600px){.analysis-grid{grid-template-columns:repeat(4,1fr)}}@media(max-width:1400px){.analysis-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:1024px){.analysis-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.analysis-grid{gap:.875rem;grid-template-columns:1fr}.analysis-card{align-items:stretch;display:grid;grid-template-columns:7.25rem minmax(0,1fr);grid-template-rows:auto}.analysis-card:hover{transform:none}.analysis-card .analysis-thumbnail,.analysis-card .analysis-thumbnail-frame,.analysis-card .analysis-thumbnail-placeholder{height:100%;min-height:7.25rem}.analysis-card .analysis-thumbnail-placeholder .placeholder-icon{font-size:2rem}.analysis-card .analysis-thumbnail-placeholder .placeholder-caption{font-size:.625rem;padding:0 .25rem;text-align:center}.analysis-card-content{gap:.375rem;min-width:0;padding:.75rem .875rem}.analysis-card h3{font-size:.9375rem;padding-right:5.5rem}.analysis-query{-webkit-line-clamp:2;line-clamp:2}.analysis-location,.analysis-query{font-size:.8125rem}.card-badge{font-size:.6875rem;padding:.25rem .625rem;right:.625rem;top:.625rem}.conversation-badge-secondary{top:2.25rem}.card-actions{flex-wrap:wrap;gap:.5rem;padding-top:.5rem}.card-actions .btn-small{font-size:.75rem;padding:.375rem .625rem}.analysis-expired-note{font-size:.75rem}}.analysis-type-tag{border-radius:12px;display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.3px;padding:3px 10px;text-transform:capitalize;width:fit-content}.analysis-type-vegetation_index{background:#dcfce7;color:#166534}.analysis-type-air_quality{background:#fef3c7;color:#92400e}.analysis-type-water_quality{background:#e0f2fe;color:#0c4a6e}.analysis-type-business_location{background:#f3e8ff;color:#6b21a8}.analysis-type-weather_forecast{background:#ffedd5;color:#9a3412}.analysis-type-video_animation{background:#fce7f3;color:#9d174d}.analysis-type-unknown{background:#f3f4f6;color:#374151}.viewer-header-info{flex:1 1}.viewer-conversation-info{color:var(--text-secondary);font-size:13px;margin-top:5px}.compact-conversation-history{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;margin:0 20px 15px;padding:15px}.compact-history-title{font-size:14px;font-weight:700;margin:0 0 10px}.compact-history-scroll{display:flex;flex-direction:column;gap:8px;max-height:150px;overflow-y:auto}.compact-history-item{display:flex;flex-direction:column;gap:6px}.compact-query-row{display:flex;justify-content:flex-end}.compact-query-bubble{background:var(--action);border-radius:10px 10px 0 10px;color:var(--action-text);font-size:13px;max-width:75%;padding:8px 12px}.compact-response-row{align-items:flex-start;display:flex;gap:6px;justify-content:flex-start}.compact-response-label{color:var(--accent-text);font-size:13px;font-weight:700;padding-top:8px}.compact-response-bubble{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:10px 10px 10px 0;font-size:13px;max-width:70%;padding:8px 12px}.analysis-card-expired{cursor:default}.conversation-card{background:var(--bg-secondary)}.conversation-badge{background:linear-gradient(135deg,var(--brand-from) 0,var(--brand-to) 100%)}.conversation-card-title{color:var(--accent-text)}.conversation-badge-secondary{background:linear-gradient(135deg,var(--brand-from) 0,var(--brand-to) 100%);top:40px}.toast-notification{align-items:center;animation:toastSlideUp .3s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.75rem;bottom:2rem;box-shadow:0 8px 32px #0003;display:flex;font-size:.95rem;font-weight:500;gap:.75rem;left:50%;max-width:90vw;padding:.875rem 1.5rem;position:fixed;transform:translateX(-50%);z-index:10000}.toast-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.toast-error{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.toast-close{background:none;border:none;color:#fff;cursor:pointer;font-size:1.25rem;line-height:1;opacity:.7;padding:0 .25rem}.toast-close:hover{opacity:1}@keyframes toastSlideUp{0%{opacity:0;transform:translateX(-50%) translateY(1rem)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.pagination-controls{align-items:center;display:flex;gap:.75rem;justify-content:center;margin-bottom:.5rem;margin-top:2rem}.pagination-pages{align-items:center;display:flex;gap:.25rem}.pagination-page-btn{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;height:36px;justify-content:center;transition:all .15s;width:36px}.pagination-page-btn:hover{background:var(--bg-hover);border-color:var(--color-blue)}.pagination-page-btn.active{background:var(--color-blue);border-color:var(--color-blue);color:#fff;font-weight:700}.analysis-count-text{color:var(--text-tertiary);font-size:.8125rem;margin-bottom:2rem;margin-top:.5rem;text-align:center}.landing-page-split{background:var(--bg-secondary);display:grid;grid-template-columns:minmax(0,1fr) 0fr;height:calc(100vh - 108px);height:calc(100vh - var(--chrome-h, 108px));min-height:0;overflow:hidden;transition:grid-template-columns .45s ease;width:100%}.landing-page-split.show-right-panel{grid-template-columns:minmax(0,40%) minmax(0,60%);justify-content:stretch}.left-panel{background:var(--bg-secondary);gap:1rem;min-height:0;overflow-y:hidden;padding:1rem 2rem}.left-panel,.left-panel.initial-layout{display:flex;flex-direction:column;height:100%}.left-panel.initial-layout{gap:1.75rem;justify-content:center;overflow-y:auto;padding-bottom:2.5rem}.left-panel:not(.initial-layout){display:flex;flex-direction:column;overflow:hidden}.landing-page-split:not(.show-right-panel) .left-panel{background:var(--bg-secondary);border-right:0 solid var(--border-color);margin:0 auto;max-width:820px;overflow-y:hidden;width:100%}.landing-page-split.show-right-panel .left-panel{margin:0;max-width:none}.hero-section{align-items:center;display:flex;flex-direction:column;gap:.75rem;padding:0 .5rem;text-align:center}.hero-eyebrow{align-items:center;color:var(--text-tertiary);display:inline-flex;font-family:var(--font-mono);font-size:.6875rem;font-weight:500;gap:.625rem;letter-spacing:.14em;text-transform:uppercase}.hero-wordmark{color:var(--accent-text);font-weight:600}.hero-eyebrow-sep{opacity:.5}.hero-title{text-wrap:balance;color:var(--text-primary);font-family:var(--font-display);font-size:clamp(2.25rem,4.2vw,3.5rem);font-weight:500;letter-spacing:-.025em;line-height:1.02;margin:.5rem 0 0}.subtitle{text-wrap:pretty;color:var(--text-secondary);font-size:1.125rem;line-height:1.6;margin:.25rem auto 0;max-width:40rem}.input-section{background:var(--bg-secondary);display:flex;flex-direction:column;flex-shrink:0;gap:.75rem;margin-top:auto;padding-top:.75rem}.left-panel.initial-layout .input-section,.left-panel:not(.initial-layout) .input-section{margin-top:0}.credentials-upload-minimal{width:100%}.minimal-upload-label{align-items:center;background:var(--bg-primary);border:2px dashed var(--border-strong);border-radius:var(--radius-md);cursor:pointer;display:flex;gap:1rem;padding:1rem 1.25rem;transition:border-color .18s ease,background-color .18s ease}.minimal-upload-label:hover{background:var(--bg-hover);border-color:var(--color-blue)}.upload-icon-box{align-items:center;background:linear-gradient(135deg,var(--color-blue),var(--color-blue-light));border-radius:.5rem;color:#fff;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.upload-text-box{display:flex;flex:1 1;flex-direction:column;gap:.25rem}.upload-main-text{color:var(--text-primary);font-size:.95rem;font-weight:600}.upload-sub-text{color:var(--text-tertiary);font-size:.8125rem}.query-input-box{align-content:flex-end;align-items:flex-end;background:var(--bg-primary);border:1px solid var(--border-strong);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;flex-wrap:wrap;gap:.6rem;padding:.75rem .75rem .75rem 1rem;transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease}.left-panel.initial-layout .query-input-box{box-shadow:var(--shadow-md);padding:1rem .875rem .875rem 1.25rem}.left-panel.initial-layout .query-textarea{font-size:1.0625rem;min-height:48px}.query-input-box:hover{background:var(--bg-secondary);border-color:var(--border-strong)}.query-input-box:focus-within{background:var(--bg-secondary);border-color:var(--action);box-shadow:0 0 0 3px var(--glow-action),var(--shadow-md)}.query-input-box:focus-within .query-textarea:focus-visible{outline:none}.query-textarea{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:inherit;font-size:1rem;line-height:1.45;max-height:180px;min-height:24px;outline:none;overflow-y:hidden;padding-left:.25rem;resize:none;width:1px}.query-textarea::placeholder{color:var(--text-tertiary)}.input-footer{flex-wrap:wrap;gap:.5rem;justify-content:space-between;margin-top:.25rem;width:100%}.btn-send-inline,.input-footer{align-items:center;display:flex}.btn-send-inline{background:var(--action);border:none;border-radius:var(--radius-pill);box-shadow:var(--shadow-sm);color:var(--action-text);cursor:pointer;flex-shrink:0;font-size:1rem;font-weight:700;height:44px;justify-content:center;transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease;width:44px}.btn-send-inline:hover:not(:disabled){background:var(--action-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-send-inline:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0) scale(.97)}.btn-send-inline:disabled{cursor:not-allowed;opacity:.5}.spinner-small{border-width:2px;height:14px;width:14px}.input-hint{color:var(--text-tertiary);font-size:.75rem}.error-message-inline{background:var(--tint-red);border:1px solid var(--color-red);color:var(--on-tint-red)}.error-message-inline,.notice-message-inline{border-radius:var(--radius-sm);font-size:.875rem;padding:.625rem .875rem}.notice-message-inline{background:var(--tint-blue);border:1px solid var(--action);color:var(--on-tint-blue)}.btn-analyze{align-items:center;background:var(--action);border:none;border-radius:var(--radius-md);box-shadow:var(--shadow-md);color:var(--action-text);cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.75rem;justify-content:center;letter-spacing:.01em;min-height:2.75rem;padding:1rem 2rem;transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease;width:100%}.btn-analyze:hover:not(:disabled){background:var(--action-hover);box-shadow:var(--shadow-lg);transform:translateY(-1px)}.btn-analyze:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-analyze:disabled{cursor:not-allowed;opacity:.6}.spinner{animation:spin .8s linear infinite;border:3px solid;border-radius:50%;border-top:3px solid #0000;height:20px;opacity:.9;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.warning-box{align-items:center;background:var(--tint-orange);border:1px solid var(--color-orange);border-radius:var(--radius-sm);color:var(--on-tint-orange);display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem}.warning-icon{font-size:1.1rem}.sample-questions{min-height:0;padding:.25rem 0 0}.sample-title{color:var(--text-tertiary);font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:.14em;margin-bottom:.75rem;text-align:left;text-transform:uppercase}.sample-grid{grid-gap:.625rem;display:grid;gap:.625rem;grid-template-columns:repeat(2,minmax(0,1fr))}.sample-chip{align-items:flex-start;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;display:flex;flex-direction:column;font-size:.875rem;font-weight:400;gap:.375rem;min-height:4.25rem;min-width:0;padding:.75rem .9375rem;text-align:left;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.sample-chip-label{color:var(--accent-text);font-family:var(--font-mono);font-size:.625rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.sample-chip-query{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:.875rem;line-height:1.4;max-width:100%;overflow:hidden;text-overflow:ellipsis}.sample-chip:hover{background:var(--bg-hover);border-color:var(--action);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.sample-chip:hover .sample-chip-query{color:var(--text-primary)}.sample-chip:active{background:var(--bg-tertiary)}.backend-status{align-items:center;background:var(--tint-green);border:1px solid var(--color-green);border-radius:var(--radius-sm);color:var(--on-tint-green);display:flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem}.status-indicator{animation:pulse 2s ease-in-out infinite;background:var(--color-green);border-radius:50%;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.right-panel{background:var(--bg-primary);border-left:1px solid #0000;display:none;flex-direction:column;height:100%;isolation:isolate;max-height:100%;min-height:0;min-width:0;opacity:0;overflow:hidden;pointer-events:none;position:relative;transform:translateX(20px);transition:opacity .35s ease,transform .45s ease,border-color .35s ease}.landing-page-split.show-right-panel .right-panel{border-left-color:var(--border-color);display:flex;opacity:1;pointer-events:auto;transform:translateX(0)}.results-content{flex:1 1;overflow-x:hidden;overflow-y:auto;position:relative;z-index:1}.result-viewer,.results-content{background:var(--bg-secondary);display:flex;flex-direction:column;min-height:0}.result-viewer{flex:1 1;height:100%}.result-viewer-header{align-items:flex-start;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;gap:1rem;justify-content:space-between;padding:1.5rem 2rem}.result-viewer-header h4{color:var(--text-primary);font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.result-meta{color:var(--text-tertiary);font-size:.8125rem}.result-coords{color:var(--text-secondary);font-family:source-code-pro,Menlo,Monaco,Consolas,monospace;font-size:.75rem;letter-spacing:.02em;margin-top:2px}.btn-close-viewer{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:50%;color:var(--text-primary);cursor:pointer;display:flex;flex-shrink:0;font-size:1.5rem;height:32px;justify-content:center;line-height:1;transition:all .2s;width:32px}.btn-close-viewer:hover{background:var(--color-red);border-color:var(--color-red);color:#fff;transform:rotate(90deg)}.viewer-tabs{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;flex-shrink:0;gap:.5rem;padding:0 2rem}.viewer-tab{background:#0000;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;font-size:.9375rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.viewer-tab:hover{background:var(--bg-hover);color:var(--text-primary)}.viewer-tab.active{background:var(--tint-blue);border-bottom:2px solid var(--action);color:var(--accent-text);font-weight:600}.result-viewer-content{background:var(--bg-primary);display:flex;flex:1 1;min-height:0;overflow:hidden;position:relative}.result-iframe{border:none;flex:1 1}.result-chart-img,.result-iframe{display:block;height:100%;width:100%}.result-chart-img{object-fit:contain}.result-viewer-actions{background:var(--bg-secondary);border-top:1px solid var(--border-color);display:flex;flex-shrink:0;gap:.75rem;padding:1rem 2rem}.results-list{flex:1 1;min-height:0;overflow-y:auto;padding:1.5rem}.result-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:.75rem;cursor:pointer;margin-bottom:1rem;padding:1.25rem;transition:all .2s}.result-card:hover{border-color:var(--color-blue);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.result-loading{align-items:center;background:var(--bg-secondary);display:flex;justify-content:center;min-height:400px}.loading-animation{text-align:center}.spinner-large{animation:spin .8s linear infinite;border:4px solid var(--border-color);border-radius:50%;border-top-color:var(--color-blue);height:50px;margin:0 auto 1rem;width:50px}.loading-detail{color:var(--text-tertiary);font-size:.875rem;margin-top:.5rem}.result-header-card{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.result-badge{background:var(--color-blue);border-radius:1rem;color:#fff;font-size:.75rem;font-weight:600;padding:.35rem .875rem}.result-time{color:var(--text-tertiary);font-size:.8125rem}.result-query{color:var(--text-primary);font-size:1rem;font-weight:600;line-height:1.4;margin-bottom:.5rem}.result-location{color:var(--text-secondary);font-size:.875rem;margin-bottom:.75rem}.btn-view-inline{background:var(--color-blue);border:none;border-radius:.375rem;color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s}.btn-view-inline:hover{background:var(--color-blue-dark)}.empty-results{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;padding:3rem 2rem;position:relative;text-align:center;top:50%;transform:translateY(-50%)}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.3}.empty-results h4{color:var(--text-primary);font-size:1.125rem;margin-bottom:.5rem}.empty-results p{color:var(--text-secondary);font-size:.9375rem}.demo-result-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(3,1fr);margin-top:1rem;max-width:640px;width:100%}.demo-result-card{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:.75rem;cursor:pointer;display:flex;flex-direction:column;gap:.25rem;padding:.85rem;text-align:left;transition:all .2s}.demo-result-card:hover{background:var(--bg-hover);border-color:var(--color-blue);box-shadow:var(--shadow-md);transform:translateY(-2px)}.demo-title{color:var(--text-primary);font-size:.85rem;font-weight:600}.demo-subtitle{color:var(--text-secondary);font-size:.75rem;line-height:1.4}.global-map-container{background:var(--bg-secondary);display:flex;flex-direction:column}.global-map-container,.global-map-iframe{flex:1 1;height:100%;min-height:0;position:relative;width:100%;z-index:0}.global-map-iframe{border:none;display:block;pointer-events:auto}.log-container{background:var(--bg-secondary);display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0;width:100%}.log-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;padding:1rem 1.5rem}.log-controls,.log-header{align-items:center;display:flex;gap:1rem}.log-toggle{align-items:center;color:var(--text-secondary);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:.5rem}.log-toggle input[type=checkbox]{accent-color:var(--color-blue);cursor:pointer;height:18px;width:18px}.log-count{border:1px solid var(--border-color);border-radius:.375rem;color:var(--text-tertiary);font-weight:500;padding:.375rem .75rem}.log-content,.log-count{background:var(--bg-primary);font-size:.875rem}.log-content{flex:1 1;font-family:Courier New,Courier,monospace;min-height:0;overflow-x:hidden;overflow-y:auto;padding:1rem}.log-empty{align-items:center;color:var(--text-secondary);display:flex;flex-direction:column;height:100%;justify-content:center;text-align:center}.log-empty .empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.3}.log-entries{display:flex;flex-direction:column;gap:.5rem}.log-entry{grid-gap:1rem;align-items:baseline;background:var(--bg-secondary);border-left:3px solid var(--border-color);border-radius:.375rem;display:grid;gap:1rem;grid-template-columns:auto auto 1fr;padding:.75rem 1rem;transition:all .2s}.log-entry:hover{background:var(--bg-hover);box-shadow:var(--shadow-sm)}.log-timestamp{color:var(--text-tertiary);font-weight:600;white-space:nowrap}.log-level{border-radius:.25rem;font-size:.75rem;font-weight:700;padding:.25rem .625rem;text-transform:uppercase;white-space:nowrap}.log-message{color:var(--text-primary);line-height:1.5;word-break:break-word}.log-info{border-left-color:var(--color-blue)}.log-info .log-level{background:var(--tint-blue);color:var(--on-tint-blue)}.log-success{border-left-color:var(--color-green)}.log-success .log-level{background:var(--tint-green);color:var(--on-tint-green)}.log-warning{border-left-color:var(--color-orange)}.log-warning .log-level{background:var(--tint-orange);color:var(--on-tint-orange)}.log-error{border-left-color:var(--color-red)}.log-error .log-level{background:var(--tint-red);color:var(--on-tint-red)}.page-container-full{bottom:0;flex-direction:column;left:0;overflow:hidden;position:fixed;right:0;top:48px;top:var(--nav-h,48px);z-index:100}.page-container-full,.viewer-header{background:var(--bg-secondary);display:flex}.viewer-header{align-items:center;border-bottom:1px solid var(--border-color);flex-shrink:0;gap:2rem;padding:1.5rem 2rem}.viewer-header h2{color:var(--text-primary);flex:1 1;font-size:1.25rem}.full-viewer{background:var(--bg-primary);display:flex;flex:1 1;min-height:0;overflow:hidden;position:relative}.full-iframe{border:none;flex:1 1}.full-chart-img,.full-iframe{display:block;height:100%;width:100%}.full-chart-img{object-fit:contain}@media(max-width:1200px){.landing-page-split{display:flex;flex-direction:column;height:calc(100vh - 108px);height:calc(100vh - var(--chrome-h, 108px))}.left-panel{flex-shrink:0;height:auto;max-height:none;min-height:300px;overflow-y:auto}.left-panel.initial-layout{display:flex;flex-direction:column;gap:1rem;overflow-y:auto}.landing-page-split:not(.show-right-panel) .left-panel.initial-layout{-webkit-overflow-scrolling:touch;flex:1 1 auto;height:100%;justify-content:flex-start;max-height:none;min-height:0;overflow-y:auto;overscroll-behavior:contain}.left-panel.initial-layout>*{flex-shrink:0}.left-panel:not(.initial-layout){max-height:50vh;overflow-y:hidden}.right-panel{border-left:none;border-top:1px solid #0000;flex:0 1;height:0;max-height:0;min-height:0;transform:translateY(-8px)}.landing-page-split.show-right-panel .left-panel{max-height:40vh}.landing-page-split.show-right-panel .right-panel{border-top-color:var(--border-color);flex:1 1;height:auto;max-height:none;min-height:400px;transform:translateY(0)}}@media(max-width:768px){.landing-page-split{display:flex;flex-direction:column-reverse;height:calc(100vh - 176px);height:calc(100vh - var(--chrome-h, 108px) - 68px);height:calc(100dvh - 176px);height:calc(100dvh - var(--chrome-h, 108px) - 68px);min-height:0}.left-panel.initial-layout{justify-content:space-between}.left-panel{padding:1rem}.landing-page-split.show-right-panel .left-panel,.landing-page-split.show-right-panel .right-panel{max-height:50vh}.hero-title{font-size:1.875rem}.hero-section .subtitle{font-size:1rem}.left-panel.initial-layout{gap:1.25rem;justify-content:flex-start;padding-top:1.5rem}.left-panel.initial-layout .query-input-box{outline:.5rem solid var(--bg-secondary);position:sticky;top:.25rem;z-index:5}.sample-questions{flex-shrink:0;padding-bottom:1rem}.sample-grid{grid-template-columns:1fr}.sample-chip{min-height:0}.demo-result-grid{grid-template-columns:1fr}.conversation-history{justify-content:flex-end;padding:10px}.results-header,.viewer-header{padding:.75rem 1rem}.viewer-header{flex-wrap:wrap;gap:.625rem .5rem}.viewer-header>.btn{font-size:.8125rem;order:1;padding:.5rem .75rem;white-space:nowrap}.viewer-header>.btn:first-child{margin-right:auto;order:0}.viewer-header>.conversation-header-info,.viewer-header>.viewer-header-info{flex:1 1 100%;min-width:0;order:2}.viewer-header h2{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:1.0625rem;line-height:1.3;overflow:hidden;white-space:normal}.viewer-header>.viewer-tabs{-webkit-overflow-scrolling:touch;border-bottom:none;flex:1 1 100%;margin:0 -1rem -.75rem;order:3;overflow-x:auto;padding:0;width:calc(100% + 2rem)}.viewer-header>.viewer-tabs .viewer-tab{flex:1 0 auto;font-size:.875rem;padding:.625rem .875rem;text-align:center}.viewer-header>.viewer-tabs .viewer-tab:first-child{margin-left:1rem}}.file-input-hidden{display:none}.conversation-history{background:var(--bg-secondary);border-radius:8px;flex:1 1;gap:10px;justify-content:flex-end;margin-bottom:.5rem;margin-top:1rem;min-height:0;overflow-y:auto;padding:15px;scroll-behavior:smooth}.conversation-history,.history-item{display:flex;flex-direction:column;flex-wrap:nowrap}.history-item{gap:8px;width:100%}.history-query-row{align-items:flex-start;display:flex;justify-content:flex-end}.history-query-bubble{background:var(--action);border-radius:12px 12px 0 12px;color:var(--action-text);font-size:14px;max-width:70%;padding:10px 15px;word-break:break-word}.history-response-row{align-items:flex-start;display:flex;gap:8px;justify-content:flex-start}.history-response-label{color:var(--accent-text);font-size:14px;font-weight:700;padding-top:10px}.history-response-bubble{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:12px 12px 12px 0;color:var(--text-primary);font-size:14px;line-height:1.5;max-width:65%;padding:10px 15px;word-break:break-word}.history-response-bubble.bubble-error{background:var(--tint-red);border-color:var(--color-red);color:var(--on-tint-red)}.history-response-bubble.bubble-notice{background:var(--tint-blue);border-color:var(--action);color:var(--on-tint-blue)}.history-response-bubble.bubble-completion{border-color:var(--color-green);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-green) 18%,#0000)}.history-response-bubble.bubble-typing{color:var(--text-secondary);padding:10px 14px}.bubble-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.bubble-action{background:var(--action);border:1px solid var(--action);border-radius:var(--radius-pill);color:var(--action-text);cursor:pointer;font-size:12.5px;font-weight:600;padding:5px 12px;transition:background-color .15s ease,transform .15s ease}.bubble-action:hover{background:var(--action-hover);transform:translateY(-1px)}.bubble-action.bubble-action-muted{background:#0000;border-color:var(--border-color);color:var(--text-primary)}.bubble-action.bubble-action-muted:hover{background:var(--bg-hover)}.suggestion-row{display:flex;flex-wrap:wrap;gap:6px;padding-left:52px}.suggestion-chip{background:var(--bg-primary);border:1px dashed var(--border-color);border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;font-size:12.5px;max-width:100%;padding:5px 12px;text-align:left;transition:border-color .15s ease,color .15s ease,background-color .15s ease}.suggestion-chip:hover{background:var(--bg-hover);border-color:var(--action);border-style:solid;color:var(--text-primary)}.typing-dots{align-items:center;display:inline-flex;gap:4px;height:16px}.typing-dots span{animation:typing-bounce 1.2s ease-in-out infinite;background:currentColor;border-radius:50%;height:7px;opacity:.35;width:7px}.typing-dots span:nth-child(2){animation-delay:.15s}.typing-dots span:nth-child(3){animation-delay:.3s}@keyframes typing-bounce{0%,60%,to{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.typing-progress{align-items:center;display:inline-flex;font-size:13px;gap:8px}.input-footer-chat{justify-content:flex-start;padding:0 4px}.input-footer-chat .input-hint{line-height:1.4}.btn-new-topic{font-size:13px;margin-top:10px;padding:8px 16px}.sample-description{color:var(--text-secondary);font-size:14px;line-height:1.5;margin-bottom:15px}.loading-latest-message{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:13px;margin-top:15px;max-width:400px;padding:10px 15px}.log-content-scrollable{display:flex;flex-direction:column;height:100%;max-height:none;overflow-y:auto}:root{--font-sans:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-display:"Space Grotesk","Inter",ui-sans-serif,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--bg-primary:#000;--bg-secondary:#111;--bg-tertiary:#1c1c1c;--bg-card:#111;--bg-hover:#1c1c1c;--text-primary:#fff;--text-secondary:#e6e6e6;--text-tertiary:#b5b5b5;--color-blue:#facc15;--color-blue-light:#fde047;--color-blue-dark:#eab308;--color-green:#34d399;--color-green-light:#6ee7b7;--color-green-dark:#10b981;--color-orange:#fb923c;--color-orange-light:#fdba74;--color-orange-dark:#f97316;--color-red:#f87171;--color-red-light:#fca5a5;--color-red-dark:#ef4444;--border-color:#2a2a2a;--border-strong:#4a4a4a;--shadow-sm:0 1px 3px #0009;--shadow-md:0 4px 6px #0009;--shadow-lg:0 10px 25px #000000b3;--shadow-xl:0 20px 40px #000c;--radius-sm:0.5rem;--radius-md:0.75rem;--radius-lg:1rem;--radius-xl:1.375rem;--radius-pill:999px;--brand-from:#facc15;--brand-to:#fff;--action:#facc15;--action-hover:#fde047;--action-text:#000;--accent-text:#fde047;--focus-ring:#fde047;--tint-green:#0f2a1f;--on-tint-green:#6ee7b7;--tint-orange:#2e1d10;--on-tint-orange:#fdba74;--tint-red:#2e141c;--on-tint-red:#fca5a5;--tint-blue:#2a2305;--on-tint-blue:#fde047;--glow-action:#facc1547;--neutral-btn:#1c1c1c;--neutral-btn-hover:#2a2a2a;--neutral-btn-active:#383838;--neutral-btn-text:#fff;--neutral-btn-border:#7a7a7a;color-scheme:dark}.app-container[data-accent=green]{--color-blue:#0c6;--color-blue-light:#4ade80;--color-blue-dark:#00a854;--brand-from:#0c6;--brand-to:#fff;--action:#0c6;--action-hover:#1ad977;--action-text:#000;--accent-text:#4ade80;--focus-ring:#4ade80;--tint-blue:#06291a;--on-tint-blue:#4ade80;--glow-action:#00cc6647}.dark-mode{color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{--nav-h:48px;--footer-h:56px;--chrome-h:calc(var(--nav-h) + var(--footer-h));font-size:90%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#000;background:var(--bg-primary);color:#fff;color:var(--text-primary);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-family:var(--font-sans);font-size:1rem;line-height:1.5;transition:background-color .3s ease,color .3s ease}h1,h2,h3,h4{text-wrap:balance;font-family:Space Grotesk,Inter,ui-sans-serif,sans-serif;font-family:var(--font-display);font-weight:500;letter-spacing:-.02em;line-height:1.1}button,input,select,textarea{font-family:inherit}.mono-tag{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-family:var(--font-mono);font-size:.6875rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.app-container{background:#000;background:var(--bg-primary);display:flex;flex-direction:column;min-height:100vh;transition:background .3s ease}.loading-screen{align-items:center;display:flex;justify-content:center;min-height:100vh}.loading-text{color:#fff;color:var(--text-primary);font-size:1.125rem;padding:2rem;text-align:center}.page-container{flex:1 1;margin:0 auto;max-width:1600px;min-height:calc(100vh - 153px);padding:3rem 2rem}.page-header{margin-bottom:2.5rem}.page-header h1{color:#fff;color:var(--text-primary);font-size:clamp(2rem,3.5vw,3rem);line-height:1.05;margin-bottom:.75rem}.page-header p{color:#e6e6e6;color:var(--text-secondary);font-size:1.125rem;line-height:1.6;max-width:42rem}.btn{align-items:center;border:none;border-radius:.75rem;border-radius:var(--radius-md);box-shadow:0 1px 3px #0009;box-shadow:var(--shadow-sm);cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;line-height:1.25;min-height:2.75rem;padding:.75rem 1.5rem;text-align:center;text-decoration:none;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background:#facc15;background:var(--action);color:#000;color:var(--action-text)}.btn-primary:hover:not(:disabled){background:#fde047;background:var(--action-hover);box-shadow:0 4px 6px #0009;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active:not(:disabled){box-shadow:0 1px 3px #0009;box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-secondary{background:#111;background:var(--bg-secondary);border:1px solid #4a4a4a;border:1px solid var(--border-strong);color:#fff;color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:#1c1c1c;background:var(--bg-hover);border-color:#facc15;border-color:var(--action)}.btn-secondary:active:not(:disabled){background:#1c1c1c;background:var(--bg-tertiary)}.btn-neutral{background:#1c1c1c;background:var(--neutral-btn);border:1px solid #7a7a7a;border:1px solid var(--neutral-btn-border);color:#fff;color:var(--neutral-btn-text)}.btn-neutral:hover:not(:disabled){background:#2a2a2a;background:var(--neutral-btn-hover);box-shadow:0 4px 6px #0009;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-neutral:active:not(:disabled){background:#383838;background:var(--neutral-btn-active);box-shadow:0 1px 3px #0009;box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-small{font-size:.875rem;padding:.625rem 1.25rem}.btn-large{font-size:1.125rem;padding:1rem 2rem;width:100%}.flex-auto{flex:auto}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#1c1c1c;background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:#facc15;background:var(--color-blue);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#eab308;background:var(--color-blue-dark)}@media (max-width:768px){.page-container{padding:2rem 1rem}.page-header h1{font-size:1.875rem}}:focus-visible{border-radius:.5rem;border-radius:var(--radius-sm);outline:2px solid #fde047;outline:2px solid var(--focus-ring);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
/*# sourceMappingURL=main.9ca07a1b.css.map*/