.app{min-height:100vh;display:flex;flex-direction:column}.app__content{flex:1}.header{background:var(--color-white);border-bottom:1px solid var(--color-gray-200);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:var(--z-sticky)}.header__content{display:flex;align-items:center;justify-content:space-between;min-height:4rem;gap:var(--space-4)}@media (max-width: 639px){.header__content{min-height:3.5rem}}.header__brand{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0;cursor:pointer;transition:transform .2s ease}.header__brand:hover{transform:translateY(-1px)}.header__logo{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;font-size:var(--text-xl);background:var(--color-primary-light);border-radius:var(--radius-lg)}.header__title{font-size:var(--text-xl);font-weight:600;color:var(--color-gray-900)}@media (max-width: 639px){.header__title{display:none}}@media (min-width: 640px){.header__title{font-size:var(--text-lg)}}.header__nav{display:none;align-items:center;gap:var(--space-2)}@media (min-width: 1024px){.header__nav{display:flex}}.header__actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}@media (max-width: 639px){.header__actions{gap:var(--space-1)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);font-weight:500;border-radius:var(--radius-md);transition:all .2s ease-in-out;cursor:pointer;border:none;font-size:var(--text-sm);line-height:1.25;font-family:inherit}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--color-primary);color:var(--color-white)}.btn--primary:hover:not(:disabled){background:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn--primary:active:not(:disabled){transform:translateY(0)}.btn--secondary{background:var(--color-white);color:var(--color-gray-700);border:1px solid var(--color-gray-300)}.btn--secondary:hover:not(:disabled){background:var(--color-gray-50);border-color:var(--color-gray-400)}.btn--outline{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.btn--outline:hover:not(:disabled){background:var(--color-primary-light)}.btn--ghost{background:transparent;color:var(--color-gray-600)}.btn--ghost:hover:not(:disabled){background:var(--color-gray-100)}.btn--sm{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);gap:var(--space-1)}.btn--md{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);gap:var(--space-2)}.btn--lg{padding:var(--space-4) var(--space-6);font-size:var(--text-base);gap:var(--space-2);min-height:48px}.home-page{min-height:100vh;background:var(--color-gray-50)}.home-page__main{flex:1;padding:var(--space-8) 0}.home-page__hero{text-align:center;margin-bottom:var(--space-16)}@media (min-width: 1024px){.home-page__hero{margin-bottom:var(--space-20)}}.home-page__title{font-size:var(--text-4xl);font-weight:700;color:var(--color-gray-900);margin-bottom:var(--space-4)}@media (min-width: 1024px){.home-page__title{font-size:var(--text-5xl)}}.home-page__subtitle{font-size:var(--text-lg);color:var(--color-gray-600);margin-bottom:var(--space-8);max-width:600px;margin-left:auto;margin-right:auto}@media (min-width: 1024px){.home-page__subtitle{font-size:var(--text-xl)}}.home-page__stats,.home-page__actions-section{margin-bottom:var(--space-16)}.quick-actions-grid{display:grid;grid-template-columns:1fr;gap:var(--space-6);max-width:800px;margin:0 auto}@media (min-width: 640px){.quick-actions-grid{grid-template-columns:repeat(2,1fr)}}.action-card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200);padding:var(--space-6);text-align:center;transition:transform .2s ease-in-out}.action-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.action-card__icon{width:60px;height:60px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--text-3xl);background:var(--color-primary-light);margin:0 auto var(--space-4)}.action-card__title{font-size:var(--text-lg);font-weight:600;color:var(--color-gray-900);margin-bottom:var(--space-2)}.action-card__desc{font-size:var(--text-sm);color:var(--color-gray-600);margin-bottom:var(--space-4);line-height:1.5}.stats-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media (min-width: 640px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.stats-grid{grid-template-columns:repeat(4,1fr);gap:var(--space-6)}}.stat-card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200);overflow:hidden;padding:var(--space-5);display:flex;align-items:center;gap:var(--space-3);transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;min-height:80px}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.stat-card__icon{width:40px;height:40px;border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);flex-shrink:0}.stat-card__icon--primary{background:var(--color-primary-light)}.stat-card__icon--success{background:#d1fae5}.stat-card__icon--warning{background:#fef3c7}.stat-card__icon--error{background:#fee2e2}.stat-card__icon--info{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.stat-card__content{flex:1;min-width:0}.stat-card__value{font-size:var(--text-2xl);font-weight:700;color:var(--color-gray-900);margin-bottom:var(--space-1);line-height:1.2}.stat-card__label{font-size:13px;color:var(--color-gray-600);font-weight:600;line-height:1.3}@media (max-width: 639px){.stat-card__label{font-size:12px;line-height:1.2}}.stat-card--loading{opacity:.6;animation:pulse 1.5s ease-in-out infinite alternate}@keyframes pulse{0%{opacity:.6}to{opacity:1}}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6)}@media (max-width: 639px){.section-header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}}.section-title{font-size:var(--text-2xl);font-weight:600;color:var(--color-gray-900)}.section-count{font-size:var(--text-base);font-weight:400;color:var(--color-gray-600);margin-left:var(--space-2)}.home-page__product-section{margin-bottom:var(--space-16)}.products-grid{display:grid;grid-template-columns:1fr;gap:var(--space-6)}@media (min-width: 640px){.products-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-5)}}@media (min-width: 1024px){.products-grid{grid-template-columns:repeat(4,1fr);gap:var(--space-6)}}@media (min-width: 1440px){.products-grid{grid-template-columns:repeat(5,1fr)}}.product-skeleton{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200);overflow:hidden;height:400px;animation:pulse 1.5s ease-in-out infinite}.product-skeleton__image{width:100%;height:200px;background:var(--color-gray-200)}.product-skeleton__content{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.product-skeleton__line{height:16px;background:var(--color-gray-200);border-radius:var(--radius-sm)}.product-skeleton__line--short{width:60%}.empty-state{text-align:center;padding:var(--space-12) var(--space-4);color:var(--color-gray-500)}.empty-state__icon{font-size:var(--text-6xl);margin-bottom:var(--space-4)}.empty-state__text{font-size:var(--text-lg);color:var(--color-gray-600)}.product-card{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200);overflow:hidden;width:100%;max-width:100%;position:relative;cursor:pointer;transition:transform .2s ease-in-out,box-shadow .2s ease-in-out}.product-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.product-card--selectable .product-card__checkbox{opacity:0}.product-card--selectable:hover .product-card__checkbox{opacity:1}.product-card--selected{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.product-card--selected .product-card__checkbox{opacity:1}.product-card--disabled{opacity:.6;cursor:not-allowed}.product-card--disabled:hover{transform:none;box-shadow:var(--shadow-sm)}.product-card__platform{position:absolute;top:var(--space-3);right:var(--space-3);z-index:10;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-white);background:linear-gradient(135deg,#6c757d,#5a6268);box-shadow:0 2px 8px #6c757d4d}.product-card__image{width:100%;height:200px;overflow:hidden;background:var(--color-gray-100);position:relative}.product-card__image img{width:100%;height:100%;object-fit:contain;object-position:center;transition:transform .3s ease-in-out}.product-card__image:hover img{transform:scale(1.05)}.product-card__image-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:var(--text-4xl);color:var(--color-gray-400)}.product-card__content{padding:12px;display:flex;flex-direction:column;overflow:hidden}.product-card__name{font-size:var(--text-base);font-weight:600;color:var(--color-gray-900);line-height:1.4;margin-bottom:8px;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:3em}.product-card__price-section{margin-bottom:var(--space-2)}.product-card__price{font-size:var(--text-base);font-weight:700;color:var(--color-primary);line-height:1.2}.product-card__price-main{font-size:var(--text-base);font-weight:700;color:var(--color-primary);margin-bottom:var(--space-2)}.product-card__price-range{font-size:var(--text-xs);font-weight:500;color:var(--color-gray-600)}.product-card__price-label{font-size:11px;font-weight:500;color:var(--color-gray-500);margin-right:4px}.product-card__price-value{font-weight:600;color:var(--color-gray-800);font-size:13px}.product-card__price--empty{color:var(--color-gray-400);font-weight:400;font-style:italic;font-size:var(--text-sm)}.product-card__meta{margin-top:auto;padding-top:8px;border-top:1px solid var(--color-gray-200);overflow:hidden}.product-card__date{font-size:var(--text-sm);font-weight:700;color:var(--color-gray-900);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.product-card__date-label{font-size:12px;font-weight:500;color:var(--color-gray-500);margin-right:4px}.product-card__date-value{font-weight:700;color:var(--color-gray-800);font-size:13px}.product-card__checkbox{position:absolute;top:var(--space-2);left:var(--space-2);z-index:20;background:#fff;border-radius:4px;padding:4px;box-shadow:0 2px 4px #0000001a;transition:opacity .2s ease}.product-card__checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:#3b82f6}.product-card__checkbox input[type=checkbox]:disabled{cursor:not-allowed}.products-page{min-height:100vh;background:var(--color-gray-50);padding-bottom:var(--space-12)}.products-page__title{font-size:var(--text-3xl);font-weight:700;color:var(--color-gray-900);margin-bottom:var(--space-4)}@media (min-width: 1024px){.products-page__title{font-size:var(--text-4xl)}}.products-page__results-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-6);padding:var(--space-4);background:var(--color-white);border-radius:var(--radius-lg);border:1px solid var(--color-gray-200);font-size:var(--text-sm);color:var(--color-gray-600);box-shadow:var(--shadow-sm)}@media (max-width: 639px){.products-page__results-info{flex-direction:column;gap:var(--space-2);text-align:center}}.products-page__filters-top{padding:var(--space-8) 0 var(--space-4) 0}.products-page__comparison-bar{position:fixed;bottom:0;left:0;right:0;z-index:50;background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 -4px 20px #00000026;animation:slideUp .3s ease-out;border-top:3px solid #1d4ed8}.products-page__content{width:100%;transition:padding-bottom .3s ease}.products-page__content--with-comparison{padding-bottom:80px}@media (max-width: 639px){.products-page__content--with-comparison{padding-bottom:90px}}.products-page__main{width:100%}.products-page__grid{display:grid;grid-template-columns:1fr;gap:var(--space-6);margin-bottom:var(--space-8)}@media (min-width: 640px){.products-page__grid{grid-template-columns:repeat(2,1fr);gap:var(--space-5)}}@media (min-width: 1024px){.products-page__grid{grid-template-columns:repeat(4,1fr);gap:var(--space-6)}}@media (min-width: 1440px){.products-page__grid{grid-template-columns:repeat(5,1fr)}}.products-page__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16);margin:var(--space-8) 0;background:var(--color-white);border-radius:var(--radius-lg);border:1px solid var(--color-gray-200);box-shadow:var(--shadow-sm)}.products-page__loading .loading-spinner{font-size:var(--text-4xl);animation:spin 1s linear infinite;margin-bottom:var(--space-4)}.products-page__loading p{color:var(--color-gray-600);font-size:var(--text-base);margin:0}.products-page__error{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-12);margin:var(--space-8) 0;background:var(--color-white);border-radius:var(--radius-lg);border:2px solid var(--color-error);box-shadow:var(--shadow-sm);text-align:center}.products-page__error .error-message{color:var(--color-error);font-size:var(--text-lg);font-weight:600;margin:0}.products-page__empty{display:flex;flex-direction:column;align-items:center;padding:var(--space-16);margin:var(--space-8) 0;background:var(--color-white);border-radius:var(--radius-lg);border:1px solid var(--color-gray-200);box-shadow:var(--shadow-sm);text-align:center}.products-page__empty-icon{font-size:var(--text-6xl);margin-bottom:var(--space-6);opacity:.5}.products-page__empty h3{font-size:var(--text-xl);font-weight:600;color:var(--color-gray-900);margin-bottom:var(--space-2)}.products-page__empty p{color:var(--color-gray-600);font-size:var(--text-base);margin-bottom:var(--space-6)}.products-page__scroll-trigger{width:100%;height:20px;margin:20px 0;opacity:0;pointer-events:none}.products-page__loading-more{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6) var(--space-4);margin:var(--space-4) 0 var(--space-8) 0;background:var(--color-white);border-radius:var(--radius-lg);border:1px solid var(--color-gray-200);box-shadow:var(--shadow-sm)}.products-page__loading-more .loading-spinner{font-size:var(--text-2xl);animation:spin 1s linear infinite;margin-bottom:var(--space-3)}.products-page__loading-more p{color:var(--color-gray-600);font-size:var(--text-sm);margin:0;font-weight:500}@media (max-width: 639px){.products-page__loading-more{margin:var(--space-3) 0 var(--space-6) 0;padding:var(--space-4)}.products-page__loading-more .loading-spinner{font-size:var(--text-xl)}}.comparison-bar__content{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-6);color:#fff;max-width:1400px;margin:0 auto;width:100%}@media (max-width: 639px){.comparison-bar__content{flex-direction:column;gap:var(--space-3);padding:var(--space-3) var(--space-4)}}.comparison-bar__count{font-size:var(--text-lg);font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.2);letter-spacing:.3px}@media (max-width: 639px){.comparison-bar__count{font-size:var(--text-base)}}.comparison-bar__actions{display:flex;gap:var(--space-3)}.comparison-bar__actions button{font-weight:600;box-shadow:0 2px 8px #0003;transition:all .2s ease}.comparison-bar__actions button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.comparison-bar__actions button:active{transform:translateY(0)}.comparison-bar__actions button:first-child{background:#fff3;border:2px solid white;color:#fff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.comparison-bar__actions button:first-child:hover{background:#ffffff4d;border-color:#fff}.comparison-bar__actions button:last-child{background:#fff;color:#2563eb;border:2px solid white}.comparison-bar__actions button:last-child:hover:not(:disabled){background:#f0f9ff;color:#1d4ed8}.comparison-bar__actions button:last-child:disabled{opacity:.5;cursor:not-allowed;transform:none}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 639px){.products-page__header{margin-bottom:var(--space-6);padding-top:var(--space-4)}.products-page__title{font-size:var(--text-2xl)}.products-page__results-info{padding:var(--space-3);margin-bottom:var(--space-4)}.products-page__filters-top{margin-bottom:var(--space-6)}.products-page__grid{gap:var(--space-4);margin-bottom:var(--space-6)}.products-page__loading,.products-page__error,.products-page__empty{margin:var(--space-6) 0;padding:var(--space-8)}}.filter-bar{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;border:1px solid #e5e5e5}.filter-bar__container{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.search-row{width:100%;display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem}.search-row .quick-controls{display:flex;align-items:flex-end;gap:1rem}.search-row .quick-controls .filter-item{display:flex;flex-direction:column;gap:4px}.search-row .quick-controls .filter-item .filter-label{font-size:12px;font-weight:500;color:#666;white-space:nowrap}.search-row .quick-controls .filter-item .filter-select--small{min-width:120px;height:44px;padding:8px 12px;border:2px solid #e5e5e5;border-radius:8px;font-size:14px;background:#fff}.search-row .quick-controls .filter-item .filter-select--small:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-row .quick-controls .reset-btn{height:44px;padding:0 16px;white-space:nowrap}.search-box{position:relative;display:flex;align-items:center;flex:1}.search-box__icon{position:absolute;left:12px;color:#6b7280;z-index:1;font-size:16px}.search-box__input{width:100%;height:44px;padding:12px 48px 12px 12px;border:2px solid #e5e5e5;border-radius:8px;font-size:14px;background:#fff;transition:all .2s ease}.search-box__input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-box__input:disabled{opacity:.5;cursor:not-allowed;background:#f9fafb}.search-box__input::placeholder{color:#9ca3af}.search-box__button{position:absolute;right:8px;width:32px;height:32px;border:none;background:#d6e6ff;color:#fff;border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.search-box__button:hover:not(:disabled){background:#7fa4f5;transform:scale(1.05)}.search-box__button:active{transform:scale(.95)}.search-box__button:disabled{opacity:.5;cursor:not-allowed;transform:none}.filters-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem;align-items:end}.filters-grid-row2{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem;align-items:end;margin-top:1rem}.filter-item{display:flex;flex-direction:column;gap:6px;min-width:0}.filter-label{font-size:12px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;white-space:nowrap}.filter-select{width:100%;padding:12px 32px 12px 12px;border:2px solid #e5e5e5;border-radius:8px;font-size:14px;background:#fff;color:#374151;cursor:pointer;transition:all .2s ease;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 8px center;background-size:16px}.filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-select:disabled{opacity:.5;cursor:not-allowed;background-color:#f9fafb}.filter-select--small{font-size:13px;min-width:120px}.filter-input{width:100%;padding:12px;border:2px solid #e5e5e5;border-radius:8px;font-size:14px;background:#fff;color:#374151;transition:all .2s ease}.filter-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-input:disabled{opacity:.5;cursor:not-allowed;background:#f9fafb}.filter-input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;border-radius:4px;margin-right:2px;opacity:.6;filter:invert(.8)}.filter-input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1}.filter-input[type=date]::-webkit-datetime-edit-text{color:#374151}.filter-input[type=date]::-webkit-datetime-edit-month-field,.filter-input[type=date]::-webkit-datetime-edit-day-field,.filter-input[type=date]::-webkit-datetime-edit-year-field{color:#374151}.price-range{display:flex;align-items:center;gap:8px;width:100%}.price-range__input{flex:1;min-width:0;padding:12px;border:2px solid #e5e5e5;border-radius:8px;font-size:14px;background:#fff;color:#374151;transition:all .2s ease}.price-range__input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.price-range__input:disabled{opacity:.5;cursor:not-allowed;background:#f9fafb}.price-range__input::placeholder{color:#9ca3af}.price-range__separator{color:#6b7280;font-weight:500;flex:0 0 auto;font-size:14px}.date-range{display:flex;align-items:center;gap:8px;width:100%}.date-range input{flex:1;min-width:0}.date-range__separator{color:#6b7280;font-weight:500;flex:0 0 auto;font-size:14px}.filter-controls{display:flex;gap:1rem;align-items:end;justify-content:flex-end;grid-column:2/4}.reset-btn{white-space:nowrap;min-width:80px}@media (max-width: 1024px){.filters-grid,.filters-grid-row2{grid-template-columns:1fr 1fr;gap:1.25rem}.filter-controls{grid-column:1/3}}@media (max-width: 768px){.filter-bar{margin-bottom:1rem}.filter-bar__container{padding:1rem;gap:1rem}.filters-grid{grid-template-columns:1fr 1fr;gap:1rem}.filters-grid-row2{grid-template-columns:1fr;gap:1rem}.filter-controls{grid-column:1/-1;justify-self:stretch;justify-content:stretch}.filter-controls .filter-item{flex:1}.filter-label{font-size:10px}.search-box{max-width:100%}}@media (max-width: 480px){.filters-grid,.filters-grid-row2{grid-template-columns:1fr;gap:.75rem}.filter-controls{flex-direction:column;gap:.75rem}}.quick-dates{display:flex;gap:.5rem;flex-wrap:wrap}.quick-date-option{display:flex;align-items:center;gap:4px;padding:6px 12px;border:2px solid #e5e5e5;border-radius:6px;cursor:pointer;transition:all .2s ease;background:#fff;font-size:13px;font-weight:500;color:#374151;white-space:nowrap}.quick-date-option input[type=radio]{margin:0;width:14px;height:14px;accent-color:#3b82f6}.quick-date-option span{-webkit-user-select:none;user-select:none}.quick-date-option:hover{border-color:#3b82f6;background:#eff6ff}.quick-date-option.active{border-color:#3b82f6;background:#3b82f6;color:#fff}.quick-date-option.active input[type=radio]{accent-color:white}.quick-date-option:disabled{opacity:.5;cursor:not-allowed}.platform-multi-select{position:relative;width:100%}.platform-multi-select__trigger{width:100%;display:flex;justify-content:space-between;align-items:center;padding:12px;border:2px solid #e5e5e5;border-radius:8px;font-size:14px;background:#fff;color:#374151;cursor:pointer;transition:all .2s ease;text-align:left}.platform-multi-select__trigger:hover{border-color:#3b82f6}.platform-multi-select__trigger:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.platform-multi-select__trigger:disabled{opacity:.5;cursor:not-allowed;background-color:#f9fafb}.platform-multi-select__label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.platform-multi-select__arrow{margin-left:8px;font-size:10px;transition:transform .2s ease}.platform-multi-select__dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:2px solid #e5e5e5;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:100;max-height:320px;display:flex;flex-direction:column}.platform-multi-select__header{display:flex;justify-content:space-between;align-items:center;padding:12px;border-bottom:1px solid #e5e5e5;background:#f9fafb;border-radius:6px 6px 0 0}.platform-multi-select__title{font-size:13px;font-weight:600;color:#374151}.platform-multi-select__actions{display:flex;gap:8px}.platform-multi-select__action-btn{padding:4px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:12px;font-weight:500;background:#fff;color:#374151;cursor:pointer;transition:all .2s ease}.platform-multi-select__action-btn:hover{background:#f3f4f6}.platform-multi-select__action-btn--primary{background:#3b82f6;color:#fff;border-color:#3b82f6}.platform-multi-select__action-btn--primary:hover{background:#2563eb}.platform-multi-select__list{overflow-y:auto;max-height:240px;padding:8px}.platform-multi-select__option{display:flex;align-items:center;padding:10px 12px;border-radius:6px;cursor:pointer;transition:background .2s ease;gap:10px}.platform-multi-select__option:hover{background:#f3f4f6}.platform-multi-select__option input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#3b82f6}.platform-multi-select__option-label{flex:1;font-size:14px;color:#374151;-webkit-user-select:none;user-select:none}.platform-multi-select__option-count{font-size:12px;color:#6b7280;-webkit-user-select:none;user-select:none}.statistics-page{min-height:100vh;background:#f8f9fa;padding:2rem 0}.statistics-page .container{max-width:1200px;margin:0 auto;padding:0 1rem}.statistics-page__header{text-align:center;margin-bottom:2rem}.statistics-page__header h1{font-size:2.5rem;font-weight:800;color:#333;margin-bottom:.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.statistics-page__header p{font-size:1.1rem;color:#666;margin:0;margin-bottom:1.5rem}.statistics-page__filters{display:flex;justify-content:center;margin-bottom:1rem}.statistics-page__filters .filter-group{display:flex;align-items:center;gap:1rem}.statistics-page__filters .filter-group .filter-label{font-size:14px;font-weight:600;color:#666}.statistics-page__filters .filter-group .filter-buttons{display:flex;gap:.5rem}.statistics-page__filters .filter-group .filter-buttons .filter-btn{padding:8px 16px;border:2px solid #e5e5e5;border-radius:6px;background:#fff;color:#666;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.statistics-page__filters .filter-group .filter-buttons .filter-btn:hover{border-color:#3b82f6;color:#3b82f6}.statistics-page__filters .filter-group .filter-buttons .filter-btn--active{border-color:#3b82f6;background:#3b82f6;color:#fff}.statistics-page__filters .filter-group .filter-buttons .filter-btn--active:hover{border-color:#2563eb;background:#2563eb}.statistics-page__grid{display:flex;flex-direction:column;gap:2rem}.statistics-page__grid--single{max-width:100%}.statistics-page .stats-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.statistics-page .stats-section__header{margin-bottom:1.5rem}.statistics-page .stats-section__header h2{font-size:1.5rem;font-weight:600;color:#333;margin:0 0 .5rem;display:flex;align-items:center;gap:.5rem}.statistics-page .stats-section__header p{color:#666;margin:0;font-size:.9rem}.statistics-page .stats-section__content{min-height:300px}.platform-growth-section .loading,.platform-growth-section .error,.platform-growth-section .empty{padding:2rem;text-align:center;border-radius:8px;margin:1rem 0}.platform-growth-section .loading{background:#f8f9fa;color:#6c757d}.platform-growth-section .error{background:#f8d7da;color:#721c24}.platform-growth-section .empty{background:#d4edda;color:#155724}.platform-growth-section .chart-container{padding:1rem;background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a}.product-count-section .loading,.product-count-section .error,.product-count-section .empty{padding:2rem;text-align:center;border-radius:8px;margin:1rem 0}.product-count-section .loading{background:#f8f9fa;color:#6c757d}.product-count-section .error{background:#f8d7da;color:#721c24}.product-count-section .empty{background:#d4edda;color:#155724}.product-count-section .charts-row{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media (max-width: 768px){.product-count-section .charts-row{grid-template-columns:1fr}}.product-count-section .chart-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;height:400px}.product-count-section .chart-container h5{margin:0 0 1rem;text-align:center;color:#333;font-size:16px;font-weight:600}.product-count-section .chart-container .chart-wrapper{height:calc(100% - 40px);width:100%;position:relative}.platform-stats-section .chart-container{height:400px;background:#fff;border-radius:12px;padding:20px;box-shadow:0 4px 6px #0000001a;border:1px solid #e1e5e9}.platform-stats-section .chart-container canvas{max-height:100%}.platform-stats-section .loading,.platform-stats-section .error,.platform-stats-section .empty{text-align:center;padding:40px 20px;background:#fff;border-radius:12px;margin:20px 0}.platform-stats-section .loading.error,.platform-stats-section .error.error,.platform-stats-section .empty.error{color:#dc3545;border-left:4px solid #dc3545}.platform-stats-section .loading.loading,.platform-stats-section .error.loading,.platform-stats-section .empty.loading{color:#6c757d}.platform-stats-section .loading.empty,.platform-stats-section .error.empty,.platform-stats-section .empty.empty{color:#6c757d;font-style:italic}.platform-stats-section .loading button,.platform-stats-section .error button,.platform-stats-section .empty button{background:#007bff;color:#fff;border:none;padding:8px 16px;border-radius:6px;cursor:pointer;margin-left:10px}.platform-stats-section .loading button:hover,.platform-stats-section .error button:hover,.platform-stats-section .empty button:hover{background:#0056b3}:root{--color-primary: #3b82f6;--color-primary-dark: #2563eb;--color-primary-light: #dbeafe;--color-secondary: #64748b;--color-secondary-dark: #475569;--color-secondary-light: #f1f5f9;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #06b6d4;--color-blue-50: #eff6ff;--color-blue-100: #dbeafe;--color-blue-200: #bfdbfe;--color-blue-500: #3b82f6;--color-blue-600: #2563eb;--color-blue-700: #1d4ed8;--color-blue-800: #1e40af;--color-green-600: #16a34a;--color-purple-50: #faf5ff;--color-white: #ffffff;--color-gray-50: #f8fafc;--color-gray-100: #f1f5f9;--color-gray-200: #e2e8f0;--color-gray-300: #cbd5e1;--color-gray-400: #94a3b8;--color-gray-500: #64748b;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1e293b;--color-gray-900: #0f172a;--font-family-sans: "Inter", system-ui, -apple-system, sans-serif;--font-family-mono: "JetBrains Mono", "Fira Code", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .125rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{font-family:var(--font-family-sans);color:var(--color-gray-900);background-color:var(--color-gray-50);min-height:100vh}button{background:none;border:none;cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-4)}@media (min-width: 640px){.container{padding:0 var(--space-6)}}@media (min-width: 1024px){.container{padding:0 var(--space-8)}}.card-base{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-gray-200);overflow:hidden}.input-base{width:100%;padding:var(--space-3);border:1px solid var(--color-gray-300);border-radius:var(--radius-md);font-size:var(--text-sm);background:var(--color-white);transition:border-color .2s ease-in-out}.input-base:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.input-base::placeholder{color:var(--color-gray-400)}.compare-page{min-height:calc(100vh - 80px);background:var(--color-gray-50);padding:var(--space-6) 0 var(--space-8)}@media (max-width: 639px){.compare-page{padding:var(--space-4) 0 var(--space-6)}}.compare-page__header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6)}@media (max-width: 639px){.compare-page__header{flex-direction:column;align-items:flex-start;gap:var(--space-3)}}.compare-page__title{font-size:var(--text-3xl);font-weight:700;color:var(--color-gray-900);margin:0}@media (max-width: 639px){.compare-page__title{font-size:var(--text-2xl)}}.compare-page__loading,.compare-page__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;gap:var(--space-4);padding:var(--space-8)}.compare-page .loading-spinner{font-size:var(--text-5xl);animation:spin 1s linear infinite}.compare-page .error-message{font-size:var(--text-lg);color:var(--color-red-600);margin:0}.compare-table-wrapper{background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow-x:auto;border:1px solid var(--color-gray-200);max-width:100%}@media (max-width: 639px){.compare-table-wrapper{margin:0 calc(-1 * var(--space-4));border-radius:0;border-left:none;border-right:none}}.compare-table{width:100%;border-collapse:collapse;table-layout:fixed}@media (max-width: 639px){.compare-table{font-size:var(--text-sm);table-layout:auto}}.compare-table thead{background:linear-gradient(180deg,var(--color-gray-100) 0%,var(--color-gray-50) 100%);border-bottom:2px solid var(--color-gray-300)}.compare-table th,.compare-table td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--color-gray-200);word-wrap:break-word}@media (max-width: 639px){.compare-table th,.compare-table td{padding:var(--space-2)}}.compare-table th{font-weight:600;color:var(--color-gray-900)}.compare-table__criteria{width:140px;background:var(--color-gray-50);vertical-align:top;position:sticky;left:0;z-index:10;box-shadow:2px 0 4px #0000000d}@media (max-width: 639px){.compare-table__criteria{width:120px}}.compare-table__criteria strong{display:block;font-size:var(--text-sm);color:var(--color-gray-900);margin-bottom:var(--space-1)}@media (max-width: 639px){.compare-table__criteria strong{font-size:var(--text-xs)}}.compare-table__criteria .criteria-desc{display:block;font-size:var(--text-xs);color:var(--color-gray-600);font-weight:400;line-height:1.3}@media (max-width: 639px){.compare-table__criteria .criteria-desc{font-size:10px}}.compare-table__product{width:auto;vertical-align:top;max-width:180px}@media (max-width: 639px){.compare-table__product{max-width:150px}}.compare-table__value{font-size:var(--text-sm);color:var(--color-gray-800);vertical-align:middle;max-width:180px;overflow:hidden}.compare-table__value strong{color:var(--color-gray-900);font-size:var(--text-base)}.compare-table__value--shipping{vertical-align:top}.compare-table tbody tr{transition:background-color .2s ease}.compare-table tbody tr:hover{background-color:var(--color-gray-50)}.product-header{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-1)}.product-header__image{width:100px;height:100px;border-radius:var(--radius-md);overflow:hidden;background:var(--color-gray-100);display:flex;align-items:center;justify-content:center;border:1px solid var(--color-gray-200);transition:transform .2s ease,box-shadow .2s ease;flex-shrink:0}@media (max-width: 639px){.product-header__image{width:80px;height:80px}}.product-header__image:hover{transform:scale(1.05);box-shadow:var(--shadow-md)}.product-header__image img{width:100%;height:100%;object-fit:cover}.product-header__placeholder{font-size:var(--text-3xl);opacity:.5}.product-header__name{font-size:var(--text-xs);font-weight:600;color:var(--color-gray-900);text-align:center;line-height:1.3;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-width:100%;word-break:break-word}@media (max-width: 639px){.product-header__name{font-size:10px;-webkit-line-clamp:2;line-clamp:2}}.product-link{color:var(--color-blue-600);text-decoration:none;font-weight:500;display:inline-flex;align-items:center;gap:var(--space-1);transition:all .2s ease;padding:var(--space-1);border-radius:var(--radius-sm);font-size:var(--text-xs)}.product-link:hover{color:var(--color-blue-700);background:var(--color-blue-50);text-decoration:underline}.shipping-info{display:flex;flex-direction:column;gap:var(--space-2);font-size:var(--text-xs)}.shipping-info-empty{color:var(--color-gray-500);font-style:italic}.shipping-info--images{display:flex;flex-direction:column;gap:var(--space-2)}.shipping-info--images .shipping-image-wrapper{width:100%;max-width:100%;margin:0 auto;border:1px solid var(--color-gray-200);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-white);box-shadow:var(--shadow-sm);transition:box-shadow .2s ease}.shipping-info--images .shipping-image-wrapper:hover{box-shadow:var(--shadow-md)}.shipping-info--images .shipping-image-wrapper .shipping-image{width:100%;height:auto;display:block;object-fit:contain;max-height:200px}.shipping-info--text .shipping-text{padding:var(--space-2);background:var(--color-gray-50);border-radius:var(--radius-sm);border:1px solid var(--color-gray-200);white-space:pre-line;line-height:1.5;font-size:var(--text-xs);max-width:100%;word-wrap:break-word;overflow-wrap:break-word}.shipping-info--text .shipping-link{color:var(--color-blue-600);text-decoration:none;font-weight:500;padding:0 var(--space-1);white-space:nowrap;border-radius:var(--radius-sm);transition:all .2s ease;font-size:var(--text-xs)}.shipping-info--text .shipping-link:hover{color:var(--color-blue-700);background:var(--color-blue-50);text-decoration:underline}.shipping-country{display:flex;flex-direction:column;gap:var(--space-1)}.shipping-country--primary{padding:var(--space-2);background:linear-gradient(135deg,var(--color-blue-50) 0%,var(--color-blue-100) 100%);border-radius:var(--radius-sm);border:1px solid var(--color-blue-200);box-shadow:var(--shadow-sm)}.shipping-country__name{font-weight:600;font-size:var(--text-xs);color:var(--color-gray-900);display:flex;align-items:center;gap:var(--space-1)}.shipping-services{display:flex;flex-direction:column;gap:var(--space-1)}.shipping-service{display:flex;flex-direction:column;font-size:var(--text-xs);padding:var(--space-1);border-radius:var(--radius-sm);background:var(--color-white);border:1px solid var(--color-gray-100);transition:all .2s ease}.shipping-service:hover{background:var(--color-gray-50);border-color:var(--color-gray-200)}.shipping-service .service-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-1)}.shipping-service .service-code{font-family:Courier New,monospace;color:var(--color-gray-700);font-weight:600;font-size:10px;background:var(--color-gray-100);padding:2px var(--space-1);border-radius:var(--radius-sm);flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shipping-service .service-cost{color:var(--color-green-600);font-weight:700;font-size:var(--text-xs);flex-shrink:0}.shipping-service .service-details{display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-1);padding-left:var(--space-1);border-left:2px solid var(--color-gray-200)}.shipping-service .service-delivery,.shipping-service .service-notes{font-size:10px;color:var(--color-gray-600);line-height:1.4}.shipping-service .service-delivery{font-weight:500;color:var(--color-gray-700)}.shipping-service .service-notes{font-style:italic}.shipping-more{font-size:10px;color:var(--color-blue-600);font-weight:500;margin-top:var(--space-1);background:none;border:none;padding:var(--space-1) 0;cursor:pointer;transition:all .2s ease;text-align:left}.shipping-more:hover{color:var(--color-blue-700);text-decoration:underline}.shipping-other__summary{font-size:var(--text-xs);color:var(--color-blue-600);font-weight:500;padding:var(--space-2);background:var(--color-gray-100);border-radius:var(--radius-sm);text-align:center;border:1px solid var(--color-gray-200);cursor:pointer;transition:all .2s ease;width:100%}.shipping-other__summary:hover{background:var(--color-blue-50);border-color:var(--color-blue-300);color:var(--color-blue-700);box-shadow:var(--shadow-sm)}.template-links{display:flex;flex-direction:column;gap:var(--space-1);align-items:flex-start}.template-links .template-link{color:var(--color-blue-600);text-decoration:none;font-weight:500;font-size:var(--text-xs);padding:var(--space-1) var(--space-2);border:1px solid var(--color-blue-300);border-radius:var(--radius-sm);background:var(--color-blue-50);transition:all .2s ease;display:inline-flex;align-items:center;gap:var(--space-1)}.template-links .template-link:hover{background:var(--color-blue-100);border-color:var(--color-blue-400);color:var(--color-blue-700);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.template-links .template-link:active{transform:translateY(0)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
