.calculator-container{background:#fff;border:1px solid #dee2e6;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:0 auto;max-width:800px;overflow:hidden}.calculator-header{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #dee2e6;padding:40px 32px 32px;text-align:center}.calculator-header h1{color:var(--primary-color,#1c75bc);font-family:var(--secondary-font,inherit);font-size:42px;font-weight:400;line-height:51px;margin-bottom:8px}.calculator-header p{color:#64748b;font-size:18px}.calculator-content{padding:40px 32px}.input-section{display:flex;gap:30px;margin-bottom:40px}.input-group,.input-section{flex-direction:column}.input-group label{color:var(--text-color,#333);display:block;font-family:var(--secondary-font,inherit);font-size:18px;font-weight:700;margin-bottom:10px}.search-container{position:relative}#city_search{background-color:#fff;border:2px solid var(--secondary-color,#fc7e10);border-radius:4px;box-shadow:0 2px 4px #fc7e101a;color:var(--text-color,#333);font-family:var(--primary-font,inherit);font-size:18px;line-height:25px;padding:15px;transition:all .3s ease;width:100%}#city_search:focus{border-color:var(--secondary-color,#fc7e10);box-shadow:0 0 0 3px #fc7e1033,0 4px 8px #fc7e1026;outline:none;transform:translateY(-1px)}#city_search::-moz-placeholder{color:var(--secondary-color,#fc7e10);opacity:.8}#city_search::placeholder{color:var(--secondary-color,#fc7e10);opacity:.8}#city_dropdown{background:#fff;border:1px solid #dee2e6;border-radius:0 0 4px 4px;border-top:none;box-shadow:0 4px 6px #0000001a;left:0;max-height:200px;opacity:0;overflow-y:auto;position:absolute;right:0;top:100%;transition:opacity .2s ease,visibility .2s ease;visibility:hidden;z-index:1000}#city_dropdown.show{opacity:1;visibility:visible}.dropdown-item{background:#fff;border:none;color:var(--text-color,#333);cursor:pointer;display:block;font-family:var(--primary-font,inherit);font-size:18px;line-height:25px;padding:15px}.dropdown-item:hover{background-color:#f8fafc}.dropdown-item.hidden{display:none!important}#pm25_input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#dee2e6;border-radius:4px;cursor:pointer;height:8px;outline:none;width:100%}#pm25_input:focus{border-color:var(--primary-color,#1c75bc);box-shadow:0 0 0 2px #1c75bc33;outline:none}.slider-container{margin-top:10px}#birth_year_input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#dee2e6;border-radius:4px;cursor:pointer;height:8px;outline:none;width:100%}#pm25_display,#birth_year_display{color:var(--primary-color,#1c75bc);font-weight:700}.results-section{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #dee2e6;border-radius:4px;margin-bottom:30px;padding:30px}.results-grid{display:grid;gap:30px;grid-template-columns:1fr 1fr;margin-bottom:20px}.result-card{background:#fff;border:1px solid #dee2e6;border-radius:4px;padding:30px;text-align:center}.result-card .label{color:#64748b;font-size:18px;margin-bottom:10px;text-transform:uppercase}.result-card .label,.result-card .value{font-family:var(--secondary-font,inherit);font-weight:700}.result-card .value{font-size:42px;line-height:51px;margin-bottom:5px}.daily-value{color:var(--secondary-color,#fc7e10)}.lifetime-value{color:#dc2626}.result-card .unit{color:var(--text-color,#333);font-family:var(--primary-font,inherit);font-size:18px}.location-info{color:#64748b;font-size:18px;font-style:italic;text-align:center}.share-section{background:#f8f9fa;border-radius:8px;margin-top:30px;padding:20px;text-align:center}.share-section h4{color:var(--text-color,#333);font-family:var(--secondary-font,inherit);font-size:20px;font-weight:700;line-height:1.3;margin-bottom:15px}.share-buttons{display:flex;flex-wrap:wrap;gap:15px;justify-content:center;margin-top:15px}.share-btn{align-items:center;border:none;border-radius:25px;cursor:pointer;display:flex;font-family:var(--secondary-font,inherit);font-size:14px;font-weight:600;gap:8px;padding:10px 20px;text-decoration:none;transition:all .3s ease}.share-btn.twitter{background:#1da1f2;color:#fff}.share-btn.facebook{background:#1877f2;color:#fff}.share-btn.linkedin{background:#0077b5;color:#fff}.share-btn.copy{background:#6c757d;color:#fff}.share-btn:hover{opacity:.9;transform:translateY(-2px)}.share-btn svg{height:18px;width:18px}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.data-sources{background:#f8fafc;border:1px solid #dee2e6;border-radius:4px;margin-top:30px;padding:30px}.data-sources h3{color:var(--text-color,#333);font-family:var(--secondary-font,inherit);font-size:24px;font-weight:700;line-height:30px}.data-sources h3,.source-info{margin-bottom:20px}.source-item{align-items:center;display:flex;font-size:18px;gap:10px;margin-bottom:10px}.source-item strong{color:var(--text-color,#333);font-family:var(--primary-font,inherit);min-width:120px}.source-tag{border-radius:4px;font-family:var(--secondary-font,inherit);font-size:14px;font-weight:700;padding:4px 15px;text-transform:uppercase}.source-tag.epa{background-color:transparent;border:1px solid var(--primary-color,#1c75bc);color:var(--primary-color,#1c75bc)}.source-tag.who{background-color:var(--secondary-color,#fc7e10);color:#fff}.source-description{font-size:18px}.data-note,.source-description{color:#64748b;font-family:var(--primary-font,inherit)}.data-note{font-size:14px;line-height:21px;margin:0}.hidden{display:none!important}.dropdown-item:focus{background-color:var(--secondary-color,#fc7e10);color:#fff;outline:none}@media(max-width:768px){.calculator-container{border-radius:0;margin:0}.share-buttons{align-items:center;flex-direction:column;gap:10px}.share-btn{justify-content:center;width:200px}.calculator-header{border-radius:0;padding:30px 20px 20px}.calculator-header h1{font-size:38px;line-height:44px}.calculator-content{padding:30px 20px}.results-grid{gap:20px;grid-template-columns:1fr}.result-card .value{font-size:36px;line-height:42px}.input-section{display:flex;flex-direction:column;gap:25px;margin-bottom:30px}}
