body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;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{--uc-blue-primary:#1295d8;--uc-gold-primary:#ffb511;--uc-blue:#005581;--uc-light-blue:#72cdf4;--uc-gold:#ffd200;--uc-light-gold:#ffe552;--uc-teal:#00778b;--uc-light-teal:#00a3ad;--uc-pink:#e44c9a;--uc-light-pink:#feb2e0;--uc-orange:#ff6e1b;--uc-light-orange:#ff8f28;--uc-dark-blue:#002033;--uc-extra-light-blue:#bde3f6;--uc-dark-gray:#171717;--uc-gray:#4c4c4c;--uc-uc-gray:#7c7e7f;--uc-warm-gray-8:#8f8884;--uc-warm-gray-3:#beb6af;--uc-warm-gray-1:#dbd5cd;--overview-color:var(--uc-blue);--ghg-color:var(--uc-light-blue);--transportation-color:var(--uc-teal);--energy-color:var(--uc-gold-primary);--other-color:var(--uc-orange);--people-color:var(--uc-pink);--bg-page:#f8fafc;--bg-header:#fff;--bg-nav:#fff;--text-primary:#0f172a;--text-secondary:#475569;--border-color:#e2e8f0;--card-bg:#fff;--header-border:#d1d5db;--header-button-bg:#fff;--header-button-text:#374151;--header-button-hover-bg:#f9fafb;--header-border-hover:#9ca3af;--header-description:#6b7280;--header-title:#005581;--header-title-hover:#004a6f;--loading-bg:#f8fafc;--loading-text:#6b7280;--section-bg:#fff;--section-bg-alt:#f1f5f9;--chart-container-bg:#fff}[data-theme=dark]{--bg-page:#0f172a;--bg-header:#1e293b;--bg-nav:#1e293b;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--border-color:#334155;--card-bg:#1e293b;--section-bg:#1a2332;--section-bg-alt:#243044;--chart-container-bg:#2d3a4f;--header-border:#475569;--header-button-bg:#334155;--header-button-text:#e2e8f0;--header-button-hover-bg:#475569;--header-border-hover:#64748b;--header-description:#94a3b8;--header-title:#7dd3fc;--header-title-hover:#bae6fd;--loading-bg:#0f172a;--loading-text:#94a3b8}:focus-visible{outline:2px solid #005581;outline-offset:2px}.skip-link{background:#005581;border-radius:4px;color:#fff;font-weight:600;left:-9999px;padding:.75rem 1rem;position:absolute;text-decoration:none;top:.5rem;z-index:10000}.skip-link:focus{left:.5rem;outline:3px solid #fff;outline-offset:2px}body,html{color:var(--text-primary)}.App,body,html{background-color:var(--bg-page);margin:0;max-width:100vw;overflow-x:hidden;padding:0;width:100%}.App{min-height:100vh;position:relative;text-align:left}.App,.App>*{box-sizing:border-box}.App>*{max-width:100vw}.App>* .chart-section,.App>* .page-header{max-width:none!important}.main-content{background-color:var(--bg-page);margin:0;min-height:calc(100vh - 200px);overflow-x:visible;padding:0;position:relative;width:100%}.main-content--v1-fullscreen{height:100vh;margin:0;min-height:0;padding:0}.main-content>*,.main-content>*>*{overflow-x:visible}.loading-container{align-items:center;background-color:var(--loading-bg);display:flex;flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;justify-content:center;min-height:100vh}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#005581;height:40px;margin-bottom:20px;width:40px}.loading-container p{color:var(--loading-text);font-size:16px;margin:0}@media (min-width:1920px){.main-content{margin:0;max-width:100%;padding:0}}@media (max-width:1440px) and (min-width:1200px){.main-content{padding:0 20px}.App{font-size:15px}}@media (max-width:1199px) and (min-width:1024px){.main-content{padding:0 15px}.App{font-size:14px}.header{padding:20px}.header h1{font-size:1.75rem}.header p{font-size:1rem}}@media (max-width:1023px) and (min-width:769px){.main-content{padding:0 10px}.App{font-size:14px}.header{padding:15px}.header h1{font-size:1.5rem}.header p{font-size:.9rem}.header-logo{height:120px}}@media (max-width:768px){.main-content{padding:80px 5px 0}.App{font-size:14px}}@media (max-width:480px){.main-content{padding:70px 0 0}.App{font-size:13px}}.chart-container canvas{height:auto!important;max-width:100%!important}.chart-container{overflow:hidden}canvas{height:auto!important;max-width:100%!important}@media (max-width:1199px){.chart-container canvas{height:350px!important}}@media (max-width:1023px){.chart-container canvas{height:300px!important}}@media (max-width:768px){.chart-container canvas{height:250px!important}.nav-item,.toggle-btn,button{min-height:44px;min-width:44px}h1,h2,h3,h4,h5,h6{line-height:1.3}body{overflow-x:hidden}li,p{line-height:1.6}}.auth-callback{align-items:center;background-color:#f9fafb;display:flex;justify-content:center;min-height:100vh;padding:20px}.auth-callback-content{max-width:400px;text-align:center;width:100%}.auth-callback-spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:48px;margin:0 auto 24px;width:48px}.auth-callback h2{color:#111827;font-size:24px;font-weight:600;margin:0 0 16px}.auth-callback p{color:#6b7280;font-size:16px;line-height:1.5;margin:0 0 24px}.auth-callback-button{background-color:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:background-color .2s,transform .1s}.auth-callback-button:hover{background-color:#2563eb;transform:translateY(-1px)}.auth-callback-error{background:#fff;border:1px solid #fecaca;border-radius:12px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);padding:32px}.auth-callback-error h2{color:#dc2626;margin-bottom:16px}.auth-callback-error p{color:#dc2626;margin-bottom:24px}.auth-callback-success{background:#fff;border:1px solid #bbf7d0;border-radius:12px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);padding:32px}.auth-callback-success h2{color:#166534;margin-bottom:16px}.auth-callback-success p{color:#166534;margin-bottom:0}.password-reset-form{margin-top:24px;text-align:left}.form-group label{margin-bottom:8px}.form-group input{font-size:16px;transition:border-color .2s,box-shadow .2s}.form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.password-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:14px;margin-top:8px;padding:8px 12px}@media (max-width:640px){.auth-callback{padding:16px}.auth-callback-content{max-width:100%}.auth-callback h2{font-size:20px}.auth-callback p{font-size:14px}.auth-callback-button{font-size:14px;padding:10px 20px}}.coolclimate-nav-bar{background:#fff;border-radius:0;box-shadow:0 2px 10px rgba(0,0,0,.1);box-sizing:border-box;display:flex;margin:0;overflow:hidden;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:100}.coolclimate-nav-item{border:2px solid transparent;border-radius:0;box-sizing:border-box;color:#fff;cursor:pointer;flex:1 1;font-weight:700;min-width:0;overflow:hidden;padding:15px 10px;position:relative;text-align:center;transition:all .3s ease}.coolclimate-nav-item:hover{border:none;box-shadow:none;opacity:.9;transform:none}.coolclimate-nav-item.active{border:none;box-shadow:none;opacity:1;transform:none}.coolclimate-nav-item.active:after{background:#00778b;border-radius:0;bottom:0;content:"";height:4px;left:0;position:absolute;width:100%}.coolclimate-nav-home{background:#005581}.coolclimate-nav-calculator{background:#00778b}@media (max-width:768px){.coolclimate-nav-bar{flex-direction:column}.coolclimate-nav-item{flex:none;width:100%}}.footer{background-color:#374151;color:#f9fafb;margin-top:80px;padding:60px 0 20px;width:100%}.footer-content{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin:0 auto 40px;max-width:1200px;padding:0 20px}.footer-section h4{color:var(--uc-gold-primary);font-size:1.2rem;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-transform:uppercase}.footer-section p{color:#d1d5db;font-size:1rem;line-height:1.6;margin:0}.footer-link{color:var(--uc-light-blue);font-weight:500;text-decoration:none;transition:color .2s ease}.footer-link:hover{color:var(--uc-blue);text-decoration:underline}.footer-link:focus{outline:2px solid #60a5fa;outline-offset:2px}.footer-bottom{border-top:1px solid #4b5563;padding-top:20px;text-align:center}.footer-bottom p{color:#9ca3af;font-size:.9rem;margin:0}@media (max-width:768px){.footer{margin-top:60px;padding:40px 0 20px}.footer-content{gap:30px;grid-template-columns:1fr;padding:0 16px}.footer-section h4{font-size:1.1rem}.footer-section p{font-size:.95rem}}@media (max-width:480px){.footer{margin-top:40px;padding:30px 0 20px}.footer-content{gap:24px;padding:0 12px}}.auth-button-loading{align-items:center;display:flex;justify-content:center;padding:8px 16px}.auth-button-spinner{animation:spin 1s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:20px;width:20px}.auth-button-group{align-items:center;display:flex;gap:12px}.auth-button{align-items:center;border:1px solid #d1d5db;border-radius:6px;display:inline-flex;font-size:14px;justify-content:center;min-height:36px;padding:8px 16px;text-decoration:none;transition:all .2s;white-space:nowrap}.auth-button:hover{box-shadow:0 4px 6px -1px rgba(0,0,0,.1);transform:translateY(-1px)}.auth-button-primary{border-color:#3b82f6}.auth-button-primary:hover{background-color:#2563eb;border-color:#2563eb}.auth-button-outline{background-color:transparent;border-color:#d1d5db;color:#374151}.auth-button-outline:hover{background-color:#f9fafb;border-color:#9ca3af}.auth-button-user{align-items:center;background-color:var(--header-button-bg);border:1px solid var(--header-border);border-radius:6px;color:var(--header-button-text);cursor:pointer;display:flex;gap:8px;min-height:36px;padding:8px 12px;transition:all .2s}.auth-button-user:hover{background-color:var(--header-button-hover-bg);border-color:var(--header-border-hover);box-shadow:0 4px 6px -1px rgba(0,0,0,.1);transform:translateY(-1px)}.auth-button-avatar{align-items:center;background-color:#3b82f6;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:12px;font-weight:600;height:24px;justify-content:center;width:24px}.auth-button-name{color:var(--header-button-text);font-size:14px;font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-button-chevron{color:var(--header-description);flex-shrink:0;height:16px;transition:transform .2s;width:16px}.auth-button-user:hover .auth-button-chevron{transform:rotate(180deg)}.auth-button-user-menu{display:inline-block;position:relative;z-index:300}.auth-button-dropdown{background:var(--card-bg);border:1px solid var(--header-border);border-radius:8px;box-shadow:0 10px 15px -3px rgba(0,0,0,.15),0 4px 6px -2px rgba(0,0,0,.08);isolation:isolate;margin-top:8px;min-width:200px;overflow:hidden;position:fixed;z-index:1100}.auth-button-dropdown-header{background-color:var(--section-bg-alt);border-bottom:1px solid var(--border-color);padding:12px 16px}.auth-button-dropdown-name{color:var(--text-primary);font-size:14px;font-weight:600;margin-bottom:2px}.auth-button-dropdown-email{color:var(--text-secondary);font-size:12px;margin-bottom:4px}.auth-button-dropdown-role{color:#3b82f6;font-size:11px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.auth-button-dropdown-divider{background-color:var(--border-color);height:1px}.auth-button-dropdown-menu{padding:4px 0}.auth-button-dropdown-item{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;gap:12px;padding:8px 16px;text-align:left;transition:background-color .2s;width:100%}.auth-button-dropdown-item:hover{background-color:var(--section-bg-alt)}.auth-button-dropdown-icon{font-size:16px;text-align:center;width:20px}@media (max-width:768px){.auth-button-group{flex-direction:column;gap:8px;width:100%}.auth-button{justify-content:center;width:100%}.auth-button-name{max-width:80px}}@media (max-width:480px){.auth-button-group{flex-direction:row;gap:8px}.auth-button{font-size:12px;min-height:32px;padding:6px 12px}.auth-button-user{min-height:32px;padding:6px 8px}.auth-button-avatar{font-size:10px;height:20px;width:20px}.auth-button-name{font-size:12px;max-width:60px}}.auth-button-signout{border-top:1px solid var(--border-color);color:#dc2626!important;margin-top:4px;padding-top:8px}.auth-button-signout:hover{background-color:rgba(220,38,38,.08)!important;color:#b91c1c!important}.auth-button-signout .auth-button-dropdown-icon{color:#dc2626}.auth-modal-overlay{align-items:center;background-color:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.auth-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);max-height:90vh;max-width:480px;overflow-y:auto;position:relative;width:100%}.auth-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px 24px 0}.auth-modal-header h2{color:#111827;font-size:24px;font-weight:600;margin:0}.auth-modal-close{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:24px;padding:4px;transition:background-color .2s}.auth-modal-close:hover{background-color:#f3f4f6}.auth-modal-body{padding:0 24px 24px}.auth-form{margin-bottom:24px}.auth-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.auth-form-group{margin-bottom:20px}.auth-form-group label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.auth-form-group input{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.auth-form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.auth-form-group input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.auth-button{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;margin-bottom:12px;padding:12px 16px;transition:background-color .2s,transform .1s;width:100%}.auth-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.auth-button-primary{background-color:#3b82f6;color:#fff}.auth-button-primary:hover:not(:disabled){background-color:#2563eb;transform:translateY(-1px)}.auth-divider{color:#6b7280;font-size:14px;margin:24px 0;position:relative;text-align:center}.auth-divider:before{background-color:#e5e7eb;content:"";height:1px;left:0;position:absolute;right:0;top:50%}.auth-divider span{background-color:#fff;padding:0 16px;position:relative}.auth-providers{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.auth-provider-button{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:flex;font-size:16px;font-weight:500;gap:12px;justify-content:center;padding:12px 16px;transition:background-color .2s,border-color .2s,transform .1s}.auth-provider-button:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af;transform:translateY(-1px)}.auth-provider-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.auth-provider-icon{flex-shrink:0;height:20px;width:20px}.auth-provider-google:hover:not(:disabled){border-color:#4285f4}.auth-modal-footer{border-top:1px solid #e5e7eb;padding-top:16px;text-align:center}.auth-modal-footer p{color:#6b7280;font-size:14px;margin:0 0 12px}.auth-link-button{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:inherit;margin:0;padding:0;text-decoration:underline}.auth-link-button:hover:not(:disabled){color:#2563eb}.auth-link-button:disabled{cursor:not-allowed;opacity:.6}.auth-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:20px;padding:12px 16px}.auth-success{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#166534;margin-bottom:20px;padding:20px;text-align:center}.auth-success p{font-size:14px;margin:0 0 8px}.auth-success p:last-child{margin-bottom:0}@media (max-width:640px){.auth-modal{border-radius:0;margin:0;max-height:100vh}.auth-modal-header{padding:20px 20px 0}.auth-modal-body{padding:0 20px 20px}.auth-form-row{gap:0;grid-template-columns:1fr}}.auth-button:disabled,.auth-provider-button:disabled{position:relative}.auth-button:disabled:after,.auth-provider-button:disabled:after{animation:spin 1s linear infinite;border:2px solid transparent;border-radius:50%;border-top-color:currentcolor;content:"";height:16px;position:absolute;right:16px;top:50%;transform:translateY(-50%);width:16px}.auth-checkbox-label{align-items:flex-start;cursor:pointer;display:flex;font-size:14px;gap:8px;line-height:1.4;margin:0}.auth-checkbox-label input[type=checkbox]{cursor:pointer;flex-shrink:0;height:16px;margin:2px 0 0;width:16px}.auth-checkbox-text{color:#374151;-webkit-user-select:none;user-select:none}.auth-link{color:#3b82f6;cursor:pointer;text-decoration:underline}.auth-link:hover{color:#2563eb;text-decoration:none}.auth-link:focus{border-radius:2px;outline:2px solid #3b82f6;outline-offset:2px}.auth-terms-modal{max-width:500px}.auth-terms-content{margin-bottom:24px;text-align:center}.auth-terms-content p{color:#374151;line-height:1.5;margin:0 0 16px}.auth-terms-links{margin:20px 0}.auth-terms-link{background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:8px;display:inline-block;font-weight:500;padding:12px 24px;text-decoration:none;transition:all .2s}.auth-terms-link:hover{background-color:#e5e7eb;border-color:#9ca3af;text-decoration:none}.auth-terms-note{font-style:italic;margin-top:16px!important}.auth-modal-footer{display:flex;gap:12px;justify-content:flex-end}.auth-button-secondary{background-color:#f3f4f6;border:1px solid #d1d5db;color:#374151}.auth-button-secondary:hover:not(:disabled){background-color:#e5e7eb;border-color:#9ca3af}.auth-terms-note{color:#6b7280;font-size:14px;line-height:1.5;margin:0;text-align:center}.password-change-overlay{align-items:center;background-color:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.password-change-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);margin:20px;max-width:400px;overflow:hidden;width:100%}.password-change-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px 24px 0}.password-change-header h2{color:#1f2937;font-size:20px;font-weight:600;margin:0}.password-change-close{align-items:center;background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.password-change-close:hover:not(:disabled){background-color:#f3f4f6;color:#374151}.password-change-close:disabled{cursor:not-allowed;opacity:.5}.password-change-form{padding:0 24px 24px}.password-change-success{padding:24px;text-align:center}.success-icon{align-items:center;background-color:#10b981;border-radius:50%;color:#fff;display:flex;font-size:24px;font-weight:700;height:48px;justify-content:center;margin:0 auto 16px;width:48px}.password-change-success h3{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 8px}.password-change-success p{color:#6b7280;font-size:14px;margin:0}.form-group{margin-bottom:20px}.form-group label{font-size:14px;margin-bottom:6px}.form-group input{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:14px;padding:12px;transition:border-color .2s ease;width:100%}.form-group input:focus{border-color:#005581;box-shadow:0 0 0 3px rgba(0,85,129,.1);outline:none}.form-group input:disabled{background-color:#f9fafb;cursor:not-allowed}.error-message{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-bottom:20px;padding:12px}.password-change-actions{display:flex;gap:12px;justify-content:flex-end}.password-change-cancel{background:none;border:1px solid #d1d5db;border-radius:8px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;padding:12px 20px;transition:all .2s ease}.password-change-cancel:hover:not(:disabled){background-color:#f9fafb;color:#374151}.password-change-cancel:disabled{cursor:not-allowed;opacity:.5}.password-change-submit{background:#005581;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 20px;transition:background-color .2s ease}.password-change-submit:hover:not(:disabled){background:#004a6f}.password-change-submit:disabled{background:#9ca3af;cursor:not-allowed}.autocomplete{position:relative;width:100%}.autocomplete-input{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.autocomplete-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.autocomplete-input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.autocomplete-dropdown{border:1px solid #d1d5db;border-radius:0 0 8px 8px;border-top:none;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);z-index:1000}.autocomplete-option{border-bottom:1px solid #f3f4f6;cursor:pointer;padding:12px 16px;transition:background-color .2s}.autocomplete-option:last-child{border-bottom:none}.autocomplete-option.highlighted,.autocomplete-option:hover{background-color:#f3f4f6}.autocomplete-loading,.autocomplete-no-results{color:#6b7280;font-style:italic;padding:12px 16px;text-align:center}.autocomplete-loading{background-color:#f9fafb}@media (max-width:768px){.autocomplete-input{font-size:16px}.autocomplete-dropdown{max-height:150px}.autocomplete-option{font-size:14px;padding:10px 12px}}.user-profile-overlay{align-items:center;background-color:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.user-profile-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);max-height:90vh;max-width:700px;overflow-y:auto;position:relative;width:100%}.user-profile-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px 24px 0}.user-profile-header h2{color:#111827;font-size:24px;font-weight:600;margin:0}.user-profile-close{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:24px;padding:4px;transition:background-color .2s}.user-profile-close:hover{background-color:#f3f4f6}.user-profile-body{padding:0 24px 24px}.user-profile-info{align-items:center;background-color:#f9fafb;border-radius:8px;display:flex;gap:16px;margin-bottom:32px;padding:20px}.user-profile-avatar{align-items:center;background-color:#3b82f6;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:24px;font-weight:600;height:60px;justify-content:center;width:60px}.user-profile-details h3{color:#111827;font-size:18px;font-weight:600;margin:0 0 4px}.user-profile-details p{color:#6b7280;font-size:14px;margin:0 0 4px}.user-profile-org{font-style:italic}.user-profile-form{margin-bottom:32px}.user-profile-form h4{color:#374151;font-size:16px;font-weight:600;margin:0 0 20px}.user-profile-form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:20px}.user-profile-form-group{margin-bottom:20px}.user-profile-note{color:#b45309;font-size:.85rem;margin-top:6px}.user-profile-form-group label{color:#374151;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.user-profile-form-group input{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.user-profile-form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.user-profile-form-group input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.user-profile-form-group select{background-color:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;cursor:pointer;font-size:16px;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.user-profile-form-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.user-profile-form-group select:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.user-profile-loading{color:#6b7280;font-size:12px;font-style:italic;margin-top:4px}.user-profile-location,.user-profile-type{color:#6b7280;font-size:12px;margin-top:2px}.user-profile-use-cases{margin-top:8px}.user-profile-use-cases-title{color:#6b7280;font-size:12px;font-weight:500;margin:0 0 4px}.user-profile-use-cases-list{display:flex;flex-wrap:wrap;gap:4px}.user-profile-use-case-tag{background-color:#e0f2fe;border-radius:4px;color:#0369a1;font-size:10px;font-weight:500;padding:2px 6px}.user-profile-use-case-other{background-color:#fef3c7;color:#92400e}.user-profile-checkbox-group{grid-gap:8px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:grid;gap:8px;grid-template-columns:1fr 1fr;margin-top:8px;padding:12px}.user-profile-checkbox-item{align-items:flex-start;border-radius:4px;cursor:pointer;display:flex;gap:8px;padding:4px;transition:background-color .2s}.user-profile-checkbox-item:hover{background-color:#f3f4f6}.user-profile-checkbox-item input[type=checkbox]{flex-shrink:0;height:16px;margin:2px 0 0;width:16px}.user-profile-checkbox-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:14px;gap:8px;line-height:1.4;margin:0;-webkit-user-select:none;user-select:none}.user-profile-checkbox-label input[type=checkbox]{cursor:pointer;flex-shrink:0;height:16px;margin:0;width:16px}.user-profile-checkbox-help{color:#6b7280;font-size:12px;font-style:italic;margin-top:4px}.user-profile-other-input{background-color:#f9fafb;border:1px solid #e5e7eb;border-left:4px solid #f59e0b;border-radius:8px;margin-top:12px;padding:12px}.user-profile-other-text-input{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:14px;padding:8px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.user-profile-other-text-input:focus{border-color:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.1);outline:none}.user-profile-other-text-input:disabled{background-color:#f9fafb;color:#6b7280;cursor:not-allowed}.user-profile-char-count{color:#6b7280;font-size:11px;margin-top:4px;text-align:right}.user-profile-char-count.warning{color:#f59e0b}.user-profile-char-count.error{color:#dc2626}@media (max-width:768px){.user-profile-modal{margin:10px;max-width:95%}.user-profile-checkbox-group,.user-profile-form-row{grid-template-columns:1fr}}.user-profile-button{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;margin-bottom:12px;margin-right:12px;padding:12px 24px;transition:background-color .2s,transform .1s}.user-profile-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.user-profile-button-primary{background-color:#3b82f6;color:#fff}.user-profile-button-primary:hover:not(:disabled){background-color:#2563eb;transform:translateY(-1px)}.user-profile-button-secondary{background-color:#f3f4f6;border:1px solid #d1d5db;color:#374151}.user-profile-button-secondary:hover:not(:disabled){background-color:#e5e7eb;transform:translateY(-1px)}.user-profile-actions{border-top:1px solid #e5e7eb;padding-top:20px;text-align:right}.user-profile-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626}.user-profile-error,.user-profile-success{font-size:14px;margin-bottom:20px;padding:12px 16px}.user-profile-success{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#166534}@media (max-width:640px){.user-profile-modal{border-radius:0;margin:0;max-height:100vh}.user-profile-header{padding:20px 20px 0}.user-profile-body{padding:0 20px 20px}.user-profile-form-row{gap:0;grid-template-columns:1fr}.user-profile-info{flex-direction:column;text-align:center}.user-profile-actions{text-align:center}}.user-profile-message{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin:24px 0 20px;padding:16px}.user-profile-message-title{color:#0c4a6e;font-size:18px;font-weight:600;margin:0 0 12px;text-align:left}.user-profile-message p{color:#0c4a6e;font-size:14px;line-height:1.5;margin:0;text-align:left}.user-profile-section{margin-bottom:24px}.user-profile-section-title{border-bottom:2px solid #e5e7eb;color:#111827;font-size:18px;font-weight:600;margin:0 0 16px;padding-bottom:8px}.user-profile-link{color:#3b82f6;cursor:pointer;text-decoration:underline}.user-profile-link:hover{color:#2563eb;text-decoration:none}.user-profile-link:focus{border-radius:2px;outline:2px solid #3b82f6;outline-offset:2px}.user-profile-comments{border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:2rem}.user-profile-comments-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.user-profile-comments-header h4{color:#1f2937;font-size:1.125rem;margin:0}.user-profile-comments-toggle{background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.user-profile-comments-toggle:hover{background-color:#e5e7eb}.user-profile-comments-list{max-height:300px;overflow-y:auto}.user-profile-comments-empty,.user-profile-comments-loading{color:#6b7280;font-size:.875rem;padding:2rem;text-align:center}.user-profile-comment{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:.75rem;padding:1rem}.user-profile-comment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.user-profile-comment-type{background-color:#dbeafe;border-radius:.25rem;color:#1e40af;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.user-profile-comment-date{color:#6b7280;font-size:.75rem}.user-profile-comment-content{color:#374151;font-size:.875rem;line-height:1.5;margin-bottom:.5rem}.user-profile-comment-context{color:#6b7280;font-size:.75rem;margin-top:.5rem}.chart-comments{margin:1rem 0 2rem;max-width:100%;overflow:visible!important;position:relative;z-index:10}.chart-comments-panel{overflow-x:visible!important;overflow-y:auto}.chart-section .chart-comments{margin-left:0;margin-right:0;max-width:100%}.chart-comments-toggle{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:.375rem;color:#374151;cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.chart-comments-toggle:hover{background-color:#e5e7eb;border-color:#9ca3af}.chart-comments-panel{background-color:#fff;border:1px solid #d1d5db;border-radius:.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);margin-top:1rem;max-height:400px;min-height:200px;position:relative;z-index:1000}.chart-comments-header{align-items:center;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem}.chart-comments-header h4{color:#1f2937;font-size:1rem;margin:0}.chart-comments-close{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;font-size:1.5rem;height:24px;justify-content:center;padding:0;width:24px}.chart-comments-close:hover{color:#374151}.chart-comments-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;color:#dc2626;font-size:.875rem;margin:1rem;padding:.75rem 1rem}.chart-comments-form{border-bottom:1px solid #e5e7eb;padding:1rem}.chart-comments-form textarea{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;margin-bottom:.75rem;min-height:80px;padding:.75rem;resize:vertical;width:100%}.chart-comments-form-actions{display:flex;gap:.75rem}.chart-comments-form-actions button{border:none;border-radius:.375rem;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.chart-comments-form-actions button:first-child{background-color:#3b82f6;color:#fff}.chart-comments-form-actions button:first-child:hover:not(:disabled){background-color:#2563eb}.chart-comments-form-actions button:first-child:disabled{background-color:#9ca3af;cursor:not-allowed}.chart-comments-form-actions button:last-child{background-color:#6b7280;color:#fff}.chart-comments-form-actions button:last-child:hover{background-color:#4b5563}.chart-comments-list{max-height:200px;overflow-y:auto}.chart-comments-empty,.chart-comments-loading{color:#6b7280;font-size:.875rem;padding:1rem;text-align:center}.chart-comment{border-bottom:1px solid #f3f4f6;padding:1rem}.chart-comment:last-child{border-bottom:none}.chart-comment-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.chart-comment-author{color:#1f2937;font-size:.875rem;font-weight:600}.chart-comment-location,.chart-comment-user-type{color:#6b7280;font-size:.75rem}.chart-comment-date{color:#9ca3af;font-size:.75rem}.chart-comment-content{color:#374151;font-size:.875rem;line-height:1.5}.chart-comment-actions{display:flex;gap:.5rem;margin-top:.5rem}.chart-edit-button{background-color:transparent;border:1px solid #f59e0b;border-radius:.25rem;color:#f59e0b;cursor:pointer;font-size:.75rem;padding:.25rem .5rem;transition:all .2s}.chart-edit-button:hover{background-color:#f59e0b;color:#fff}.chart-delete-button{background-color:transparent;border:1px solid #dc2626;border-radius:.25rem;color:#dc2626;cursor:pointer;font-size:.75rem;padding:.25rem .5rem;transition:all .2s}.chart-delete-button:hover{background-color:#dc2626;color:#fff}.chart-edit-form{background-color:#fef3c7;border:1px solid #f59e0b;border-radius:.375rem;margin-top:1rem;padding:1rem}.chart-delete-confirmation{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;margin-top:1rem;padding:1rem}.chart-delete-confirmation p{color:#dc2626;font-size:.875rem;font-weight:500;margin:0 0 1rem}.chart-form-actions{display:flex;gap:.5rem;margin-top:.75rem}.chart-form-actions button{border-radius:.375rem;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.chart-form-actions button:first-child{background-color:#3b82f6;border:1px solid #3b82f6;color:#fff}.chart-form-actions button:first-child:hover{background-color:#2563eb}.chart-form-actions button:first-child:disabled{background-color:#9ca3af;border-color:#9ca3af;cursor:not-allowed}.chart-form-actions button:last-child{background-color:transparent;border:1px solid #d1d5db;color:#6b7280}.chart-form-actions button:last-child:hover{background-color:#f3f4f6}.chart-delete-confirm-button{background-color:#dc2626!important;border:1px solid #dc2626!important;color:#fff!important}.chart-delete-confirm-button:hover{background-color:#b91c1c!important;border-color:#b91c1c!important}.chart-comments-login-prompt{background-color:#f9fafb;color:#6b7280;font-size:.875rem;padding:1rem;text-align:center}@media (max-width:768px){.chart-comments-panel{margin-top:.5rem;max-height:60vh}.chart-comment-header{align-items:flex-start;flex-direction:column;gap:.25rem}.chart-comments-form-actions{flex-direction:column}}.chart-comments-safety-warning{align-items:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;color:#dc2626;display:flex;gap:.5rem;margin:1rem;padding:.75rem}.chart-comments-captcha{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:.375rem;margin:1rem;padding:1rem}.chart-comments-form textarea.invalid{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.1)}.chart-comments-form textarea.valid{border-color:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.1)}@media (max-width:768px){.chart-comments-safety-warning{align-items:flex-start;flex-direction:column;gap:.25rem}.chart-comments-captcha{padding:.75rem}}.chart-comment.same-location{background-color:#f0f9ff;border-left:3px solid #3b82f6}.chart-comment-location.highlight{background-color:#dbeafe;border-radius:.25rem;color:#2563eb;font-weight:600;padding:.125rem .5rem}.chart-reply-button{background-color:transparent;border:1px solid #3b82f6;border-radius:.25rem;color:#3b82f6;cursor:pointer;font-size:.75rem;padding:.25rem .5rem;transition:all .2s}.chart-reply-button:hover{background-color:#3b82f6;color:#fff}.chart-replies-list{border-left:2px solid #e5e7eb;margin-top:1rem;padding-left:2rem}.chart-reply{background-color:#f9fafb;border-radius:.375rem;margin-bottom:.5rem;padding:.75rem 1rem}.chart-reply:last-child{margin-bottom:0}.chart-reply-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.chart-reply-author{color:#1f2937;font-size:.875rem;font-weight:600}.chart-reply-location{color:#6b7280;font-size:.75rem}.chart-reply-date{color:#9ca3af;font-size:.75rem}.chart-reply-content{color:#374151;font-size:.875rem;line-height:1.5}.chart-reply-form{background-color:#f0f9ff;border:1px solid #dbeafe;border-radius:.375rem;margin-top:1rem;padding:1rem}.chart-reply-form textarea{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;margin-bottom:.75rem;min-height:60px;padding:.75rem;resize:vertical;width:100%}.chart-reply-actions{display:flex;gap:.5rem}.chart-reply-actions button{border-radius:.375rem;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.chart-reply-actions button:first-child{background-color:#3b82f6;border:1px solid #3b82f6;color:#fff}.chart-reply-actions button:first-child:hover:not(:disabled){background-color:#2563eb}.chart-reply-actions button:first-child:disabled{background-color:#9ca3af;cursor:not-allowed}.chart-reply-actions button:last-child{background-color:transparent;border:1px solid #d1d5db;color:#6b7280}.chart-reply-actions button:last-child:hover{background-color:#f3f4f6}@media (max-width:768px){.chart-replies-list{padding-left:1rem}}.main-content>*>*>:has(.chart-section),.main-content>*>:has(.chart-section),.main-content>:has(.chart-section){overflow:visible!important}.chart-section{background:var(--section-bg);box-sizing:border-box!important;display:block!important;left:0;margin-bottom:20px!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;max-width:none!important;overflow:visible!important;padding:0!important;position:relative!important;right:0;width:100vw!important;z-index:1}.chart-section:nth-child(2n){background:var(--section-bg-alt)}.chart-section:nth-child(odd){background:var(--section-bg)}.chart-content{margin-left:auto!important;margin-right:auto!important;max-width:1200px!important;min-width:0;padding:5px 25px 15px!important;position:relative;z-index:1}.chart-content,.chart-content>*{box-sizing:border-box!important;width:100%!important}.chart-content>*{max-width:100%!important;min-width:0!important}.chart-content:has(.chart-selector){padding-top:0}@media (max-width:1199px){.chart-content{max-width:1000px!important;padding:3px 20px 12px}.chart-content:has(.chart-selector){padding-top:0}}@media (max-width:1023px){.chart-content{max-width:900px!important;padding:2px 15px 10px}.chart-content:has(.chart-selector){padding-top:0}}@media (max-width:768px){.chart-content{max-width:100%!important;padding:1px 10px 8px}.chart-content:has(.chart-selector){padding-top:0}}.chart-title-section{margin-bottom:4px;text-align:center;width:100%}.key-metrics-after-title{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:20px;margin-top:15px;width:100%}.key-metrics-after-title>*{flex:1 1;min-width:200px}.chart-content h3{border-bottom:none;color:var(--text-primary);font-size:1.3rem;margin-bottom:2px;padding-bottom:0;text-align:center}.chart-downloads-bottom-right{align-items:center;bottom:10px;display:flex;flex-shrink:0;gap:4px;position:absolute;right:10px;z-index:10}.data-table-section{margin-top:12px;width:100%}.chart-buttons-row{align-items:center;display:flex;margin-bottom:8px;width:100%}.chart-buttons-row .left-buttons-group{display:flex;gap:8px;margin-right:auto}.chart-buttons-row .left-buttons-group .customize-data-btn{margin-right:0}.overview-toggle-btn{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.overview-toggle-btn:hover{background:var(--border-color);border-color:var(--text-secondary)}.overview-toggle-btn:disabled{cursor:not-allowed;opacity:.6}.comments-toggle-btn{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.comments-toggle-btn:hover{border-color:var(--text-secondary)}.comments-toggle-btn:active,.comments-toggle-btn:hover{background:var(--border-color)}.chart-buttons-row .download-buttons-group{display:flex;gap:8px;margin-left:auto}.chart-buttons-row .download-buttons-group .chart-download-btn{margin-left:0}.customize-data-btn{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.875rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.customize-data-btn:hover{border-color:var(--text-secondary)}.customize-data-btn:active,.customize-data-btn:hover{background:var(--border-color)}.chart-download-btn{align-items:center;background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:4px;padding:8px 12px;transition:all .2s ease}.chart-download-btn:hover{border-color:var(--text-secondary)}.chart-download-btn:active,.chart-download-btn:hover{background:var(--border-color)}.chart-description-text{color:var(--text-secondary);font-size:.8rem;font-weight:500;line-height:1.3;margin-bottom:6px;text-align:center}@media (max-width:1199px){.chart-content h3{font-size:1.4rem;margin-bottom:4px;text-align:left}.chart-description-text{font-size:.75rem;margin-bottom:8px;text-align:center}.key-metrics-after-title{gap:12px;margin-bottom:15px;margin-top:12px}.key-metrics-after-title>*{min-width:180px}}@media (max-width:1023px){.chart-content h3{font-size:1.3rem;margin-bottom:3px;text-align:left}.chart-description-text{font-size:.7rem;margin-bottom:6px;text-align:center}.key-metrics-after-title{gap:10px;margin-bottom:12px;margin-top:10px}.key-metrics-after-title>*{min-width:160px}}@media (max-width:768px){.chart-content h3{font-size:1.2rem;margin-bottom:2px;text-align:left}.chart-description-text{font-size:.65rem;margin-bottom:5px;text-align:center}.key-metrics-after-title{flex-direction:column;gap:8px;margin-bottom:10px;margin-top:8px}.key-metrics-after-title>*{min-width:140px}}.chart-selector{gap:6px;justify-content:flex-start;text-align:left}.additional-button-groups,.chart-selector{display:flex;margin-bottom:15px;margin-top:0}.additional-button-groups{align-items:center;flex-wrap:wrap;gap:20px}.additional-button-group{align-items:center;display:flex;gap:10px}.additional-button-group-label{color:#374151;font-size:14px;font-weight:600;white-space:nowrap}.additional-button-group-select{background:var(--chart-container-bg);border:2px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:600;min-width:150px;padding:8px 12px;transition:all .2s ease}.additional-button-group-select:hover{background:var(--section-bg-alt);border-color:var(--text-secondary)}.additional-button-group-select:focus{border-color:#1e3a8a;box-shadow:0 0 0 3px rgba(30,58,138,.1);outline:none}.grouped-chart-selector{margin-bottom:15px;margin-top:0}.chart-selector-categories{display:flex;gap:6px;justify-content:flex-start;margin-bottom:8px}.category-btn{background:var(--chart-container-bg)!important;border:2px solid var(--border-color)!important;border-radius:6px!important;color:var(--text-primary)!important;cursor:pointer!important;flex:0 0 auto!important;font-size:14px!important;font-weight:700!important;padding:10px 20px!important;text-align:center!important;transition:all .2s ease!important;white-space:nowrap!important}.category-btn:hover{background:var(--section-bg-alt)!important;border-color:var(--text-secondary)!important}.category-btn.active{background:#1e3a8a!important;border-color:#1e3a8a!important;color:#fff!important}.chart-selector-options{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-start}.chart-selector label{color:var(--text-primary);display:block;font-weight:600;margin-bottom:8px}.chart-selector select{display:none}.chart-selector .toggle-btn{background:var(--chart-container-bg)!important;border:2px solid var(--border-color)!important;border-radius:6px!important;color:var(--text-primary)!important;cursor:pointer!important;flex:0 0 auto!important;font-size:14px!important;font-weight:600!important;overflow:visible!important;padding:10px 16px!important;text-align:center!important;text-overflow:clip!important;transition:all .2s ease!important;white-space:nowrap!important}.chart-selector .toggle-btn:hover{background:var(--section-bg-alt)!important;border-color:var(--text-secondary)!important}.chart-selector .toggle-btn.active{background:#1e3a8a!important;border-color:#1e3a8a!important;color:#fff!important}.chart-section.vmt-compact .chart-selector{flex-wrap:wrap;gap:6px}.chart-section.vmt-compact .chart-selector .toggle-btn{font-size:12px!important;padding:6px 10px!important}.chart-section.vmt-compact .additional-button-groups{gap:12px}.chart-section.vmt-compact .additional-button-group-label{font-size:12px}.chart-section.vmt-compact .additional-button-group-select{font-size:12px;min-width:100px;padding:6px 10px}.chart-content-layout{align-items:flex-start;box-sizing:border-box;display:flex;gap:25px;max-width:100%!important;overflow:hidden;width:100%!important}.chart-left-side{flex:1.5 1;max-width:100%;min-width:0;overflow:hidden}.chart-content-layout:not(:has(.chart-right-side)) .chart-left-side{flex:1 1;width:100%}.chart-content-layout.single-column .chart-left-side{flex:1 1;width:100%}.key-metrics-above-chart{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-bottom:20px;width:100%}.key-metrics-above-chart>*{flex:1 1;min-width:200px}.chart-container{background:var(--chart-container-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);box-sizing:border-box;display:flex;flex-direction:column;max-width:100%;min-height:400px;overflow:visible;padding:10px 20px 20px;position:relative;width:100%}.chart-container canvas{flex:1 1;height:100%!important;max-height:600px;min-height:350px;width:100%!important}.chart-wrapper{display:flex;flex-direction:column;height:100%;min-height:400px;position:relative;width:100%}.chart-wrapper canvas{height:100%!important;width:100%!important}.chart-right-side{flex:1.2 1;max-width:100%;min-width:350px;overflow:hidden}@media (max-width:1199px){.chart-content-layout{gap:20px}.chart-right-side{min-width:300px}.chart-container{min-height:400px;padding:8px 15px 15px}.chart-container canvas{min-height:350px}.key-metrics-above-chart{gap:12px;margin-bottom:15px}}@media (max-width:1100px){.key-metrics-above-chart>*{min-width:180px}}@media (max-width:1000px){.key-metrics-above-chart>*{min-width:160px}}@media (max-width:1023px){.chart-content-layout{gap:15px}.chart-right-side{min-width:280px}.chart-container{min-height:350px;padding:6px 12px 12px}.chart-container canvas{min-height:300px}.key-metrics-above-chart{gap:10px;margin-bottom:12px}}@media (max-width:950px){.chart-content-layout{flex-direction:column;gap:20px}.chart-left-side,.chart-right-side{flex:none;width:100%}.chart-right-side{min-width:0;min-width:auto}.key-metrics-above-chart{flex-direction:row;flex-wrap:wrap;gap:10px}.key-metrics-above-chart>*{flex:1 1;min-width:140px}}@media (max-width:900px){.chart-content-layout{flex-direction:column;gap:20px}.chart-left-side,.chart-right-side{flex:none;width:100%}.chart-right-side{min-width:auto}}.chart-vertical-layout{align-items:center;display:flex;flex-direction:column;gap:25px}.chart-vertical-layout .key-metrics-section{margin:0 auto;max-width:1200px;width:100%}.chart-vertical-layout .key-metrics-section .key-metrics-above-chart{display:flex;gap:15px;justify-content:center;margin-bottom:0;width:100%}.chart-vertical-layout .key-metrics-section .key-metrics-above-chart>*{flex:1 1}.chart-vertical-layout .chart-section{display:flex;justify-content:center;left:auto!important;margin:0 auto!important;max-width:1200px!important;position:relative!important;right:auto!important;width:100%!important}.chart-vertical-layout .chart-section .chart-container{background:var(--chart-container-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);box-sizing:border-box;max-width:100%!important;overflow:hidden;padding:20px;width:100%!important}.chart-vertical-layout .chart-container .leaflet-container,.chart-vertical-layout .chart-container>div{box-sizing:border-box!important;max-width:100%!important;width:100%!important}.chart-vertical-layout .narrative-section{margin:0 auto;max-width:1200px;width:100%}.toggle-buttons{display:flex;gap:6px;margin-bottom:15px;width:100%}.toggle-btn{background:var(--chart-container-bg);border:2px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;flex:1 1;font-size:14px;font-weight:600;overflow:hidden;padding:10px 12px;text-align:center;text-overflow:ellipsis;transition:all .2s ease;white-space:nowrap}.toggle-btn:hover{background:var(--section-bg-alt);border-color:var(--text-secondary)}.toggle-btn.active{background:#1e3a8a;border-color:#1e3a8a;color:#fff}.content-sections{background:var(--chart-container-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);padding:20px}.content-section{margin-bottom:15px}.content-section.hidden{display:none}.content-section h4{border-bottom:2px solid var(--border-color);color:var(--text-primary);font-size:1.2em;font-weight:600;margin-bottom:15px;padding-bottom:6px}.content-section p{color:var(--text-primary);font-size:.95rem;line-height:1.6;margin-bottom:12px}.key-metrics{background:var(--section-bg-alt);border-left:4px solid #3b82f6;border-radius:6px;margin-top:20px;padding:15px}.key-metrics h5{color:var(--text-primary);font-size:1em;margin-bottom:10px}.insights-content{color:var(--text-secondary);font-size:.9rem;line-height:1.5}.insights-content p{margin-bottom:8px}.key-metrics-container{display:flex;gap:20px;width:100%}.key-metric-item{word-wrap:break-word;background:var(--chart-container-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);flex:1 1;overflow:hidden;padding:20px;text-align:center}.key-metric-value{font-size:2.5rem;font-weight:700;line-height:1;margin-bottom:12px}@media (max-width:768px){.key-metrics-container{flex-direction:column;gap:15px}.key-metric-item{padding:16px}.key-metric-value{font-size:2rem}.key-metric-label{font-size:.9rem}}@media (max-width:480px){.key-metrics-container{gap:12px}.key-metric-item{padding:14px}.key-metric-value{font-size:1.75rem}.key-metric-label{font-size:.85rem}}.key-metric-value.text-2xl{font-size:1.5rem}.key-metric-value.text-3xl{font-size:1.875rem}.key-metric-value.text-4xl{font-size:2.25rem}.key-metric-value.text-sm{font-size:.875rem;font-weight:500;opacity:.7}.key-metric-label{color:#6b7280;font-size:.9rem;font-weight:500;line-height:1.4;text-align:center}.editable-section{display:flex;flex-direction:column;gap:12px}.editable-section-controls{display:flex;gap:8px;justify-content:flex-end}.edit-text-button,.edit-text-secondary{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:.85rem;padding:6px 12px}.edit-text-button:hover,.edit-text-secondary:hover{background:var(--border-color)}.edit-text-button{background:#2563eb;border-color:#2563eb;color:#fff}.edit-text-button:hover{background:#1d4ed8}.editable-section-editor{display:flex;flex-direction:column;gap:10px}.editable-section-warning{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);font-size:.85rem;padding:8px 10px}.editable-section-textarea{background:var(--chart-container-bg);border:1px solid var(--border-color);border-radius:8px;box-sizing:border-box;color:var(--text-primary);font-size:.9rem;max-width:100%;min-height:140px;padding:10px 12px;resize:vertical;width:100%}.editable-section-actions{display:flex;gap:8px;justify-content:flex-end}@media (max-width:768px){.chart-content-layout{flex-direction:column}.chart-left-side,.chart-right-side{flex:none;min-width:0;min-width:auto;width:100%}.chart-vertical-layout{gap:20px}.toggle-buttons{flex-direction:column;gap:8px}.toggle-btn{font-size:16px;padding:12px 16px}.chart-container{min-height:300px;padding:5px 15px 15px}.chart-container canvas{min-height:250px}.content-sections{padding:15px}.content-section h4{font-size:1.1em}.content-section p{font-size:.9rem}}@media (max-width:480px){.chart-vertical-layout{gap:15px}.chart-container{min-height:250px;padding:4px 12px 12px}.chart-container canvas{min-height:200px}.content-sections{padding:12px}.toggle-btn{font-size:14px;padding:10px 14px}.content-section h4{font-size:1em}.content-section p{font-size:.85rem}}.methodology-details{background:var(--section-bg-alt);border-left:4px solid #3b82f6;border-radius:6px;margin-top:20px;padding:15px}.methodology-details h5{color:var(--text-primary);font-size:1em;margin-bottom:10px;margin-top:15px}.methodology-details h5:first-child{margin-top:0}.methodology-details ul{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0;padding-left:20px}.methodology-details li{margin-bottom:5px}@media (max-width:768px){.chart-content-layout{flex-direction:column;gap:20px}.chart-left-side,.chart-right-side{flex:none;width:100%}.toggle-buttons{flex-wrap:wrap}.toggle-btn{min-width:120px}.key-metrics-above-chart{flex-direction:column}}.placeholder-chart{border:2px dashed var(--border-color);border-radius:8px;font-size:1.1rem;padding:40px;text-align:center}.data-note,.placeholder-chart{background:var(--section-bg-alt);color:var(--text-secondary)}.data-note{border:1px solid var(--border-color);border-radius:6px;font-size:.9rem;margin-top:15px;padding:12px}.methodology-details-simple{background:var(--section-bg-alt);border-left:4px solid #3b82f6;border-radius:6px;margin-bottom:15px;padding:15px}.methodology-details-simple h5{color:var(--text-primary);font-size:1em;margin-bottom:8px;margin-top:0}.methodology-details-simple p{color:var(--text-secondary);font-size:.9rem;line-height:1.5;margin:0}[data-theme=dark] .chart-section{border-bottom:1px solid var(--border-color)}[data-theme=dark] .chart-section:last-child{border-bottom:none}[data-theme=dark] .chart-container,[data-theme=dark] .content-sections{box-shadow:0 2px 8px rgba(0,0,0,.25)}[data-theme=dark] .key-metric-item{box-shadow:0 2px 6px rgba(0,0,0,.2)}.data-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);margin:20px 0;overflow:hidden}.data-table-title{color:#1e293b;font-size:18px;font-weight:600;margin:0}.data-table-controls,.data-table-title{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:16px 20px}.data-table-controls{align-items:center;display:flex;justify-content:space-between}.data-table-search{flex:1 1;margin-right:16px}.data-table-search-input{border:1px solid #d1d5db;border-radius:6px;font-size:14px;max-width:300px;outline:none;padding:8px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.data-table-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.data-table-add-button{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 16px;transition:background-color .2s}.data-table-add-button:hover{background:#2563eb}.data-table-wrapper{border:1px solid var(--border-color);overflow:auto}.data-table{border-collapse:collapse;font-size:14px;width:100%}.data-table-header{background:var(--section-bg-alt);border-bottom:2px solid var(--border-color);color:var(--text-secondary);font-weight:600;padding:12px 16px;position:-webkit-sticky;position:sticky;text-align:left;top:0;z-index:10}.data-table-actions-header{text-align:center;width:80px}.data-table-row{border-bottom:1px solid var(--border-color);transition:background-color .1s}.data-table-row:hover{background:var(--section-bg-alt)}.data-table-row-highlighted{background:hsla(0,93%,94%,.4)!important}.data-table-row-highlighted:hover{background:hsla(0,93%,94%,.6)!important}.data-table-cell{border-right:1px solid var(--border-color);color:var(--text-primary);padding:12px 16px;position:relative;vertical-align:top}.data-table-cell-editable{background:var(--chart-container-bg);border:1px solid var(--border-color);cursor:pointer;transition:background-color .1s}.data-table-cell-editable:hover{background:var(--section-bg-alt);border-color:#3b82f6}.data-table-cell-error{background:hsla(0,93%,94%,.4);border-color:#fca5a5}.data-table-input{background:var(--chart-container-bg);border:2px solid #3b82f6;border-radius:4px;box-shadow:0 0 0 3px rgba(59,130,246,.1);color:var(--text-primary);font-size:14px;font-weight:500;outline:none;padding:6px 10px;width:100%}.data-table-error-message{background:#dc2626;border-radius:4px;color:#fff;font-size:12px;left:16px;margin-top:2px;padding:4px 8px;position:absolute;right:16px;top:100%;z-index:20}.data-table-actions{text-align:center;width:80px}.data-table-delete-button{background:none;border:none;border-radius:4px;cursor:pointer;font-size:16px;padding:4px;transition:background-color .2s}.data-table-delete-button:hover{background:#fee2e2}.data-table-pagination{align-items:center;background:var(--section-bg-alt);border-top:1px solid var(--border-color);display:flex;justify-content:space-between;padding:16px 20px}.data-table-pagination-button{background:var(--border-color);border:none;border-radius:6px;color:var(--text-primary);cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.data-table-pagination-button:hover:not(:disabled){background:var(--text-secondary)}.data-table-pagination-button:disabled{cursor:not-allowed;opacity:.5}.data-table-pagination-info{color:var(--text-secondary);font-size:14px;font-weight:500}.data-table-footer{background:var(--section-bg-alt);border-top:1px solid var(--border-color);display:flex;justify-content:center;padding:16px 20px}.data-table-restore-button{align-items:center;background:#dc2626;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:10px 20px;transition:background-color .2s}.data-table-restore-button:hover{background:#b91c1c}.data-table-restore-button:active{background:#991b1b}@media (max-width:768px){.data-table-controls{align-items:stretch;flex-direction:column;gap:16px}.data-table-search{margin-right:0}.data-table-search-input{max-width:none}.data-table-pagination{flex-direction:column;gap:8px}.data-table-cell,.data-table-header{padding:8px 12px}}.vmt-comparison-chart-container{height:400px;padding:20px;width:100%}.vmt-comparison-error,.vmt-comparison-loading,.vmt-comparison-no-data{color:#666;padding:40px;text-align:center}.vmt-comparison-error{color:#dc2626}.emfac-county-vmt-chart-container{height:400px;position:relative;width:100%}.emfac-county-vmt-error,.emfac-county-vmt-loading,.emfac-county-vmt-no-data{color:#6b7280;padding:2rem;text-align:center}.emfac-county-vmt-error{color:#ef4444}.emfac-fleet-vmt-chart-container{height:400px;position:relative;width:100%}.emfac-fleet-vmt-error,.emfac-fleet-vmt-loading,.emfac-fleet-vmt-no-data{color:#666;padding:20px;text-align:center}.emfac-fleet-vmt-error{color:#dc2626}.main-content>*>*>:has(.page-header),.main-content>*>:has(.page-header),.main-content>:has(.page-header){overflow:visible!important}.page-header{box-sizing:border-box!important;color:#fff;display:block!important;left:0;margin-bottom:0!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;max-width:none!important;overflow:visible!important;padding:40px 0!important;position:relative!important;right:0;width:100vw!important}.page-header-default{background:#7c7e7f!important}.page-header.page-header-overview{background:#005581!important;color:#fff!important}.page-header.page-header-overview h1,.page-header.page-header-overview p{color:#fff!important}.page-header.page-header-coolclimate,.page-header.page-header-ghg{background:#00778b!important}.page-header.page-header-transportation{background:#72cdf4!important}.page-header.page-header-buildings{background:#ffb511!important}.page-header.page-header-other{background:#ff6e1b!important}.page-header.page-header-people{background:#e44c9a!important}.page-header.page-header-maps{background:#6b46c1!important}.page-header-buildings h1,.page-header-buildings p,.page-header-ghg h1,.page-header-ghg p,.page-header-maps h1,.page-header-maps p,.page-header-other h1,.page-header-other p,.page-header-people h1,.page-header-people p,.page-header-transportation h1,.page-header-transportation p{color:#fff!important}.page-header-content{box-sizing:border-box;margin:0 auto;max-width:1200px;padding:0 25px;text-align:center}.page-header h1{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 10px}.page-header p{color:#fff;font-size:1.2rem;font-weight:400;margin:0}.page-header-overview p{color:#fff!important}@media (max-width:768px){.page-header{padding:30px 0}.page-header-content{padding:0 15px}.page-header h1{font-size:2rem}.page-header p{font-size:1.1rem}}@media (max-width:480px){.page-header-content{padding:0 10px}}[data-theme=dark] .page-header-default{background:#4b5563!important}[data-theme=dark] .page-header.page-header-overview{background:#003d5c!important}[data-theme=dark] .page-header.page-header-coolclimate,[data-theme=dark] .page-header.page-header-ghg{background:#005f6b!important}[data-theme=dark] .page-header.page-header-transportation{background:#4a9fc4!important}[data-theme=dark] .page-header.page-header-buildings{background:#c48f0d!important}[data-theme=dark] .page-header.page-header-other{background:#c45816!important}[data-theme=dark] .page-header.page-header-people{background:#b33d7a!important}[data-theme=dark] .page-header.page-header-maps{background:#55369e!important}.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{left:0;position:absolute;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.leaflet-tile::-moz-selection{background:transparent}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{height:1600px;-webkit-transform-origin:0 0;width:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-height:none!important;max-width:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-height:none!important;max-width:none!important;padding:0;width:auto}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;height:0;width:0;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{height:1px;width:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{pointer-events:visiblePainted;pointer-events:auto;position:relative;z-index:800}.leaflet-bottom,.leaflet-top{pointer-events:none;position:absolute;z-index:1000}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{clear:both;float:left}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:hsla(0,0%,100%,.5);border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px rgba(0,0,0,.65)}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;color:#000;display:block;height:26px;line-height:26px;text-align:center;text-decoration:none;width:26px}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-left-radius:4px;border-bottom-right-radius:4px}.leaflet-bar a.leaflet-disabled{background-color:#f4f4f4;color:#bbb;cursor:default}.leaflet-touch .leaflet-bar a{height:30px;line-height:30px;width:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px rgba(0,0,0,.4)}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);height:36px;width:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{height:44px;width:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{background:#fff;color:#333;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{overflow-x:hidden;overflow-y:scroll;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:hsla(0,0%,100%,.8);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;line-height:1.4;padding:0 5px}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;height:.6669em;vertical-align:baseline!important;width:1em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{background:hsla(0,0%,100%,.8);border:2px solid #777;border-top:none;box-sizing:border-box;line-height:1.1;padding:2px 5px 1px;text-shadow:1px 1px #fff;white-space:nowrap}.leaflet-control-scale-line:not(:first-child){border-bottom:none;border-top:2px solid #777;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{background-clip:padding-box;border:2px solid rgba(0,0,0,.2)}.leaflet-popup{margin-bottom:20px;position:absolute;text-align:center}.leaflet-popup-content-wrapper{border-radius:12px;padding:1px;text-align:left}.leaflet-popup-content{font-size:13px;font-size:1.08333em;line-height:1.3;margin:13px 24px 13px 20px;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{height:20px;left:50%;margin-left:-20px;margin-top:-1px;overflow:hidden;pointer-events:none;position:absolute;width:40px}.leaflet-popup-tip{height:17px;margin:-10px auto 0;padding:1px;pointer-events:auto;transform:rotate(45deg);width:17px}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;box-shadow:0 3px 14px rgba(0,0,0,.4);color:#333}.leaflet-container a.leaflet-popup-close-button{background:transparent;border:none;color:#757575;font:16px/24px Tahoma,Verdana,sans-serif;height:24px;position:absolute;right:0;text-align:center;text-decoration:none;top:0;width:24px}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678);margin:0 auto;width:24px}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{background-color:#fff;border:1px solid #fff;border-radius:3px;box-shadow:0 1px 3px rgba(0,0,0,.4);color:#222;padding:6px;pointer-events:none;position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{background:transparent;border:6px solid transparent;content:"";pointer-events:none;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{border-top-color:#fff;bottom:0;margin-bottom:-12px}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-left:-6px;margin-top:-12px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;left:0;margin-left:-12px}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.map-legend-wrapper{background:var(--section-bg);border:1px solid var(--border-color);border-radius:5px;box-shadow:0 2px 4px rgba(0,0,0,.1);max-width:200px;padding:10px;position:absolute;right:10px;top:10px;z-index:1000}.map-legend-root{background:var(--section-bg);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.1);display:block;max-width:190px;min-width:160px;opacity:1;padding:8px;position:relative;visibility:visible;z-index:50}.map-legend-root .map-legend-header{margin-bottom:8px}.map-legend-root .map-legend-title{color:var(--text-primary);font-size:.875rem;font-weight:600;margin:0 0 2px}.map-legend-root .map-legend-year{color:var(--text-secondary);font-size:.75rem;margin:0}.map-legend-root .map-legend-items{margin-bottom:8px}.map-legend-root .map-legend-item{align-items:center;display:flex;margin-bottom:4px}.map-legend-root .map-legend-swatch{border:1px solid var(--border-color);border-radius:2px;flex-shrink:0;height:12px;margin-right:8px;width:12px}.map-legend-root .map-legend-label{color:var(--text-primary);font-size:.75rem}.map-legend-root .map-legend-footer{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.75rem;padding-top:8px}.map-legend-root .map-legend-footer .map-legend-divider{border-top:1px solid var(--border-color);margin-top:4px;padding-top:4px}.map-legend-root .map-legend-nodata{align-items:center;display:flex;margin-top:4px}.map-legend-root .map-legend-nodata .map-legend-swatch{background-color:#9ca3af;border-color:#6b7280}.map-legend-root .map-legend-nodata span{color:var(--text-secondary);font-size:.75rem}.custom-section-block .custom-section-image{display:block;min-height:0!important;padding:12px}.custom-section-block .custom-section-image img{border-radius:6px;display:block}.custom-section-block .chart-right-side{align-self:flex-start}.custom-section-block .content-sections{padding:16px 20px}.custom-section-block .content-section{margin-bottom:12px}.custom-section-block .content-section p:last-child,.custom-section-block .content-section:last-child{margin-bottom:0}.custom-section-block .chart-title-section{margin-bottom:28px}.custom-section-block .chart-content-layout{align-items:flex-start;gap:20px}.bayren-region-wrapper{background:var(--section-bg);border:2px solid #3b82f6;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1);margin-bottom:20px;padding:20px}.bayren-filters-panel{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:8px;margin-bottom:20px;padding:20px}.bayren-filters-panel h4{color:var(--text-primary);margin-bottom:15px;margin-top:0}.bayren-filters-panel h5{color:var(--text-primary);font-size:14px;font-weight:600;margin:0 0 8px}.bayren-filters-panel label{color:var(--text-primary);display:block;margin-bottom:4px}.bayren-results-table-wrap{background:var(--section-bg);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.bayren-results-header{background:var(--section-bg-alt);border-bottom:1px solid var(--border-color);color:var(--text-primary);font-weight:600;padding:12px 16px}.bayren-results-table-wrap table{border-collapse:collapse;color:var(--text-primary);width:100%}.bayren-results-table-wrap thead{background:var(--section-bg-alt);position:-webkit-sticky;position:sticky;top:0}.bayren-results-table-wrap th{border-bottom:1px solid var(--border-color);color:var(--text-secondary);font-weight:600;padding:12px 16px;text-align:left}.bayren-results-table-wrap th:nth-child(n+3){text-align:right}.bayren-results-table-wrap tbody tr{border-bottom:1px solid var(--border-color)}.bayren-results-table-wrap tbody tr:nth-child(2n){background:var(--section-bg-alt)}.bayren-results-table-wrap td{padding:12px 16px}.bayren-results-table-wrap td:nth-child(n+3){text-align:right}.bayren-map-section{background:var(--section-bg);border:1px solid var(--border-color);border-radius:8px;margin-top:20px;padding:20px}.bayren-map-section h4{color:var(--text-primary);margin-bottom:15px;margin-top:0}.bayren-map-section p{color:var(--text-secondary);font-size:14px;margin-bottom:15px}.region-selector{background:transparent;border:none;margin-bottom:0;padding:0}.puma-ranking-table h3,.region-selector label{color:var(--text-primary);font-weight:600}.puma-ranking-table{background:var(--section-bg);border:1px solid var(--border-color);border-radius:8px;margin-top:1rem;padding:1rem}.puma-ranking-table .table-container{background:var(--chart-container-bg);border:1px solid var(--border-color);border-radius:6px;overflow-x:auto}.puma-ranking-table .puma-table{border-collapse:collapse;color:var(--text-primary);width:100%}.puma-ranking-table .puma-table th{background:var(--section-bg-alt);border-bottom:2px solid var(--border-color);color:var(--text-secondary);font-weight:600;padding:10px 12px;text-align:left}.puma-ranking-table .puma-table td{border-bottom:1px solid var(--border-color);padding:10px 12px}.puma-ranking-table .puma-row:hover{background:var(--section-bg-alt)}.puma-ranking-table .loading,.puma-ranking-table .no-data{color:var(--text-secondary);padding:1rem}.puma-ranking-table .table-footer{border-top:1px solid var(--border-color);margin-top:1rem;padding-top:1rem}.puma-ranking-table .table-footer .summary{color:var(--text-secondary);font-size:.875rem;margin:0}.map-container{background:var(--chart-container-bg);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.map-legend{color:var(--text-secondary)}.map-legend h4{margin:0 0 8px}.bayren-region-wrapper .region-selector label,.map-legend h4,.map-legend span,.region-selector-select{color:var(--text-primary)}.region-selector-select{background:var(--chart-container-bg);border:2px solid var(--border-color)}.region-selector-select:disabled{opacity:.7}.bayren-region-wrapper .region-selector select{background:var(--chart-container-bg);border:2px solid var(--border-color);color:var(--text-primary)}.bayren-region-wrapper .region-selector .region-selector-hint{color:var(--text-secondary)}.data-download-overlay{align-items:center;background-color:rgba(0,0,0,.5);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.data-download-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04);max-height:90vh;max-width:800px;overflow-y:auto;position:relative;width:100%}.data-download-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:24px;padding:24px 24px 0}.data-download-header h2{color:#111827;font-size:24px;font-weight:600;margin:0}.data-download-close{background:none;border:none;border-radius:4px;color:#6b7280;cursor:pointer;font-size:24px;padding:4px;transition:background-color .2s}.data-download-close:hover{background-color:#f3f4f6}.data-download-body{padding:0 24px 24px}.data-download-tabs{border-bottom:1px solid #e5e7eb;display:flex;gap:4px;margin-bottom:20px;padding-bottom:0}.data-download-tab{background:none;border:none;border-bottom:3px solid transparent;border-radius:4px 4px 0 0;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;margin-bottom:-1px;padding:10px 16px}.data-download-tab:hover{background-color:#f9fafb;color:#374151}.data-download-tab.active{border-bottom-color:#3b82f6;color:#3b82f6}.data-download-info{background-color:#f9fafb;border-radius:8px;margin-bottom:24px;padding:16px}.data-download-info p{color:#374151;font-size:14px;margin:0 0 8px}.data-download-info p:last-child{margin-bottom:0}.data-download-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.data-download-button{border:none;border-radius:8px;cursor:pointer;font-size:16px;font-weight:500;min-width:140px;padding:12px 24px;transition:all .2s}.data-download-button:disabled{cursor:not-allowed;opacity:.6;transform:none}.data-download-button-primary{background-color:#3b82f6;color:#fff}.data-download-button-primary:hover:not(:disabled){background-color:#2563eb;transform:translateY(-1px)}.data-download-button-png{background-color:#059669;color:#fff}.data-download-button-png:hover:not(:disabled){background-color:#047857;transform:translateY(-1px)}.data-download-pdf-description{color:#374151;font-size:14px;line-height:1.5;margin:0 0 12px}.data-download-button-pdf{background-color:#7c3aed;color:#fff}.data-download-button-pdf:hover:not(:disabled){background-color:#6d28d9;transform:translateY(-1px)}.data-download-button-word{background-color:#0d9488;color:#fff}.data-download-button-word:hover:not(:disabled){background-color:#0f766e;transform:translateY(-1px)}.data-download-section-tag{color:#6b7280;display:inline-block;font-size:10px;letter-spacing:.05em;margin-bottom:4px;text-transform:uppercase}.data-download-button-secondary{background-color:#f3f4f6;border:1px solid #d1d5db;color:#374151}.data-download-button-secondary:hover:not(:disabled){background-color:#e5e7eb;transform:translateY(-1px)}.data-download-button-small{font-size:14px;min-width:auto;padding:8px 16px}.data-download-section-label{align-items:center;color:#6b7280;display:flex;font-size:12px;font-weight:600;gap:12px;justify-content:space-between;letter-spacing:.05em;margin:20px 0 12px;text-transform:uppercase}.data-download-section-actions{align-items:center;display:flex;gap:8px}.data-download-select-all{background:none;border:none;border-radius:4px;color:#3b82f6;cursor:pointer;font-size:12px;font-weight:500;letter-spacing:0;padding:4px 8px;text-transform:none}.data-download-select-all:hover:not(:disabled){background-color:#eff6ff;text-decoration:underline}.data-download-select-all:disabled{cursor:not-allowed;opacity:.5}.data-download-png-empty{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;color:#0369a1;font-size:14px;line-height:1.5;margin:0;padding:12px 16px}.data-download-actions-png{margin-top:8px}.data-download-list{display:flex;flex-direction:column;gap:16px}.data-download-item{background-color:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.data-download-item-header{align-items:center;display:flex;gap:16px;justify-content:space-between}.data-download-checkbox{align-items:flex-start;cursor:pointer;display:flex;flex:1 1;gap:12px}.data-download-checkbox input[type=checkbox]{display:none}.data-download-checkmark{align-items:center;border:2px solid #d1d5db;border-radius:4px;display:flex;flex-shrink:0;height:20px;justify-content:center;margin-top:2px;transition:all .2s;width:20px}.data-download-checkbox input[type=checkbox]:checked+.data-download-checkmark{background-color:#3b82f6;border-color:#3b82f6}.data-download-checkbox input[type=checkbox]:checked+.data-download-checkmark:after{color:#fff;content:"✓";font-size:12px;font-weight:700}.data-download-checkbox input[type=checkbox]:disabled+.data-download-checkmark{cursor:not-allowed;opacity:.5}.data-download-item-info{flex:1 1}.data-download-item-info h4{color:#111827;font-size:16px;font-weight:600;margin:0 0 4px}.data-download-item-info p{color:#6b7280;font-size:14px;margin:0 0 4px}.data-download-count{color:#3b82f6;font-size:12px;font-weight:500}.data-download-loading{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:8px;margin-top:12px}.data-download-spinner{animation:spin 1s linear infinite;border:2px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:16px;width:16px}.data-download-item-error{border:1px solid #fecaca;border-radius:4px;margin-top:12px;padding:8px 12px}.data-download-error,.data-download-item-error{background-color:#fef2f2;color:#dc2626;font-size:14px}.data-download-error{border:1px solid #fecaca;border-radius:8px;margin-bottom:20px;padding:12px 16px}@media (max-width:768px){.data-download-modal{border-radius:0;margin:0;max-height:100vh}.data-download-header{padding:20px 20px 0}.data-download-body{padding:0 20px 20px}.data-download-actions{flex-direction:column}.data-download-button{width:100%}.data-download-item-header{align-items:stretch;flex-direction:column;gap:12px}.data-download-checkbox{align-items:center}}.notification-bell-button{background:none;border:none;border-radius:.375rem;cursor:pointer;font-size:1.5rem;padding:.5rem;position:relative;transition:background-color .2s}.notification-bell-button:hover{background-color:#f3f4f6}.notification-badge{background-color:#dc2626;border-radius:.75rem;color:#fff;font-size:.75rem;font-weight:600;min-width:1.25rem;padding:.125rem .375rem;position:absolute;right:0;text-align:center;top:0}.notification-overlay{background-color:rgba(0,0,0,.5);bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.notification-dropdown{background-color:#fff;border:1px solid #d1d5db;border-radius:.5rem;box-shadow:0 10px 15px -3px rgba(0,0,0,.1);max-height:600px;position:fixed;right:20px;top:60px;width:400px;z-index:1000}.notifications-panel{display:flex;flex-direction:column;height:100%}.notifications-header{align-items:center;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem}.notifications-header h3{color:#1f2937;font-size:1rem;font-weight:600;margin:0}.notifications-close{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;font-size:1.5rem;height:24px;justify-content:center;padding:0;width:24px}.notifications-close:hover{color:#374151}.notifications-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;color:#dc2626;font-size:.875rem;margin:1rem;padding:.75rem 1rem}.notifications-content{flex:1 1;overflow-y:auto}.notifications-empty,.notifications-loading{color:#6b7280;font-size:.875rem;padding:2rem 1rem;text-align:center}.notifications-list{padding:.5rem}.notification-group{border:1px solid #e5e7eb;border-radius:.5rem;margin-bottom:.75rem;overflow:hidden}.notification-group-title{background-color:#f3f4f6;color:#374151;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.5rem .75rem;text-transform:uppercase}.notification-item{border-bottom:1px solid #f3f4f6;padding:1rem;transition:background-color .2s}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:#f9fafb}.notification-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.notification-author{color:#1f2937;font-size:.875rem;font-weight:600}.notification-time{color:#9ca3af;font-size:.75rem}.notification-context{margin-top:.75rem}.notification-parent{background-color:#f0f9ff;border-left:3px solid #3b82f6;border-radius:.25rem;color:#4b5563;font-size:.875rem;margin-bottom:.5rem;padding:.5rem .75rem}.notification-parent strong{color:#1f2937}.notification-reply{background-color:#f9fafb;border-left:3px solid #10b981;border-radius:.25rem;color:#374151;font-size:.875rem;padding:.5rem .75rem}.notification-reply strong{color:#059669}.notification-meta{color:#6b7280;font-size:.75rem;margin-top:.75rem}.notification-meta span{margin-right:.75rem}@media (max-width:768px){.notification-dropdown{left:1rem;max-height:calc(100vh - 80px);right:1rem;top:60px;width:calc(100% - 2rem)}.notification-item{padding:.75rem}.notification-header{align-items:flex-start;flex-direction:column;gap:.25rem}}.header{background:var(--bg-header);border-radius:0;box-shadow:0 2px 10px rgba(0,0,0,.1);box-sizing:border-box;margin:0;max-width:100vw;overflow-x:hidden;overflow-y:visible;padding:30px;position:-webkit-sticky;position:sticky;top:0;transition:transform .3s ease,padding .3s ease;width:100%;z-index:300}.header,.header-content{align-items:flex-start;display:flex;justify-content:space-between}.header-content{flex:1 1}.header-desktop{align-items:flex-start;display:flex;justify-content:space-between;width:100%}.header-mobile{display:none}.header-actions{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:30px;min-width:0;position:relative;z-index:301}.header-download-section{order:3}.header-download-section,.header-theme-section{align-items:center;display:flex;flex-shrink:0;margin-left:10px}.header-theme-section{order:2}.header-theme-button{align-items:center;background-color:var(--header-button-bg);border:1px solid var(--header-border);border-radius:6px;color:var(--header-button-text);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.header-theme-button:hover{background-color:var(--header-button-hover-bg);border-color:var(--header-border-hover);box-shadow:0 4px 6px -1px rgba(0,0,0,.1);transform:translateY(-1px)}.header-notifications-section{align-items:center;display:flex;flex-shrink:0;margin-left:10px;order:4}.header-download-button{align-items:center;background-color:var(--header-button-bg);border:1px solid var(--header-border);border-radius:6px;color:var(--header-button-text);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.header-download-button:hover{background-color:var(--header-button-hover-bg);border-color:var(--header-border-hover);box-shadow:0 4px 6px -1px rgba(0,0,0,.1);transform:translateY(-1px)}.header-auth-section{align-items:center;display:flex;flex-shrink:0;margin-left:10px;order:5;position:relative;z-index:300}.header-title-section{align-items:center;cursor:pointer;display:flex;gap:20px}.header-title-section,.header-title-section:hover{color:inherit;text-decoration:none}.header-title-section:focus-visible{border-radius:4px;outline:2px solid #005581;outline-offset:4px}.header-location-section{align-items:center;display:flex;flex-shrink:0;margin-left:20px;max-width:300px;min-width:200px;order:0;position:relative;z-index:302}.header-logo{cursor:pointer;height:150px;object-fit:contain;transition:transform .2s ease;width:auto}.header-logo:hover{transform:scale(1.05)}.header-text{flex:1 1}.header h1{color:var(--header-title);cursor:pointer;font-size:2rem;font-weight:700;line-height:1.2;margin-bottom:10px;transition:color .2s ease}.header h1:hover{color:var(--header-title-hover)}.header p,.header-description{color:var(--header-description);font-size:1.1rem;margin-bottom:20px}.header.scrolled{padding:20px 30px}.header.hidden{transform:translateY(-100%)}@media (max-width:768px){.header{align-items:center;box-shadow:0 2px 10px rgba(0,0,0,.15);flex-direction:row;justify-content:space-between;left:0;min-height:60px;padding:12px 15px;position:fixed;right:0;top:0;width:100%;z-index:1000}.header-desktop{display:none!important}.header-mobile{display:flex!important;gap:10px}.header-content,.header-mobile{align-items:center;justify-content:space-between;width:100%}.header-content{flex-direction:row}.header-title-section{align-items:center;flex:0 0 auto;flex-direction:row;gap:15px;text-align:left}.header-title-section h1{color:var(--header-title);font-size:1.1rem;font-weight:700;margin-bottom:0;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-location-section{display:flex;flex:1 1;justify-content:center;margin-left:0;max-width:150px;min-width:0}.header-menu-section{flex:0 0 auto}}@media (max-width:480px){.header{min-height:50px;padding:10px 15px}.header-text h1{font-size:1.1rem}.header-logo{height:80px}}.hamburger-menu{position:relative}.hamburger-button{background:#005581;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;padding:8px 12px;transition:background-color .2s ease}.hamburger-button:hover{background:#004a6f}.hamburger-icon{display:block;font-size:18px}.hamburger-dropdown{background:var(--card-bg);border:1px solid var(--header-border);border-radius:6px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1);margin-top:5px;min-width:250px;padding:15px;position:absolute;right:0;top:100%;z-index:1000}.hamburger-location-selector{width:100%}@media (min-width:769px){.header.scrolled .hamburger-menu{animation:slideInRight .3s ease-out;background:var(--card-bg);border:1px solid var(--header-border);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);padding:8px;position:fixed;right:20px;top:120px;z-index:1001}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@media (min-width:769px){.header.scrolled .hamburger-button{background:#005581;border:none;border-radius:6px;box-shadow:0 2px 8px rgba(0,0,0,.1);color:#fff;cursor:pointer;font-size:16px;padding:10px 14px;transition:all .2s ease}.header.scrolled .hamburger-button:hover{background:#004a6f;box-shadow:0 4px 12px rgba(0,0,0,.2);transform:translateY(-1px)}.header.scrolled .hamburger-button.active{background:#004a6f;box-shadow:0 0 0 2px rgba(0,85,129,.3)}.header.scrolled .hamburger-button{align-items:center;display:flex;gap:8px;min-width:120px}.current-location-indicator{color:#fff;font-size:12px;font-weight:500;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header.scrolled .hamburger-dropdown{background:var(--card-bg);border:1px solid var(--header-border);border-radius:8px;box-shadow:0 8px 25px rgba(0,0,0,.15);max-width:320px;min-width:280px;padding:20px;position:fixed;right:20px;top:170px;z-index:1000}.header.scrolled .hamburger-theme-section{border-bottom:1px solid var(--border-color);margin-bottom:15px;padding-bottom:15px}.header.scrolled .hamburger-theme-button{align-items:center;background:var(--header-button-bg);border:1px solid var(--header-border);border-radius:6px;color:var(--header-button-text);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:10px 14px;transition:all .2s;width:100%}.header.scrolled .hamburger-theme-button:hover{background:var(--header-button-hover-bg);border-color:var(--header-border-hover)}}@media (max-width:768px){.hamburger-button{align-items:center;background:#005581;border:2px solid #005581;border-radius:8px;box-shadow:0 2px 8px rgba(0,85,129,.3);color:#fff;cursor:pointer;display:flex;font-size:16px;gap:8px;justify-content:center;min-height:50px;min-width:50px;padding:12px 16px;transition:all .2s ease}.hamburger-button:hover{background:#004a6f;border-color:#004a6f;box-shadow:0 4px 12px rgba(0,85,129,.4);transform:translateY(-1px)}.hamburger-button.active{background:#004a6f;border-color:#004a6f;box-shadow:0 0 0 3px rgba(0,85,129,.4)}.hamburger-icon{display:flex;flex-direction:column;height:20px;justify-content:space-around;width:20px}.hamburger-line{background-color:#fff;border-radius:2px;height:3px;transform-origin:center;transition:all .3s ease;width:100%}.hamburger-button.active .hamburger-line:first-child{transform:rotate(45deg) translate(6px,6px)}.hamburger-button.active .hamburger-line:nth-child(2){opacity:0}.hamburger-button.active .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.hamburger-dropdown{animation:slideDown .2s ease-out;background:#fff;border:2px solid #e5e7eb;border-radius:8px;box-shadow:0 8px 25px rgba(0,0,0,.15);margin-top:8px;max-width:320px;min-width:280px;padding:20px;position:absolute;right:0;top:100%;z-index:1000}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.hamburger-theme-section{border-bottom:1px solid var(--border-color);margin-bottom:15px;padding-bottom:15px}.hamburger-theme-button{align-items:center;background:var(--header-button-bg);border:1px solid var(--header-border);border-radius:6px;color:var(--header-button-text);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s;width:100%}.hamburger-theme-button:hover{background:var(--header-button-hover-bg);border-color:var(--header-border-hover);transform:translateY(-1px)}.hamburger-download-section{border-bottom:1px solid var(--border-color);margin-bottom:15px;padding-bottom:15px}.hamburger-download-button{align-items:center;background:var(--header-button-bg);border:1px solid var(--header-border);border-radius:6px;color:var(--header-button-text);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s;width:100%}.hamburger-download-button:hover{background:var(--header-button-hover-bg);border-color:var(--header-border-hover);transform:translateY(-1px)}.hamburger-auth-section{width:100%}}@media (max-width:480px){.header{min-height:50px;padding:10px 15px}.header-title-section h1{font-size:1.1rem}.header-location-section{max-width:150px}.hamburger-dropdown{max-width:280px;min-width:250px;right:-10px}}@media (max-width:768px){.hamburger-dropdown{right:-20px}}.header-location-selector{align-items:center;display:flex;position:relative}.header-location-selector .input-container{position:relative;width:200px}.header-location-input{background:var(--header-button-bg);border:1px solid var(--header-border);border-radius:6px;color:var(--header-button-text);font-size:14px;padding:8px 12px;transition:border-color .2s ease,box-shadow .2s ease;width:100%}.header-location-input:focus{border-color:var(--header-title);box-shadow:0 0 0 2px rgba(0,85,129,.15);outline:none}.header-location-input:focus::placeholder{color:var(--header-title);font-weight:500}.header-location-input::placeholder{color:var(--header-description)}.header-autocomplete-dropdown{background:var(--card-bg);border:1px solid var(--header-border);border-radius:0 0 6px 6px;border-top:none;box-shadow:0 4px 6px -1px rgba(0,0,0,.15);left:0;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.header-autocomplete-item{border-bottom:1px solid var(--border-color);cursor:pointer;padding:10px 12px;transition:background-color .2s ease}.header-autocomplete-item:last-child{border-bottom:none}.header-autocomplete-item:hover{background-color:var(--header-button-hover-bg)}.header-autocomplete-item .location-name{color:var(--text-primary);font-weight:500;margin-bottom:2px}.header-autocomplete-item .location-details{color:var(--text-secondary);display:flex;font-size:12px;gap:8px}.header-autocomplete-item .location-type{background:var(--section-bg-alt);border-radius:4px;color:var(--text-secondary);padding:2px 6px;text-transform:capitalize}.header-autocomplete-item .location-county{color:var(--text-secondary)}@media (max-width:768px){.header-location-selector .input-container{width:150px}.header-location-input{font-size:13px;padding:6px 10px}}.location-selector{align-items:center;display:flex;flex-direction:column;flex-shrink:0;gap:8px;position:relative}.quick-test-locations{background-color:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:12px;padding:12px}.quick-test-label{color:#374151;font-size:.9rem;font-weight:600;margin-right:8px;white-space:nowrap}.quick-test-btn{background-color:#3b82f6;border:none;border-radius:6px;color:#fff;font-size:.85rem;padding:6px 12px}.quick-test-btn:hover{background-color:#2563eb;box-shadow:0 2px 4px rgba(0,0,0,.1)}.location-selector label{color:#374151;font-size:.9rem;font-weight:700;margin-bottom:2px;white-space:nowrap}.input-container{position:relative;width:100%}.location-input{background:#fff;border:2px solid #e5e7eb;border-radius:6px;box-sizing:border-box;font-size:1rem;min-width:300px;outline:none;padding:8px 12px;width:100%}.location-input:focus{border-color:#72c9f0;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.autocomplete-dropdown{background:#fff;border:1px solid #e5e7eb;border-radius:6px;box-shadow:0 4px 6px rgba(0,0,0,.1);left:0;margin-top:5px;max-height:200px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1001}.autocomplete-item{border-bottom:1px solid #f3f4f6;cursor:pointer;padding:10px 12px;transition:background-color .2s ease}.autocomplete-item:hover{background-color:#f8f9fa}.autocomplete-item:last-child{border-bottom:none}.location-name{color:#1f2937;font-weight:600;margin-bottom:4px}.location-details{align-items:center;display:flex;gap:8px}.location-type{background-color:#dbeafe;border-radius:12px;color:#1e40af;font-size:.75rem;font-weight:500;padding:2px 8px;text-transform:capitalize}.location-county{color:#6b7280;font-size:.875rem}@media (max-width:768px){.location-input{min-width:250px}.quick-test-locations{align-items:center;flex-direction:column}.quick-test-label{margin-bottom:8px;margin-right:0}.quick-test-btn{min-width:120px}}@media (max-width:480px){.location-input{min-width:200px}.quick-test-btn{font-size:.8rem;min-width:100px;padding:8px 10px}}.hero-slideshow{background:#000;height:100vh;max-height:800px;min-height:600px;overflow:hidden;position:relative;width:100%}.slideshow-container{position:relative}.slide,.slideshow-container{display:flex;height:100%;width:100%}.slide{align-items:center;background-position:50%;background-repeat:no-repeat;background-size:cover;justify-content:center;left:0;position:absolute;top:0;transform:translateX(-100%);transition:transform .8s cubic-bezier(.4,0,.2,1)}.slide.active{transform:translateX(0);z-index:2}.slide.prev{transform:translateX(100%);z-index:1}.slide.next{transform:translateX(-100%);z-index:1}.slide-overlay{background:linear-gradient(135deg,rgba(0,0,0,.4),rgba(0,0,0,.6) 50%,rgba(0,0,0,.4));height:100%;left:0;position:absolute;top:0;width:100%;z-index:1}.slide-content{animation:slideInUp .8s ease-out .3s both;color:#fff;max-width:1200px;padding:0 2rem;position:relative;text-align:center;z-index:2}.slide-text{margin-bottom:3rem}.slide-title{-webkit-text-fill-color:transparent;background:linear-gradient(135deg,#fff,#f0f9ff);-webkit-background-clip:text;background-clip:text;font-size:clamp(3rem,8vw,6rem);font-weight:800;line-height:1.1;margin:0 0 1.5rem;text-shadow:0 4px 20px rgba(0,0,0,.5)}.slide-subtitle{font-size:clamp(1.25rem,3vw,2rem);font-weight:400;line-height:1.4;margin:0 0 1rem;opacity:.95;text-shadow:0 2px 10px rgba(0,0,0,.5)}.slide-description{font-size:clamp(1rem,2vw,1.25rem);font-weight:300;line-height:1.5;margin:0 auto;max-width:600px;opacity:.9;text-shadow:0 2px 8px rgba(0,0,0,.5)}.slide-actions{animation:slideInUp .8s ease-out .6s both;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center}.slide-actions:has(.cta-button:only-child){justify-content:center}.cta-button{align-items:center;border:none;border-radius:50px;box-shadow:0 8px 25px rgba(0,0,0,.3);cursor:pointer;display:inline-flex;font-size:1.1rem;font-weight:600;gap:.5rem;justify-content:center;min-width:180px;overflow:hidden;padding:1rem 2rem;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.cta-button:before{background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.2),transparent);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.cta-button:hover:before{left:100%}.cta-button.primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.cta-button.primary:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 12px 35px rgba(59,130,246,.4);transform:translateY(-2px)}.cta-button.secondary{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.cta-button.secondary:hover{background:linear-gradient(135deg,#eab308,#b45309);box-shadow:0 12px 35px rgba(245,158,11,.4);transform:translateY(-2px)}.new-badge{animation:pulse 2s infinite;background:#ef4444;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.3);font-size:.75rem;font-weight:700;height:24px;right:-8px;top:-8px;width:24px}.nav-arrow,.new-badge{align-items:center;color:#fff;display:flex;justify-content:center;position:absolute}.nav-arrow{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:hsla(0,0%,100%,.1);border:2px solid hsla(0,0%,100%,.3);border-radius:50%;cursor:pointer;height:60px;top:50%;transform:translateY(-50%);transition:all .3s ease;width:60px;z-index:10}.nav-arrow:hover{background:hsla(0,0%,100%,.2);border-color:hsla(0,0%,100%,.5);transform:translateY(-50%) scale(1.1)}.nav-arrow-left{left:2rem}.nav-arrow-right{right:2rem}.slide-indicators{bottom:2rem;display:flex;gap:.75rem;left:50%;position:absolute;transform:translateX(-50%);z-index:10}.indicator{background:transparent;border:2px solid hsla(0,0%,100%,.5);border-radius:50%;cursor:pointer;height:12px;transition:all .3s ease;width:12px}.indicator:hover{background:hsla(0,0%,100%,.2);border-color:hsla(0,0%,100%,.8)}.indicator.active{background:#fff;border-color:#fff;box-shadow:0 0 20px hsla(0,0%,100%,.5)}.progress-bar{background:hsla(0,0%,100%,.2);bottom:0;height:4px;left:0;position:absolute;width:100%;z-index:10}.progress-fill{background:linear-gradient(90deg,#3b82f6,#f59e0b);border-radius:0 2px 2px 0;height:100%}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@media (max-width:768px){.hero-slideshow{height:70vh;min-height:500px}.slide-content{padding:0 1rem}.slide-actions{align-items:center;flex-direction:column;gap:1rem}.cta-button{min-width:200px;padding:.875rem 1.5rem}.nav-arrow{height:50px;width:50px}.nav-arrow-left{left:1rem}.nav-arrow-right{right:1rem}.slide-indicators{bottom:1rem}}@media (max-width:480px){.hero-slideshow{height:60vh;min-height:400px}.slide-title{font-size:2.5rem}.slide-subtitle{font-size:1.125rem}.slide-description{font-size:.875rem}.cta-button{font-size:1rem;padding:.75rem 1.25rem}}.overview-page{background-color:var(--bg-page);min-height:100vh}.overview-page .hero-slideshow{position:relative;z-index:1}.overview-content{margin:0 auto;max-width:1200px;padding:0 20px}.overview-load-indicator{align-items:center;background:linear-gradient(135deg,#0ea5e9,#0284c7);border-radius:8px;box-shadow:0 2px 8px rgba(2,132,199,.25);color:#fff;display:flex;flex-wrap:wrap;font-size:.95rem;gap:12px;margin:0 auto 16px;max-width:1200px;padding:12px 20px}.overview-load-indicator__text{font-weight:600}.overview-load-indicator__elapsed{opacity:.95}.overview-load-indicator__remaining{font-weight:500;margin-left:auto}.overview-loading-screen{align-items:center;background:var(--loading-bg);bottom:0;display:flex;flex-direction:column;gap:1rem;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.overview-loading-screen__spinner{animation:overview-load-spin .8s linear infinite;border:4px solid var(--border-color);border-radius:50%;border-top:4px solid #3b82f6;height:48px;width:48px}.overview-loading-screen__title{color:var(--loading-text);font-size:1.1rem;font-weight:500;margin:0}.overview-loading-screen__subtitle{color:var(--text-secondary);font-size:.9rem;margin:0}.overview-loading-screen__hint{color:var(--text-secondary);font-size:.85rem;margin:0}@keyframes overview-load-spin{to{transform:rotate(1turn)}}.overview-section-title{color:var(--text-primary);font-size:1.8rem;font-weight:400;margin-bottom:20px;text-align:center}.overview-chart-title{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 8px}.overview-chart-title.overview-chart-title--sm{font-size:.95rem}.overview-chart-title-lg{color:var(--text-primary);font-size:1rem;font-weight:600;margin:0 0 10px}.overview-chart-loading{align-items:center;background:var(--section-bg-alt);border-radius:8px;color:var(--text-secondary);display:flex;height:420px;justify-content:center;min-height:420px}.overview-chart-loading--tall{height:500px;min-height:500px}.overview-text-secondary{color:var(--text-secondary)}.overview-text-primary{color:var(--text-primary)}.overview-chart-card{background:var(--section-bg);border:1px solid var(--border-color);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;min-height:300px;padding:15px;transition:all .2s}.overview-chart-card:hover{border-color:#3b82f6;box-shadow:0 4px 6px rgba(0,0,0,.1)}.overview-chart-card--sm{min-height:120px;padding:16px}.overview-chart-card--tall{height:420px;min-height:420px}.overview-equity-card{background:var(--section-bg);border-radius:8px;padding:20px}.overview-equity-card--burdens{border:2px solid #dc2626}.overview-equity-card--benefits{border:2px solid #10b981}.section-container{margin-bottom:40px;margin-left:auto;margin-right:auto;max-width:1200px;padding:0 20px}.tool-section{margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);padding:60px 0;width:100vw}.tool-section-gray{background-color:var(--section-bg-alt)}.tool-section-white{background-color:var(--section-bg)}.overview-dissolve-container{margin:0;max-width:100%;padding:0;scroll-snap-type:y proximity}.overview-dissolve-section{align-items:center;box-sizing:border-box;display:flex;justify-content:center;min-height:100vh;padding:60px 20px;scroll-snap-align:center;transition:none;will-change:opacity,transform}.overview-dissolve-section>.section-container{max-width:1100px;position:relative;width:100%;z-index:1}@media (prefers-reduced-motion:reduce){.overview-dissolve-section{opacity:1!important;transform:none!important}}.tool-section[data-section-id]{overflow:hidden;position:relative}.tool-section[data-section-id] .section-container{position:relative;z-index:1}.overview-section-bg-img{filter:saturate(.8) brightness(1.05);height:100%;inset:0;object-fit:cover;object-position:center;pointer-events:none;position:absolute;transition:opacity .4s ease-out;width:100%;z-index:0}@media (prefers-reduced-motion:reduce){.overview-section-bg-img{opacity:.15!important}}.tool-title{color:var(--text-primary);font-size:2.2rem;font-weight:700;margin-bottom:40px;position:relative;text-align:center}.tool-content{grid-gap:60px;align-items:start;display:grid;gap:60px;grid-template-columns:1fr 1fr}.tool-description h3{color:var(--uc-blue);font-size:1.6rem;font-weight:600;margin-bottom:20px}.tool-description p{color:var(--uc-teal);font-size:1.1rem;line-height:1.7;margin-bottom:24px}.tool-features{margin:32px 0}.tool-features h4{color:var(--uc-blue);font-size:1.2rem;font-weight:600;margin-bottom:16px}.tool-features ul{list-style:none;margin:0;padding:0}.tool-features li{border-bottom:1px solid var(--border-color);color:var(--uc-teal);font-size:1rem;line-height:1.6;padding:8px 0 8px 24px;position:relative}.tool-features li:before{color:var(--uc-gold-primary);content:"✓";font-weight:700;left:0;position:absolute}.tool-features li:last-child{border-bottom:none}.tool-cta{margin-top:32px}.tool-cta p{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:8px;color:#059669;font-size:1rem;font-weight:500;margin:0;padding:16px 20px;text-align:center}.tool-action{align-items:center;display:flex;flex-direction:column;gap:32px}.location-selector-wrapper{background:var(--section-bg);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 20px rgba(0,0,0,.08);max-width:500px;padding:32px;position:relative;transition:all .3s ease;width:100%;z-index:100}.location-selector-wrapper.scrolled{position:-webkit-sticky;position:sticky;top:20px}.location-selector-wrapper h4{color:var(--text-primary);font-size:1.3rem;font-weight:600;margin-bottom:20px;text-align:center}.location-download-section{border-top:1px solid var(--border-color);margin-bottom:20px;margin-top:20px;padding-top:20px}.location-download-button{align-items:center;background-color:var(--chart-container-bg);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 20px;transition:all .2s;width:100%}.location-download-button:hover{background-color:var(--section-bg-alt);border-color:var(--text-secondary);box-shadow:0 4px 6px -1px rgba(0,0,0,.1);transform:translateY(-1px)}.quick-test-locations{border-top:1px solid var(--border-color);margin-top:24px;padding-top:24px}.quick-test-locations h5{color:var(--text-secondary);font-size:1rem;font-weight:600;letter-spacing:.5px;margin-bottom:16px;text-align:center;text-transform:uppercase}.quick-test-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.quick-test-btn{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .2s ease;white-space:nowrap}.quick-test-btn:hover{background:var(--chart-container-bg);border-color:var(--text-secondary);color:var(--text-primary);transform:translateY(-1px)}.quick-test-btn:active{transform:translateY(0)}.locations-summary{background:transparent;border:none;border-radius:0;border-top:1px solid var(--border-color);margin-top:24px;padding:24px 0 0;text-align:center}.locations-summary h4{color:var(--text-secondary);font-size:1rem;font-weight:500;margin-bottom:16px}.summary-stats{display:flex;gap:32px;justify-content:center}.stat-item{align-items:center;display:flex;flex-direction:column;gap:4px}.stat-number{color:var(--text-primary);font-size:1.8rem;font-weight:600}.stat-label{color:var(--text-secondary);font-size:.8rem;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.tool-screenshot{align-items:center;display:flex;justify-content:center}.screenshot-placeholder{align-items:center;background:var(--section-bg);display:flex;justify-content:center;max-width:500px;overflow:hidden;position:relative}.screenshot-placeholder,.tool-image{border:1px solid var(--border-color);border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.12);min-height:400px;width:100%}.tool-image{height:auto;object-fit:cover}.placeholder-content{padding:40px 20px;text-align:center}.placeholder-icon{display:block;font-size:4rem;margin-bottom:20px}.placeholder-title{color:var(--text-primary);font-size:1.8rem;font-weight:700;margin-bottom:12px}.placeholder-subtitle{color:var(--text-secondary);font-size:1.2rem;font-weight:500;margin-bottom:32px}.placeholder-features{display:flex;flex-direction:column;gap:16px}.feature-item{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);font-size:1rem;font-weight:500;padding:12px 20px}.tool-go-button{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:12px;box-shadow:0 4px 16px rgba(16,185,129,.3);color:#fff;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:600;padding:16px 32px;text-align:center;text-decoration:none;transition:all .3s ease}.tool-go-button:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 8px 25px rgba(16,185,129,.4);transform:translateY(-2px)}.tool-go-button:active{transform:translateY(0)}.survey-qr-container{align-items:center;background:var(--section-bg);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.12);display:flex;flex-direction:column;gap:24px;margin:0 auto;max-width:400px;padding:40px}.survey-qr-code{border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 16px rgba(0,0,0,.1);height:200px;width:200px}.qr-label{color:var(--text-primary);line-height:1.5;text-align:center}.qr-label strong{color:var(--uc-blue);font-size:1.1rem;font-weight:600}@media (max-width:1024px){.tool-content{gap:40px}.tool-section{padding:40px 0}}@media (max-width:768px){.overview-content{padding:0 16px}.tool-content{gap:40px;grid-template-columns:1fr}.tool-title{font-size:1.8rem;margin-bottom:30px}.tool-description h3{font-size:1.4rem}.tool-description p{font-size:1rem}.location-selector-wrapper{padding:24px}.location-selector-wrapper.scrolled{top:10px}.locations-summary{padding:16px}.summary-stats{gap:20px}.stat-number{font-size:1.5rem}.tool-section{padding:30px 0}}@media (max-width:480px){.summary-stats{flex-direction:column;gap:16px}.tool-title{font-size:1.6rem}.location-selector-wrapper,.locations-summary{padding:20px}.location-selector-wrapper.scrolled{top:5px}.tool-go-button{font-size:1rem;padding:14px 28px}.survey-qr-container{padding:30px 20px}.survey-qr-code{height:160px;width:160px}}.newsletter-preview{background:linear-gradient(135deg,#1e293b,#334155);border-radius:12px;box-shadow:0 10px 25px rgba(0,0,0,.15);color:#fff;margin:0 auto;max-width:400px;padding:32px}.newsletter-header{margin-bottom:24px;text-align:center}.newsletter-branding{margin-bottom:16px}.newsletter-brand{color:#cbd5e1;font-size:.9rem;font-weight:500;letter-spacing:.5px}.newsletter-divider{background:#fbbf24;height:2px;margin:8px auto;width:60px}.newsletter-title{color:#fff;font-size:1.8rem;font-weight:700;letter-spacing:2px;margin:16px 0 8px}.newsletter-subtitle{color:#fbbf24;font-size:.85rem;font-weight:500;letter-spacing:.5px;margin:0}.newsletter-content{margin-bottom:24px}.newsletter-article{border-bottom:1px solid #475569;margin-bottom:20px;padding-bottom:16px}.newsletter-article:last-child{border-bottom:none;margin-bottom:0}.newsletter-article h5{color:#fbbf24;font-size:.95rem;font-weight:600;line-height:1.3;margin:0 0 8px}.newsletter-article p{color:#cbd5e1;font-size:.85rem;line-height:1.4;margin:0}.newsletter-footer{border-top:1px solid #475569;padding-top:16px;text-align:center}.newsletter-tag{color:#94a3b8;font-size:.8rem;font-weight:500}@media (max-width:768px){.newsletter-preview{max-width:100%;padding:24px}.newsletter-title{font-size:1.5rem;letter-spacing:1px}.newsletter-article h5{font-size:.9rem}.newsletter-article p{font-size:.8rem}}@media (max-width:480px){.newsletter-preview{padding:20px}.newsletter-title{font-size:1.3rem}.newsletter-brand,.newsletter-subtitle{font-size:.8rem}}.policy-impact-loading,.policy-impact-placeholder{align-items:center;background:var(--section-bg);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);display:flex;flex-direction:column;justify-content:center;min-height:300px;padding:3rem}.policy-impact-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid var(--section-bg-alt);border-radius:50%;border-top:4px solid #3b82f6;height:40px;margin-bottom:1rem;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.policy-impact-loading p,.policy-impact-placeholder p{color:var(--text-secondary);font-size:1rem}.policy-impact-metrics{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.impact-metric-card{border-left:4px solid;box-shadow:0 1px 3px rgba(0,0,0,.1);padding:1.5rem}.impact-metric-card.baseline{border-left-color:#6b7280}.impact-metric-card.projected{border-left-color:#3b82f6}.impact-metric-card.reduction{border-left-color:#10b981}.metric-label{font-weight:500;margin-bottom:.5rem}.metric-value{color:var(--text-primary);font-size:1.5rem;font-weight:700}.metric-percentage{color:#10b981;margin-top:.25rem}.policy-impact-tool .chart-section,.policy-main-chart .chart-section{background:transparent!important;border-radius:0!important;box-shadow:none!important;box-sizing:border-box!important;left:auto!important;margin-bottom:0!important;margin-left:0!important;margin-right:0!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;padding:0!important;position:relative!important;right:auto!important;width:100%!important}.policy-impact-tool .chart-section>div{box-sizing:border-box;max-width:100%!important;min-width:0;overflow:hidden;position:relative;width:100%!important}.policy-impact-tool .chart-section canvas{box-sizing:border-box;display:block;height:auto;max-width:100%!important;width:100%!important}@media (max-width:768px){.policy-impact-metrics{grid-template-columns:1fr}.impact-metric-card{padding:1rem}.metric-value{font-size:1.25rem}.policy-impact-tool .chart-section{padding:1rem}}.parking-pricing-policy{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1rem;padding:1.5rem}.policy-main-control-section{margin-bottom:1rem;width:100%}.policy-main-label{align-items:center;color:#374151;display:flex;font-weight:700;justify-content:space-between;margin-bottom:.5rem}.policy-main-slider-container{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:1fr auto;width:100%}.policy-main-slider{-webkit-appearance:none;background:#e5e7eb;border-radius:5px;height:10px;outline:none;width:100%}.policy-main-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#3b82f6;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2);cursor:pointer;height:20px;width:20px}.policy-main-slider::-moz-range-thumb{background:#3b82f6;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2);cursor:pointer;height:20px;width:20px}.policy-main-value{color:#3b82f6;font-weight:700;min-width:56px;text-align:right}.policy-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:1rem}.policy-main-control{flex:1 1}.policy-label{align-items:center;color:#374151;display:flex;font-size:1rem;font-weight:600;justify-content:space-between;margin-bottom:.75rem}.policy-value{color:#3b82f6;font-size:1.125rem;font-weight:700}.policy-slider{-webkit-appearance:none;background:#e5e7eb;border-radius:3px;height:6px;outline:none;width:100%}.policy-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:#3b82f6;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2);cursor:pointer;height:20px;width:20px}.policy-slider::-moz-range-thumb{background:#3b82f6;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 4px rgba(0,0,0,.2);cursor:pointer;height:20px;width:20px}.slider-labels{color:#6b7280;display:flex;font-size:.75rem;justify-content:space-between;margin-top:.25rem}.details-button{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;font-size:.875rem;font-weight:600;margin-left:1rem;padding:.5rem 1rem;transition:all .2s ease}.details-button:hover{background:#f3f4f6;color:#374151}.policy-details{border-top:2px solid #e5e7eb;margin-top:1.5rem;padding-top:1.5rem}.details-section{margin-bottom:1.5rem}.details-section:last-child{margin-bottom:0}.details-section h4{color:#1f2937;font-size:1rem;font-weight:700;margin-bottom:.75rem}.details-section p{color:#4b5563;line-height:1.6;margin-bottom:.75rem}.details-section em{font-style:italic}.assumption-controls{gap:1.5rem}.assumption-control,.assumption-controls{display:flex;flex-direction:column}.assumption-control label{align-items:center;color:#374151;display:flex;font-size:.875rem;font-weight:600;justify-content:space-between;margin-bottom:.5rem}.assumption-value{color:#3b82f6;font-weight:700}.assumption-description{color:#6b7280;font-size:.875rem;line-height:1.4;margin-top:.5rem}.assumption-input{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;max-width:200px;padding:.5rem .75rem;width:100%}.assumption-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.calculation-results{background:#fff;border:1px solid #e5e7eb;border-radius:6px;padding:1rem}.result-item{align-items:center;border-bottom:1px solid #f3f4f6;display:flex;justify-content:space-between;padding:.5rem 0}.result-item:last-child{border-bottom:none}.result-item.highlight{background:#eff6ff;border-bottom:none;border-left:3px solid #3b82f6;margin:0 -1rem;padding:.75rem 1rem}.result-label{color:#374151;font-weight:600}.result-value{color:#1f2937;font-weight:600}.literature-note{background:#f9fafb;border-left:3px solid #d1d5db;border-radius:6px;color:#6b7280;font-size:.875rem;font-style:italic;padding:.75rem}.vehicle-electrification-policy{background:#fff;border-radius:8px;padding:24px;width:100%}.vehicle-electrification-policy .policy-details{display:flex;flex-direction:column;gap:24px}.vehicle-electrification-policy .details-section{background:#f9fafb;border-radius:6px;padding:16px}.vehicle-electrification-policy .details-section h4{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 12px}.vehicle-electrification-policy .details-section p{color:#4b5563;line-height:1.6;margin:0 0 12px}.vehicle-electrification-policy .details-section p:last-child{margin-bottom:0}.vehicle-electrification-policy .details-section ul{color:#4b5563;line-height:1.8;margin:12px 0;padding-left:24px}.vehicle-electrification-policy .details-section li{margin-bottom:8px}.vehicle-electrification-policy .calculation-results{display:flex;flex-direction:column;gap:12px}.vehicle-electrification-policy .result-item{align-items:flex-start;background:#fff;border-left:3px solid #3b82f6;border-radius:4px;display:flex;justify-content:space-between;padding:12px}.vehicle-electrification-policy .result-item.highlight{background:#eff6ff;border-left-color:#2563eb;font-weight:600}.vehicle-electrification-policy .result-label{color:#6b7280;flex:1 1;margin-right:16px}.vehicle-electrification-policy .result-value{color:#1f2937;font-weight:600;text-align:right}.vehicle-electrification-policy .assumption-description{color:#6b7280;font-size:14px;font-style:italic;margin-top:8px;width:100%}.intervention-areas-control{background:var(--section-bg);border-radius:0 0 8px 8px;box-shadow:0 1px 3px rgba(0,0,0,.1);padding:1rem 1.5rem}.intervention-areas-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:.75rem;position:relative}.intervention-areas-title{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin-bottom:.25rem}.intervention-areas-description{color:var(--text-secondary);font-size:.875rem;margin-bottom:0}.scenario-dropdown-container{flex-shrink:0;position:relative}.scenario-dropdown-button{align-items:center;background:var(--chart-container-bg);border:2px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:.5rem;padding:.5rem 1rem;transition:all .2s ease}.scenario-dropdown-button:hover{background:var(--section-bg-alt);border-color:var(--text-secondary)}.scenario-dropdown-button:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.dropdown-arrow{color:var(--text-secondary);font-size:.75rem;transition:transform .2s ease}.scenario-dropdown-menu{background:var(--section-bg);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);min-width:160px;overflow:hidden;position:absolute;right:0;top:calc(100% + .5rem);z-index:1000}.scenario-dropdown-item{background:var(--section-bg);border:none;color:var(--text-primary);cursor:pointer;display:block;font-size:.875rem;font-weight:500;padding:.625rem 1rem;text-align:left;transition:background-color .15s ease;width:100%}.scenario-dropdown-item:hover{background:var(--section-bg-alt)}.scenario-dropdown-item:not(:last-child){border-bottom:1px solid var(--border-color)}.scenario-dropdown-item-reset{color:#ef4444}.scenario-dropdown-item-reset:hover{background:#fee2e2;color:#dc2626}.intervention-table{display:flex;flex-direction:column;gap:.5rem}.intervention-table-row{grid-gap:1rem;align-items:center;border-left:3px solid;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.05);display:grid;gap:1rem;grid-template-columns:1fr 1fr;padding:.5rem .75rem}.intervention-table-label-cell{align-items:center;display:flex;gap:.5rem}.intervention-info-button-small{align-items:center;background:var(--section-bg-alt);border:none;border-radius:50%;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:14px;font-weight:700;height:18px;justify-content:center;transition:all .2s;width:18px}.intervention-info-button-small:hover{background:var(--border-color);color:var(--text-primary)}.intervention-item-label-compact{color:var(--text-primary);font-size:.875rem;font-weight:600}.compact-slider-wrapper,.intervention-table-slider-cell{align-items:center;display:flex}.compact-slider-wrapper{gap:.75rem;width:100%}.compact-slider{-webkit-appearance:none;border-radius:3px;flex:1 1;height:6px;outline:none}.compact-slider:disabled{cursor:not-allowed;opacity:.5}.compact-slider:disabled::-webkit-slider-thumb{cursor:not-allowed}.compact-slider:disabled::-moz-range-thumb{cursor:not-allowed;-moz-transition:background .15s ease;transition:background .15s ease}.compact-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--section-bg);border:2px solid #3b82f6;border:2px solid var(--thumb-border-color,#3b82f6);border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2);cursor:pointer;height:16px;width:16px}.compact-slider::-moz-range-thumb{background:var(--section-bg);border:2px solid #3b82f6;border:2px solid var(--thumb-border-color,#3b82f6);border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2);cursor:pointer;height:16px;width:16px}.compact-slider-value{color:var(--text-primary);font-size:.875rem;font-weight:700;min-width:40px;text-align:right}[data-theme=dark] .intervention-sub-policy-row,[data-theme=dark] .intervention-table-row{background:var(--section-bg-alt)!important}.compact-slider-indicator-bar{border-radius:4px;flex:1 1;height:8px;transition:background .15s ease}.intervention-description-popup-global{background:var(--section-bg);border:1px solid var(--border-color);border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.1);color:var(--text-secondary);font-size:.8rem;line-height:1.4;margin-top:1rem;padding:.75rem 1rem}.intervention-sub-policy-row{grid-gap:1rem;align-items:center;border-left:3px solid;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.05);display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-left:2rem;padding:.5rem .75rem}.sub-policy-indent{margin-left:1rem}@media (max-width:768px){.intervention-areas-header{align-items:flex-start;flex-direction:column;gap:1rem}.scenario-dropdown-container{align-self:flex-end}.scenario-dropdown-menu{left:auto;right:0}}.policy-impact-tool{box-sizing:border-box;margin:0 auto;max-width:1400px;overflow:visible;padding:2rem;position:relative;width:100%}.policy-tool-header{margin-bottom:2rem}.policy-tool-header h1{color:var(--text-primary);font-size:2.5rem;font-weight:700;margin-bottom:.5rem}.policy-tool-description{color:var(--text-secondary);font-size:1.1rem;line-height:1.6;max-width:900px}.policy-tool-error{background:hsla(0,93%,94%,.4);border-left:4px solid #ef4444;border-radius:4px;margin-bottom:2rem;padding:1rem}.policy-tool-error p{color:#991b1b;margin:0}.policy-chart-and-metrics{margin-bottom:2rem;min-width:0;width:100%}.policy-impact-metrics-top{display:flex;gap:20px;margin-bottom:2rem;width:100%}.policy-impact-metrics-side{display:flex;flex-direction:column;gap:1rem;min-width:280px}.impact-metric-card{background:var(--section-bg);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.05);flex:1 1;min-width:200px;padding:16px 16px 12px;text-align:center}.policy-impact-metrics-side .impact-metric-card{flex:none;width:100%}.impact-metric-card.baseline{border-top:4px solid #6b7280}.impact-metric-card.projected{border-top:4px solid #3b82f6}.impact-metric-card.reduction{border-top:4px solid #10b981}.metric-label{color:var(--text-secondary);font-size:.875rem;font-weight:600;margin-bottom:8px}.metric-value{align-items:center;display:flex;flex-direction:column;gap:4px;margin-bottom:4px}.metric-number{color:var(--text-primary);font-size:2.2rem;font-weight:700;line-height:1.1}.metric-unit{color:var(--text-secondary);font-size:.875rem;font-weight:600;letter-spacing:.04em}.metric-value.reduction-value{color:#10b981}.metric-percentage{color:#059669;font-size:.875rem;font-weight:600}.predefined-scenarios{align-items:center;background:var(--section-bg);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:2rem;padding:1.5rem}.scenarios-label{color:var(--text-primary);font-size:1rem;font-weight:600}.scenarios-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.scenario-button{background:var(--chart-container-bg);border:2px solid;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.scenario-button.baseline{border-color:#6b7280;color:#6b7280}.scenario-button.baseline:hover{background:#6b7280;color:#fff}.scenario-button.aggressive{border-color:#3b82f6;color:#3b82f6}.scenario-button.aggressive:hover{background:#3b82f6;color:#fff}.scenario-button.building{border-color:#f59e0b;color:#f59e0b}.scenario-button.building:hover{background:#f59e0b;color:#fff}.scenario-button.balanced{border-color:#10b981;color:#10b981}.scenario-button.balanced:hover{background:#10b981;color:#fff}.scenario-button.reset{border-color:#ef4444;color:#ef4444}.scenario-button.reset:hover{background:#ef4444;color:#fff}.policy-tool-content{box-sizing:border-box;display:flex;flex-direction:column;gap:2rem;margin:0 auto 2rem;max-width:1200px;overflow:visible;padding:0 1.5rem;width:100%}.section-title{color:var(--text-primary);flex:1 1;font-size:1.35rem;font-weight:700;line-height:1.2;margin-bottom:0}.policy-levers-section{background:var(--section-bg);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);padding:2rem}.policy-levers-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.policy-category-menu{display:flex;gap:.5rem}.category-menu-button{background:var(--chart-container-bg);border:2px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.875rem;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.category-menu-button:hover{background:var(--section-bg-alt);border-color:var(--text-secondary)}.category-menu-button.active,.category-menu-button.transportation.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.category-menu-button.buildings.active{background:#f59e0b;border-color:#f59e0b;color:#fff}.policy-charts-and-interventions{display:flex;flex-direction:column;gap:2rem;margin-bottom:2rem;min-width:0;width:100%}.policy-intervention-details-section{background:var(--section-bg);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);margin-bottom:2rem;padding:2rem;width:100%}.intervention-details-title{color:var(--text-primary);font-size:1.5rem;font-weight:700;margin-bottom:1.5rem}.intervention-details-content{width:100%}.policy-results-section{background:var(--section-bg);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);box-sizing:border-box;min-width:0;overflow:hidden;padding:2rem;position:relative;width:100%}.policy-results-section>*{box-sizing:border-box;max-width:100%}.policy-results-layout{grid-gap:1.5rem;align-items:stretch;display:grid;gap:1.5rem;grid-template-columns:minmax(0,1.5fr) minmax(260px,.9fr);margin-top:.75rem}.policy-chart-wrapper{min-width:0}.policy-main-forecast{background:var(--section-bg);border-radius:8px 8px 0 0;box-shadow:0 1px 3px rgba(0,0,0,.1);box-sizing:border-box;margin-bottom:0;max-width:100%;overflow:hidden;padding:1rem 2rem;width:100%}.policy-main-forecast-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;justify-content:space-between;margin-bottom:.5rem}.policy-main-forecast-layout{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem}.policy-main-metrics{display:flex;flex-direction:row;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem;width:100%}.policy-main-metrics .impact-metric-card{flex:1 1;min-width:180px;padding:8px 10px 6px}.policy-main-metrics .impact-metric-card .metric-label{font-size:.75rem;margin-bottom:2px}.policy-main-metrics .impact-metric-card .metric-number{font-size:1.5rem;line-height:1}.policy-main-metrics .impact-metric-card .metric-unit{font-size:.7rem}.policy-main-metrics .impact-metric-card .metric-value{gap:2px;margin-bottom:0}.policy-main-metrics .impact-metric-card .metric-percentage{font-size:.75rem;margin-top:2px}.policy-main-metrics .impact-metric-card.percentage{border-top:4px solid #10b981}.policy-main-chart{box-sizing:border-box;margin-bottom:0;max-width:100%;min-width:0;overflow:hidden;padding-bottom:0;position:relative;width:100%}.policy-chart-selector{align-items:flex-start;display:flex;flex-direction:row;gap:1rem;justify-content:space-between;margin-bottom:.75rem}.chart-type-buttons{display:flex;flex-shrink:0;gap:.5rem}.chart-type-button{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;font-size:.8125rem;font-weight:600;padding:.4rem .85rem;transition:all .2s ease;white-space:nowrap}.chart-type-button:hover{background:var(--chart-container-bg);color:var(--text-primary)}.chart-type-button.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.policy-category-section{background:var(--section-bg-alt);border-left:3px solid;border-radius:6px;margin-bottom:1.5rem;padding:1rem}.policy-category-section:last-child{margin-bottom:0}.transportation-section{background:linear-gradient(to right,rgba(59,130,246,.08),var(--section-bg-alt) 15%);border-left-color:#3b82f6}.transportation-title{border-bottom:2px solid rgba(59,130,246,.2);color:#3b82f6;font-size:1.1rem;margin-bottom:.75rem;padding-bottom:.5rem}.buildings-section{background:linear-gradient(to right,rgba(245,158,11,.08),var(--section-bg-alt) 15%);border-left-color:#f59e0b}.buildings-title{border-bottom:2px solid rgba(245,158,11,.2);color:#f59e0b;font-size:1.1rem;margin-bottom:.75rem;padding-bottom:.5rem}.policy-category-title{border-bottom:1px solid var(--border-color);color:var(--text-primary);font-size:1rem;font-weight:700;margin-bottom:.5rem;padding-bottom:.25rem}.policy-subsection{background:var(--section-bg);border-left:2px solid var(--border-color);border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.05);margin-bottom:.75rem;padding:.75rem}.policy-subsection:last-child{margin-bottom:0}.transportation-section .policy-subsection{margin-left:.5rem}.transportation-section .policy-subsection:first-of-type{border-left-color:#3b82f6;border-left-width:3px}.transportation-section .policy-subsection:nth-of-type(2){border-left-color:#10b981;border-left-width:3px}.transportation-section .policy-subsection:nth-of-type(3){border-left-color:#ec4899;border-left-width:3px}.buildings-section .policy-subsection{margin-left:.5rem}.buildings-section .policy-subsection:first-of-type{border-left-color:#f59e0b;border-left-width:3px}.buildings-section .policy-subsection:nth-of-type(2){border-left-color:#8b5cf6;border-left-width:3px}.subsection-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.policy-subsection-title{border-bottom:1px dashed var(--border-color);margin:0 0 .5rem;padding-bottom:.25rem}.policy-subsection-title,.subsection-expand-button{color:var(--text-secondary);font-size:.875rem;font-weight:600}.subsection-expand-button{background:var(--section-bg-alt);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;padding:.5rem 1rem;transition:all .2s ease}.subsection-expand-button:hover{background:var(--chart-container-bg);color:var(--text-primary)}.policy-insights{background:var(--section-bg);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);margin-top:1.5rem;padding:1.5rem}.policy-insights h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:1rem}.policy-insights ul{list-style:none;margin:0;padding:0}.insight-item{border-radius:4px;font-size:.95rem;line-height:1.5;margin-bottom:.5rem;padding:.75rem}.insight-item.success{background:rgba(209,250,229,.5);color:#065f46}.insight-item.moderate{background:hsla(48,96%,89%,.5);color:#92400e}.insight-item.baseline{background:var(--section-bg-alt);color:var(--text-primary)}.insight-item:not(.success):not(.moderate):not(.baseline){background:rgba(219,234,254,.5);color:#1e40af}.policy-methodology-note{background:var(--section-bg);border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);margin-top:2rem;padding:2rem}.policy-methodology-note h3{color:var(--text-primary);font-size:1.25rem;font-weight:600;margin-bottom:1rem}.policy-methodology-note p{color:var(--text-secondary);line-height:1.6;margin-bottom:.75rem}.policy-methodology-note ul{color:var(--text-secondary);line-height:1.6;margin-bottom:1rem;margin-left:1.5rem}.policy-methodology-note li{margin-bottom:.5rem}.methodology-note-disclaimer{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:.875rem;font-style:italic;margin-top:1rem;padding-top:1rem}@media (max-width:1024px){.policy-main-metrics{flex-direction:column}.policy-main-metrics .impact-metric-card{min-width:100%}.policy-charts-and-interventions{grid-template-columns:1fr}.policy-impact-metrics-top{flex-direction:column}}@media (max-width:768px){.policy-impact-tool{padding:1rem}.policy-tool-header h1{font-size:2rem}.policy-tool-description{font-size:1rem}.policy-chart-and-metrics{gap:1rem}.policy-impact-metrics-side{flex-direction:column}.policy-impact-metrics-side .impact-metric-card{flex:none;width:100%}.policy-impact-metrics-top{flex-direction:column;gap:15px}.impact-metric-card{padding:16px}.metric-value{font-size:2rem}.metric-label{font-size:.9rem}.predefined-scenarios{align-items:flex-start;flex-direction:column}.scenarios-buttons{width:100%}.scenario-button{flex:1 1;min-width:0}.section-title{font-size:1.25rem}.policy-methodology-note{padding:1.5rem}}.vmt-reduction-section{min-height:400px;position:relative}.vmt-lever-with-expand{position:relative}.vmt-expand-button{background:#10b981;border:none;border-radius:6px;bottom:8px;box-shadow:0 1px 3px rgba(0,0,0,.1);color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;position:absolute;right:8px;transition:all .2s;z-index:10}.vmt-expand-button:hover{background:#059669;box-shadow:0 2px 4px rgba(0,0,0,.15);transform:translateY(-1px)}.vmt-expand-button:active{transform:translateY(0)}.transit-service-charts-section{border-top:1px solid var(--border-color);margin-top:1.25rem;padding-top:1rem}.transit-service-charts-title{color:var(--text-primary);font-size:1.125rem;font-weight:700;margin:0 0 .5rem}.transit-service-charts-subtitle{color:var(--text-secondary);font-size:.9375rem;line-height:1.45;margin:0 0 1rem}.transit-service-charts-empty{color:var(--text-secondary);margin:.5rem 0 0}.transit-service-charts-grid{grid-gap:.9rem;display:grid;gap:.9rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.transit-service-chart-card{background:var(--section-bg);border:1px solid var(--border-color);border-radius:8px;padding:.75rem}.transit-service-chart-card h5{color:var(--text-primary);font-size:.95rem;margin:0 0 .65rem}.transit-service-chart-container{height:260px}@media (max-width:768px){.transit-service-charts-grid{grid-template-columns:1fr}.transit-service-chart-container{height:240px}}.community-page{margin:0 auto;max-width:1200px;padding:2rem}.community-header{margin-bottom:2rem;text-align:center}.community-header h1{color:#1f2937;margin-bottom:.5rem}.community-header p{color:#6b7280;font-size:1.1rem}.community-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem}.community-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;color:#dc2626;padding:1rem}.community-error,.new-comment-section{margin-bottom:2rem}.new-comment-button{background-color:#3b82f6;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .2s}.new-comment-button:hover{background-color:#2563eb}.new-comment-form{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;margin-top:1rem;padding:1.5rem}.new-comment-form h3{color:#1f2937;margin-bottom:1rem;margin-top:0}.form-group{margin-bottom:1rem}.form-group label{color:#374151;display:block;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:.375rem;font-size:1rem;padding:.75rem;width:100%}.form-group textarea{min-height:100px;resize:vertical}.form-actions{display:flex;gap:1rem;margin-top:1rem}.form-actions button{border:none;border-radius:.375rem;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .2s}.form-actions button:first-child{background-color:#3b82f6;color:#fff}.form-actions button:first-child:hover:not(:disabled){background-color:#2563eb}.form-actions button:first-child:disabled{background-color:#9ca3af;cursor:not-allowed}.form-actions button:last-child{background-color:#6b7280;color:#fff}.form-actions button:last-child:hover{background-color:#4b5563}.comments-section h2{color:#1f2937;margin-bottom:0}.comments-header{justify-content:space-between;margin-bottom:1.5rem}.chart-filter,.comments-header{align-items:center;display:flex}.chart-filter{gap:.5rem}.chart-filter label{color:#374151;font-size:.95rem;font-weight:600}.chart-filter-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.95rem;padding:.5rem 1rem;transition:all .2s ease}.chart-filter-select:hover{border-color:#9ca3af}.chart-filter-select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.no-comments{background-color:#f9fafb;border-radius:.5rem;color:#6b7280;padding:3rem;text-align:center}.comments-list{display:flex;flex-direction:column;gap:1.5rem}.comment-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 1px 3px rgba(0,0,0,.1);padding:1.5rem}.comment-header{margin-bottom:1rem}.comment-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.post-type-badge{background-color:#dbeafe;border-radius:1rem;color:#1e40af;font-size:.875rem;font-weight:500;padding:.25rem .75rem}.comment-author{color:#1f2937;font-weight:600}.comment-location,.comment-user-type{color:#6b7280;font-size:.875rem}.comment-date{color:#9ca3af;font-size:.875rem}.comment-content{margin-bottom:1rem}.comment-content p{color:#374151;line-height:1.6;margin:0}.comment-context{background-color:#f3f4f6;border-radius:.375rem;color:#6b7280;font-size:.875rem;margin-top:.75rem;padding:.5rem}.comment-actions{margin-bottom:1rem}.reply-button{background-color:transparent;border:1px solid #3b82f6;border-radius:.375rem;color:#3b82f6;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.reply-button:hover{background-color:#3b82f6;color:#fff}.edit-button{background-color:transparent;border:1px solid #f59e0b;border-radius:.375rem;color:#f59e0b;cursor:pointer;font-size:.875rem;margin-left:.5rem;padding:.5rem 1rem;transition:all .2s}.edit-button:hover{background-color:#f59e0b;color:#fff}.delete-button{background-color:transparent;border:1px solid #dc2626;border-radius:.375rem;color:#dc2626;cursor:pointer;font-size:.875rem;margin-left:.5rem;padding:.5rem 1rem;transition:all .2s}.delete-button:hover,.delete-confirm-button{background-color:#dc2626;color:#fff}.delete-confirm-button{border:1px solid #dc2626;border-radius:.375rem;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:all .2s}.delete-confirm-button:hover{background-color:#b91c1c;border-color:#b91c1c}.reply-form{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem}.edit-form,.reply-form{margin-top:1rem;padding:1rem}.edit-form{background-color:#fef3c7;border:1px solid #f59e0b;border-radius:.375rem}.delete-confirmation{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;margin-top:1rem;padding:1rem}.delete-confirmation p{color:#dc2626;font-weight:500;margin:0 0 1rem}.reply-form textarea{border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;min-height:80px;padding:.75rem;resize:vertical;width:100%}.reply-actions{display:flex;gap:.75rem;margin-top:.75rem}.reply-actions button{border:none;border-radius:.375rem;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background-color .2s}.reply-actions button:first-child{background-color:#3b82f6;color:#fff}.reply-actions button:first-child:hover:not(:disabled){background-color:#2563eb}.reply-actions button:first-child:disabled{background-color:#9ca3af;cursor:not-allowed}.reply-actions button:last-child{background-color:#6b7280;color:#fff}.reply-actions button:last-child:hover{background-color:#4b5563}.replies{border-left:2px solid #e5e7eb;margin-top:1rem;padding-left:1rem}.reply-card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.375rem;margin-bottom:.75rem;padding:1rem}.reply-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.reply-author{color:#1f2937;font-size:.875rem;font-weight:600}.reply-location,.reply-user-type{color:#6b7280;font-size:.75rem}.reply-date{color:#9ca3af;font-size:.75rem}.reply-content p{color:#374151;font-size:.875rem;line-height:1.5;margin:0}.login-prompt{background-color:#f9fafb;border-radius:.5rem;color:#6b7280;padding:2rem;text-align:center}@media (max-width:768px){.community-page{padding:1rem}.comment-meta,.reply-header{align-items:flex-start;flex-direction:column;gap:.5rem}.form-actions,.reply-actions{flex-direction:column}}.community-safety-warning{align-items:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:.375rem;color:#dc2626;display:flex;gap:.5rem;margin-bottom:1rem;padding:.75rem}.safety-warning-icon{flex-shrink:0;font-size:1.25rem}.safety-warning-text{flex:1 1;font-size:.875rem;line-height:1.25rem}.cooldown-timer{color:#991b1b;font-size:.75rem;font-weight:500;margin-top:.25rem}.community-captcha{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:.375rem;margin-bottom:1rem;padding:1rem}.captcha-question{color:#374151;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.captcha-input{border:1px solid #d1d5db;border-radius:.25rem;font-size:.875rem;padding:.5rem;width:100%}.captcha-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.1);outline:none}.captcha-instruction{color:#6b7280;font-size:.75rem;font-style:italic;margin-top:.5rem}.form-group textarea.invalid{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.1)}.form-group textarea.valid{border-color:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.1)}.comment-length-indicator{color:#6b7280;font-size:.75rem;margin-top:.25rem;text-align:right}.comment-length-indicator.warning{color:#f59e0b}.comment-length-indicator.error{color:#dc2626}.rate-limit-indicator{background-color:#f9fafb;border-radius:.25rem;color:#6b7280;font-size:.75rem;margin-top:.5rem;padding:.5rem}@media (max-width:768px){.community-safety-warning{align-items:flex-start;flex-direction:column;gap:.25rem}.community-captcha{padding:.75rem}}.admin-custom-content{margin-bottom:24px}.admin-custom-content-header{margin-bottom:16px}.admin-custom-content-header h2{color:#0f172a;font-size:1.2rem;margin:0 0 8px}.admin-custom-content-description{color:#64748b;font-size:.95rem;margin:0 0 12px}.admin-custom-content-add{background:#1e3a8a;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:500;padding:8px 14px}.admin-custom-content-add:hover{background:#1e40af}.admin-custom-content-page{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:16px}.admin-custom-content-page h3{color:#334155;font-size:1rem;margin:0 0 10px}.admin-custom-content-list{list-style:none;margin:0 0 10px;padding:0}.admin-custom-content-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:12px;margin-bottom:8px;padding:10px 12px}.admin-custom-content-item-title{flex:1 1;font-weight:500}.admin-custom-content-item-slug{color:#64748b;font-size:.85rem}.admin-custom-content-item-actions{display:flex;gap:8px}.admin-custom-content-item-actions button{background:#fff;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer;font-size:.875rem;padding:4px 10px}.admin-custom-content-item-actions button:hover{background:#f1f5f9}.admin-custom-content-delete{border-color:#fecaca!important;color:#b91c1c}.admin-custom-content-delete:hover{background:#fef2f2!important}.admin-custom-content-empty{color:#94a3b8;font-size:.9rem;margin:0 0 8px}.admin-custom-content-add-inline{background:transparent;border:1px dashed #94a3b8;border-radius:6px;color:#64748b;cursor:pointer;font-size:.875rem;padding:4px 10px}.admin-custom-content-add-inline:hover{background:#f8fafc;color:#475569}.admin-custom-content-modal-overlay{align-items:center;background:rgba(0,0,0,.4);display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1000}.admin-custom-content-modal{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);max-height:90vh;max-width:560px;overflow:auto;padding:24px;width:100%}.admin-custom-content-modal h3{color:#0f172a;font-size:1.25rem;margin:0 0 16px}.admin-custom-content-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;font-size:.9rem;margin-bottom:16px;padding:10px 12px}.admin-custom-content-form label{color:#334155;display:block;font-size:.9rem;font-weight:500;margin-bottom:12px}.admin-custom-content-form label input,.admin-custom-content-form label select,.admin-custom-content-form label textarea{border:1px solid #cbd5e1;border-radius:6px;display:block;font-size:.95rem;margin-top:4px;padding:8px 10px;width:100%}.admin-custom-content-form textarea{min-height:120px;resize:vertical}.admin-custom-content-checkbox{align-items:center;display:flex!important;gap:8px}.admin-custom-content-checkbox input{margin:0!important;width:auto!important}.admin-custom-content-metrics{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:16px}.admin-custom-content-metrics h4{color:#475569;font-size:.95rem;margin:0 0 10px}.admin-custom-content-metric-row{align-items:center;display:flex;gap:8px;margin-bottom:8px}.admin-custom-content-metric-row input{border:1px solid #cbd5e1;border-radius:6px;flex:1 1;font-size:.9rem;min-width:0;padding:6px 8px}.admin-custom-content-metric-row input:first-of-type{flex:1.2 1}.admin-custom-content-metric-row input:nth-of-type(3){flex:0.8 1}.admin-custom-content-metric-row button{background:#fff;border:1px solid #cbd5e1;border-radius:6px;cursor:pointer;font-size:.85rem;padding:6px 10px;white-space:nowrap}.admin-custom-content-metrics>button{background:transparent;border:1px dashed #94a3b8;border-radius:6px;color:#64748b;cursor:pointer;font-size:.9rem;margin-top:8px;padding:6px 12px}.admin-custom-content-modal-actions{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;margin-top:24px;padding-top:16px}.admin-custom-content-modal-actions button{border-radius:8px;cursor:pointer;font-weight:500;padding:8px 16px}.admin-custom-content-modal-actions button:first-child{background:#f1f5f9;border:1px solid #cbd5e1;color:#475569}.admin-custom-content-modal-actions button:last-child{background:#1e3a8a;border:none;color:#fff}.admin-custom-content-modal-actions button:last-child:disabled{cursor:not-allowed;opacity:.6}.admin-settings-page{margin:0 auto;max-width:1200px;padding:24px}.admin-settings-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:24px}.admin-settings-header h1{color:#0f172a;font-size:1.8rem;margin:0 0 4px}.admin-settings-header p{color:#64748b;margin:0}.admin-settings-location{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;padding:10px 14px}.admin-settings-tabs{border-bottom:1px solid #e2e8f0;display:flex;gap:4px;margin-bottom:24px}.admin-settings-tab{background:transparent;border:none;border-bottom:3px solid transparent;color:#64748b;cursor:pointer;font-size:.95rem;font-weight:500;margin-bottom:-1px;padding:10px 18px}.admin-settings-tab:hover{color:#1e293b}.admin-settings-tab.active{border-bottom-color:#2563eb;color:#2563eb}.admin-settings-banner{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#9a3412;padding:14px 16px}.admin-settings-loading{color:#64748b;padding:40px;text-align:center}.admin-settings-page-block{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:24px;padding:16px}.admin-settings-page-block h2{color:#0f172a;font-size:1.2rem;margin:0}.admin-settings-block-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.admin-settings-block-header h2{flex:1 1}.admin-settings-custom-content-summary{color:#64748b;font-size:.95rem;margin:0}.admin-settings-inline-tab-link{background:none;border:none;color:#2563eb;cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.admin-settings-inline-tab-link:hover{color:#1d4ed8}.admin-settings-section{border-top:1px solid #e2e8f0;margin-top:12px;padding-top:12px}.admin-settings-section-header{align-items:center;display:flex;gap:12px;justify-content:space-between}.admin-settings-section-title{align-items:center;color:#1f2937;display:flex;font-weight:600;gap:8px}.admin-settings-chart-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.admin-settings-chart-item{align-items:center;background:#f9fafb;border:1px solid #e2e8f0;border-radius:8px;display:flex;gap:12px;justify-content:flex-start;padding:10px 12px}.admin-settings-chart-item label{align-items:center;color:#1f2937;display:flex;gap:8px}.admin-settings-chart-main{min-width:220px}.admin-settings-chart-controls{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;margin-left:auto;row-gap:6px}.admin-settings-overview-toggle{color:#2563eb;font-size:.85rem;white-space:nowrap}.admin-settings-role-columns{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:end;max-width:560px}.admin-settings-role-cell{align-items:center;color:#334155;display:inline-flex;font-size:.75rem;gap:4px;white-space:nowrap}.admin-settings-order-buttons{display:flex;flex-shrink:0;gap:6px}.admin-settings-order-buttons button{background:#f8fafc;border:1px solid #cbd5f5;border-radius:6px;color:#1e3a8a;cursor:pointer;padding:4px 8px}.admin-settings-order-buttons button:disabled{cursor:not-allowed;opacity:.5}.admin-settings-footer{align-items:center;display:flex;gap:12px;justify-content:space-between;padding:16px 0}.admin-settings-status{color:#2563eb}.admin-settings-save{background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;padding:10px 18px}.admin-settings-save:disabled{cursor:not-allowed;opacity:.6}.calculator-page{background-color:#f8fafc;display:flex;flex-direction:column;min-height:calc(100vh - 200px);overflow-y:auto}.calculator-page-content{margin:0 auto;max-width:1300px;overflow:visible;padding:0 20px 40px;width:100%}.calculator-page-content,.calculator-page-placeholder{display:flex;flex:1 1;flex-direction:column;min-height:0}.calculator-page-placeholder{align-items:center;background:#fff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.08);justify-content:center;padding:3rem 2rem;text-align:center}.calculator-page-placeholder p{color:#374151;margin:.5rem 0}.calculator-page-placeholder code{background:#f3f4f6;border-radius:4px;font-size:.95em;padding:.2em .4em}.calculator-page-iframe-wrap{flex:1 1;min-height:900px;overflow:visible;position:relative}.calculator-page-loading{color:#6b7280;left:50%;position:absolute;text-align:center;top:2rem;transform:translateX(-50%)}.calculator-page-loading .loading-spinner{animation:calculator-spin .8s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#26aae0;height:40px;margin:0 auto .75rem;width:40px}@keyframes calculator-spin{to{transform:rotate(1turn)}}.calculator-page-iframe{background:#fff;border:none;border-radius:8px;min-height:900px;opacity:0;transition:opacity .2s ease;width:100%}.calculator-page-iframe.loaded{opacity:1}.calculator-page-timeout-hint{background:#fef3c7;border-radius:6px;color:#92400e;font-size:.9rem;margin:1rem 0 0;padding:.75rem 1rem}.calculator-page-timeout-hint code{background:rgba(0,0,0,.06);border-radius:4px;font-size:.85em;padding:.15em .4em}.nav-bar{align-items:center;background:var(--bg-nav);border-radius:0;box-shadow:0 2px 10px rgba(0,0,0,.1);box-sizing:border-box;display:flex;justify-content:center;margin:0;max-width:100vw;overflow:hidden;padding:0;position:-webkit-sticky;position:sticky;top:0;width:100%;z-index:50}@media (max-width:768px){.nav-bar{display:none}}.mobile-nav-title{color:#005581;display:none;font-size:18px;font-weight:600;order:1}.mobile-menu-toggle{background:transparent;border:none;cursor:pointer;display:none;flex-direction:column;height:30px;justify-content:space-around;padding:0;width:30px;z-index:101}.hamburger-line{background-color:#005581;height:3px;transform-origin:1px;transition:all .3s ease;width:25px}.mobile-menu-toggle:hover .hamburger-line{background-color:#004a6f}.mobile-menu-toggle.active .hamburger-line:first-child{transform:rotate(45deg) translate(5px,5px)}.mobile-menu-toggle.active .hamburger-line:nth-child(2){opacity:0}.mobile-menu-toggle.active .hamburger-line:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.nav-items{display:flex;margin:0;padding:0;width:100%}.nav-item{border:2px solid transparent;border-radius:0;box-sizing:border-box;color:#fff;cursor:pointer;display:block;flex:1 1;font-weight:700;min-width:0;overflow:hidden;padding:15px 10px;position:relative;text-align:center;text-decoration:none;transition:all .3s ease}.nav-item:hover{opacity:.9}.nav-item.active,.nav-item:hover{border:none;box-shadow:none;transform:none}.nav-item.active{opacity:1}.nav-item.active:after{background:#005581;border-radius:0;bottom:0;content:"";height:4px;left:0;position:absolute;width:100%}.nav-item.blue{background:#005581}.nav-item.teal{background:#00778b}.nav-item.light-blue{background:#72cdf4}.nav-item.gold{background:#ffb511}.nav-item.purple{background:#6b46c1}.nav-item.orange{background:#ff6e1b}.nav-item.pink{background:#e44c9a}.nav-item.green{background:#10b981}.nav-item.gray{background:#6b7280}.nav-item:not(:first-child){border-top-left-radius:3px}.nav-item:not(:last-child){border-top-right-radius:3px}@media (max-width:768px){.nav-bar{background:#f8f9fa;border-bottom:1px solid #e5e7eb;height:50px;padding:0 20px}.mobile-nav-title{display:block}.mobile-menu-toggle{display:flex;order:2}.nav-items{background:#fff;border-radius:8px 0 0 8px;box-shadow:-4px 4px 12px rgba(0,0,0,.15);flex-direction:column;max-height:calc(100vh - 50px);overflow-y:auto;position:fixed;right:0;top:50px;transform:translateX(100%);transition:transform .3s ease;width:280px;z-index:1000}.nav-items.mobile-open{transform:translateX(0)}.nav-item{background:#fff;border-bottom:1px solid #f1f3f4;color:#374151;flex:none;font-size:15px;font-weight:500;padding:16px 20px;text-align:left;width:100%}.nav-item:last-child{border-bottom:none}.nav-item:hover{background-color:#f8f9fa}.nav-item.active{background-color:#e3f2fd;border-left:4px solid #005581;color:#005581;font-weight:600}}@media (max-width:480px){.nav-bar{height:50px;padding:0 15px}.mobile-nav-title{font-size:16px}.nav-items{top:50px;width:260px}.nav-item{font-size:14px;padding:14px 18px}}
/*# sourceMappingURL=main.5d5e1e01.css.map*/