:root{--primary-color: #f15d22;--background-color: #ffffff;--card-background-color: #ffffff;--text-color: #212529;--light-text-color: #6c757d;--border-color: #dee2e6;--slider-track-color: #e9ecef;--font-family: "Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--background-color);color:var(--text-color);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{display:flex;justify-content:center;align-items:flex-start;min-height:100vh}.calculator-container{width:100%;max-width:1280px;margin:0 auto;padding:2.5rem}h1{font-size:1.75rem;font-weight:700;text-align:center;color:var(--text-color);margin-bottom:2rem}.main-layout{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:flex-start}.controls-panel{display:flex;flex-direction:column;gap:1.5rem}.results-panel{display:flex;flex-direction:column;gap:1.5rem;position:sticky;top:2.5rem}.country-selector{display:flex;border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.country-selector button{flex:1;padding:.75rem;border:none;background-color:transparent;cursor:pointer;font-size:.9rem;font-weight:500;font-family:var(--font-family);color:var(--light-text-color);transition:background-color .2s,color .2s}.country-selector button:first-child{border-right:1px solid var(--border-color)}.country-selector button.active{background-color:var(--primary-color);color:#fff}.country-selector button:focus-visible{outline:2px solid var(--primary-color);outline-offset:-2px;z-index:1}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-group label{font-weight:600;font-size:.9rem}.input-field{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;font-family:var(--font-family);transition:border-color .2s,box-shadow .2s}.input-field:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #f15d2240}.input-field:disabled{background-color:#e9ecef;cursor:not-allowed}.budget-input-wrapper{position:relative}.currency-symbol{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--light-text-color);font-size:1rem;pointer-events:none}.budget-input-wrapper .input-field{padding-left:2.5rem}.location-radius-group{display:flex;gap:1.5rem;align-items:flex-end}.location-input-group{flex:2}.radius-input-group{flex:3}.demographics-container{background-color:#fdf6f3;border:1px solid #fbe4d9;border-radius:8px;padding:1rem 1.5rem}.demographics-container h3{font-size:1rem;font-weight:600;margin-bottom:1rem;text-align:center}.demographics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;text-align:center}.demographics-item{display:flex;flex-direction:column}.demographics-value{font-size:1.5rem;font-weight:700;color:var(--primary-color)}.competition-value{display:flex;align-items:center;justify-content:center;gap:.5rem;text-transform:capitalize}.competition-indicator{width:12px;height:12px;border-radius:50%;flex-shrink:0}.competition-low{background-color:#28a745}.competition-moderate{background-color:#ffc107}.competition-high{background-color:#fd7e14}.competition-very-high{background-color:#dc3545}.demographics-label{font-size:.8rem;color:var(--light-text-color)}.demographics-label-container{display:flex;justify-content:center;align-items:center;gap:.3rem;margin-top:.25rem}.demographics-loading{display:flex;justify-content:center;align-items:center;gap:.75rem;min-height:70px;color:var(--light-text-color)}.demographics-loading .spinner{width:24px;height:24px}.sliders-group{display:flex;flex-direction:column;gap:1.5rem}.sliders-group h3{font-size:1.1rem;font-weight:600;padding-top:.5rem;border-top:1px solid var(--border-color);margin-top:.5rem}.channel-control{display:flex;flex-direction:column;gap:.75rem}.channel-header{display:flex;justify-content:space-between;align-items:center}.channel-header .label{font-weight:500}.channel-header-meta{display:flex;align-items:center;gap:.75rem}.cpl-display{font-size:.8rem;color:var(--light-text-color);display:flex;align-items:center;gap:.3rem;font-weight:500}.tooltip-container{position:relative;display:inline-block}.info-icon{display:flex;justify-content:center;align-items:center;width:16px;height:16px;border-radius:50%;background-color:var(--light-text-color);color:#fff;font-size:11px;font-weight:700;font-family:serif;cursor:help;-webkit-user-select:none;user-select:none}.tooltip-text{visibility:hidden;width:220px;background-color:#333;color:#fff;text-align:center;border-radius:6px;padding:8px;position:absolute;z-index:1;bottom:140%;left:50%;margin-left:-110px;opacity:0;transition:opacity .3s;font-size:.8rem;font-weight:400;font-style:normal;line-height:1.4}.tooltip-text:after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border-width:5px;border-style:solid;border-color:#333 transparent transparent transparent}.tooltip-container:hover .tooltip-text,.tooltip-container:focus-within .tooltip-text{visibility:visible;opacity:1}.channel-header .percentage{font-weight:600;color:var(--primary-color);background-color:#f15d221a;padding:.25rem .5rem;border-radius:6px;font-size:.85rem;min-width:50px;text-align:center}.slider{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:8px;background:var(--slider-track-color);outline:none;border-radius:4px;transition:opacity .2s}.slider:disabled{opacity:.5}.slider:disabled::-webkit-slider-thumb{cursor:not-allowed}.slider:disabled::-moz-range-thumb{cursor:not-allowed}.slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;background:var(--primary-color);cursor:pointer;border-radius:50%;border:3px solid var(--card-background-color);box-shadow:0 0 5px #f15d2233}.slider::-moz-range-thumb{width:20px;height:20px;background:var(--primary-color);cursor:pointer;border-radius:50%;border:3px solid var(--card-background-color);box-shadow:0 0 5px #f15d2233}.divider{border-top:1px solid var(--border-color)}.service-header{display:flex;justify-content:space-between;align-items:center}.service-header .label{font-weight:600}.yellow-stars-control,.seo-control{padding:1rem;border-radius:8px;display:flex;flex-direction:column;gap:1rem}.yellow-stars-control,.seo-control{background-color:#f3f8fd;border:1px solid #d9e8fb}.toggle-and-price{display:flex;align-items:center;gap:1rem}.price{font-weight:600;color:var(--primary-color);font-size:.9rem}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%}input:checked+.toggle-slider{background-color:var(--primary-color)}input:focus+.toggle-slider{box-shadow:0 0 1px var(--primary-color)}input:checked+.toggle-slider:before{transform:translate(20px)}.review-inputs{display:flex;gap:1rem}.review-inputs .input-group{flex:1}.review-inputs .input-group label{font-size:.85rem;font-weight:500}.keyword-input-wrapper{position:relative}.keyword-input-wrapper .spinner{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:20px;height:20px;border:2px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:translateY(-50%) rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-text{50%{opacity:.7}}.results-display{position:relative;border:1px solid #fbe4d9;background-color:#fdf6f3;border-radius:8px;padding:1.5rem;gap:1rem;display:flex;flex-direction:column;min-height:150px;justify-content:center}.prompt-message{text-align:center;color:var(--light-text-color);font-style:italic;font-size:1rem}.loading-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#ffffffe6;display:flex;justify-content:center;align-items:center;border-radius:8px;z-index:10;font-weight:500;animation:pulse-text 1.5s infinite ease-in-out}.result-item{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid var(--border-color);animation:fadeInUp .4s ease-out forwards;opacity:0}.result-item:last-child{border-bottom:none;padding-bottom:0}.result-item .label{color:var(--light-text-color)}.result-item .label a{color:inherit;text-decoration:none;transition:color .2s}.result-item .label a:hover,.result-item .label a:focus-visible{color:var(--primary-color);text-decoration:underline;outline:none}.result-item .value{font-weight:600;display:flex;align-items:baseline;gap:.5rem}.lead-percentage{font-size:.85rem;font-weight:500;color:var(--light-text-color)}.total-leads{margin-top:0rem;background-color:#fdf6f3;color:var(--text-color);padding:1.5rem;border-radius:8px;text-align:center;border:1px solid #fbe4d9}.total-leads-label{font-size:1rem;font-weight:500;margin-bottom:.25rem}.total-leads-value{font-size:2.5rem;font-weight:700;color:var(--primary-color)}.total-spend{font-size:.9rem;color:var(--light-text-color);margin-top:.5rem}.cta-button{display:flex;align-items:center;gap:.5rem;width:fit-content;margin:0 auto;background-color:var(--primary-color);color:#fff;padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:600;transition:transform .2s,box-shadow .2s,filter .2s;box-shadow:0 2px 4px #0000001a}.cta-button:hover,.cta-button:focus-visible{transform:translateY(-2px);text-decoration:none;box-shadow:0 4px 8px #0000001a;filter:brightness(110%)}.error-message{color:#dc3545;background-color:#f8d7da;border:1px solid #f5c6cb;padding:.75rem 1.25rem;border-radius:.25rem;font-size:.9rem}.footer-note{font-size:.75rem;color:var(--light-text-color);text-align:center;margin-top:2rem;line-height:1.5;grid-column:1 / -1}@media (max-width: 960px){.main-layout{grid-template-columns:1fr}.results-panel{position:static}.calculator-container{padding:1.5rem}}@media (max-width: 640px){#root{padding:0}.calculator-container{padding:1rem}h1{font-size:1.5rem}.demographics-grid{grid-template-columns:1fr;gap:1.5rem}.demographics-value{font-size:1.25rem}.total-leads-value{font-size:2rem}.review-inputs{flex-direction:column}.channel-header-meta{flex-direction:column;align-items:flex-end;gap:.5rem}}
