@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.8e0177b5.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.b97b3418.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.853070df.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist","Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.c1fdd6c2.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.799d8ef8.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.dbea232f.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono","Geist Mono Fallback"}
@keyframes pulse{0%,to{box-shadow:0 4px 8px rgba(0,0,0,.15)}50%{box-shadow:0 4px 8px rgba(0,0,0,.15),0 0 0 8px rgba(34,197,94,.2)}}body{background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif}.main{background-color:#f9fafb;min-height:100vh;padding:1rem}@media (min-width:768px){.main{padding:1.5rem}}@media (min-width:1024px){.main{padding:2rem}}.container{max-width:28rem;margin:0 auto}@media (min-width:768px){.container{max-width:48rem}}@media (min-width:1024px){.container{max-width:64rem}}@media (min-width:1280px){.container{max-width:80rem}}.container-wide{max-width:64rem;margin:0 auto}@media (min-width:1024px){.container-wide{max-width:80rem}}@media (min-width:1280px){.container-wide{max-width:96rem}}.header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}@media (max-width:640px){.header{flex-direction:column;align-items:stretch;gap:1.5rem}}.header-left{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}@media (min-width:641px){.header-left{flex-direction:row;align-items:center;gap:1rem}}.header-right{align-items:flex-start;display:flex}@media (max-width:640px){.header-right{justify-content:center}}@media (min-width:641px){.header-right{align-items:center}}.header-right .btn-primary,.header-right .btn-secondary,.header-right .btn-outline,.header-right .btn-success{white-space:nowrap;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.875rem;display:inline-flex;width:auto!important;min-width:100px!important;height:40px!important}@media (max-width:640px){.header-right .btn-primary,.header-right .btn-secondary,.header-right .btn-outline,.header-right .btn-success{padding:.4375rem .875rem;font-size:.8125rem;min-width:90px!important;height:36px!important}}@media (min-width:768px){.header-right .btn-primary,.header-right .btn-secondary,.header-right .btn-outline,.header-right .btn-success{min-width:110px;height:40px}}.nav-buttons{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}@media (max-width:640px){.nav-buttons{justify-content:center;gap:.375rem;width:100%}}@media (min-width:768px){.nav-buttons{gap:.75rem}}@media (min-width:1024px){.nav-buttons{gap:1rem}}.nav-buttons .btn-primary,.nav-buttons .btn-secondary,.nav-buttons .btn-outline,.nav-buttons .btn-success{white-space:nowrap;justify-content:center;align-items:center;min-width:100px;height:40px;padding:.5rem 1rem;font-size:.875rem;display:inline-flex}@media (max-width:640px){.nav-buttons .btn-primary,.nav-buttons .btn-secondary,.nav-buttons .btn-outline,.nav-buttons .btn-success{min-width:90px;height:36px;padding:.4375rem .875rem;font-size:.8125rem}}@media (min-width:768px){.nav-buttons .btn-primary,.nav-buttons .btn-secondary,.nav-buttons .btn-outline,.nav-buttons .btn-success{min-width:110px;height:40px}}.back-link{color:#3b82f6;white-space:nowrap;background-color:rgba(59,130,246,.1);border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex}.back-link:hover{color:#2563eb;background-color:rgba(59,130,246,.15);transform:translateY(-1px)}.back-link:active{transform:translateY(0)}.title{color:#111827;margin-bottom:1.5rem;font-size:1.5rem;font-weight:700}@media (min-width:768px){.title{font-size:2rem}}@media (min-width:1024px){.title{font-size:2.5rem}}.section{background-color:#fff;border-radius:.5rem;margin-bottom:1.5rem;padding:1rem;box-shadow:0 1px 2px rgba(0,0,0,.05)}.recommendations-grid{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (min-width:1024px){.recommendations-grid{grid-template-columns:repeat(3,1fr)}}.recommendations-grid .section{margin-bottom:0}.section-title{color:#1f2937;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:1.125rem;font-weight:600;display:flex}@media (min-width:768px){.section-title{font-size:1.5rem}}@media (min-width:1024px){.section-title{font-size:1.75rem}}.section-title .section-icon{font-size:1.25rem}@media (min-width:768px){.section-title .section-icon{font-size:1.5rem}}@media (min-width:1024px){.section-title .section-icon{font-size:1.75rem}}.section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.section-header .section-title{margin-bottom:0}.section-header .section-subtitle{color:#4b5563;margin-top:.25rem;margin-bottom:0;font-size:.875rem;font-weight:400}.section-header .section-meta{align-items:center;gap:.5rem;display:flex}.section-header .section-meta .product-count{color:#6b7280;background-color:#f3f4f6;border-radius:1rem;padding:.25rem .75rem;font-size:.875rem}.section-header .section-meta .user-count{color:#16a34a;background-color:rgba(16,185,129,.1);border-radius:1rem;padding:.25rem .75rem;font-size:.875rem}.subtitle{color:#4b5563;margin-bottom:0;font-size:1rem}@media (min-width:768px){.subtitle{font-size:1.125rem}}.loading-container .loading-text{color:#6b7280;font-size:.875rem}.error-container{text-align:center;padding:2rem 1rem}.error-container .error-text{color:#ef4444;margin-bottom:1rem;font-size:.875rem}.empty-state{text-align:center;padding:2rem 1rem}.empty-state .empty-icon{opacity:.5;margin-bottom:1rem;font-size:3rem}.empty-state .empty-text{color:#374151;margin-bottom:.5rem;font-size:1.125rem;font-weight:600}.empty-state .empty-description{color:#4b5563;max-width:24rem;margin-bottom:1.5rem;margin-left:auto;margin-right:auto;font-size:.875rem}.empty-state .empty-actions{flex-direction:column;align-items:center;gap:.75rem;display:flex}@media (min-width:480px){.empty-state .empty-actions{flex-direction:row;justify-content:center}}.empty-state .empty-actions .empty-actions-row{flex-direction:column;align-items:center;gap:.75rem;display:flex}@media (min-width:480px){.empty-state .empty-actions .empty-actions-row{flex-direction:row;justify-content:center}}.empty-state .empty-actions .empty-actions-suggestion{border-top:1px solid #e5e7eb;max-width:24rem;margin-top:1.5rem;margin-left:auto;margin-right:auto;padding-top:1.5rem}.empty-state .empty-actions .empty-actions-suggestion .suggestion-text{color:#374151;text-align:left;margin-bottom:.75rem;font-size:.875rem;font-weight:600}.empty-state .empty-actions .empty-actions-suggestion .suggestion-list{text-align:left;margin:0;padding:0;list-style:none}.empty-state .empty-actions .empty-actions-suggestion .suggestion-list li{color:#4b5563;margin-bottom:.5rem;padding-left:1.5rem;font-size:.875rem;position:relative}.empty-state .empty-actions .empty-actions-suggestion .suggestion-list li:before{content:"•";color:#3b82f6;font-weight:700;position:absolute;left:0}.empty-state .empty-actions .empty-actions-suggestion .suggestion-list li:last-child{margin-bottom:0}.message{border-radius:.5rem;margin-bottom:1rem;padding:.75rem;font-size:.875rem}.form .form-group{margin-bottom:1rem}.form .form-label{color:#374151;margin-bottom:.25rem;font-size:.875rem;font-weight:500;display:block}.form .form-input{border:1px solid #d1d5db;border-radius:.5rem;width:100%;padding:.5rem .75rem;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.form .form-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.form .form-textarea{resize:vertical;border:1px solid #d1d5db;border-radius:.5rem;width:100%;min-height:6rem;padding:.5rem .75rem;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.form .form-textarea:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.form .form-select{border:1px solid #d1d5db;border-radius:.5rem;width:100%;padding:.5rem .75rem;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.form .form-select:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.form .form-help{color:#6b7280;margin-top:.25rem;font-size:.75rem;display:block}.form-container{background-color:#fff;border-radius:1rem;margin-bottom:2rem;padding:2rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.form-header{text-align:center;margin-bottom:2rem}.form-header .form-icon{margin-bottom:1rem;font-size:3rem}.form-header .form-title{color:#111827;margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.form-header .form-subtitle{color:#4b5563;font-size:1rem;line-height:1.5}.input-container{width:100%;position:relative}.input-container .form-input{box-sizing:border-box;width:100%;padding-right:3rem}.input-container .input-icon{color:#9ca3af;pointer-events:none;font-size:1.25rem;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.form-help{background-color:#f9fafb;border-left:3px solid #3b82f6;border-radius:.5rem;align-items:flex-start;gap:.5rem;margin-top:.75rem;padding:.75rem;display:flex}.form-help .help-icon{flex-shrink:0;font-size:1rem}.form-help .help-content{color:#4b5563;font-size:.875rem;line-height:1.4}.form-actions{text-align:center;margin-top:2rem}.supported-retailers{border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:2rem}.supported-retailers h4{color:#374151;text-align:center;margin-bottom:1rem;font-size:1rem;font-weight:600}.supported-retailers .retailer-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;display:grid}.supported-retailers .retailer-item{text-align:center;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;display:flex}.supported-retailers .retailer-item.coming-soon{opacity:.6}.supported-retailers .retailer-item.coming-soon .retailer-status{color:#6b7280}.supported-retailers .retailer-item .retailer-icon{margin-bottom:.5rem;font-size:2rem}.supported-retailers .retailer-item .retailer-name{color:#374151;font-size:.875rem;font-weight:600}.supported-retailers .retailer-item .retailer-status{color:#16a34a;font-size:.75rem;font-weight:500}.success-container{text-align:center;background-color:#fff;border-radius:1rem;padding:2rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.success-header{margin-bottom:2rem}.success-header .success-icon{margin-bottom:1rem;font-size:4rem}.success-header .success-title{color:#111827;margin-bottom:.5rem;font-size:1.75rem;font-weight:700}.success-header .success-subtitle{color:#4b5563;font-size:1.125rem;line-height:1.5}.success-container .product-card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;min-height:auto;margin-top:1.5rem;padding:1.5rem;display:block}.success-container .product-card:hover{box-shadow:none}.success-container .product-info{justify-content:center;align-items:center;margin-bottom:1.5rem;display:flex}.success-container .product-info .product-details{text-align:center}.success-container .product-info .product-details .product-name{color:#111827;margin-bottom:1rem;font-size:1.5rem;font-weight:700;line-height:1.3}.success-container .product-info .product-details .product-meta{flex-direction:column;align-items:center;gap:1rem;display:flex}.success-container .product-info .product-details .product-meta .product-name-price{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.success-container .product-info .product-details .product-meta .product-name-price .product-name{color:#111827;text-align:center;margin:0;font-size:1.5rem;font-weight:700;line-height:1.3}.success-container .product-info .product-details .product-meta .product-name-price .product-card-price-container{flex-shrink:0;align-items:baseline;gap:.75rem;display:flex}.success-container .product-info .product-details .product-meta .product-name-price .product-card-price{color:#3b82f6;font-size:2rem;font-weight:700}@media (min-width:768px){.success-container .product-info .product-details .product-meta .product-name-price .product-card-price{font-size:2.5rem}}@media (min-width:1024px){.success-container .product-info .product-details .product-meta .product-name-price .product-card-price{font-size:3rem}}.success-container .product-info .product-details .product-meta .recommendation-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:12px;justify-content:center;align-items:center;gap:8px;padding:16px 24px;font-size:16px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 8px rgba(0,0,0,.15)}.success-container .product-info .product-details .product-meta .recommendation-badge:hover{transform:translateY(-2px);box-shadow:0 6px 12px rgba(0,0,0,.2)}.success-container .product-info .product-details .product-meta .recommendation-badge.buy-now{background:#22c55e;animation:2s infinite pulse}.success-container .product-info .product-details .product-meta .recommendation-badge.consider{background:#f59e0b}.success-container .product-info .product-details .product-meta .recommendation-badge.wait{background:#ef4444}.success-container .product-info .product-details .product-meta .recommendation-badge .recommendation-icon{font-size:20px}.success-container .product-info .product-details .product-meta .recommendation-badge .recommendation-text{font-size:14px}.success-container .product-info .product-details .product-date{color:#4b5563;font-size:.875rem}.success-container .product-actions{flex-direction:column;align-items:center;gap:1rem;display:flex}.success-container .product-actions .status-badge{border-radius:.5rem;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}.success-container .product-actions .status-badge.success{color:#16a34a;background-color:rgba(22,163,74,.1);border:1px solid rgba(22,163,74,.2)}.success-container .product-actions .action-buttons{justify-content:center;gap:.75rem;margin-top:1rem;display:flex}.success-container .product-actions .action-buttons .btn-secondary,.success-container .product-actions .action-buttons .btn-outline{cursor:pointer;white-space:nowrap;border:none;border-radius:.75rem;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.success-container .product-actions .action-buttons .btn-secondary:hover,.success-container .product-actions .action-buttons .btn-outline:hover{text-decoration:none;transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.product-preview-card{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem}.product-preview-header{align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.product-preview-header .product-preview-supplier{flex-shrink:0}.product-preview-header .product-preview-info{flex:1}.product-preview-header .product-preview-info .product-preview-title{color:#111827;margin-bottom:.5rem;font-size:1.25rem;font-weight:600;line-height:1.3}.product-preview-header .product-preview-info .product-preview-meta{color:#4b5563;flex-wrap:wrap;gap:1rem;font-size:.875rem;display:flex}.product-preview-header .product-preview-info .product-preview-meta .product-preview-id{background-color:#e5e7eb;border-radius:.25rem;padding:.25rem .5rem;font-family:monospace}.product-preview-actions{flex-direction:column;gap:.75rem;display:flex}@media (min-width:640px){.product-preview-actions{flex-direction:row;justify-content:center}}.message{border-radius:.5rem;margin-top:1.5rem;padding:1rem}.message.success{color:#10b981;background-color:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.2)}.message.error{color:#ef4444;background-color:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2)}.message .message-content{align-items:center;gap:.5rem;display:flex}.message .message-content .message-icon{flex-shrink:0;font-size:1.25rem}.message .message-content .message-text{font-weight:500}.btn-large{padding:1rem 2rem;font-size:1rem}.btn-large i{margin-right:.5rem}.btn-primary{text-align:center;cursor:pointer;white-space:nowrap;color:#fff;background-color:#3b82f6;border:none;border-radius:.75rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.btn-primary:hover{text-decoration:none}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-primary:hover:not(:disabled){background-color:#2563eb;transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.btn-primary.btn-selected{background-color:#16a34a}.btn-primary.btn-selected:hover:not(:disabled){background-color:#15803d}.btn-success{text-align:center;cursor:pointer;white-space:nowrap;color:#fff;background-color:#16a34a;border:none;border-radius:.75rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.btn-success:hover{text-decoration:none}.btn-success:disabled{opacity:.5;cursor:not-allowed}.btn-success:hover:not(:disabled){background-color:#15803d;transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.btn-success:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.btn-danger{text-align:center;cursor:pointer;white-space:nowrap;color:#fff;background-color:#dc2626;border:none;border-radius:.75rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.btn-danger:hover{text-decoration:none}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.btn-danger:hover:not(:disabled){background-color:#b91c1c;transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.btn-danger:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.btn-secondary{text-align:center;cursor:pointer;white-space:nowrap;color:#fff;background-color:#4b5563;border:none;border-radius:.75rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.btn-secondary:hover{text-decoration:none}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary:hover:not(:disabled){background-color:#374151;transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.btn-secondary:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.btn-outline{text-align:center;cursor:pointer;white-space:nowrap;color:#3b82f6;box-shadow:none;background-color:transparent;border:2px solid #3b82f6;border-radius:.75rem;justify-content:center;align-items:center;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn-outline:hover{text-decoration:none}.btn-outline:disabled{opacity:.5;cursor:not-allowed}.btn-outline:hover:not(:disabled){color:#fff;background-color:#3b82f6;transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.btn-outline:active:not(:disabled){transform:translateY(0);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.products-list .product-item{margin-bottom:.75rem}.products-list .product-item:last-child{margin-bottom:0}.products-grid{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (min-width:768px){.products-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.products-grid{grid-template-columns:repeat(3,1fr)}}.product-grid-item{flex-direction:column;gap:.75rem;height:100%;min-height:200px;display:flex}.product-actions{flex-shrink:0;justify-content:center;min-height:48px;display:flex}.product-actions .btn-primary{justify-content:center;width:100%;height:48px}.product-actions .btn-primary.btn-selected{color:#fff;background-color:#16a34a}.product-actions .btn-primary.btn-selected:hover:not(:disabled){background-color:#15803d}.actions .action-item{margin-bottom:.75rem}.actions .action-item:last-child{margin-bottom:0}@media (min-width:480px){.actions-grid{grid-template-columns:repeat(2,1fr)}}.actions-grid .action-item{margin-bottom:0}.icon-search:before{content:"🔍";margin-right:.5rem;font-size:1rem;font-style:normal}.icon-profile:before{content:"👤";margin-right:.5rem;font-size:1rem;font-style:normal}.icon-admin:before{content:"⚙️";margin-right:.5rem;font-size:1rem;font-style:normal}.icon-plus:before{content:"➕";margin-right:.5rem;font-size:1rem;font-style:normal}.icon-star:before{content:"⭐";margin-right:.5rem;font-size:1rem;font-style:normal}.icon-star-outline:before{content:"☆";margin-right:.5rem;font-size:1rem;font-style:normal}.product-info .product-details{justify-content:space-between;align-items:flex-start;display:flex}@media (min-width:768px){.product-info .product-details{gap:2rem}}@media (min-width:1024px){.product-info .product-details{gap:3rem}}.product-info .price-section{flex:1}.product-info .price-section .price-primary{color:#3b82f6;margin-bottom:.5rem;font-size:2rem;font-weight:700}@media (min-width:768px){.product-info .price-section .price-primary{font-size:2.5rem}}@media (min-width:1024px){.product-info .price-section .price-primary{font-size:3rem}}.product-info .price-section .price-meta{color:#4b5563;font-size:.875rem}.product-info .price-section .price-meta .price-days{color:#1f2937;margin-top:.25rem;font-size:1.125rem;font-weight:600;display:block}@media (min-width:768px){.product-info .price-section .price-meta .price-days{font-size:1.25rem}}.product-info .price-section .price-meta .price-average-days{color:#4b5563;margin-top:.25rem;font-size:.875rem;font-weight:500;display:block}@media (min-width:768px){.product-info .price-section .price-meta .price-average-days{font-size:1rem}}.product-info .price-section .no-price{color:#6b7280;font-size:1.25rem;font-style:italic}.product-info .supplier-info{text-align:right;color:#4b5563;font-size:.875rem}.product-info .supplier-info .supplier-logo{justify-content:flex-end;align-items:center;display:flex}.product-info .supplier-info .supplier-logo img{object-fit:contain;border-radius:8px;width:80px;height:80px}.product-info .supplier-info .supplier-logo .supplier-fallback{color:#1f2937;font-size:.75rem;font-weight:600}.product-info .supplier-info .supplier-logo .supplier-fallback.fallback-hidden{display:none}.product-info .supplier-info .supplier-name{color:#1f2937;margin-bottom:.25rem;font-weight:600}.product-info .supplier-info .supplier-id{margin-bottom:.25rem}.product-info .supplier-info .supplier-link{color:#fff;background-color:#3b82f6;border-radius:.5rem;margin-top:.75rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-block}.product-info .supplier-info .supplier-link:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.product-info .supplier-info .supplier-link:active{transform:translateY(0)}.product-info .added-date{color:#6b7280}.product-info .product-meta{color:#6b7280;justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.price-history .price-item{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;padding-bottom:.75rem;display:flex}.price-history .price-item:last-child{border-bottom:none}.price-history .price-info .price-amount{color:#111827;font-weight:500}.price-history .price-info .price-supplier,.price-history .price-date{color:#6b7280;font-size:.875rem}.price-chart-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-top:1rem;padding:24px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.1)}.price-chart .chart-stats{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding:1rem;display:flex}@media (max-width:640px){.price-chart .chart-stats{flex-direction:column;align-items:flex-start;gap:.75rem}}.price-chart .stat-item{align-items:center;gap:.5rem;font-size:.875rem;display:flex}@media (min-width:768px){.price-chart .stat-item{font-size:1rem}}.price-chart .stat-emoji{font-size:1.25rem}.price-chart .stat-label{color:#4b5563;font-weight:500}.price-chart .stat-value{color:#111827;font-weight:600}.price-chart .chart-container{flex-direction:column;width:100%;display:flex;overflow-x:auto}.price-chart .chart-bars{justify-content:center;align-items:flex-end;gap:.5rem;width:100%;height:25vh;min-height:200px;max-height:400px;padding:1rem 0;display:flex}@media (min-width:768px){.price-chart .chart-bars{gap:.75rem;height:30vh}}@media (min-width:1024px){.price-chart .chart-bars{gap:1rem;height:35vh}}.price-chart .chart-column{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;min-width:50px;max-width:80px;height:100%;display:flex}@media (min-width:768px){.price-chart .chart-column{min-width:60px;max-width:100px}}@media (min-width:1024px){.price-chart .chart-column{min-width:70px;max-width:120px}}.price-chart .price-label{color:#1f2937;text-align:center;margin-bottom:.5rem;font-size:.75rem;font-weight:600}.price-chart .price-bar{background-color:#f97316;border-radius:.25rem .25rem 0 0;width:100%;min-height:40px;transition:height .3s}.price-chart .date-label{color:#374151;text-align:center;margin-top:.5rem;font-size:.75rem;font-weight:500}.price-chart .days-label{color:#4b5563;text-align:center;margin-top:.25rem;font-size:.625rem}.stats{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.stats .stats-title{color:#1f2937;font-size:1.125rem;font-weight:600}.stats .stats-count{color:#6b7280;font-size:.875rem}.loading-container{text-align:center;padding:2rem 0}.loading-container .loading-text{color:#6b7280}.loading-container .loading-spinner{border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;width:3rem;height:3rem;margin:0 auto 1rem;animation:1s linear infinite spin}.loading-container .loading-spinner.success{border-top-color:#16a34a}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-container{background-color:rgba(239,68,68,.05);border:1px solid rgba(239,68,68,.2);border-radius:.75rem;margin-bottom:1.5rem;padding:1.5rem}.error-container .error-content{align-items:flex-start;gap:1rem;display:flex}.error-container .error-content .error-icon{flex-shrink:0;margin-top:.125rem;font-size:1.5rem}.error-container .error-content .error-details{text-align:left;flex:1}.error-container .error-content .error-details .error-title{color:#ef4444;margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.error-container .error-content .error-details .error-message{color:#374151;margin:0;font-size:.875rem;line-height:1.4}.error-container .error-content .error-dismiss{color:#9ca3af;cursor:pointer;background:0 0;border:none;border-radius:.25rem;flex-shrink:0;padding:.25rem;font-size:1.25rem;transition:all .2s}.error-container .error-content .error-dismiss:hover{color:#4b5563;background-color:rgba(156,163,175,.1)}.error-container .error-content .error-dismiss:focus{outline:none;box-shadow:0 0 0 2px rgba(239,68,68,.2)}.product-card-link{color:inherit;text-decoration:none;display:block}.product-card-link:hover{text-decoration:none}.product-card{background-color:#fff;border:1px solid #e5e7eb;border-radius:.5rem;flex:1;justify-content:space-between;align-items:flex-start;gap:1rem;min-height:140px;padding:1rem;transition:box-shadow .2s;display:flex}.product-card:hover{box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.product-preview .product-card{flex-direction:column;align-items:stretch;gap:1.5rem}.product-preview .product-card .product-card-content{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.product-preview .product-card .product-actions{flex-direction:column;gap:.75rem;display:flex}@media (min-width:480px){.product-preview .product-card .product-actions{flex-direction:row;justify-content:center}}.product-preview .product-card .product-actions button,.product-preview .product-card .product-actions a{flex:1;min-width:0}@media (min-width:480px){.product-preview .product-card .product-actions button,.product-preview .product-card .product-actions a{flex:none}}.product-card-content{flex-direction:column;flex:1;justify-content:flex-start;gap:.5rem;min-width:0;display:flex;overflow:hidden}.product-card-title{color:#111827;text-overflow:ellipsis;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;flex-shrink:0;min-height:2.8em;max-height:2.8em;margin:0;font-size:1.125rem;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.product-card-price-container{flex-shrink:0;align-items:baseline;gap:.75rem;display:flex}.product-card-price{color:#3b82f6;font-size:2rem;font-weight:700}@media (min-width:768px){.product-card-price{font-size:2.5rem}}@media (min-width:1024px){.product-card-price{font-size:3rem}}.product-card-price-range{color:#6b7280;align-items:center;gap:.25rem;font-size:.875rem;font-weight:500;display:flex}.product-card-price-range .price-range-min{color:#10b981}.product-card-price-range .price-range-separator{color:#9ca3af}.product-card-price-range .price-range-max{color:#ef4444}.product-card-no-price{color:#6b7280;margin:0;font-size:1rem;font-style:italic}.product-card-supplier{flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.product-card-supplier .supplier-logo img{object-fit:contain;border-radius:8px;width:60px;height:60px}.product-card-supplier .supplier-logo .supplier-fallback{color:#374151;text-align:center;background-color:#f3f4f6;border-radius:8px;justify-content:center;align-items:center;min-width:60px;min-height:60px;padding:.5rem;font-size:.75rem;font-weight:600;display:flex}.product-card-supplier .supplier-logo .supplier-fallback.fallback-hidden{display:none}.product-card-days{color:#4b5563;flex-shrink:0;font-size:.875rem;font-weight:500}.search-container{background-color:#fff;border-radius:1rem;margin-bottom:2rem;padding:1.5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.search-container .input-container{margin-bottom:0;position:relative}.search-container .input-container .form-input{box-sizing:border-box;border:1px solid #d1d5db;border-radius:.5rem;width:100%;padding:.75rem 1rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}.search-container .input-container .form-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1)}.search-container .input-container .input-icon{color:#9ca3af;pointer-events:none;font-size:1.25rem;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.search-container .input-container .input-icon .icon-search:before{content:"🔍";margin-right:0;font-size:1rem;font-style:normal}.search-container .search-meta{border-top:1px solid #e5e7eb;justify-content:space-between;align-items:center;margin-top:1rem;padding-top:1rem;display:flex}.search-container .search-meta .search-results{color:#4b5563;font-size:.875rem;font-weight:500}.btn-small{white-space:nowrap;border-radius:.5rem;justify-content:center;align-items:center;min-width:100px;height:40px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}@media (max-width:640px){.btn-small{min-width:90px;height:36px;padding:.4375rem .875rem;font-size:.8125rem}}@media (min-width:768px){.btn-small{min-width:110px;height:40px}}.auth-options{flex-direction:column;gap:1rem;margin:2rem 0;display:flex}.auth-button{cursor:pointer;border:none;border-radius:.75rem;justify-content:center;align-items:center;gap:.75rem;width:100%;padding:1rem 1.5rem;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.auth-button:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.auth-button:active{transform:translateY(0)}.auth-button.google-button{color:#fff;background-color:#4285f4}.auth-button.google-button:hover{background-color:#3367d6}.auth-button.apple-button{color:#fff;background-color:#000}.auth-button.apple-button:hover{background-color:#333}.auth-icon{flex-shrink:0;width:20px;height:20px}.auth-footer{text-align:center;border-top:1px solid #e5e7eb;margin-top:2rem;padding-top:2rem}.auth-disclaimer{color:#4b5563;margin:0;font-size:.875rem;line-height:1.5}.auth-link{color:#3b82f6;font-weight:500;text-decoration:none;transition:color .2s}.auth-link:hover{color:#2563eb;text-decoration:underline}.profile-info{flex-direction:column;gap:1.5rem;display:flex}@media (min-width:768px){.profile-info{flex-direction:row;align-items:flex-start;gap:2rem}}.profile-avatar{justify-content:center;display:flex}@media (min-width:768px){.profile-avatar{justify-content:flex-start}}.avatar-image{object-fit:cover;border:3px solid #e5e7eb;border-radius:50%;width:5rem;height:5rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.avatar-placeholder{color:#fff;background:linear-gradient(135deg,#3b82f6,#2563eb);border:3px solid #e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:5rem;height:5rem;font-size:1.5rem;font-weight:700;display:flex;box-shadow:0 4px 6px -1px rgba(0,0,0,.1)}.profile-details{flex-direction:column;flex:1;gap:1rem;display:flex}.detail-row{flex-direction:column;gap:.25rem;display:flex}@media (min-width:768px){.detail-row{border-bottom:1px solid #f3f4f6;flex-direction:row;justify-content:space-between;align-items:center;padding:.75rem 0}.detail-row:last-child{border-bottom:none}}.detail-label{color:#4b5563;min-width:8rem;font-size:.875rem;font-weight:500}.detail-value{color:#111827;font-size:.875rem;font-weight:500}.actions-grid{grid-template-columns:1fr;gap:1rem;display:grid}@media (min-width:640px){.actions-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1024px){.actions-grid{grid-template-columns:repeat(4,1fr)}}.action-icon{margin-right:.5rem;font-size:1rem}.admin-error-container .error-content{align-items:flex-start;gap:1rem;display:flex}.admin-error-container .error-content .error-icon{flex-shrink:0;font-size:1.5rem}.admin-error-container .error-content .error-details{flex:1}.admin-error-container .error-content .error-details .error-title{color:#ef4444;margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.admin-error-container .error-content .error-details .error-message{color:#374151;margin:0;font-size:1rem}.admin-form-container{background-color:#fff;border-radius:1rem;margin-bottom:2rem;padding:2rem;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06)}.admin-form-header{text-align:center;margin-bottom:2rem}.admin-form-header .form-icon{margin-bottom:1rem;font-size:3rem}.admin-form-header .form-title{color:#111827;margin-bottom:.5rem;font-size:1.5rem;font-weight:700}.admin-form-header .form-subtitle{color:#4b5563;font-size:1rem;line-height:1.5}.admin-section{background-color:#fff;border-radius:.5rem;margin-bottom:1.5rem;padding:1rem;box-shadow:0 1px 2px rgba(0,0,0,.05)}.admin-section .section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.admin-section .section-header .section-title{color:#1f2937;margin:0;font-size:1.125rem;font-weight:600}.admin-section .form-group{margin-bottom:1rem}.admin-section .form-group p{color:#374151;margin-bottom:1.5rem;font-size:1rem;line-height:1.5}.admin-section .form-actions{text-align:center;margin-top:2rem}.admin-profile-info{flex-direction:column;gap:1.5rem;display:flex}.admin-profile-info .detail-row{flex-direction:column;gap:.25rem;display:flex}@media (min-width:768px){.admin-profile-info .detail-row{border-bottom:1px solid #f3f4f6;flex-direction:row;justify-content:space-between;align-items:center;padding:.75rem 0}.admin-profile-info .detail-row:last-child{border-bottom:none}}.admin-profile-info .detail-row .detail-label{color:#4b5563;min-width:8rem;font-size:.875rem;font-weight:500}.admin-profile-info .detail-row .detail-value{color:#111827;font-size:.875rem;font-weight:500}.admin-loading-spinner{width:1rem;height:1rem;margin-right:.5rem}
:root{--background:#fff;--foreground:#171717}@theme inline{--color-background: var(--background); --color-foreground: var(--foreground); --font-sans: var(--font-geist-sans); --font-mono: var(--font-geist-mono);}@media (prefers-color-scheme:dark){:root{--background:#0a0a0a;--foreground:#ededed}}body{background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif}
