:root{--bg: #f8fafc;--surface: #ffffff;--border: #e2e8f0;--text: #0f172a;--muted: #64748b;--accent: #2563eb;--accent-strong: #1d4ed8;--accent-soft: #eff6ff;--green: #059669;--green-strong: #047857;--green-soft: #ecfdf5;--green-border: #a7f3d0;--danger: #b91c1c;--danger-soft: #fef2f2;--radius: 16px;--radius-sm: 10px;--shadow-sm: 0 1px 2px rgba(15, 23, 42, .06);--shadow-md: 0 4px 14px rgba(15, 23, 42, .07)}*{margin:0;padding:0;box-sizing:border-box;font-family:Inter,system-ui,-apple-system,Arial,sans-serif}body{background:var(--bg);color:var(--text);line-height:1.5}:focus-visible{outline:3px solid rgba(37,99,235,.45);outline-offset:2px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{max-width:1080px;margin:0 auto;padding:72px 20px 40px}.hero{text-align:center}.title{font-size:42px;font-weight:800;letter-spacing:-.02em;margin-bottom:8px}.title-mark{font-size:34px}.subtitle{font-size:16px;color:var(--muted);margin-bottom:32px}.search-box{display:flex;justify-content:center;gap:12px;margin-bottom:18px}.search-field{position:relative;flex:1;max-width:560px}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--muted);display:flex}.search-field input{width:100%;padding:15px 18px 15px 46px;border-radius:12px;border:1px solid var(--border);background:var(--surface);font-size:16px;color:var(--text);transition:border-color .15s,box-shadow .15s}.search-field input::placeholder{color:#94a3b8}.search-field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px #2563eb1f}.search-spinner{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-weight:700;color:var(--accent);animation:dc-pulse 1s ease-in-out infinite}@keyframes dc-pulse{0%,to{opacity:1}50%{opacity:.35}}.quick-chips{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-bottom:8px}.quick-chips-label{font-size:13px;color:var(--muted)}.chip{padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:#334155;font-size:13px;font-weight:500;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.chip:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.results-summary{display:inline-flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:4px;padding:10px 16px;border-radius:12px;background:var(--accent-soft);border:1px solid #dbeafe;font-size:14px;color:#334155}.summary-category{padding:3px 10px;border-radius:999px;background:var(--surface);border:1px solid #dbeafe;color:var(--accent-strong);font-weight:600;font-size:13px}.summary-text{color:#475569}.summary-query{font-weight:700;color:var(--text)}.filter-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;margin:28px 0 26px;padding:12px 14px;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-sm)}.store-filters{display:flex;flex-wrap:wrap;gap:8px}.store-btn{padding:8px 15px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:#475569;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,color .15s,border-color .15s}.store-btn:hover{border-color:var(--accent);color:var(--accent)}.store-btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.sort-control{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#475569;font-weight:600}.sort-label{white-space:nowrap}.sort-control select{padding:8px 12px;border-radius:10px;border:1px solid var(--border);font-size:13px;font-weight:500;color:var(--text);background:var(--surface);cursor:pointer}.results{margin-top:24px;display:flex;flex-direction:column;gap:22px}.card{display:flex;align-items:stretch;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-md);overflow:hidden}.card-media{flex:0 0 250px;display:flex;align-items:center;justify-content:center;padding:18px;background:#f1f5f9}.card-image{max-width:100%;max-height:250px;object-fit:contain}.card-image-placeholder{color:#94a3b8;font-size:14px;text-align:center}.card-body{flex:1;padding:20px 22px 16px;min-width:0}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.category-badge{display:inline-block;margin-bottom:8px;padding:3px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong);font-size:12px;font-weight:600}.card-title{font-size:20px;font-weight:700;letter-spacing:-.01em;line-height:1.35}.best-headline{flex-shrink:0;max-width:240px;text-align:right;padding:10px 14px;border-radius:12px;background:var(--green-soft);border:1px solid var(--green-border);border-left:4px solid var(--green)}.best-headline-label{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--green-strong)}.best-headline-price{display:block;font-size:22px;font-weight:800;color:var(--text)}.best-headline-store{font-size:13px;color:var(--muted)}.offers{border-top:1px solid #f1f5f9}.offer-row{display:grid;grid-template-columns:40px minmax(130px,1fr) auto auto;grid-template-areas:"avatar info price actions";align-items:center;gap:14px;padding:14px 8px;border-top:1px solid #f1f5f9}.offers>.offer-row:first-child{border-top:none}.store-avatar{grid-area:avatar;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;letter-spacing:.03em}.offer-info{grid-area:info;display:flex;flex-direction:column;gap:2px;min-width:0}.platform-name{font-weight:600;font-size:15px}.availability{font-size:12.5px;font-weight:500}.availability-in{color:var(--green-strong)}.availability-out{color:var(--danger)}.availability-text{color:var(--muted)}.offer-price{grid-area:price;display:flex;flex-direction:column;align-items:flex-end;gap:1px}.offer-price .price{font-size:18px;font-weight:700;color:var(--text);white-space:nowrap}.offer-price .mrp{font-size:13px;color:var(--muted);text-decoration:line-through;white-space:nowrap}.offer-actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.offer-row-best{background:var(--green-soft);border-radius:12px;border:1px solid var(--green-border);padding-left:14px;padding-right:14px;margin-left:-6px;margin-right:-6px}.best-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:var(--green);color:#fff;font-size:12px;font-weight:700}.save-badge{padding:4px 10px;border-radius:999px;background:var(--green-soft);border:1px solid var(--green-border);color:var(--green-strong);font-size:12px;font-weight:700;white-space:nowrap}.no-valid-offers{padding:14px;border-radius:12px;background:var(--danger-soft);color:var(--danger);font-size:14px;font-weight:500}.btn{display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;border-radius:10px;border:1px solid transparent;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s,border-color .15s,box-shadow .15s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-strong)}.btn-primary:disabled{background:#93c5fd;cursor:not-allowed}.btn-search{padding:15px 26px;border-radius:12px;font-size:15px}.btn-secondary{background:var(--surface);color:var(--accent-strong);border-color:#bfdbfe}.btn-secondary:hover{background:var(--accent-soft);border-color:var(--accent)}.card-footer{border-top:1px solid #f1f5f9;margin-top:14px;padding:14px 4px 2px;display:flex;gap:10px}.compare-trigger,.history-trigger{flex:1 1 0}.feedback{margin-top:40px;padding:56px 24px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);text-align:center}.feedback-icon{display:flex;justify-content:center;color:#94a3b8;margin-bottom:14px}.feedback[class*=error] .feedback-icon{color:var(--danger)}.feedback-title{font-size:20px;font-weight:700;margin-bottom:8px}.feedback-hint{max-width:460px;margin:0 auto;color:var(--muted);font-size:14.5px;line-height:1.6}.skeleton-card{min-height:220px;pointer-events:none}.skeleton{position:relative;overflow:hidden;background:#e2e8f0;border-radius:8px}.skeleton:after{content:"";position:absolute;inset:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:dc-shimmer 1.4s infinite}@keyframes dc-shimmer{to{transform:translate(100%)}}.skeleton-img{width:210px;height:210px;border-radius:12px;margin:0 auto}.skeleton-line{height:14px;margin-bottom:12px}.skeleton-line.w40{width:40%}.skeleton-line.w60{width:60%}.skeleton-line.w70{width:70%}.skeleton-line.w85{width:85%}.skeleton-line.w90{width:90%}.skeleton-btn{height:40px;width:150px;border-radius:10px;margin-top:6px}.compare-overlay{position:fixed;inset:0;z-index:50;background:#0f172a8c;display:flex;justify-content:center;align-items:flex-start;padding:24px 16px;overflow-y:auto;animation:dc-fade-in .16s ease-out}@keyframes dc-fade-in{0%{opacity:0}to{opacity:1}}.compare-dialog{width:100%;max-width:920px;max-height:90vh;margin-top:3vh;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 24px 60px #0f172a47;overflow-y:auto}.compare-header{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 14px;background:var(--surface);border-bottom:1px solid #f1f5f9}.compare-header-text{min-width:0}.compare-kicker{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--green-strong)}.compare-title{font-size:20px;font-weight:700;letter-spacing:-.01em;line-height:1.35;margin-top:2px}.compare-close{flex-shrink:0;width:38px;height:38px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--muted);font-size:16px;line-height:1;cursor:pointer;transition:color .15s,border-color .15s,background .15s}.compare-close:hover{color:var(--text);border-color:var(--muted);background:var(--accent-soft)}.compare-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px;border-bottom:1px solid #f1f5f9}.compare-count{padding:10px 22px 0;font-size:13px;color:var(--muted)}.compare-rows{padding:6px 22px 18px}.compare-row{display:grid;grid-template-columns:88px minmax(0,1fr) minmax(140px,auto) auto;grid-template-areas:"thumb info price actions" "thumb info meta actions";align-items:center;column-gap:18px;row-gap:6px;padding:16px 6px;border-bottom:1px solid #f1f5f9}.compare-row:last-child{border-bottom:none}.compare-row-best{background:var(--green-soft);border-radius:12px;border:1px solid var(--green-border);padding:16px 14px}.compare-thumb-wrap{grid-area:thumb}.compare-thumb{width:100%;height:88px;object-fit:contain;border-radius:10px;background:#f1f5f9;border:1px solid var(--border)}.compare-thumb-placeholder{display:flex;align-items:center;justify-content:center;color:#94a3b8;font-size:12.5px;text-align:center}.compare-info{grid-area:info;display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}.compare-info .store-avatar{margin-bottom:2px}.compare-offer-title{font-size:13.5px;color:var(--muted);line-height:1.4}.compare-price-block{grid-area:price;display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:0}.compare-price{font-size:20px;font-weight:800;color:var(--text);white-space:nowrap}.compare-meta{grid-area:meta;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:8px}.compare-diff{font-size:12.5px;font-weight:600;color:var(--muted);white-space:nowrap}.compare-actions{grid-area:actions;display:flex;justify-content:flex-end}.btn-compare-view{padding:10px 16px;font-size:13.5px}.history-dialog{max-width:680px}.history-body{padding:18px 22px 22px}.history-current{font-size:14px;color:var(--muted);margin-bottom:14px}.history-current strong{color:var(--green-strong);font-weight:700}.history-state{padding:40px 24px 56px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.history-state p{margin:0}.history-state-title{font-size:20px;font-weight:700;margin:6px 0 2px}.history-state-hint{max-width:460px;color:var(--muted);font-size:14.5px;line-height:1.6}.history-spinner{width:34px;height:34px;border-radius:50%;border:3px solid #e2e8f0;border-top-color:var(--accent);animation:dc-spin .8s linear infinite}@keyframes dc-spin{to{transform:rotate(360deg)}}.history-skeleton{width:100%;max-width:440px;margin-top:8px;display:flex;flex-direction:column;gap:10px}.history-skeleton div{height:12px;border-radius:8px;background:#e2e8f0}.history-skeleton div:nth-child(1){width:90%}.history-skeleton div:nth-child(2){width:70%}.history-skeleton div:nth-child(3){width:55%}.history-summary{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.history-summary li{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-sm)}.history-stat-value{font-size:15px;font-weight:700;color:var(--text)}.history-stat-label{font-size:11.5px;color:var(--muted)}.history-chart{width:100%;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-sm);padding:6px 4px 4px}.history-chart-svg{display:block;width:100%;height:auto}.history-chart-grid{stroke:#eef2f7;stroke-width:1}.history-chart-axis{font-size:11px;fill:#64748b}.history-chart-line{vector-effect:non-scaling-stroke}.history-stores{list-style:none;margin:18px 0 0;padding:0;border:1px solid var(--border);border-radius:12px;overflow:hidden}.history-store-row{display:grid;grid-template-columns:40px minmax(0,1fr) repeat(5,auto) auto;align-items:center;column-gap:16px;padding:12px 14px;border-bottom:1px solid #f1f5f9}.history-store-row:last-child{border-bottom:none}.history-store-row .store-avatar{font-size:11px}.history-store-name{display:flex;flex-direction:column;gap:2px;min-width:0}.history-store-title{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-store-stat{display:flex;flex-direction:column;gap:2px;align-items:flex-end;min-width:0}.history-store-stat .history-stat-value{font-size:13.5px;white-space:nowrap}.history-store-stat .history-stat-label{font-size:10.5px}.history-store-cta{padding:7px 12px;font-size:12.5px}@media(max-width:720px){.history-store-row{grid-template-columns:40px minmax(0,1fr);row-gap:10px}.history-store-name,.history-store-stat,.history-store-cta{grid-column:2;justify-self:start}}.footer{margin-top:60px;text-align:center;font-size:13px;color:var(--muted);padding:0 20px 40px}.footer-links{margin-top:8px}.footer a{margin:0 8px;font-size:13px;color:var(--accent);text-decoration:none}.footer a:hover{text-decoration:underline}.page{max-width:700px;margin:0 auto;padding:80px 20px;text-align:left}.page h1{margin-bottom:16px;font-size:28px}.page p{margin-bottom:12px;color:#374151;line-height:1.6}@media(min-width:721px)and (max-width:960px){.card-media{flex-basis:200px}.card-head{flex-direction:column;gap:12px}.best-headline{max-width:100%;text-align:left}.offer-row{grid-template-columns:40px minmax(120px,1fr) auto;grid-template-areas:"avatar info price" "actions actions actions";row-gap:10px}.offer-actions{justify-content:flex-start}.compare-row{grid-template-columns:72px minmax(0,1fr) minmax(120px,auto) auto;column-gap:14px}.compare-thumb{height:72px}}@media(max-width:720px){.container{padding:48px 14px 24px}.title{font-size:32px}.subtitle{margin-bottom:26px;font-size:14px;line-height:1.5;padding:0 6px}.search-box{flex-direction:column;gap:10px;margin-bottom:14px}.search-field{max-width:none}.search-field input{font-size:16px}.btn-search{width:100%}.filter-bar{flex-direction:column;align-items:stretch;gap:12px;margin:22px 0 18px}.store-filters{justify-content:center}.sort-control{justify-content:space-between}.sort-control select{flex:1}.results{gap:16px}.card{flex-direction:column}.card-media{flex:none;padding:14px;min-height:170px}.card-image{max-height:170px}.card-body{padding:16px 16px 14px}.card-head{flex-direction:column;gap:12px;margin-bottom:12px}.best-headline{max-width:100%;text-align:left}.card-title{font-size:18px}.offer-row{grid-template-columns:40px 1fr auto;grid-template-areas:"avatar info price" "actions actions actions";row-gap:10px;padding:12px 4px}.offer-price .price{font-size:17px}.offer-actions{justify-content:stretch}.offer-actions .btn{flex:1;text-align:center}.offer-row-best{margin-left:0;margin-right:0;padding-left:10px;padding-right:10px}.feedback{margin-top:28px;padding:44px 18px}.page{padding:48px 16px}.footer-links{display:flex;flex-direction:column;gap:6px}.footer-links a{margin:0}.compare-overlay{padding:16px 10px;align-items:stretch}.compare-dialog{max-height:94vh;margin-top:0}.compare-header{padding:16px 16px 12px}.compare-title{font-size:17px}.compare-toolbar{flex-direction:column;align-items:stretch;gap:10px;padding:12px 16px}.compare-toolbar .store-filters{justify-content:flex-start}.compare-count{padding:8px 16px 0}.compare-rows{padding:6px 16px 14px}.compare-row{grid-template-columns:56px minmax(0,1fr);grid-template-areas:"thumb info" "price price" "meta meta" "actions actions";align-items:start;column-gap:12px;row-gap:10px;padding:14px 4px}.compare-row-best{padding:14px}.compare-thumb{height:56px}.compare-price-block{align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:4px 8px}.compare-price{font-size:18px}.compare-meta{justify-content:flex-start}.compare-actions{justify-content:stretch}.btn-compare-view{flex:1}}
