@import url(https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Inter:wght@400;500;600;700&display=swap);*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,sans-serif;line-height:1.5;min-height:100vh}code{font-family:SF Mono,Monaco,Menlo,Consolas,monospace}.App{background:linear-gradient(135deg,#f8fafc,#e2e8f0 50%,#f1f5f9);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;min-height:100vh;position:relative;transition:background-image .5s ease-in-out}.city-background-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#f8fafc99;bottom:0;left:0;pointer-events:none;position:fixed;right:0;top:0;transition:opacity .5s ease-in-out;z-index:0}.App-content{min-height:100vh;position:relative;z-index:1}.App-header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-bottom:1px solid #0000000f;position:-webkit-sticky;position:sticky;top:0;z-index:200}.App-header-inner{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:16px 24px}.App-header-content{align-items:center;display:flex;text-align:left}.App-header-content h1{color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0}.App-header-content p{color:#64748b;font-size:.8rem;font-weight:400;line-height:1.4;margin:2px 0 0}.App-header-logo{height:48px;width:auto}.App-header-page-title{border-left:2px solid #e2e8f0;color:#475569;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1.25rem;font-weight:600;margin-left:16px;padding-left:16px}.App-header-city-display{align-items:center;display:flex;position:relative}.App-header-city-display .city-label{border-radius:20px}.App-header-city-display .city-label,.city-label-button{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:.85rem;font-weight:600;padding:8px 18px}.city-label-button{align-items:center;border:none;border-radius:20px;cursor:pointer;display:flex;font-family:inherit;gap:8px;transition:all .2s ease}.city-label-button:hover{background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 4px 12px #6366f14d;transform:translateY(-1px)}.city-dropdown-arrow{height:14px;transition:transform .2s ease;width:14px}.city-dropdown-arrow.open{transform:rotate(180deg)}.city-dropdown-menu{animation:dropdownFadeIn .2s ease;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 24px #0000001f;max-height:300px;min-width:200px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.city-dropdown-option{align-items:center;background:#0000;border:none;border-bottom:1px solid #f1f5f9;color:#475569;cursor:pointer;display:flex;font-family:inherit;font-size:.875rem;font-weight:500;justify-content:space-between;padding:12px 16px;text-align:left;transition:all .15s ease;width:100%}.city-dropdown-option:last-child{border-bottom:none}.city-dropdown-option:hover{background:#f8fafc;color:#1e293b}.city-dropdown-option.active{background:#f0f4ff;color:#6366f1;font-weight:600}.city-check-icon{color:#6366f1;flex-shrink:0;height:16px;width:16px}.App-header-back-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:6px;padding:8px 14px;transition:all .2s ease}.App-header-back-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b}.App-header-back-btn svg{height:16px;width:16px}@media (max-width:768px){.App-header-inner{align-items:center;flex-direction:row;flex-wrap:wrap;gap:10px;padding:12px 16px}.App-header-content{flex:1 1;text-align:left}.App-header-content h1{font-size:1.25rem}.App-header-content p{font-size:.75rem}.App-header-logo{height:36px}.App-header-page-title{font-size:1rem;margin-left:12px;padding-left:12px}.App-header-back-btn{font-size:.8rem;padding:6px 10px}.App-header-back-btn svg{height:14px;width:14px}.App-header-city-display{position:relative}.city-label-button{font-size:.8rem;padding:6px 14px}.city-dropdown-menu{max-height:250px;min-width:180px;right:0}.city-dropdown-option{font-size:.8rem;padding:10px 14px}}.chart-container{box-shadow:0 1px 3px #0000000d;min-height:500px;padding:32px}.loading{font-size:.9375rem;font-weight:400;padding:80px 20px}.error-message{border-left:4px solid #dc2626;font-size:.875rem;font-weight:400;margin-bottom:24px}.active-filters{align-items:center;box-shadow:0 1px 3px #0000000d;display:flex;flex-wrap:wrap;gap:16px;margin-top:0;padding:16px 24px}.active-filters h3{font-size:.75rem;letter-spacing:.5px;margin:0}.active-filters-list{gap:8px}.active-filter-tag{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;display:inline-block;font-size:.75rem;padding:6px 12px}.active-filter-tag strong{color:#94a3b8;font-weight:600;margin-right:6px}@media (max-width:768px){.chart-container{padding:24px 16px}.active-filters{gap:12px;padding:12px 16px}}.home-page{background:#0000;min-height:calc(100vh - 70px)}.home-hero{align-items:center;background:radial-gradient(ellipse at 20% 20%,#6366f114 0,#0000 50%),radial-gradient(ellipse at 80% 80%,#8b5cf60f 0,#0000 50%);display:flex;justify-content:center;min-height:45vh;padding:60px 24px}.hero-content{max-width:700px;text-align:center}.hero-content h1{color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:2.75rem;font-weight:700;letter-spacing:-.03em;line-height:1.2;margin-bottom:16px}.city-highlight{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;background-clip:text}.hero-subtitle{color:#64748b;font-size:1.15rem;font-weight:400;margin-bottom:48px}.search-container{margin:0 auto 32px;max-width:600px;position:relative;width:100%}.search-box{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:16px;box-shadow:0 4px 20px #0000000f;display:flex;padding:8px 8px 8px 20px;transition:all .3s ease}.search-box:focus-within{border-color:#6366f1;box-shadow:0 4px 25px #6366f126}.search-icon{color:#94a3b8;flex-shrink:0;height:22px;width:22px}.search-box input{background:#0000;border:none;color:#1e293b;flex:1 1;font-size:1.05rem;outline:none;padding:14px 16px}.search-box input::placeholder{color:#94a3b8}.search-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 28px;transition:all .3s ease}.search-btn:hover{box-shadow:0 8px 25px #6366f159;transform:translateY(-2px)}.search-suggestions{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffe6;border:1px solid #e2e8f0cc;border-radius:12px;box-shadow:0 20px 40px #0000001a;left:0;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);z-index:100}.suggestion-item{align-items:center;cursor:pointer;display:flex;gap:12px;padding:14px 20px;transition:background .2s ease}.suggestion-item:hover{background:#f1f5f9cc}.suggestion-type{background:#e2e8f0;border-radius:4px;color:#64748b;font-size:.7rem;letter-spacing:.05em;padding:4px 8px;text-transform:uppercase}.suggestion-value{color:#1e293b;font-size:1rem;font-weight:500}.quick-actions{display:flex;gap:16px;justify-content:center}.quick-action{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:10px;box-shadow:0 2px 8px #0000000a;color:#475569;cursor:pointer;display:flex;font-size:.95rem;gap:8px;padding:12px 24px;transition:all .3s ease}.quick-action:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:0 8px 20px #00000014;transform:translateY(-2px)}.quick-action svg{color:#6366f1;height:18px;width:18px}.best-deals-section{margin:0 auto;max-width:1200px;padding:40px 24px 80px}.section-header{margin-bottom:48px;text-align:center}.section-header h2{color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1.75rem;font-weight:700;margin-bottom:8px}.section-header p{color:#64748b;font-size:1rem}.deals-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.deal-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:20px;box-shadow:0 2px 12px #0000000a;cursor:pointer;overflow:hidden;padding:28px;position:relative;transition:all .4s ease}.deal-card:before{background:linear-gradient(90deg,#6366f1,#8b5cf6);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.deal-card:hover{border-color:#cbd5e1;box-shadow:0 20px 50px #0000001a;transform:translateY(-8px)}.deal-card:hover:before{opacity:1}.deal-card.rank-1{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#fbbf2426,#ffffffd9);border-color:#fbbf244d}.deal-card.rank-1:before{background:linear-gradient(90deg,#fbbf24,#f59e0b);opacity:1}.deal-rank{color:#e2e8f0;font-size:1.5rem;font-weight:800;left:20px;position:absolute;top:20px}.deal-card.rank-1 .deal-rank{color:#fbbf2466}.deal-discount{background:linear-gradient(135deg,#10b981,#059669);border-radius:20px;color:#fff;font-size:.85rem;font-weight:700;padding:6px 14px;position:absolute;right:20px;top:20px}.deal-info{margin-bottom:20px;margin-top:40px}.deal-name{color:#1e293b;font-size:1.3rem;font-weight:700;margin-bottom:4px}.deal-variant{color:#64748b;font-size:.9rem}.deal-price{align-items:baseline;display:flex;gap:12px;margin-bottom:16px}.deal-price .current-price{color:#1e293b;font-size:1.75rem;font-weight:700}.deal-price .original-price{color:#94a3b8;font-size:1rem;text-decoration:line-through}.deal-meta{display:flex;gap:16px;margin-bottom:16px}.deal-km,.deal-listings{align-items:center;color:#64748b;display:flex;font-size:.85rem;gap:4px}.deal-savings{background:#10b9811a;border-radius:10px;color:#059669;font-size:.95rem;font-weight:600;margin-bottom:16px;padding:10px 16px;text-align:center}.deal-actions{display:flex;flex-direction:column;gap:8px;margin-top:8px}.deal-cta-link{background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;color:#fff;cursor:pointer;display:block;font-size:.9rem;font-weight:600;padding:12px;text-align:center;text-decoration:none;transition:all .3s ease;width:100%}.deal-cta-link:hover{background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.deal-cta{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#475569;cursor:pointer;font-size:.95rem;font-weight:500;padding:12px;transition:all .3s ease;width:100%}.deal-cta:hover{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b}.deals-loading{align-items:center;color:#64748b;display:flex;flex-direction:column;gap:16px;padding:60px}.loading-spinner{animation:spin 1s linear infinite}.no-deals{color:#64748b;padding:60px;text-align:center}@media (max-width:768px){.hero-content h1{font-size:2rem}.hero-subtitle{font-size:1rem}.search-box{flex-direction:column;gap:12px;padding:12px}.search-box input{text-align:center;width:100%}.search-btn{width:100%}.search-icon{display:none}.search-suggestions{-webkit-overflow-scrolling:touch;margin-top:8px;max-height:40vh;overflow-y:auto;position:static}.deals-grid{grid-template-columns:1fr}}.filter-drawer-trigger{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:12px;box-shadow:0 1px 3px #0000000a;color:#1e293b;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:10px;margin-bottom:24px;padding:12px 20px;transition:all .2s ease}.filter-drawer-trigger:hover{background:#f8fafcf2;border-color:#6366f1;box-shadow:0 4px 12px #6366f126}.filter-drawer-trigger svg{color:#6366f1;height:18px;width:18px}.filter-drawer-trigger.has-changes{background:#fffbeb;border-color:#fbbf24}.filter-trigger-badge{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;color:#fff;font-size:.7rem;font-weight:700;min-width:18px;padding:2px 8px;text-align:center}.filter-trigger-unsaved{color:#f59e0b;font-size:1.2rem;line-height:1;margin-left:-4px}.filter-drawer-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;bottom:0;left:0;opacity:0;pointer-events:none;position:fixed;right:0;top:0;transition:all .3s ease;visibility:hidden;z-index:998}.filter-drawer-overlay-visible{opacity:1;pointer-events:auto;visibility:visible}.filter-drawer{-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#ffffffe6;bottom:0;box-shadow:4px 0 25px #00000026;display:flex;flex-direction:column;left:0;max-width:90vw;position:fixed;top:0;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:340px;z-index:999}.filter-drawer-open{transform:translateX(0)}.filter-drawer-header{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 24px}.filter-drawer-header h2{color:#fff;font-size:1.125rem;font-weight:700;letter-spacing:-.01em;margin:0}.filter-drawer-close{align-items:center;background:#fff3;border:none;border-radius:10px;cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.filter-drawer-close:hover{background:#ffffff4d}.filter-drawer-close svg{color:#fff;height:20px;width:20px}.filter-drawer-content{flex:1 1;overflow-y:auto;padding:24px}.filter-drawer-grid{gap:20px}.filter-drawer-grid,.filter-group{display:flex;flex-direction:column}.filter-group label{align-items:center;color:#64748b;display:flex;flex-wrap:wrap;font-size:.75rem;font-weight:600;letter-spacing:.3px;margin-bottom:8px;text-transform:uppercase}.filter-group input,.filter-group select{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#1e293b;font-family:inherit;font-size:.9rem;padding:14px 16px;transition:all .2s ease;width:100%}.filter-group input:hover,.filter-group select:hover{background:#fff;border-color:#cbd5e1}.filter-group input:focus,.filter-group select:focus{background:#fff;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a;outline:none}.filter-group select option{background:#fff;color:#1e293b}.filter-disabled{opacity:.5;position:relative}.filter-disabled:after{bottom:0;content:"";cursor:not-allowed;left:0;position:absolute;right:0;top:0}.filter-disabled label{color:#94a3b8}.filter-group input:disabled,.filter-group select:disabled{background:#f1f5f9;border-color:#e2e8f0;color:#94a3b8;cursor:not-allowed}.filter-group input:disabled:hover,.filter-group select:disabled:hover{background:#f1f5f9;border-color:#e2e8f0}.filter-drawer-footer{background:#fff;border-top:1px solid #e2e8f0;bottom:0;box-shadow:0 -4px 20px #00000014;left:0;padding:16px 24px 20px;position:-webkit-sticky;position:sticky;right:0;z-index:10}.filter-drawer-unsaved{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #fbbf24;border-radius:8px;color:#92400e;display:flex;font-size:.8rem;font-weight:600;gap:6px;justify-content:center;margin-bottom:12px;padding:8px 12px}.unsaved-dot{animation:pulse-dot 1.5s ease-in-out infinite;color:#f59e0b;font-size:1rem}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.4}}.filter-drawer-actions{display:flex;gap:12px}.filter-drawer-reset{background:#0000;border:1px solid #fecaca;border-radius:10px;color:#dc2626;cursor:pointer;flex:1 1;font-size:.8rem;font-weight:600;padding:14px 16px;transition:all .2s ease}.filter-drawer-reset:hover{background:#fef2f2;border-color:#dc2626}.filter-drawer-apply{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:10px;color:#fff;cursor:pointer;flex:2 1;font-size:.875rem;font-weight:600;padding:14px 20px;transition:all .2s ease}.filter-drawer-apply:hover{box-shadow:0 8px 25px #6366f14d;transform:translateY(-2px)}.filter-drawer-apply-highlight{animation:pulse-apply 1.5s ease-in-out infinite;background:linear-gradient(135deg,#10b981,#059669)}.filter-drawer-apply-highlight:hover{box-shadow:0 8px 25px #10b9814d}@keyframes pulse-apply{0%,to{box-shadow:0 0 0 0 #10b98166}50%{box-shadow:0 0 0 8px #10b98100}}.info-icon-wrapper{margin-left:6px;position:relative}.info-icon,.info-icon-wrapper{align-items:center;display:inline-flex}.info-icon{background:#e2e8f0;border:none;border-radius:50%;color:#64748b;cursor:pointer;font-family:Georgia,Times New Roman,serif;font-size:10px;font-style:italic;font-weight:700;height:16px;justify-content:center;line-height:1;padding:0;transition:all .2s ease;width:16px}.info-icon:hover{background:#6366f1;color:#fff;transform:scale(1.1)}.info-icon:focus{box-shadow:0 0 0 2px #6366f14d;outline:none}.info-tooltip{animation:tooltipFadeIn .2s ease;bottom:calc(100% + 10px);left:50%;max-width:280px;min-width:220px;position:absolute;transform:translateX(-50%);z-index:1000}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateX(-50%) translateY(5px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.info-tooltip-content{background:#1e293b;border-radius:10px;box-shadow:0 10px 40px #0003;color:#fff;font-size:.8rem;font-weight:400;letter-spacing:0;line-height:1.5;padding:12px 14px;text-transform:none}.info-tooltip-arrow{border-left:7px solid #0000;border-right:7px solid #0000;border-top:7px solid #1e293b;bottom:-6px;height:0;left:50%;position:absolute;transform:translateX(-50%);width:0}@media (max-width:768px){.filter-drawer-trigger{font-size:.8rem;padding:10px 16px}.filter-drawer-trigger svg{height:16px;width:16px}.filter-drawer{max-width:100%;width:100%}.filter-drawer-header{padding:16px 20px}.filter-drawer-header h2{font-size:1rem}.filter-drawer-content{padding:20px}.filter-drawer-grid{gap:16px}.filter-group input,.filter-group select{font-size:.875rem;padding:12px 14px}.filter-drawer-footer{padding:12px 16px 16px}.filter-drawer-unsaved{font-size:.75rem;margin-bottom:10px;padding:6px 10px}.filter-drawer-apply,.filter-drawer-reset{font-size:.8rem;padding:12px 14px}.info-tooltip{left:0;max-width:220px;min-width:180px;transform:translateX(0)}.info-tooltip-arrow{left:8px;transform:translateX(0)}}.price-chart{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:16px;box-shadow:0 1px 3px #0000000a;margin-top:24px;padding:28px}.price-chart-header{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:28px;padding-bottom:20px}.price-chart-title{display:flex;flex-direction:column;gap:4px}.price-chart-title h2{color:#1e293b;font-size:1rem;font-weight:600;letter-spacing:.3px;margin:0}.price-chart-subtitle{color:#64748b;font-size:.8rem;margin:0}.price-chart-legend{display:flex;gap:20px}.legend-item{align-items:center;color:#64748b;display:flex;font-size:.75rem;gap:8px}.legend-color{border-radius:2px;height:3px;width:14px}.legend-color.min{background:linear-gradient(90deg,#10b981,#059669)}.legend-color.avg{background:linear-gradient(90deg,#6366f1,#8b5cf6)}.legend-color.max{background:linear-gradient(90deg,#f43f5e,#e11d48)}.price-chart-container{height:420px;margin-top:16px;width:100%}.chart-loading{align-items:center;color:#64748b;display:flex;flex-direction:column;gap:16px;height:400px;justify-content:center}.chart-loading p{font-size:.9rem}.chart-no-data{flex-direction:column;height:400px;padding:40px;text-align:center}.chart-no-data,.chart-no-data-icon{align-items:center;display:flex;justify-content:center}.chart-no-data-icon{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:50%;height:64px;margin-bottom:20px;width:64px}.chart-no-data-icon svg{color:#94a3b8;height:28px;width:28px}.chart-no-data h3{color:#64748b;font-size:1rem;font-weight:600;margin:0 0 8px}.chart-no-data p{color:#94a3b8;font-size:.85rem;line-height:1.5;margin:0;max-width:280px}.custom-tooltip{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #e2e8f0cc;border-radius:12px;box-shadow:0 10px 40px #0000001f;min-width:180px;padding:16px}.tooltip-header{color:#94a3b8;font-size:.7rem;font-weight:600;letter-spacing:.5px;margin-bottom:12px;text-transform:uppercase}.tooltip-row{justify-content:space-between;padding:6px 0}.tooltip-label,.tooltip-row{align-items:center;display:flex}.tooltip-label{color:#64748b;font-size:.8rem;gap:8px}.tooltip-dot{border-radius:50%;height:8px;width:8px}.tooltip-value{color:#1e293b;font-size:.9rem;font-weight:700}.tooltip-value.min{color:#059669}.tooltip-value.avg{color:#6366f1}.tooltip-value.max{color:#e11d48}.tooltip-count{border-top:1px solid #e2e8f0;color:#94a3b8;font-size:.75rem;margin-top:12px;padding-top:10px}.tooltip-count span{color:#475569;font-weight:600}@media (max-width:768px){.price-chart{padding:20px}.price-chart-header{flex-direction:column;gap:16px}.price-chart-legend{flex-wrap:wrap;gap:12px}.chart-loading,.chart-no-data,.price-chart-container{height:300px}.custom-tooltip{min-width:150px;padding:12px}}.analysis-insights{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:16px;box-shadow:0 1px 3px #0000000a;margin-bottom:24px;padding:24px}.insights-header{border-bottom:1px solid #e2e8f0;margin-bottom:24px;padding-bottom:16px;text-align:left}.insights-header h2{color:#1e293b;font-size:1rem;font-weight:600;letter-spacing:.3px;margin:0}.insights-subtitle{color:#64748b;font-size:.85rem;font-weight:400;margin:6px 0 0}.insights-empty{color:#94a3b8;font-size:.875rem;padding:60px 20px;text-align:center}.insights-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.insight-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f8fafcb3;border:1px solid #e2e8f0cc;border-radius:12px;padding:20px;transition:all .3s ease}.insight-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000000f}.insight-card h3{color:#64748b;font-size:.7rem;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.trend-card{align-items:flex-start;display:flex;gap:15px}.insight-icon{align-items:center;background:linear-gradient(135deg,#6366f11a,#8b5cf61a);border-radius:10px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.insight-icon svg{color:#6366f1;height:20px;width:20px}.insight-content{flex:1 1}.insight-value{color:#1e293b;font-size:1.5rem;font-weight:700;line-height:1.2;margin:8px 0}.insight-detail{color:#64748b;font-size:.8rem;font-weight:400;line-height:1.4;margin:8px 0 0}.comparison-row{align-items:center;display:flex;gap:15px;justify-content:space-between;margin:10px 0}.comparison-item{display:flex;flex:1 1;flex-direction:column}.comparison-label{color:#94a3b8;font-size:.65rem;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.comparison-value{color:#1e293b;font-size:1.25rem;font-weight:700}.comparison-price{color:#1e293b;font-size:.875rem;font-weight:600;margin-top:4px}.comparison-arrow{align-items:center;color:#cbd5e1;display:flex;justify-content:center}.comparison-arrow svg{height:24px;width:24px}.stats-grid{display:flex;flex-direction:column;gap:12px;margin-top:10px}.stat-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:10px 0}.stat-item:last-child{border-bottom:none}.stat-label{color:#94a3b8;font-size:.7rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.stat-value{color:#1e293b;font-size:1rem;font-weight:700}.overview-grid{gap:12px;margin-top:10px}.overview-grid,.overview-item{display:flex;flex-direction:column}.overview-item{gap:5px}.overview-label{color:#94a3b8;font-size:.65rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.overview-value{color:#1e293b;font-size:.9rem;font-weight:600}.models-list{display:flex;flex-direction:column;gap:10px;margin-top:10px}.model-item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;display:flex;justify-content:space-between;padding:12px 14px;transition:all .2s ease}.model-item:hover{background:#f8fafc;border-color:#cbd5e1}.model-name{flex:1 1;font-weight:600}.model-name,.model-price{color:#1e293b;font-size:.875rem}.model-price{font-weight:700;margin:0 12px}.model-count{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.best-deal-showcase{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:16px;color:#fff;margin-bottom:24px;padding:28px}.best-deal-main{align-items:flex-start;border-bottom:1px solid #ffffff26;display:flex;gap:24px;margin-bottom:24px;padding-bottom:24px}.best-deal-badge{align-items:center;display:flex;flex-direction:column;gap:4px}.discount-badge{background:#fff3;border-radius:10px;color:#fff;font-size:1.5rem;font-weight:800;letter-spacing:-.5px;padding:12px 16px}.deal-label{color:#ffffffb3;font-size:.65rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.best-deal-info{flex:1 1}.best-deal-name{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 4px}.best-deal-variant{color:#fffc;font-size:.875rem;font-weight:500;margin:0 0 16px}.best-deal-prices{align-items:baseline;display:flex;gap:12px;margin-bottom:8px}.current-price{color:#fff;font-size:2rem;font-weight:800}.original-price{color:#fff9;font-size:1rem;text-decoration:line-through}.savings-text{color:#ffffffe6;font-size:.8rem;margin:0}.best-deal-details{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-row{align-items:center;background:#ffffff1a;border-radius:10px;display:flex;justify-content:space-between;padding:12px 16px}.detail-label{color:#ffffffb3;font-size:.75rem;font-weight:500}.detail-value{color:#fff;font-size:.875rem;font-weight:600}.odometer-row{background:#ffffff26}.odometer-insight{border-radius:10px;display:flex;flex-direction:column;font-size:.8rem;gap:6px;grid-column:1/-1;padding:14px 16px}.odometer-insight-main{align-items:center;display:flex;gap:8px}.odometer-insight-success{background:#10b98133;color:#6ee7b7}.odometer-insight-info{background:#ffffff1a;color:#ffffffe6}.odometer-insight-neutral{background:#ffffff14;color:#fffc}.insight-comparison{color:#fff9;font-size:.7rem;padding-left:26px}.odometer-insight .insight-icon{background:#0000;border-radius:0;font-size:1rem;height:auto;width:auto}.insight-text{flex:1 1}.other-deals{border-top:1px solid #e2e8f0;margin-top:24px;padding-top:20px}.other-deals h4{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin:0 0 16px;text-transform:uppercase}.deals-list{display:flex;flex-direction:column;gap:10px}.deal-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;justify-content:space-between;padding:14px 16px;transition:all .2s ease}.deal-item:hover{background:#fff;border-color:#10b981}.deal-item-info{display:flex;flex-direction:column;gap:4px}.deal-item-name{color:#1e293b;font-size:.875rem;font-weight:600}.deal-item-km{color:#64748b;font-size:.7rem;letter-spacing:.3px;text-transform:uppercase}.deal-item-price{align-items:center;display:flex;gap:10px}.deal-item-current{color:#1e293b;font-size:1rem;font-weight:700}.deal-item-discount{background:#10b9811a;border-radius:8px;color:#059669;font-size:.75rem;font-weight:700;padding:4px 10px}.odometer-tips{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;margin-top:24px;padding:20px}.odometer-tips h4{color:#3b82f6;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin:0 0 12px;text-transform:uppercase}.odometer-tips ul{list-style:none;margin:0;padding-left:0}.odometer-tips li{border-bottom:1px solid #e2e8f0;color:#64748b;font-size:.8rem;padding:8px 0}.odometer-tips li:last-child{border-bottom:none}.odometer-tips li strong{color:#1e293b}.best-deal-highlight{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:12px;color:#fff;margin-bottom:20px;padding:20px}.best-deal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.best-deal-header h3{font-size:.875rem;font-weight:600;letter-spacing:.5px;margin:0;text-transform:uppercase}.discount-pill{background:#fff3;border-radius:8px;color:#fff;font-size:.7rem;font-weight:700;letter-spacing:.3px;padding:5px 12px;text-transform:uppercase}.best-deal-content{grid-gap:16px;align-items:center;display:grid;gap:16px;grid-template-columns:2fr 1fr 1fr}.best-deal-car{display:flex;flex-direction:column;gap:2px}.car-name{font-size:1.125rem;font-weight:700}.car-variant{color:#ffffffb3;font-size:.75rem}.best-deal-pricing{align-items:flex-end;display:flex;flex-direction:column;gap:2px}.price-now{color:#fff;font-size:1.25rem;font-weight:800}.price-was{color:#fff9;font-size:.75rem;text-decoration:line-through}.best-deal-odometer{align-items:flex-end;display:flex;flex-direction:column;gap:6px}.odometer-value{color:#ffffffe6;font-size:.9rem;font-weight:600}.odometer-badge{border-radius:8px;font-size:.65rem;font-weight:600;letter-spacing:.3px;padding:4px 10px;text-transform:uppercase}.odometer-success{background:#10b9814d;color:#6ee7b7}.odometer-info{background:#ffffff26;color:#ffffffe6}.odometer-neutral{background:#ffffff1a;color:#ffffffb3}.best-deal-loading{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center;padding:60px 20px}.best-deal-loading p{color:#94a3b8;font-size:.875rem;margin:16px 0 0}.loading-spinner{animation:spin .8s linear infinite;border:3px solid #e2e8f0;border-radius:50%;border-top-color:#6366f1;height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:768px){.insights-grid{grid-template-columns:1fr}.comparison-row{align-items:flex-start;flex-direction:column}.comparison-arrow{margin:5px 0;transform:rotate(90deg)}.best-deal-main{flex-direction:column}.best-deal-badge{flex-direction:row;gap:10px}.best-deal-content{gap:12px;grid-template-columns:1fr}.best-deal-odometer,.best-deal-pricing{align-items:flex-start}.best-deal-details{grid-template-columns:1fr}}.analytics-page{background:#0000;min-height:calc(100vh - 70px);padding-bottom:60px}.analytics-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border-bottom:1px solid #e2e8f0cc;gap:20px;padding:20px 32px}.analytics-header,.back-btn{align-items:center;display:flex}.back-btn{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#475569;cursor:pointer;font-size:.9rem;font-weight:500;gap:8px;padding:10px 18px;transition:all .3s ease}.back-btn:hover{background:#f1f5f9;border-color:#cbd5e1;color:#1e293b}.back-btn svg{height:18px;width:18px}.analytics-header h1{color:#1e293b;flex:1 1;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1.5rem;font-weight:700;margin:0}.analytics-city{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:20px;color:#fff;font-size:.85rem;font-weight:600;padding:8px 16px}.analytics-content{margin:0 auto;max-width:1400px;padding:32px}.active-filters{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:12px;box-shadow:0 1px 3px #0000000a;margin-bottom:24px;padding:16px 20px}.active-filters h3{color:#64748b;font-size:.8rem;font-weight:600;letter-spacing:.05em;margin:0 0 12px;text-transform:uppercase}.active-filters-list{display:flex;flex-wrap:wrap;gap:10px}.active-filter-tag{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:1px solid #0000;border-radius:20px;box-shadow:0 6px 14px #6366f140;color:#fff;display:inline-flex;font-size:.85rem;font-weight:500;gap:8px;padding:6px 10px 6px 14px}.active-filter-tag strong{color:#e0e7ff;font-weight:500;margin-right:4px}.active-filter-remove{align-items:center;background:#0000;border:none;color:#e0e7ff;cursor:pointer;display:inline-flex;font-size:1rem;justify-content:center;line-height:1;padding:0}.active-filter-remove:hover{color:#fff}.active-filter-add{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px dashed #cbd5e1cc;border-radius:50%;color:#475569;cursor:pointer;display:inline-flex;font-size:1.2rem;height:32px;justify-content:center;line-height:1;transition:all .2s ease;width:32px}.active-filter-add:hover{background:#f8fafcf2;border-color:#94a3b8;color:#1f2937}.chart-container{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:16px;box-shadow:0 1px 3px #0000000a;margin-top:24px;padding:24px}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#dc2626;padding:16px 20px;text-align:center}.loading{color:#64748b;font-size:1rem;padding:60px;text-align:center}@media (max-width:768px){.analytics-header{flex-wrap:wrap;padding:16px}.analytics-header h1{font-size:1.5rem;margin-top:12px;order:3;width:100%}.analytics-content{padding:16px}}.welcome-modal-overlay{align-items:center;animation:overlayFadeIn .3s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172a99;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:9999}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.welcome-modal{animation:modalSlideIn .4s cubic-bezier(.16,1,.3,1);background:#fff;border-radius:20px;box-shadow:0 25px 80px #0003;max-height:90vh;max-width:560px;overflow-y:auto;position:relative;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.welcome-modal-close{align-items:center;background:#ffffffe6;border:1px solid #e2e8f0;border-radius:10px;color:#64748b;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;line-height:1;position:absolute;right:16px;top:16px;transition:all .2s ease;width:36px;z-index:10}.welcome-modal-close:hover{background:#f1f5f9;color:#1e293b}.welcome-modal-header{background:#fff;border-radius:20px 20px 0 0;padding:40px 40px 32px;text-align:center}.welcome-logo{align-items:center;display:flex;justify-content:center}.welcome-logo img{height:auto;max-width:280px;width:100%}.welcome-modal-content{padding:32px 40px}.welcome-intro{color:#475569;font-size:.9375rem;line-height:1.6;margin:0 0 28px;text-align:center}.welcome-features{display:flex;flex-direction:column;gap:16px}.welcome-feature{align-items:flex-start;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:16px;padding:16px;transition:all .2s ease}.welcome-feature:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateX(4px)}.feature-icon{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.feature-icon svg{color:#fff;height:20px;width:20px}.feature-text h3{color:#1e293b;font-size:.875rem;font-weight:600;margin:0 0 4px}.feature-text p{color:#64748b;font-size:.8125rem;line-height:1.5;margin:0}.welcome-modal-footer{border-top:1px solid #e2e8f0;padding:24px 40px 40px;text-align:center}.welcome-city-select{margin:0 0 20px}.welcome-city-select label{color:#64748b;display:block;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.welcome-city-select select{-webkit-appearance:none;appearance:none;background:#f8fafc;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:2px solid #e2e8f0;border-radius:10px;color:#1e293b;cursor:pointer;font-size:.9375rem;font-weight:500;padding:12px 16px;transition:all .2s ease;width:100%}.welcome-city-select select:hover{background-color:#f1f5f9;border-color:#cbd5e1}.welcome-city-select select:focus{border-color:#6366f1;box-shadow:0 0 0 3px #6366f126;outline:none}.welcome-start-btn{align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:10px;padding:14px 32px;transition:all .2s ease}.welcome-start-btn:hover{box-shadow:0 8px 25px #6366f159;transform:translateY(-2px)}.welcome-start-btn:active{transform:translateY(0)}.welcome-start-btn svg{height:18px;transition:transform .2s ease;width:18px}.welcome-start-btn:hover svg{transform:translateX(4px)}.welcome-start-btn:disabled{background:#cbd5e1;cursor:not-allowed}.welcome-start-btn:disabled,.welcome-start-btn:disabled:hover{box-shadow:none;transform:none}.welcome-start-btn:disabled svg{opacity:.5}@media (max-width:600px){.welcome-modal-overlay{align-items:flex-end;padding:8px}.welcome-modal{border-radius:16px 16px 0 0;max-height:92vh}.welcome-modal-header{border-radius:16px 16px 0 0;padding:24px 16px 20px}.welcome-logo img{max-width:200px}.welcome-modal-content{padding:16px}.welcome-intro{font-size:.8rem;line-height:1.5;margin-bottom:14px}.welcome-features{gap:8px}.welcome-feature{border-radius:10px;gap:10px;padding:10px 12px}.welcome-feature:hover{transform:none}.feature-icon{border-radius:8px;height:32px;width:32px}.feature-icon svg{height:16px;width:16px}.feature-text h3{font-size:.75rem;margin-bottom:2px}.feature-text p{font-size:.7rem;line-height:1.4}.welcome-modal-footer{padding:14px 16px 20px}.welcome-city-select{margin-bottom:14px}.welcome-city-select label{font-size:.7rem;margin-bottom:6px}.welcome-city-select select{border-radius:8px;font-size:.8rem;padding:10px 12px}.welcome-start-btn{border-radius:8px;font-size:.8rem;justify-content:center;padding:12px 20px;width:100%}.welcome-start-btn svg{height:16px;width:16px}}
/*# sourceMappingURL=main.58a0a4ee.css.map*/