@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap);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}:root{--ethariq-primary:#1a472a;--ethariq-primary-light:#2d5a3d;--ethariq-primary-dark:#0f2918;--ethariq-accent:#4a9d5f;--ethariq-accent-light:#6bb380;--gray-50:#f9fafb;--gray-100:#f3f4f6;--gray-200:#e5e7eb;--gray-300:#d1d5db;--gray-400:#9ca3af;--gray-500:#6b7280;--gray-600:#4b5563;--gray-700:#374151;--gray-800:#1f2937;--gray-900:#111827;--success:#10b981;--success-light:#d1fae5;--warning:#f59e0b;--warning-light:#fef3c7;--error:#ef4444;--error-light:#fee2e2;--info:#3b82f6;--info-light:#dbeafe;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu",sans-serif;--font-mono:"SF Mono",Monaco,"Cascadia Code","Courier New",monospace;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:300ms cubic-bezier(0.4,0,0.2,1);--transition-slow:500ms cubic-bezier(0.4,0,0.2,1)}body{background-color:#f9fafb;background-color:var(--gray-50);color:#111827;color:var(--gray-900);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;font-family:var(--font-sans)}.heading-xl{font-size:2.25rem;line-height:1.2}.heading-lg,.heading-xl{color:#111827;color:var(--gray-900);font-weight:700;letter-spacing:-.025em}.heading-lg{font-size:1.875rem;line-height:1.25}.heading-md{font-size:1.5rem;line-height:1.33}.heading-md,.heading-sm{color:#111827;color:var(--gray-900);font-weight:600}.heading-sm{font-size:1.25rem;line-height:1.4}.text-lg{font-size:1.125rem;line-height:1.75}.text-base{font-size:1rem;line-height:1.5}.text-sm{font-size:.875rem;line-height:1.43}.text-xs{font-size:.75rem;line-height:1.33}.text-muted{color:#4b5563;color:var(--gray-600)}.text-strong{color:#111827;color:var(--gray-900);font-weight:600}.btn{align-items:center;border:1px solid #0000;border-radius:.5rem;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-size:.938rem;font-weight:500;gap:.5rem;gap:var(--space-2);justify-content:center;line-height:1;padding:.75rem 1.5rem;padding:var(--space-3) var(--space-6);text-decoration:none;transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5}.btn-primary{background-color:#1a472a;background-color:var(--ethariq-primary);border-color:#1a472a;border-color:var(--ethariq-primary)}.btn-primary:hover:not(:disabled){background-color:#0f2918;background-color:var(--ethariq-primary-dark);box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background-color:#fff;border-color:#d1d5db;border-color:var(--gray-300);color:var(--gray-700)}.btn-secondary:hover:not(:disabled){background-color:#f9fafb;background-color:var(--gray-50);border-color:#9ca3af;border-color:var(--gray-400)}.btn-ghost{background-color:initial;color:#374151;color:var(--gray-700)}.btn-ghost:hover:not(:disabled){background-color:#f3f4f6;background-color:var(--gray-100)}.btn-success{background-color:#10b981;background-color:var(--success);color:#fff}.btn-success:hover:not(:disabled){background-color:#059669;box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md)}.btn-sm{font-size:.875rem;padding:.5rem 1rem;padding:var(--space-2) var(--space-4)}.btn-lg{font-size:1.063rem;padding:1rem 2rem;padding:var(--space-4) var(--space-8)}.card{border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm);overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.card:hover{box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md)}.card-header{background-color:#f9fafb;background-color:var(--gray-50);border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--gray-100);gap:var(--space-3);padding:1.25rem 1.5rem;padding:var(--space-5) var(--space-6)}.card-header h2,.card-header h3{color:#111827;color:var(--gray-900);font-size:1.125rem;font-weight:600;margin:0}.card-body{padding:1.5rem;padding:var(--space-6)}.card-footer{background-color:#f9fafb;background-color:var(--gray-50);border-top:1px solid #f3f4f6;border-top:1px solid var(--gray-100);padding:1rem 1.5rem;padding:var(--space-4) var(--space-6)}.card-highlight{border-color:#4a9d5f;border-color:var(--ethariq-accent);border-width:2px}.card-success{border-left:4px solid #10b981;border-left:4px solid var(--success)}.card-warning{border-left:4px solid #f59e0b;border-left:4px solid var(--warning)}.card-error{border-left:4px solid #ef4444;border-left:4px solid var(--error)}.container{max-width:1280px;padding:0 1.5rem;padding:0 var(--space-6);width:100%}.container-narrow{max-width:960px}.container-wide{max-width:1440px}.section{padding:3rem 0;padding:var(--space-12) 0}.section-sm{padding:2rem 0;padding:var(--space-8) 0}.section-lg{padding:4rem 0;padding:var(--space-16) 0}.grid{grid-gap:1.5rem;grid-gap:var(--space-6);display:grid;gap:1.5rem;gap:var(--space-6)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.flex{display:flex;gap:1rem;gap:var(--space-4)}.flex-between{justify-content:space-between}.flex-between,.flex-center{align-items:center;display:flex}.flex-center{justify-content:center}.form-group{margin-bottom:1.25rem;margin-bottom:var(--space-5)}.form-label{color:#374151;color:var(--gray-700);display:block;font-size:.938rem;font-weight:500;margin-bottom:.5rem;margin-bottom:var(--space-2)}.form-label-required:after{color:#ef4444;color:var(--error);content:" *"}.form-input,.form-select,.form-textarea{background-color:#fff;border:1px solid #d1d5db;border:1px solid var(--gray-300);border-radius:.5rem;border-radius:var(--radius-md);color:#111827;color:var(--gray-900);font-size:.938rem;line-height:1.5;padding:.75rem 1rem;padding:var(--space-3) var(--space-4);transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast);width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#1a472a;border-color:var(--ethariq-primary);box-shadow:0 0 0 3px #1a472a1a;outline:none}.form-input::placeholder{color:#9ca3af;color:var(--gray-400)}.form-input-error{border-color:#ef4444;border-color:var(--error)}.form-input-error:focus{box-shadow:0 0 0 3px #ef44441a}.form-help{color:#4b5563;color:var(--gray-600)}.form-error,.form-help{font-size:.875rem;margin-top:.5rem;margin-top:var(--space-2)}.form-error{color:#ef4444;color:var(--error)}.badge{align-items:center;border-radius:.5rem;border-radius:var(--radius-md);display:inline-flex;font-size:.75rem;font-weight:500;line-height:1;padding:.25rem .75rem;padding:var(--space-1) var(--space-3);white-space:nowrap}.badge-primary{background-color:#1a472a;background-color:var(--ethariq-primary);color:#fff}.badge-success{background-color:#d1fae5;background-color:var(--success-light);color:#065f46}.badge-warning{background-color:#fef3c7;background-color:var(--warning-light);color:#92400e}.badge-error{background-color:#fee2e2;background-color:var(--error-light);color:#991b1b}.badge-gray{background-color:#f3f4f6;background-color:var(--gray-100);color:#374151;color:var(--gray-700)}.navbar{background-color:#fff;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);box-shadow:0 1px 2px 0 #0000000d;box-shadow:var(--shadow-sm)}.navbar-content{justify-content:space-between;margin:0 auto;max-width:1440px;padding:1rem 1.5rem;padding:var(--space-4) var(--space-6)}.navbar-brand,.navbar-content{align-items:center;display:flex}.navbar-brand{color:#1a472a;color:var(--ethariq-primary);font-size:1.25rem;font-weight:700;gap:.75rem;gap:var(--space-3);text-decoration:none}.navbar-nav{align-items:center;display:flex;gap:.5rem;gap:var(--space-2)}.nav-link{border-radius:.5rem;border-radius:var(--radius-md);color:#374151;color:var(--gray-700);font-size:.938rem;font-weight:500;padding:.5rem 1rem;padding:var(--space-2) var(--space-4);text-decoration:none;transition:all .15s cubic-bezier(.4,0,.2,1);transition:all var(--transition-fast)}.nav-link-active,.nav-link:hover{background-color:#f3f4f6;background-color:var(--gray-100);color:#1a472a;color:var(--ethariq-primary)}.metric{background-color:#f9fafb;background-color:var(--gray-50);border-radius:.5rem;border-radius:var(--radius-md);gap:.5rem;gap:var(--space-2);padding:1rem;padding:var(--space-4)}.metric-label{color:#4b5563;color:var(--gray-600);letter-spacing:.025em;text-transform:uppercase}.metric-value{color:var(--gray-900);line-height:1}.metric-status{font-weight:500}.metric-hint{color:#6b7280;color:var(--gray-500);font-size:.813rem}.table-container{border:1px solid #e5e7eb;border:1px solid var(--gray-200);border-radius:.75rem;border-radius:var(--radius-lg)}.table{background-color:#fff;border-collapse:collapse;width:100%}.table thead{background-color:#f9fafb;background-color:var(--gray-50);border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200)}.table th{color:#374151;color:var(--gray-700);font-size:.875rem;font-weight:600;letter-spacing:.05em;padding:.75rem 1rem;padding:var(--space-3) var(--space-4);text-align:left;text-transform:uppercase}.table td{border-bottom:1px solid #f3f4f6;border-bottom:1px solid var(--gray-100);color:#111827;color:var(--gray-900);font-size:.938rem;padding:1rem;padding:var(--space-4)}.table tbody tr:hover{background-color:#f9fafb;background-color:var(--gray-50)}.table tbody tr:last-child td{border-bottom:none}.spinner{border:3px solid #e5e7eb;border-top-color:#1a472a;border:3px solid var(--gray-200);border-top-color:var(--ethariq-primary);display:inline-block;height:2rem;width:2rem}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6 50%,#e5e7eb 75%);background:linear-gradient(90deg,var(--gray-200) 25%,var(--gray-100) 50%,var(--gray-200) 75%);background-size:200% 100%;border-radius:.5rem;border-radius:var(--radius-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.text-center{text-align:center}.text-right{text-align:right}.font-bold{font-weight:700}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.mt-2{margin-top:.5rem;margin-top:var(--space-2)}.mt-4{margin-top:1rem;margin-top:var(--space-4)}.mt-6{margin-top:1.5rem;margin-top:var(--space-6)}.mt-8{margin-top:2rem;margin-top:var(--space-8)}.mb-2{margin-bottom:.5rem;margin-bottom:var(--space-2)}.mb-4{margin-bottom:1rem;margin-bottom:var(--space-4)}.mb-6{margin-bottom:1.5rem;margin-bottom:var(--space-6)}.mb-8{margin-bottom:2rem;margin-bottom:var(--space-8)}.p-4{padding:1rem;padding:var(--space-4)}.p-6{padding:1.5rem;padding:var(--space-6)}.p-8{padding:2rem;padding:var(--space-8)}.rounded{border-radius:.5rem;border-radius:var(--radius-md)}.rounded-lg{border-radius:.75rem;border-radius:var(--radius-lg)}.shadow{box-shadow:0 4px 6px -1px #0000001a;box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:0 10px 15px -3px #0000001a;box-shadow:var(--shadow-lg)}.admin-dashboard{background-color:#f9fafb;background-color:var(--gray-50);min-height:100vh}.admin-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem;margin-bottom:var(--space-6);padding:1.5rem 0;padding:var(--space-6) 0}.container{margin:0 auto;max-width:1400px;padding:1.5rem;padding:var(--space-6)}.table-container{overflow-x:auto}.date-cell,.location-cell{align-items:center}.action-buttons,.date-cell,.location-cell{display:flex;gap:.5rem;gap:var(--space-2)}.modal-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;padding:var(--space-4);position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:.75rem;border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a;box-shadow:var(--shadow-xl);max-height:90vh;max-width:800px;overflow-y:auto;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--gray-200);display:flex;justify-content:space-between}.modal-body,.modal-footer,.modal-header{padding:1.5rem;padding:var(--space-6)}.modal-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--gray-200);display:flex;gap:.75rem;gap:var(--space-3);justify-content:flex-end}.details-grid{grid-gap:1rem;grid-gap:var(--space-4);display:grid;gap:1rem;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-item{display:flex;flex-direction:column;gap:.25rem;gap:var(--space-1)}.detail-label{color:#4b5563;color:var(--gray-600);font-size:var(--text-sm);font-weight:600;letter-spacing:.05em;text-transform:uppercase}.detail-value{color:#111827;color:var(--gray-900);font-size:var(--text-base)}.alert{border-radius:.5rem;border-radius:var(--radius-md);margin-bottom:1rem;margin-bottom:var(--space-4);padding:1rem;padding:var(--space-4)}.alert-error{background-color:#fee;border:1px solid #ef4444;border:1px solid var(--error);color:#c00}.progress-bar-container{background-color:#e5e7eb;background-color:var(--gray-200);border-radius:var(--radius-full);height:4px;margin:1rem 0;margin:var(--space-4) 0;overflow:hidden;width:100%}.progress-bar-indeterminate{animation:progress-indeterminate 1.5s ease-in-out infinite;background:linear-gradient(90deg,#1a472a,#4a9d5f 50%,#1a472a);background:linear-gradient(90deg,var(--ethariq-primary) 0,var(--ethariq-accent) 50%,var(--ethariq-primary) 100%);height:100%;width:50%}@keyframes progress-indeterminate{0%{transform:translateX(-100%)}to{transform:translateX(300%)}}.loading-time{color:#4b5563;color:var(--gray-600);font-size:var(--text-sm);margin-top:.5rem;margin-top:var(--space-2)}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;color:#333;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.6}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #e5e5e5;height:64px;left:0;position:fixed;right:0;top:0;z-index:100}.nav-content{align-items:center;display:flex;height:100%;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 24px}.nav-spacer{flex:1 1;height:1px}.nav-actions{align-items:center;display:flex;gap:16px}.nav-link-button,.theme-toggle{align-items:center;background:#f5f5f5;border:1px solid #e5e5e5;border-radius:6px;color:#333;cursor:pointer;display:flex;font-size:14px;font-weight:500;height:36px;justify-content:center;padding:0 18px;text-decoration:none;transition:all .2s ease}.theme-toggle{font-size:16px;padding:0;width:36px}.nav-link-button:hover,.theme-toggle:hover{background:#e5e5e5;border-color:#ccc;color:#000}.analyze-page{background:#fff;min-height:100vh}.analyze-form-container{margin:0 auto;max-width:720px;padding:96px 24px 64px}.form-header{margin-bottom:64px;text-align:center}.form-header h1{color:#000;font-size:32px;font-weight:600;letter-spacing:-.02em;margin-bottom:8px}.subtitle{color:#666;font-size:16px;font-weight:400}.error-banner{align-items:flex-start;background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;display:flex;gap:12px;margin-bottom:24px;padding:16px}.error-icon{flex-shrink:0;font-size:20px}.error-banner span:nth-child(2){color:#c53030;flex:1 1;font-size:14px;line-height:1.5}.error-close{background:none;border:none;color:#c53030;cursor:pointer;flex-shrink:0;font-size:20px;line-height:1;padding:0}.loading-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fffffff2;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:200}.loading-spinner{text-align:center}.spinner{animation:spin .8s linear infinite;border:3px solid #e5e5e5;border-radius:50%;border-top-color:#000;height:48px;margin:0 auto 16px;width:48px}@keyframes spin{to{transform:rotate(1turn)}}.loading-spinner p{color:#000;font-size:16px;font-weight:500;margin-bottom:4px}.loading-subtext{color:#666;font-size:14px}.form-section{margin-bottom:48px}.form-section h2{color:#000;font-size:20px;font-weight:600;letter-spacing:-.01em;margin-bottom:24px}.form-group{margin-bottom:20px}.form-group label{color:#333;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #e5e5e5;border-radius:6px;color:#333;font-size:14px;padding:10px 14px;transition:all .2s ease;width:100%}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#ccc}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#000;box-shadow:0 0 0 3px #0000000d;outline:none}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#fafafa;cursor:not-allowed;opacity:.6}.form-group input.error,.form-group select.error{border-color:#fc8181}.field-error{color:#c53030;display:block;font-size:13px;margin-top:6px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:20px}.form-row .form-group{margin-bottom:0}.form-row button{grid-column:span 2}.input-with-button{display:flex;gap:8px}.input-with-button input{flex:1 1}.geocode-button{background:#f5f5f5;border:1px solid #e5e5e5;border-radius:6px;color:#333;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:500;padding:10px 16px;transition:all .2s ease;white-space:nowrap}.geocode-button:hover:not(:disabled){background:#e5e5e5;border-color:#ccc;color:#000}.geocode-button:disabled{cursor:not-allowed;opacity:.5}.geocode-button.reverse{grid-column:span 2;width:100%}.recaptcha-container{display:flex;justify-content:center;margin:32px 0}.submit-button{background:#000;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;margin-bottom:16px;padding:14px 32px;transition:all .2s ease;width:100%}.submit-button:hover:not(:disabled){background:#333;box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.submit-button:disabled{background:#e5e5e5;color:#999;cursor:not-allowed;transform:none}.form-footer{color:#999;line-height:1.5}.form-footer,.form-note{font-size:13px;text-align:center}.form-note{color:#4b5563;margin-top:12px}.site-footer{background:#fff;border-top:1px solid #e5e5e5;margin-top:64px;padding:40px 0}.footer-content{align-items:flex-start;display:flex;gap:48px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 24px}.footer-section h3{color:#000;font-size:18px;font-weight:600;margin-bottom:8px}.footer-section h4{color:#000;font-size:14px;font-weight:600;margin-bottom:12px}.footer-section p{color:#666;font-size:14px;line-height:1.6;margin:4px 0}.footer-section ul{list-style:none;margin:0;padding:0}.footer-section ul li{margin:8px 0}.footer-section ul li a{color:#666;font-size:14px;text-decoration:none;transition:color .2s ease}.footer-section ul li a:hover{color:#000}.footer-bottom{color:#999;font-size:13px;margin-top:32px;padding:0 24px;text-align:center}body.dark-mode{background:#000;color:#e5e5e5}.dark-mode .navbar{background:#000000f2;border-bottom-color:#333}.dark-mode .geocode-button,.dark-mode .nav-link-button,.dark-mode .theme-toggle{background:#1a1a1a;border-color:#333;color:#e5e5e5}.dark-mode .geocode-button:hover:not(:disabled),.dark-mode .nav-link-button:hover,.dark-mode .theme-toggle:hover{background:#2a2a2a;border-color:#444;color:#fff}.dark-mode .analyze-page{background:#000}.dark-mode .form-header h1,.dark-mode .form-section h2{color:#fff}.dark-mode .form-group label,.dark-mode .subtitle{color:#999}.dark-mode .form-group input,.dark-mode .form-group select,.dark-mode .form-group textarea{background:#1a1a1a;border-color:#333;color:#e5e5e5}.dark-mode .form-group input:hover,.dark-mode .form-group select:hover,.dark-mode .form-group textarea:hover{border-color:#444}.dark-mode .form-group input:focus,.dark-mode .form-group select:focus,.dark-mode .form-group textarea:focus{border-color:#fff;box-shadow:0 0 0 3px #ffffff0d}.dark-mode .form-group input:disabled,.dark-mode .form-group select:disabled{background:#0a0a0a}.dark-mode .submit-button{background:#fff;color:#000}.dark-mode .submit-button:hover:not(:disabled){background:#e5e5e5}.dark-mode .submit-button:disabled{background:#2a2a2a;color:#666}.dark-mode .site-footer{background:#000;border-top-color:#333}.dark-mode .footer-top{border-bottom-color:#333}.dark-mode .footer-section h3,.dark-mode .footer-section h4{color:#fff}.dark-mode .footer-section p,.dark-mode .footer-section ul li a{color:#999}.dark-mode .footer-section ul li a:hover{color:#fff}.dark-mode .loading-overlay{background:#000000f2}.dark-mode .spinner{border-color:#fff #333 #333}.dark-mode .loading-spinner p{color:#fff}@media (max-width:768px){.navbar{height:56px}.logo{height:24px}.nav-actions{gap:8px}.theme-toggle{font-size:14px;height:32px;width:32px}.back-link{font-size:13px;height:32px;padding:0 12px}.analyze-form-container{padding:80px 16px 48px}.form-header{margin-bottom:40px}.form-header h1{font-size:24px}.subtitle{font-size:14px}.form-section{margin-bottom:32px}.form-section h2{font-size:18px;margin-bottom:20px}.form-row{gap:20px;grid-template-columns:1fr}.form-row button{grid-column:1}.input-with-button{flex-direction:column}.geocode-button{width:100%}.footer-top{flex-direction:column;gap:32px}.submit-button{font-size:15px;padding:12px 24px}}:focus-visible{outline:2px solid #000;outline-offset:2px}.dark-mode :focus-visible{outline-color:#fff}@media print{.back-link,.navbar,.site-footer,.theme-toggle{display:none}.analyze-form-container{padding-top:0}}.results-container{background-color:#f9fafb;margin:0 auto;max-width:1400px;min-height:100vh;padding:2rem}.results-navbar{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.nav-button{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:999px;color:#111827;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;padding:.5rem 1.25rem;text-decoration:none;transition:all .2s}.nav-button:hover{background:#f9fafb;border-color:#d1d5db;transform:translateY(-1px)}.results-header{align-items:center;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;gap:2rem;justify-content:space-between;margin-bottom:2rem;padding:2rem}.header-content h1{color:#111827;font-size:2rem;font-weight:700;margin-bottom:.75rem}.location-info{align-items:center;color:#6b7280;display:flex;font-size:1rem;gap:.5rem;margin-bottom:.75rem}.building-info{display:flex;flex-wrap:wrap;gap:1rem}.info-badge{background:#f3f4f6;border-radius:6px;color:#374151;font-size:.875rem;font-weight:500;padding:.375rem .75rem}.header-actions{display:flex;flex-shrink:0;gap:1rem}.btn-download{align-items:center;background:#000;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.btn-download:hover{background:#1f2937;box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}.btn-secondary{background:#fff;border:2px solid #e5e7eb;border-radius:8px;color:#374151;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .2s}.btn-secondary:hover{background:#f9fafb;border-color:#d1d5db}.highlight-card{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:2px solid #86efac}.highlight-card .card-header{color:#065f46}.climate-zone-content{padding:1rem 0}.zone-primary{display:flex;flex-wrap:wrap;gap:2rem;margin-bottom:1.5rem}.zone-badge{background:#fff;border:2px solid #e5e7eb;border-radius:8px;display:flex;flex:1 1;flex-direction:column;gap:.5rem;min-width:250px;padding:1.5rem}.zone-badge.ashrae{background:#eff6ff;border-color:#3b82f6}.zone-badge.koppen{background:#ecfdf5;border-color:#10b981}.zone-label{color:#6b7280;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.zone-value{color:#111827;font-size:1.25rem;font-weight:700}.zone-implications{background:#fff;border-left:4px solid #3b82f6;border-radius:8px;padding:1rem}.zone-implications p{color:#374151;line-height:1.6;margin:0}.results-grid{grid-gap:.75rem;align-items:stretch;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(500px,1fr));margin-bottom:2rem}.card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;height:100%;padding:1.5rem;transition:all .2s}.card:hover{box-shadow:0 4px 6px #0000001a}.compact-card{padding:1.25rem}.card-header{align-items:center;border-bottom:2px solid #f3f4f6;display:flex;gap:.75rem;margin-bottom:1.5rem;padding-bottom:.75rem}.card-header svg{color:#3b82f6}.card-header h2{color:#111827;font-size:1.25rem;font-weight:700;margin:0}.success-card{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid #86efac}.success-card .card-header svg{color:#10b981}.warning-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #fbbf24}.warning-card .card-header svg{color:#f59e0b}.metrics-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.metric{display:flex;flex-direction:column;gap:.375rem}.metric-label{color:#6b7280;font-size:.875rem;font-weight:500}.metric-value{color:#111827;font-size:1.5rem;font-weight:700}.metric-status{font-size:.875rem;font-weight:600}.metric-hint{color:#9ca3af;font-size:.75rem;font-style:italic}.metric-featured{align-items:flex-start;background:#f9fafb;border-left:4px solid #10b981;border-radius:8px;display:flex;gap:1rem;grid-column:1/-1;padding:1rem}.metric-featured svg{flex-shrink:0;margin-top:.25rem}.metric-content{display:flex;flex:1 1;flex-direction:column;gap:.375rem}.card>*+*{margin-top:1.25rem}.metrics-grid>.metric+.metric{margin-top:0}.terrain-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(2,1fr)}.aqi-status{background:#f9fafb;border-radius:8px;gap:2rem;margin-bottom:1.5rem;padding:1rem}.aqi-badge,.aqi-status{align-items:center;display:flex}.aqi-badge{background:#fff;border:4px solid;border-radius:50%;flex-direction:column;height:120px;justify-content:center;width:120px}.aqi-value{color:#111827;font-size:2.5rem;font-weight:700}.aqi-label{color:#6b7280;font-size:.875rem;font-weight:600}.aqi-category{display:flex;flex:1 1;flex-direction:column;gap:.5rem}.aqi-category>span{font-size:1.5rem;font-weight:700}.aqi-warning{background:#fef3c7;border-left:4px solid #f59e0b;border-radius:4px;color:#92400e;font-size:.875rem;margin:0;padding:.75rem}.pollutants-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.pollutant{background:#f9fafb;border-radius:6px;display:flex;flex-direction:column;gap:.25rem;padding:.75rem}.pollutant-name{color:#6b7280;font-size:.875rem;font-weight:600}.pollutant-value{color:#111827;font-size:1.125rem;font-weight:700}.recommendations-card{background:#f9fafb;border:1px dashed #d1d5db}.recommendations-list{color:#374151;line-height:1.6;margin:0;padding-left:1.25rem}.recommendations-list li{margin-bottom:.5rem}.recommendations-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.solar-highlight{align-items:center;background:#fff;border:2px solid #86efac;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding:1.5rem}.solar-main{display:flex;flex-direction:column;gap:.25rem}.solar-value{color:#065f46;font-size:3rem;font-weight:700}.solar-unit{color:#6b7280;font-size:1rem;font-weight:600}.solar-score{align-items:center;display:flex;flex-direction:column;gap:.5rem}.score-circle{height:100px;position:relative;width:100px}.score-circle,.score-circle span{align-items:center;border-radius:50%;display:flex;justify-content:center}.score-circle span{background:#fff;color:#065f46;font-size:1.5rem;font-weight:700;height:70px;width:70px}.score-label{color:#6b7280;font-size:.875rem;font-weight:600}.risk-assessment{gap:1rem}.risk-assessment,.risk-level{display:flex;flex-direction:column}.risk-level{background:#fff;border:3px solid;border-radius:8px;gap:.5rem;padding:1.5rem}.risk-label{color:#6b7280;font-size:.875rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.risk-value{font-size:1.75rem;font-weight:700}.risk-score{color:#6b7280;font-size:1rem}.risk-factors{background:#f9fafb;border-radius:8px;padding:1rem}.factors-title{color:#374151;font-weight:600;margin:0 0 .5rem}.risk-factors ul{margin:0;padding-left:1.5rem}.risk-factors li{color:#6b7280;margin-bottom:.25rem}.seismic-content{display:flex;flex-direction:column;gap:1.5rem}.seismic-zone-badge{align-items:center;border:3px solid;gap:.5rem;padding:1.5rem;text-align:center}.seismic-info,.seismic-zone-badge{border-radius:8px;display:flex;flex-direction:column}.seismic-info{background:#f9fafb;gap:.75rem;padding:1rem}.seismic-info p{color:#374151;line-height:1.6;margin:0}.seismic-warning{background:#fef3c7;border-left:4px solid #f59e0b;border-radius:4px;color:#92400e;font-weight:600;padding:.75rem}.wind-risk-content p{color:#374151;line-height:1.6;margin:0 0 .75rem}.cta-section{background:linear-gradient(135deg,#000,#1f2937);border-radius:12px;box-shadow:0 4px 6px #0000001a;color:#fff;margin-bottom:2rem;padding:3rem;text-align:center}.cta-content h3{font-size:2rem;font-weight:700;margin:0 0 1rem}.cta-content p{color:#d1d5db;font-size:1.125rem;margin:0 auto 2rem;max-width:600px}.climate-disclaimer{color:#6b7280;font-size:.82rem;font-style:italic;line-height:1.3;margin:-.5rem 0 1rem}.btn-cta{background:#fff;border-radius:8px;color:#000;display:inline-block;font-size:1.125rem;font-weight:700;padding:1rem 2rem;text-decoration:none;transition:all .2s}.btn-cta:hover{background:#f3f4f6;box-shadow:0 4px 6px #fff3;transform:translateY(-2px)}.results-footer{background:#fff;border-radius:12px;padding:2rem;text-align:center}.results-footer p{color:#6b7280;font-size:.875rem;line-height:1.6;margin:.5rem 0}.copyright{color:#111827;font-weight:600;margin-top:1rem}.no-data{align-items:center;display:flex;flex-direction:column;gap:1rem;padding:4rem 2rem;text-align:center}.no-data svg{color:#f59e0b}.no-data h2{color:#111827;font-size:1.5rem;margin:0}.no-data p{color:#6b7280;margin:0}.btn-primary{background:#000;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem;transition:all .2s}.btn-primary:hover{background:#1f2937;box-shadow:0 4px 6px #0000001a;transform:translateY(-2px)}@media (max-width:1024px){.results-grid{grid-template-columns:1fr}}@media (max-width:768px){.results-container{padding:1rem}.results-navbar{align-items:stretch;flex-direction:column}.nav-button{justify-content:center;width:100%}.results-header{align-items:flex-start;flex-direction:column}.header-actions{width:100%}.btn-download,.btn-secondary{flex:1 1}.solar-highlight,.zone-primary{flex-direction:column}.solar-highlight{gap:1.5rem}.aqi-status{align-items:flex-start;flex-direction:column}.metrics-grid{grid-template-columns:1fr}.cta-section{padding:2rem 1.5rem}.cta-content h3{font-size:1.5rem}}
/*# sourceMappingURL=main.b682410f.css.map*/