body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.inventory-manager{position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;z-index:1000;overflow-y:auto;padding:20px}.inventory-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #e0e0e0;padding-bottom:15px;margin-bottom:25px}.inventory-header h2{margin:0;font-size:24px;color:#333}.header-actions{display:flex;gap:10px;align-items:center}.refresh-button{background:#f0f0f0;border:none;font-size:20px;cursor:pointer;padding:8px 12px;border-radius:6px;transition:all .2s}.refresh-button:hover{background:#e0e0e0;transform:rotate(180deg)}.close-inventory{background:none;border:none;font-size:32px;color:#666;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.close-inventory:hover{background:#f0f0f0;color:#333}.alerts-banner{background:linear-gradient(135deg,#fff3e0,#ffecb3);border-left:4px solid #F57C00;padding:12px 16px;margin-bottom:20px;border-radius:6px;display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#e65100;box-shadow:0 2px 4px #0000001a}.alert-icon{font-size:20px}.loading,.inventory-error{text-align:center;padding:40px 20px;font-size:16px}.inventory-error{background:#fee;color:#d32f2f;border-radius:8px;border-left:4px solid #d32f2f}.inventory-controls{display:flex;gap:15px;margin-bottom:25px}.search-input{flex:1;padding:12px 15px;border:1px solid #ddd;border-radius:6px;font-size:14px}.category-filter{padding:12px 15px;border:1px solid #ddd;border-radius:6px;font-size:14px;min-width:180px;background:#fff;cursor:pointer}.inventory-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px;border-radius:10px;text-align:center;box-shadow:0 4px 6px #0000001a}.stat-value{font-size:36px;font-weight:700;margin-bottom:8px}.stat-label{font-size:14px;opacity:.9}.products-table{overflow-x:auto;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:20px}table{width:100%;border-collapse:collapse}thead{background:#f8f9fa;border-bottom:2px solid #e0e0e0}th{padding:15px;text-align:left;font-size:14px;font-weight:600;color:#333;text-transform:uppercase;letter-spacing:.5px}td{padding:15px;border-bottom:1px solid #e0e0e0;font-size:14px;color:#666}tbody tr:hover{background:#f8f9fa}.product-cell{display:flex;align-items:center;gap:12px}.product-thumb{width:50px;height:50px;object-fit:cover;border-radius:6px;border:1px solid #e0e0e0}.product-name{font-weight:600;color:#333;margin-bottom:4px}.product-id{font-size:12px;color:#999}.stock-toggle{padding:6px 12px;border:none;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.stock-toggle.in-stock{background:#e8f5e9;color:#2e7d32}.stock-toggle.out-of-stock{background:#ffebee;color:#c62828}.stock-toggle:hover{opacity:.8}.quantity-cell{display:flex;align-items:center;gap:8px}.quantity-input{width:80px;padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:14px;text-align:center}.stock-status{font-size:16px}.stock-status.ok{color:#2e7d32}.stock-status.low{color:#f57c00}.stock-status.out{color:#c62828}.out-of-stock-row{background:#ffebee}.low-stock-row{background:#fff8e1}.popularity-input{width:60px;padding:6px 8px;border:1px solid #ddd;border-radius:4px;font-size:14px;text-align:center}.edit-button{padding:6px 12px;background:#2196f3;color:#fff;border:none;border-radius:4px;font-size:12px;cursor:pointer;transition:background .2s}.edit-button:hover{background:#1976d2}.no-results{text-align:center;padding:60px 20px;color:#666;font-size:16px}.inventory-actions{display:flex;justify-content:flex-end;gap:15px;padding:20px;border-top:2px solid #e0e0e0;background:#f8f9fa;position:sticky;bottom:0}.export-button,.save-button{padding:12px 24px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.export-button{background:#fff;color:#333;border:1px solid #ddd}.export-button:hover{background:#f0f0f0}.save-button{background:#4caf50;color:#fff;position:relative}.save-button:hover{background:#45a049}.save-button:disabled{background:#ccc;cursor:not-allowed}.save-button.has-changes{background:#ff9800;animation:pulse 2s infinite}.save-button.has-changes:hover{background:#f57c00}@keyframes pulse{0%,to{box-shadow:0 0 #ff9800b3}50%{box-shadow:0 0 0 10px #ff980000}}@media(max-width:900px){.inventory-manager{padding:15px}.inventory-controls{flex-direction:column}.inventory-stats{grid-template-columns:1fr}.products-table{font-size:12px}th,td{padding:10px 8px}.product-thumb{width:40px;height:40px}.inventory-actions{flex-direction:column}}.order-history{position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;z-index:1000;overflow-y:auto;display:flex;flex-direction:column}.order-history-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:2px solid #e0e0e0;background:#fff;position:sticky;top:0;z-index:10}.order-history-header h2{margin:0;font-size:24px;color:#333}.close-history{background:none;border:none;font-size:32px;color:#666;cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.close-history:hover{background:#f0f0f0;color:#333}.order-history-content{flex:1;padding:20px;max-width:800px;margin:0 auto;width:100%}.loading-orders{text-align:center;padding:60px 20px;color:#666;font-size:16px}.order-error{background:#fee;color:#d32f2f;padding:15px 20px;border-radius:8px;border-left:4px solid #d32f2f;margin-bottom:20px}.no-orders{text-align:center;padding:80px 20px}.no-orders-icon{font-size:64px;margin-bottom:20px}.no-orders-text{font-size:20px;color:#333;margin-bottom:10px}.no-orders-subtext{font-size:14px;color:#666}.orders-list{display:flex;flex-direction:column;gap:20px}.order-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px;transition:box-shadow .2s}.order-card:hover{box-shadow:0 4px 12px #0000001a}.order-header-info{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.order-id{display:flex;flex-direction:column;gap:5px}.order-id strong{font-size:12px;color:#666;text-transform:uppercase;letter-spacing:.5px}.order-id span{font-size:16px;color:#2196f3;font-weight:600}.order-date{font-size:14px;color:#666}.order-items{display:flex;flex-direction:column;gap:10px;margin-bottom:15px}.order-item{display:flex;justify-content:space-between;align-items:center;padding:10px;background:#f8f9fa;border-radius:4px}.item-info{display:flex;gap:10px;align-items:center}.item-name{font-size:14px;color:#333}.item-quantity{font-size:14px;color:#666}.item-price{font-size:14px;font-weight:600;color:#333}.order-discount{background:#e8f5e9;color:#2e7d32;padding:10px 15px;border-radius:4px;font-size:14px;margin-bottom:15px;border-left:4px solid #4CAF50}.order-shipping{display:flex;gap:10px;font-size:14px;color:#666;margin-bottom:15px;padding:10px;background:#f8f9fa;border-radius:4px}.order-shipping strong{color:#333}.order-footer{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid #e0e0e0}.order-status{padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600}.order-status.completed{background:#e8f5e9;color:#2e7d32}.order-status.processing{background:#fff3e0;color:#e65100}.order-status.shipped{background:#e3f2fd;color:#1565c0}.order-total{font-size:16px;color:#333}.order-total strong{margin-right:5px}@media(max-width:900px){.order-history-header{padding:15px}.order-history-header h2{font-size:20px}.order-history-content,.order-card{padding:15px}.order-header-info{flex-direction:column;gap:10px}.order-footer{flex-direction:column;gap:10px;align-items:flex-start}.item-info{flex-direction:column;align-items:flex-start;gap:5px}}.checkout-form{position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;z-index:10001;overflow-y:auto;padding:20px}.checkout-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--neutral-200);padding-bottom:15px;margin-bottom:25px}.checkout-header h2{margin:0;font-size:24px;color:var(--neutral-900);font-weight:var(--font-bold)}.close-checkout{background:none;border:none;font-size:32px;color:var(--neutral-500);cursor:pointer;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--duration-200) var(--ease-out)}.close-checkout:hover{background:var(--neutral-100);color:var(--neutral-700)}form{max-width:600px;margin:0 auto}.order-summary{background:var(--neutral-50);border-radius:var(--radius-lg);padding:20px;margin-bottom:30px;border:1px solid var(--neutral-200)}.order-summary h3{margin:0 0 15px;font-size:18px;color:var(--neutral-900);font-weight:var(--font-semibold)}.summary-item{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--neutral-200)}.summary-item:last-child{border-bottom:none}.summary-item.discount{color:var(--success-600)}.summary-item.total{font-size:18px;padding-top:12px;margin-top:8px;border-top:2px solid var(--neutral-800);border-bottom:none;font-weight:var(--font-bold)}.form-section{margin-bottom:30px}.form-section h3{margin:0 0 15px;font-size:18px;color:var(--neutral-900);font-weight:var(--font-semibold)}.form-row{margin-bottom:15px}.form-row input,.form-row select{width:100%;padding:12px;border:2px solid var(--neutral-200);border-radius:var(--radius-lg);font-size:16px;box-sizing:border-box;transition:border-color var(--duration-200) var(--ease-out);background:#fff;color:var(--neutral-900)}.form-row input:focus,.form-row select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #a855f71a}.form-row-group{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}.form-row-group input,.form-row-group select{padding:12px;border:2px solid var(--neutral-200);border-radius:var(--radius-lg);font-size:16px;box-sizing:border-box;transition:border-color var(--duration-200) var(--ease-out);background:#fff;color:var(--neutral-900)}.form-row-group input:focus,.form-row-group select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #a855f71a}.card-element-container{padding:15px;border:2px solid var(--neutral-200);border-radius:var(--radius-lg);background:#fff;transition:border-color var(--duration-200) var(--ease-out)}.card-element-container:focus-within{border-color:var(--primary-500);box-shadow:0 0 0 3px #a855f71a}.payment-error{background:var(--error-50);color:var(--error-600);padding:12px 15px;border-radius:var(--radius-lg);margin:15px 0;border-left:4px solid var(--error-500);font-size:14px}.pay-button{width:100%;padding:16px;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-lg);font-size:18px;font-weight:var(--font-semibold);cursor:pointer;transition:all var(--duration-200) var(--ease-out);margin-top:20px;box-shadow:var(--shadow-primary)}.pay-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 48px -12px #a855f780}.pay-button:disabled{background:var(--neutral-300);box-shadow:none;cursor:not-allowed}.secure-notice{text-align:center;color:var(--neutral-500);font-size:14px;margin-top:15px}@media(max-width:900px){.checkout-form{padding:15px}.checkout-header h2{font-size:20px}.form-row-group{grid-template-columns:1fr;gap:15px}.summary-item{font-size:14px}.pay-button{font-size:16px;padding:14px}}.face-guideline-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease}.face-guideline-modal{background:#1a1a1a;border-radius:16px;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #00000080}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#2d2d2d;border-bottom:1px solid #3d3d3d}.modal-header h2{margin:0;font-size:20px;color:#fff;font-weight:600}.close-btn{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:5px 10px;border-radius:50%;transition:background .2s}.close-btn:hover{background:#ffffff1a}.camera-container{position:relative;flex:1;min-height:400px;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden}.camera-video{width:100%;height:100%;object-fit:cover}.camera-error{text-align:center;color:#fff;padding:40px}.camera-error p{font-size:16px;margin-bottom:20px;color:#ff6b6b}.camera-error button{background:#4caf50;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:16px;cursor:pointer;transition:background .2s}.camera-error button:hover{background:#45a049}.face-guideline-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;filter:drop-shadow(0 0 8px rgba(255,255,255,.3))}.guideline-instruction{padding:15px 20px;color:#fff;text-align:center;font-size:16px;font-weight:500;background:#2d2d2d;margin:0}.modal-actions{display:flex;gap:10px;padding:20px;background:#2d2d2d;border-top:1px solid #3d3d3d}.cancel-btn,.capture-btn{flex:1;padding:14px 20px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-btn{background:#424242;color:#fff}.cancel-btn:hover{background:#525252}.capture-btn{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.capture-btn:hover:not(:disabled){background:linear-gradient(135deg,#45a049,#3d8b40);transform:translateY(-1px);box-shadow:0 4px 12px #4caf5066}.capture-btn:disabled{background:#666;cursor:not-allowed;opacity:.5}.camera-loading{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000000b3;color:#fff;z-index:5}.camera-loading p{margin-top:15px;font-size:14px;color:#aaa}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:#4caf50;border-radius:50%;animation:spin 1s linear infinite}@media(max-width:900px){.face-guideline-modal{width:100%;max-width:100%;height:100vh;max-height:100vh;border-radius:0}.guideline-svg{width:250px;height:350px}.guideline-instructions{bottom:120px;font-size:14px}.guideline-instructions p{font-size:14px}.guideline-instructions li{font-size:12px}.modal-actions{padding:15px}}.photo-upload-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.photo-upload-options{background:#fff;border-radius:16px 16px 0 0;padding:20px;width:100%;max-width:500px;animation:slideUp .3s ease-out}.photo-upload-options h3{margin:0 0 20px;font-size:18px;font-weight:600;color:#333;text-align:center}.upload-option{display:flex;align-items:center;gap:16px;width:100%;padding:16px;margin-bottom:12px;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s}.upload-option:hover{background:#e8f4f8;border-color:#4a90e2;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.upload-option:active{transform:translateY(0)}.option-icon{font-size:32px;flex-shrink:0}.option-text{text-align:left;flex:1}.option-text strong{display:block;font-size:16px;color:#333;margin-bottom:4px}.option-text small{display:block;font-size:13px;color:#666}.cancel-option{width:100%;padding:14px;margin-top:8px;background:#fff;border:1px solid #ddd;border-radius:12px;font-size:16px;font-weight:500;color:#666;cursor:pointer;transition:all .2s}.cancel-option:hover{background:#f5f5f5}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(min-width:901px){.photo-upload-overlay{align-items:center}.photo-upload-options{border-radius:16px;max-width:400px}}.collapsible-web-results{margin:12px 0;border-radius:16px;background:linear-gradient(135deg,#8b5cf614,#6366f10d);border:1px solid rgba(139,92,246,.2);overflow:hidden;max-width:100%}.collapsible-web-results__header{display:flex;align-items:center;gap:8px;width:100%;padding:12px 16px;background:linear-gradient(135deg,#8b5cf61f,#6366f114);border:none;cursor:pointer;font-size:14px;font-weight:600;color:#1f2937;text-align:left;transition:background .2s ease}.collapsible-web-results__header:hover{background:linear-gradient(135deg,#8b5cf62e,#6366f11f)}.collapsible-web-results__icon{font-size:16px}.collapsible-web-results__title{flex:1;color:#8b5cf6}.collapsible-web-results__count{font-size:12px;color:#6b7280;font-weight:500}.collapsible-web-results__chevron{font-size:10px;color:#6b7280;transition:transform .3s ease}.collapsible-web-results__chevron.expanded{transform:rotate(180deg)}.collapsible-web-results__content{max-height:0;overflow:hidden;transition:max-height .3s ease-out,padding .3s ease-out;padding:0 12px}.collapsible-web-results__content.expanded{max-height:800px;overflow-y:auto;padding:12px}.collapsible-web-results__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.collapsible-result-card{display:flex;flex-direction:column;background:#fff;border-radius:12px;border:1px solid rgba(139,92,246,.15);overflow:hidden;text-decoration:none;color:inherit;transition:transform .2s ease,box-shadow .2s ease;position:relative}.collapsible-result-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf626}.collapsible-result-card__image{width:100%;aspect-ratio:1;overflow:hidden;background:linear-gradient(135deg,#f3f4f6,#e5e7eb)}.collapsible-result-card__image img{width:100%;height:100%;object-fit:cover}.collapsible-result-card__image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;background:linear-gradient(135deg,#e8def8,#d4c4f0)}.collapsible-result-card__badge{position:absolute;top:8px;left:8px;padding:3px 8px;background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;font-size:9px;font-weight:700;letter-spacing:.5px;border-radius:6px;text-transform:uppercase;box-shadow:0 2px 4px #00000026}.collapsible-result-card__badge.badge--bongin{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 8px #f59e0b66}.collapsible-result-card__badge.badge--partner{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.collapsible-result-card__badge.badge--whitelist{background:linear-gradient(135deg,#8b5cf6,#6366f1)}.collapsible-result-card__badge.badge--web{background:linear-gradient(135deg,#6b7280,#4b5563);text-transform:lowercase}.collapsible-result-card__sponsored{position:absolute;top:8px;right:8px;padding:2px 6px;background:#8b5cf626;color:#7c3aed;font-size:8px;font-weight:600;border-radius:3px;border:1px solid rgba(139,92,246,.3);text-transform:uppercase;letter-spacing:.3px;z-index:2}.collapsible-result-card__reason{display:flex;align-items:center;gap:4px;padding:6px 10px;background:#8b5cf614;font-size:10px;color:#8b5cf6}.collapsible-result-card__reason-icon{font-size:10px}.collapsible-result-card__content{padding:10px;display:flex;flex-direction:column;gap:4px;flex:1}.collapsible-result-card__title{font-size:12px;font-weight:600;color:#1f2937;line-height:1.3;margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.collapsible-result-card__price{font-size:13px;font-weight:700;color:#059669}.collapsible-result-card__snippet{font-size:10px;color:#6b7280;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.collapsible-result-card__meta{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:6px}.collapsible-result-card__domain{font-size:9px;color:#9ca3af;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80%}.collapsible-result-card__arrow{color:#8b5cf6;flex-shrink:0}@media(prefers-color-scheme:dark){.collapsible-web-results{background:linear-gradient(135deg,#8b5cf626,#6366f11a);border-color:#8b5cf659}.collapsible-web-results__header{background:linear-gradient(135deg,#8b5cf633,#6366f126);color:#f9fafb}.collapsible-web-results__header:hover{background:linear-gradient(135deg,#8b5cf647,#6366f133)}.collapsible-web-results__title{color:#a78bfa}.collapsible-web-results__count,.collapsible-web-results__chevron{color:#d1d5db}.collapsible-result-card{background:#fefefe;border-color:#8b5cf64d;box-shadow:0 2px 8px #0003}.collapsible-result-card:hover{box-shadow:0 6px 16px #8b5cf640}.collapsible-result-card__title{color:#1f2937}.collapsible-result-card__snippet{color:#4b5563}.collapsible-result-card__domain{color:#6b7280}.collapsible-result-card__reason{background:#8b5cf61f;color:#7c3aed}.collapsible-result-card__image{background:linear-gradient(135deg,#f3f4f6,#e5e7eb)}}@media(max-width:768px){.collapsible-result-card__badge,.collapsible-result-card__sponsored{font-size:8px;padding:2px 6px}}@media(max-width:480px){.collapsible-web-results__grid{grid-template-columns:repeat(2,1fr);gap:8px}.collapsible-web-results__content.expanded{max-height:450px;padding:8px}.collapsible-result-card__content{padding:8px}.collapsible-result-card__title{font-size:11px}.collapsible-result-card__badge{font-size:7px;padding:2px 5px;max-width:70%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collapsible-result-card__sponsored{top:auto;bottom:8px;right:8px;font-size:7px;padding:2px 5px}.collapsible-result-card__reason{font-size:8px;padding:4px 6px}.collapsible-result-card__snippet{font-size:9px;-webkit-line-clamp:1;line-clamp:1}.collapsible-result-card__price{font-size:11px}}.collapsible-result-card--bongin{border:2px solid rgba(245,158,11,.3);cursor:default}.collapsible-result-card--bongin:hover{border-color:#f59e0b80}.collapsible-result-card__actions{display:flex;align-items:center;gap:6px;margin-top:auto;padding-top:8px}.collapsible-result-card__cart-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;box-shadow:0 2px 4px #8b5cf64d}.collapsible-result-card__cart-btn:hover{transform:translateY(-1px);box-shadow:0 4px 10px #8b5cf673;background:linear-gradient(135deg,#7c3aed,#6d28d9)}.collapsible-result-card__cart-btn:active{transform:translateY(0)}.collapsible-result-card__wishlist-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:#8b5cf614;border:1px solid rgba(139,92,246,.2);border-radius:8px;font-size:14px;cursor:pointer;transition:transform .15s ease,background .15s ease}.collapsible-result-card__wishlist-btn:hover{transform:scale(1.1);background:#8b5cf626}.collapsible-result-card__wishlist-btn.active{background:#ef44441a;border-color:#ef44444d}.collapsible-result-card__view-link{font-size:10px;color:#8b5cf6;text-decoration:none;white-space:nowrap;transition:color .15s ease;background:none;border:none;padding:0;cursor:pointer;font-family:inherit}.collapsible-result-card__view-link:hover{color:#7c3aed;text-decoration:underline}@media(prefers-color-scheme:dark){.collapsible-result-card--bongin{border-color:#f59e0b66}.collapsible-result-card__wishlist-btn{background:#8b5cf626;border-color:#8b5cf64d}.collapsible-result-card__wishlist-btn:hover{background:#8b5cf640}.collapsible-result-card__wishlist-btn.active{background:#ef444426;border-color:#ef444466}.collapsible-result-card__view-link{color:#a78bfa}.collapsible-result-card__view-link:hover{color:#c4b5fd}}@media(max-width:480px){.collapsible-result-card__actions{gap:4px;padding-top:6px}.collapsible-result-card__cart-btn{padding:5px 8px;font-size:10px}.collapsible-result-card__wishlist-btn{width:28px;height:28px;font-size:12px}.collapsible-result-card__view-link{font-size:9px}}:root{--primary-50: #faf5ff;--primary-100: #f3e8ff;--primary-200: #e9d5ff;--primary-300: #d8b4fe;--primary-400: #c084fc;--primary-500: #a855f7;--primary-600: #9333ea;--primary-700: #7e22ce;--primary-800: #6b21a8;--primary-900: #581c87;--secondary-50: #fdf2f8;--secondary-100: #fce7f3;--secondary-200: #fbcfe8;--secondary-300: #f9a8d4;--secondary-400: #f472b6;--secondary-500: #ec4899;--secondary-600: #db2777;--secondary-700: #be185d;--secondary-800: #9f1239;--secondary-900: #831843;--accent-50: #ecfeff;--accent-100: #cffafe;--accent-200: #a5f3fc;--accent-300: #67e8f9;--accent-400: #22d3ee;--accent-500: #06b6d4;--accent-600: #0891b2;--accent-700: #0e7490;--accent-800: #155e75;--accent-900: #164e63;--success-50: #ecfdf5;--success-100: #d1fae5;--success-200: #a7f3d0;--success-300: #6ee7b7;--success-400: #34d399;--success-500: #10b981;--success-600: #059669;--success-700: #047857;--success-800: #065f46;--success-900: #064e3b;--warning-50: #fffbeb;--warning-100: #fef3c7;--warning-200: #fde68a;--warning-300: #fcd34d;--warning-400: #fbbf24;--warning-500: #f59e0b;--warning-600: #d97706;--warning-700: #b45309;--warning-800: #92400e;--warning-900: #78350f;--error-50: #fff1f2;--error-100: #ffe4e6;--error-200: #fecdd3;--error-300: #fda4af;--error-400: #fb7185;--error-500: #f43f5e;--error-600: #e11d48;--error-700: #be123c;--error-800: #9f1239;--error-900: #881337;--neutral-50: #fafaf9;--neutral-100: #f5f5f4;--neutral-200: #e7e5e4;--neutral-300: #d6d3d1;--neutral-400: #a8a29e;--neutral-500: #78716c;--neutral-600: #57534e;--neutral-700: #44403c;--neutral-800: #292524;--neutral-900: #1c1917;--gradient-primary: linear-gradient(135deg, var(--primary-500) 0%, var(--primary-700) 100%);--gradient-secondary: linear-gradient(135deg, var(--secondary-500) 0%, var(--secondary-700) 100%);--gradient-vivid: linear-gradient(135deg, var(--primary-400) 0%, var(--secondary-500) 50%, var(--accent-400) 100%);--gradient-sunset: linear-gradient(135deg, #ff6b6b 0%, #ee5a6f 50%, #c44569 100%);--gradient-ocean: linear-gradient(135deg, var(--accent-400) 0%, var(--primary-500) 100%);--gradient-success: linear-gradient(135deg, var(--success-400) 0%, var(--success-600) 100%);--gradient-button: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-button-brand: linear-gradient(135deg, var(--primary-500) 0%, var(--secondary-500) 100%);--gradient-info: linear-gradient(135deg, var(--accent-100) 0%, var(--accent-200) 100%);--gradient-info-dark: linear-gradient(90deg, var(--accent-500) 0%, var(--accent-600) 100%);--gradient-success-light: linear-gradient(135deg, var(--success-100) 0%, var(--success-200) 100%);--gradient-warning-light: linear-gradient(135deg, var(--warning-100) 0%, var(--warning-200) 100%);--gradient-amber-badge: linear-gradient(135deg, var(--warning-500) 0%, var(--warning-600) 100%);--gradient-mesh-1: radial-gradient(at 40% 20%, var(--primary-300) 0px, transparent 50%), radial-gradient(at 80% 0%, var(--secondary-300) 0px, transparent 50%), radial-gradient(at 0% 50%, var(--accent-200) 0px, transparent 50%);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .18);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .07);--shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px -1px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-primary: 0 10px 40px -10px rgba(168, 85, 247, .4);--shadow-secondary: 0 10px 40px -10px rgba(236, 72, 153, .4);--shadow-success: 0 10px 40px -10px rgba(16, 185, 129, .3);--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", "Roboto Mono", "Cascadia Code", Consolas, 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;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--space-0: 0;--space-px: 1px;--space-0-5: .125rem;--space-1: .25rem;--space-1-5: .375rem;--space-2: .5rem;--space-2-5: .625rem;--space-3: .75rem;--space-3-5: .875rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-7: 1.75rem;--space-8: 2rem;--space-9: 2.25rem;--space-10: 2.5rem;--space-11: 2.75rem;--space-12: 3rem;--space-14: 3.5rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-none: 0;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-3xl: 2rem;--radius-full: 9999px;--duration-75: 75ms;--duration-100: .1s;--duration-150: .15s;--duration-200: .2s;--duration-300: .3s;--duration-500: .5s;--duration-700: .7s;--duration-1000: 1s;--ease-linear: linear;--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--ease-spring: cubic-bezier(.175, .885, .32, 1.275);--z-0: 0;--z-10: 10;--z-20: 20;--z-30: 30;--z-40: 40;--z-50: 50;--z-modal: 1000;--z-popover: 1100;--z-tooltip: 1200;--z-toast: 1300}@media(prefers-color-scheme:dark){:root{--neutral-50: #1c1917;--neutral-100: #292524;--neutral-200: #44403c;--neutral-300: #57534e;--neutral-400: #78716c;--neutral-500: #a8a29e;--neutral-600: #d6d3d1;--neutral-700: #e7e5e4;--neutral-800: #f5f5f4;--neutral-900: #fafaf9;--glass-bg: rgba(28, 25, 23, .7);--glass-border: rgba(255, 255, 255, .1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.glass{background:var(--glass-bg);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.gradient-text{background:var(--gradient-vivid);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hover-lift{transition:transform var(--duration-200) var(--ease-out),box-shadow var(--duration-200) var(--ease-out)}.hover-lift:hover{transform:translateY(-2px)}.hover-glow:hover{box-shadow:var(--shadow-primary)}.transition-all{transition:all var(--duration-200) var(--ease-out)}.transition-colors{transition:color var(--duration-200) var(--ease-out),background-color var(--duration-200) var(--ease-out),border-color var(--duration-200) var(--ease-out)}.transition-transform{transition:transform var(--duration-200) var(--ease-out)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-semibold);line-height:var(--leading-none);text-decoration:none;white-space:nowrap;border:2px solid transparent;border-radius:var(--radius-lg);cursor:pointer;-webkit-user-select:none;user-select:none;min-height:44px;min-width:44px;transition:all var(--duration-200) var(--ease-out);outline:none}.btn:focus-visible{outline:2px solid var(--primary-500);outline-offset:2px}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn--primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-primary)}.btn--primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 48px -12px #a855f780}.btn--primary:active:not(:disabled){transform:translateY(0)}.btn--secondary{background:var(--gradient-secondary);color:#fff;box-shadow:var(--shadow-secondary)}.btn--secondary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 48px -12px #ec489980}.btn--outline{background:transparent;color:var(--primary-600);border-color:var(--primary-300)}.btn--outline:hover:not(:disabled){background:var(--primary-50);border-color:var(--primary-400);transform:translateY(-1px)}@media(prefers-color-scheme:dark){.btn--outline{color:var(--primary-400);border-color:var(--primary-600)}.btn--outline:hover:not(:disabled){background:var(--primary-900);border-color:var(--primary-500)}}.btn--ghost{background:transparent;color:var(--neutral-700)}.btn--ghost:hover:not(:disabled){background:var(--neutral-100)}@media(prefers-color-scheme:dark){.btn--ghost{color:var(--neutral-300)}.btn--ghost:hover:not(:disabled){background:var(--neutral-800)}}.btn--glass{background:var(--glass-bg);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border-color:var(--glass-border);color:var(--neutral-900);box-shadow:var(--shadow-lg)}.btn--glass:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-xl)}@media(prefers-color-scheme:dark){.btn--glass{color:var(--neutral-100)}}.btn--success{background:var(--gradient-success);color:#fff;box-shadow:var(--shadow-success)}.btn--success:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 48px -12px #10b98166}.btn--danger{background:var(--error-500);color:#fff;box-shadow:0 4px 16px #f43f5e4d}.btn--danger:hover:not(:disabled){background:var(--error-600);transform:translateY(-1px);box-shadow:0 8px 24px #f43f5e66}.btn--xs{padding:var(--space-1-5) var(--space-3);font-size:var(--text-xs);min-height:32px;border-radius:var(--radius-md)}.btn--sm{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);min-height:36px;border-radius:var(--radius-md)}.btn--lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base);min-height:52px;border-radius:var(--radius-xl)}.btn--xl{padding:var(--space-5) var(--space-10);font-size:var(--text-lg);min-height:60px;border-radius:var(--radius-xl)}.btn--full{width:100%}.btn--auto{width:auto}.btn-group{display:inline-flex;gap:var(--space-2)}.btn-group--vertical{flex-direction:column}.btn-group--attached .btn{border-radius:0}.btn-group--attached .btn:first-child{border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.btn-group--attached .btn:last-child{border-radius:0 var(--radius-lg) var(--radius-lg) 0}.btn--icon{padding:var(--space-3);width:44px;height:44px}.btn--icon.btn--sm{padding:var(--space-2);width:36px;height:36px}.btn--icon.btn--lg{padding:var(--space-4);width:52px;height:52px}.btn--loading{position:relative;color:transparent;pointer-events:none}.btn--loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite;color:#fff}.btn--gradient-shift{background-size:200% auto;transition:background-position var(--duration-500) var(--ease-out)}.btn--gradient-shift:hover:not(:disabled){background-position:right center}.btn--shine{position:relative;overflow:hidden}.btn--shine:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--duration-700) var(--ease-out)}.btn--shine:hover:before{left:100%}.btn--pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}.setting-item .btn{width:100%}@media(max-width:640px){.btn{font-size:var(--text-sm)}.btn--lg{padding:var(--space-3-5) var(--space-6);font-size:var(--text-base)}.btn-group--stack-mobile{flex-direction:column;width:100%}.btn-group--stack-mobile .btn{width:100%}}:root{--background-color: var(--neutral-50);--chat-box-bg: #ffffff;--user-message-bg: var(--primary-100);--bot-message-bg: var(--neutral-100);--input-bg: #ffffff;--input-border: var(--neutral-300);--button-bg: var(--primary-500);--button-hover-bg: var(--primary-600);--text-color: var(--neutral-900);--link-color: var(--accent-600);--link-hover-color: var(--accent-700);--scrollbar-track: var(--neutral-100);--scrollbar-thumb: var(--neutral-300);--scrollbar-thumb-hover: var(--neutral-400);--safe-bottom: env(safe-area-inset-bottom, 0px);--dropdown-bg: #ffffff;--dropdown-text-color: var(--neutral-900);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(0, 0, 0, .06);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .08)}@supports (height: 100dvh){html,body{min-height:100dvh}}@media(prefers-color-scheme:dark){:root{--background-color: var(--neutral-900);--chat-box-bg: var(--neutral-800);--user-message-bg: var(--primary-900);--bot-message-bg: var(--neutral-700);--input-bg: var(--neutral-800);--input-border: var(--neutral-600);--button-bg: var(--primary-500);--button-hover-bg: var(--primary-600);--text-color: var(--neutral-50);--text-secondary: var(--neutral-400);--link-color: var(--accent-400);--link-hover-color: var(--accent-300);--scrollbar-track: var(--neutral-800);--scrollbar-thumb: var(--neutral-600);--scrollbar-thumb-hover: var(--neutral-500);--dropdown-bg: var(--neutral-800);--dropdown-text-color: var(--neutral-50);--glass-bg: rgba(30, 30, 30, .7);--glass-border: rgba(255, 255, 255, .1);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .4)}}.top-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3);min-height:60px;padding:var(--space-3) var(--space-4);background:var(--glass-bg);backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border-radius:var(--radius-xl);border:1px solid var(--glass-border);box-shadow:var(--shadow-sm)}.build-timestamp{font-size:var(--text-xs);color:var(--neutral-500);font-weight:var(--font-medium)}.language-selector{display:flex;align-items:center;gap:var(--space-3);color:var(--text-color)}.language-selector label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--neutral-600)}.language-selector select{background-color:var(--dropdown-bg);color:var(--dropdown-text-color);border:2px solid var(--neutral-200);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);min-height:44px;font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--duration-200) var(--ease-out)}.language-selector select:hover{border-color:var(--primary-400)}.language-selector select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #a855f71a}@media(prefers-color-scheme:dark){.language-selector label{color:var(--neutral-400)}.language-selector select{border-color:var(--neutral-600)}.language-selector select:hover{border-color:var(--primary-500)}}.settings-button{background:transparent;border:2px solid var(--neutral-200);color:var(--text-color);font-size:20px;padding:var(--space-2-5);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-200) var(--ease-out);min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.settings-button:hover{background:var(--primary-50);border-color:var(--primary-400);transform:translateY(-1px)}@media(prefers-color-scheme:dark){.settings-button{border-color:var(--neutral-600)}.settings-button:hover{background:var(--primary-900);border-color:var(--primary-500)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:500px;width:90%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column}.modal-content.settings-modal{background:#fff;color:#1c1917}.modal-content.settings-modal .modal-header{background:#fafafa;border-bottom:1px solid #e5e5e5}.modal-content.settings-modal .modal-header h3{color:#1c1917}.modal-content.settings-modal .modal-close{color:#666}.modal-content.settings-modal .modal-close:hover{color:#333;background:#f0f0f0}.modal-content.settings-modal .setting-text,.modal-content.settings-modal .setting-text strong{color:#1c1917}.modal-content.settings-modal .setting-text small{color:#666;opacity:1}.modal-content.settings-modal .setting-item{border-bottom-color:#eee}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--input-border)}.modal-header h3{margin:0;color:var(--text-color);font-size:20px}.modal-close{background:transparent;border:none;font-size:28px;color:var(--text-color);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.modal-close:hover{background:var(--dropdown-bg)}.modal-body{padding:20px;overflow-y:auto}.setting-item{padding:16px 0;border-bottom:1px solid var(--input-border)}.setting-item:last-child{border-bottom:none}.setting-label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.setting-label input[type=checkbox]{margin-top:2px;width:18px;height:18px;cursor:pointer;flex-shrink:0}.setting-text{display:flex;flex-direction:column;gap:4px;color:var(--text-color)}.setting-text strong{font-size:15px}.setting-text small{color:var(--text-color);opacity:.7;font-size:13px}.age-prompt-modal{max-width:420px}.age-options{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.age-option-btn{padding:16px 20px;background:var(--gradient-button);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:var(--shadow-primary)}.age-option-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.age-option-btn:active{transform:translateY(0)}.consent-modal{max-width:520px}.modal-btn{padding:12px 24px;border:none;border-radius:6px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-btn--primary{background:var(--gradient-button);color:#fff;box-shadow:var(--shadow-primary)}.modal-btn--primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #667eea66}.modal-btn--secondary{background:var(--dropdown-bg);color:var(--text-color);border:1px solid var(--input-border)}.modal-btn--secondary:hover{background:var(--input-border)}.message.user{background:var(--gradient-primary);color:#fff;border-radius:var(--radius-xl);padding:var(--space-3) var(--space-4);margin:var(--space-2) 0;max-width:80%;box-shadow:var(--shadow-sm);transition:transform var(--duration-150) var(--ease-out)}.message.user:hover{transform:translate(-2px)}.message.bot{background:var(--bot-message-bg);color:var(--text-color);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-4);margin:var(--space-2) 0;max-width:80%;box-shadow:var(--shadow-sm);border:1px solid var(--neutral-200);transition:transform var(--duration-150) var(--ease-out)}.message.bot:hover{transform:translate(2px);border-color:var(--neutral-300)}@media(prefers-color-scheme:dark){.message.bot{border-color:var(--neutral-600)}.message.bot:hover{border-color:var(--neutral-500)}}html,body,#root{height:100%;margin:0;padding:0}.chat-container{display:flex;flex-direction:column;height:100vh;min-height:100vh;padding:20px;padding-bottom:calc(80px + env(safe-area-inset-bottom,0px));background-color:var(--background-color);font-family:Arial,sans-serif;box-sizing:border-box;overflow:hidden;overscroll-behavior:none}@supports (height: 100dvh){.chat-container{height:100dvh;min-height:100dvh}}.app-layout{display:flex;flex:1 1 auto;gap:16px;overflow:hidden;min-height:0;height:100%}.app-body{display:flex;flex:1 1 auto;height:100%;min-height:0;overflow:hidden}.left-pane{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;min-height:0;overflow:hidden}.right-pane{width:360px;max-width:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.chat-column{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.chat-scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.phase-indicator{position:sticky;top:0;z-index:10;padding:12px 16px;border-radius:8px 8px 0 0;margin-bottom:2px;box-shadow:var(--shadow-sm);transition:all var(--duration-300) var(--ease-out)}.phase-indicator--phase1{background:linear-gradient(135deg,var(--accent-50) 0%,var(--accent-100) 100%);border-bottom:3px solid var(--accent-500)}.phase-indicator--phase2{background:linear-gradient(135deg,var(--success-50) 0%,var(--success-100) 100%);border-bottom:3px solid var(--success-500)}.phase-indicator--loading{background:linear-gradient(135deg,var(--neutral-50) 0%,var(--neutral-100) 100%);border-bottom:3px solid transparent;opacity:0}.phase-indicator__logo-placeholder{width:40px;height:40px;border-radius:6px;background:var(--neutral-200)}.phase-indicator__content{display:flex;align-items:center;justify-content:space-between;gap:16px}.phase-indicator__identity{display:flex;align-items:center;gap:8px;font-weight:600;font-size:15px;color:var(--neutral-900)}.phase-indicator__logo{width:40px;height:40px;border-radius:6px;object-fit:cover;object-position:center;background-color:transparent;flex-shrink:0;display:block;transform:scale(1.8);transform-origin:center}.phase-indicator__text{display:flex;flex-direction:column;justify-content:center;gap:0;margin-left:4px}.phase-indicator__icon{font-size:20px}.phase-indicator__name{white-space:nowrap;font-weight:600;font-size:15px;color:var(--neutral-900);line-height:1.2;margin:0;padding:0}.phase-indicator__area{font-size:11px;font-weight:600;color:var(--neutral-700);white-space:nowrap;line-height:1.2;margin:0;padding:0}.phase-indicator__progress{display:flex;align-items:center;gap:12px;flex:1;max-width:200px}.phase-indicator__progress-text{font-size:14px;font-weight:600;color:var(--accent-500);min-width:40px}.phase-indicator__progress-bar{flex:1;height:8px;background-color:#fff9;border-radius:4px;overflow:hidden;box-shadow:inset 0 1px 3px #0000001a}.phase-indicator__progress-fill{height:100%;background:var(--gradient-info-dark);border-radius:4px;transition:width .5s ease}.phase-indicator__back-btn{padding:8px 16px;background-color:#ffffffe6;border:1px solid rgba(16,185,129,.3);border-radius:20px;color:var(--success-500);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.phase-indicator__back-btn:hover{background-color:#fff;border-color:var(--success-500);transform:translate(-2px);box-shadow:0 2px 6px #10b98133}@media(max-width:900px){.phase-indicator{padding:10px 12px}.phase-indicator__content{gap:12px}.phase-indicator__logo{width:24px;height:24px}.phase-indicator__name{font-size:14px}.phase-indicator__area{font-size:11px}.phase-indicator__progress{max-width:120px}.phase-indicator__back-btn{padding:6px 12px;font-size:13px}}.chat-box{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border:1px solid #ddd;padding:10px;background-color:var(--chat-box-bg);margin-bottom:10px;border-radius:5px;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}@media(max-width:900px){.chat-box{padding-bottom:calc(72px + var(--safe-bottom))}}.profile-panel{width:360px;max-width:100%;height:fit-content;max-height:100%;background-color:var(--chat-box-bg);border:1px solid #ddd;border-radius:8px;box-sizing:border-box;display:flex;flex-direction:column;min-height:0;overflow:hidden}.profile-panel__content{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:16px 16px 120px}@media(max-width:900px){.profile-panel__content{padding-bottom:calc(160px + var(--safe-bottom))}}.profile-panel__header-mobile{display:none}.profile-panel__header{display:flex;align-items:center;gap:8px;justify-content:space-between;margin-bottom:12px}.profile-panel__header h2{font-size:1.25rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;letter-spacing:-.02em}@media(max-width:900px){.profile-panel__header{position:sticky;top:0;z-index:2;background:var(--chat-box-bg);padding:8px 0;margin-bottom:16px}}.profile-panel__tag{background-color:var(--warning-400);color:#fff;border-radius:999px;padding:2px 10px;font-size:12px}.profile-panel__section{margin-bottom:16px}.profile-panel__profile-cards{display:flex;flex-direction:column;gap:12px;min-height:0;transition:min-height .3s ease;margin-bottom:32px}.profile-card{position:relative;display:flex;flex-direction:row;align-items:flex-start;gap:0;padding:14px 16px;background-color:#fff;background-image:linear-gradient(135deg,#43e97b14,#38f9d714);border:1px solid rgba(67,233,123,.25);border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);will-change:transform,opacity;color:#1f2937}.profile-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #43e97b26;border-color:#43e97b66}@keyframes fadeInCard{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.profile-card{animation:fadeInCard .4s ease-out}.profile-card--warning{background-color:#fff;background-image:linear-gradient(135deg,#ffc1071a,#ff98001a);border-color:#ffc10766}.profile-card--warning:hover{box-shadow:0 4px 12px #ffc10726;border-color:#ffc10780}.profile-card--error{background-color:#fff;background-image:linear-gradient(135deg,#f443361a,#e539351a);border-color:#f4433666}.profile-card--error:hover{box-shadow:0 4px 12px #f4433626;border-color:#f4433680}.profile-card--empty{border-color:var(--warning-200);background:var(--warning-50);opacity:.8}.profile-card__placeholder{color:var(--neutral-400);font-style:italic;margin:0;font-size:14px}.profile-card__action-btn{padding:8px 16px;background:var(--accent-600);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.profile-card__action-btn:hover{background:var(--accent-700);transform:translateY(-1px)}.profile-card__ai-summary{margin-top:4px}.profile-card__expandable{margin-top:12px;border-top:1px solid var(--neutral-200);padding-top:12px}.profile-card__expand-btn{width:100%;padding:8px;background:transparent;border:1px solid var(--neutral-200);border-radius:6px;font-size:13px;color:var(--neutral-600);cursor:pointer;transition:all .2s}.profile-card__expand-btn:hover{background:var(--neutral-100);border-color:var(--neutral-300)}.profile-card__ai-details{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.profile-card__ai-detail-item{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--neutral-600)}.profile-card__ai-detail-icon{color:var(--accent-600);font-weight:700}.profile-card__ai-detail-text{text-transform:capitalize}.profile-tag--ai{background:var(--accent-100);color:var(--accent-700)}.profile-tag--more{background:var(--neutral-100);color:var(--neutral-500)}.profile-card__icon{font-size:20px;line-height:1;flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.profile-card__content{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;text-align:left}.profile-card__content h4{margin:0;font-size:12px;font-weight:600;color:var(--neutral-500);text-transform:uppercase;letter-spacing:.5px;line-height:1.4;display:flex;align-items:center;gap:8px}.profile-card__inline-edit-btn{background:transparent;border:none;padding:4px 8px;cursor:pointer;font-size:14px;opacity:.5;transition:opacity .2s}.profile-card__inline-edit-btn:hover{opacity:1}.profile-card__edit-inline{display:flex;gap:8px;align-items:center;margin-top:8px}.profile-card__edit-input,.profile-card__edit-select{flex:1;padding:8px 12px;border:2px solid var(--neutral-200);border-radius:6px;font-size:14px}.profile-card__save-btn,.profile-card__cancel-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.profile-card__save-btn{background:var(--success-500);color:#fff}.profile-card__save-btn:hover{background:var(--success-600)}.profile-card__cancel-btn{background:var(--neutral-100);color:var(--neutral-600)}.profile-card__cancel-btn:hover{background:var(--neutral-200)}.profile-card__value{margin:0;font-size:14px;font-weight:500;color:var(--neutral-900);line-height:1.5;word-break:break-word}.profile-card__header{display:flex;align-items:center;gap:6px;min-width:120px;width:auto;max-width:160px;flex-shrink:0}.profile-card__title{font-size:12px;font-weight:600;color:var(--neutral-500);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-card__value--editable{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:4px 0;transition:background-color .15s ease}.profile-card__value--editable:hover{background-color:#00000005;border-radius:4px}.profile-card__edit-icon{opacity:0;font-size:12px;transition:opacity .15s ease;flex-shrink:0}.profile-card__value--editable:hover .profile-card__edit-icon{opacity:.6}.profile-card__empty{color:var(--neutral-400);font-style:italic;font-size:14px}.profile-card__badge{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;padding:2px 6px;border-radius:4px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;animation:badge-fade-in .3s ease-out,badge-fade-out 1s ease-in 60s forwards;z-index:1}.profile-card__badge--updated{background:#10b98126;color:#059669;border:1px solid rgba(16,185,129,.3)}.profile-card__badge--new{background:#3b82f626;color:#2563eb;border:1px solid rgba(59,130,246,.3)}.profile-card__badge--caution{position:absolute;top:8px;right:8px;display:inline-flex;align-items:center;padding:2px 6px;border-radius:4px;font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;background:#f59e0b26;color:#d97706;border:1px solid rgba(245,158,11,.3);animation:none;z-index:1}@keyframes badge-fade-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes badge-fade-out{0%{opacity:1}to{opacity:0}}.profile-card__tags{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-start}.profile-tag{display:inline-block;padding:4px 10px;background-color:#43e97b26;color:var(--text-color);border:1px solid rgba(67,233,123,.3);border-radius:12px;font-size:13px;font-weight:500;white-space:nowrap;transition:all .2s ease}.profile-tag:hover{background-color:#43e97b40;border-color:#43e97b80}.profile-tag--warning{background-color:#ffc10726;border-color:#ffc1074d}.profile-tag--warning:hover{background-color:#ffc10740;border-color:#ffc10780}.profile-card__list{display:flex;flex-direction:column;gap:6px;margin-top:4px}.profile-card__list-item{padding:6px 10px;background-color:#00000008;border-radius:6px;font-size:14px;color:var(--text-color)}@media(prefers-color-scheme:dark){.profile-card__list-item{background-color:#ffffff0d}}.profile-card__more{padding:4px 10px;font-size:13px;color:var(--text-color);opacity:.6;font-style:italic}.profile-card__note{margin:6px 0 0;font-size:13px;color:var(--text-color);opacity:.8}.profile-card--interactive,.profile-card__address{position:relative}.profile-card__edit-btn,.profile-card__add-btn{margin-top:12px;padding:8px 16px;font-size:13px;font-weight:500;border:none;border-radius:6px;cursor:pointer;transition:all .2s;font-family:inherit}.profile-card__edit-btn{background-color:#06b6d41a;color:var(--accent-500)}.profile-card__edit-btn:hover{background-color:#06b6d433}.profile-card__add-btn{background-color:var(--accent-500);color:#fff;width:100%}.profile-card__add-btn:hover{background-color:var(--accent-600)}.profile-empty-state{text-align:center;padding:40px 20px;background:linear-gradient(135deg,#4facfe0d,#00f2fe0d);border:2px dashed rgba(79,172,254,.3);border-radius:12px;margin:20px 0}.profile-empty-icon{font-size:48px;margin-bottom:12px;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.profile-empty-text{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--text-color)}.profile-empty-hint{margin:0;font-size:14px;color:var(--text-color);opacity:.6}.profile-panel__raw-toggle{margin-top:16px;padding:12px;background-color:#00000005;border-radius:8px;cursor:pointer}@media(prefers-color-scheme:dark){.profile-panel__raw-toggle{background-color:#ffffff05}}.profile-panel__raw-toggle summary{font-size:13px;color:var(--text-color);opacity:.5;-webkit-user-select:none;user-select:none;list-style:none;display:flex;align-items:center;gap:6px}.profile-panel__raw-toggle summary::-webkit-details-marker{display:none}.profile-panel__raw-toggle summary:before{content:"▶";display:inline-block;transition:transform .2s ease;font-size:10px}.profile-panel__raw-toggle[open] summary:before{transform:rotate(90deg)}.profile-panel__raw-toggle summary:hover{opacity:.8}.profile-panel__raw-toggle pre{margin-top:12px}.profile-panel__debug{margin-top:24px;padding:8px 12px;background:#00000005;border:1px dashed var(--neutral-300);border-radius:6px;font-size:11px}.profile-panel__debug summary{font-size:10px;color:var(--neutral-400);cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.profile-panel__debug summary:hover{color:var(--neutral-500)}.profile-panel__debug .profile-panel__json{margin-top:8px;padding:8px;background:var(--neutral-50);border-radius:4px;font-size:9px;line-height:1.4;max-height:200px;overflow:auto;color:var(--neutral-600)}.profile-panel__section-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.profile-panel__section-actions{display:flex;gap:8px}.profile-panel__btn{padding:8px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.profile-panel__btn--primary{background:var(--accent-600);color:#fff}.profile-panel__btn--primary:hover{background:var(--accent-700)}.profile-panel__btn--secondary{background:var(--neutral-100);color:var(--neutral-700);border:1px solid var(--neutral-200)}.profile-panel__btn--secondary:hover{background:var(--neutral-200)}.profile-panel__actions{display:flex;gap:8px}.profile-panel__actions button,.profile-panel__section-header button{padding:6px 12px;border-radius:4px;border:1px solid var(--input-border);background-color:var(--input-bg);color:var(--text-color);cursor:pointer;font-size:14px;transition:all .2s ease}.profile-panel__save-btn{background-color:var(--success-500)!important;color:#fff!important;border-color:var(--success-500)!important;font-weight:500}.profile-panel__save-btn:hover:not(:disabled){background-color:var(--success-600)!important;border-color:var(--success-700)!important;transform:translateY(-1px);box-shadow:0 2px 4px #10b9814d}.profile-panel__undo-btn{background-color:var(--warning-400)!important;color:#000!important;border-color:var(--warning-400)!important;font-weight:500}.profile-panel__undo-btn:hover:not(:disabled){background-color:var(--warning-500)!important;border-color:var(--warning-600)!important;transform:translateY(-1px);box-shadow:0 2px 4px #f59e0b4d}.profile-panel__tag--auto{background-color:var(--success-500)!important;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.profile-panel__auto-save-notice{margin-top:12px;padding:8px;background:var(--success-100);border:1px solid var(--success-200);border-radius:4px;color:var(--success-900);font-size:13px;text-align:center}.phase-indicator{display:flex;align-items:center;gap:12px;padding:16px 20px;margin-bottom:16px;border-radius:8px;background:var(--gradient-button);color:#fff;box-shadow:0 4px 6px #0000001a;animation:slideInDown .4s ease-out}.phase-indicator.phase-1{background:var(--gradient-ocean)}.phase-indicator.phase-2{background:var(--gradient-success)}.phase-icon{font-size:28px;line-height:1}.phase-text{display:flex;flex-direction:column;gap:4px;flex:1}.phase-text strong{font-size:16px;font-weight:600;letter-spacing:.3px}.phase-desc{font-size:13px;opacity:.95;font-weight:400}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.profile-completion-banner{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:16px;border-radius:8px;margin-bottom:16px;box-shadow:0 4px 12px #667eea4d}.profile-completion-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.profile-completion-emoji{font-size:24px}.profile-completion-text{font-weight:600;font-size:16px}.profile-completion-bar-container{width:100%;height:8px;background:#ffffff4d;border-radius:4px;overflow:hidden;margin-bottom:8px}.profile-completion-bar{height:100%;background:#4ade80;border-radius:4px;transition:width .5s ease-out;box-shadow:0 0 8px #4ade8080}.profile-completion-message{margin:0;font-size:14px;opacity:.95}.profile-scorecard{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:16px}.profile-scorecard__sample-requirements{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:8px;padding:16px;margin-bottom:16px}.profile-scorecard__sample-requirements--ready{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#10b981}.profile-scorecard__sample-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.profile-scorecard__sample-icon{font-size:24px}.profile-scorecard__sample-title{font-size:16px;font-weight:600;color:var(--neutral-900);margin:0}.profile-scorecard__sample-desc{font-size:13px;color:var(--neutral-600);margin:0 0 12px;line-height:1.4}.profile-scorecard__sample-desc--success{color:var(--success-700);font-weight:500}.profile-scorecard__sample-progress{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;color:var(--warning-800)}.profile-scorecard__sample-bar{flex:1;height:8px;background-color:#ffffff80;border-radius:4px;overflow:hidden}.profile-scorecard__sample-bar-fill{height:100%;background:var(--gradient-amber-badge);border-radius:4px;transition:width .5s ease}.profile-scorecard__summary{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--neutral-200)}.profile-scorecard__legend{display:flex;gap:16px;flex-wrap:wrap;font-size:13px}.profile-scorecard__legend-item{display:flex;align-items:center;gap:6px;color:var(--neutral-500)}.profile-scorecard__dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.profile-scorecard__dot--filled{background:var(--success-500)}.profile-scorecard__dot--missing{background:var(--error-500)}.profile-scorecard__dot--optional{background:var(--warning-500)}.profile-scorecard__category{margin-bottom:16px}.profile-scorecard__category:last-child{margin-bottom:0}.profile-scorecard__category-title{font-size:14px;font-weight:600;color:#374151;margin:0 0 8px}.profile-scorecard__fields{display:flex;flex-direction:column;gap:6px}.profile-scorecard__field{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:6px;font-size:13px;transition:all .2s ease}.profile-scorecard__field--filled{background:#d1fae5;border:1px solid #10b981;color:#065f46}.profile-scorecard__field--missing{background:#fee2e2;border:1px solid #ef4444;color:#991b1b}.profile-scorecard__field--optional{background:#fef3c7;border:1px solid #f59e0b;color:#92400e}.profile-scorecard__field-label{font-weight:500;flex:1}.profile-scorecard__field-edit-btn{background:transparent;border:none;padding:4px 8px;cursor:pointer;font-size:16px;opacity:.5;transition:opacity .2s;margin-left:8px}.profile-scorecard__field-edit-btn:hover{opacity:1;transform:scale(1.1)}.profile-scorecard__field-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap}.profile-scorecard__field-badge--completed{background:#e8f5e9;color:#2e7d32}.profile-scorecard__field-badge--optional{background:#f5f5f5;color:#757575}.profile-scorecard__field-points{font-weight:600;font-size:12px;opacity:.8}.input-options{display:flex;align-items:center;gap:8px}.auto-save-option{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#495057;-webkit-user-select:none;user-select:none;flex:1}.auto-save-option input[type=checkbox]{cursor:pointer;width:16px;height:16px}.auto-save-option span{font-weight:500}.sample-request-button{background:var(--gradient-secondary);color:#fff;border:none;padding:var(--space-3) var(--space-5);border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--duration-200) var(--ease-out);box-shadow:var(--shadow-secondary);white-space:nowrap;flex-shrink:0;min-height:44px;display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.sample-request-button .btn-icon{font-size:18px;line-height:1;flex-shrink:0}.sample-request-button .btn-text{font-size:var(--text-sm);font-weight:var(--font-medium);white-space:nowrap}@media(max-width:600px){.sample-request-button{padding:var(--space-2) var(--space-2-5);min-width:44px}.sample-request-button .btn-text{display:none}.sample-request-button .btn-icon{font-size:20px}}.sample-request-button:hover{transform:translateY(-2px);box-shadow:0 12px 48px -12px #ec489980}.sample-request-button:active{transform:translateY(0)}.healthcare-manager-button{display:flex;align-items:center;gap:6px;padding:8px 14px;background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff;border:none;border-radius:20px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 16px -4px #06b6d466;position:relative}.healthcare-manager-button .btn-icon{font-size:16px}.healthcare-manager-button .btn-text{white-space:nowrap}.healthcare-manager-button .btn-badge{position:absolute;top:-6px;right:-6px;background:var(--gradient-amber-badge);color:#fff;font-size:8px;font-weight:700;padding:2px 5px;border-radius:8px;letter-spacing:.5px;box-shadow:0 2px 4px #0003}.healthcare-manager-button:hover{transform:translateY(-2px);box-shadow:0 12px 48px -12px #06b6d480}.healthcare-manager-button:active{transform:translateY(0)}@media(max-width:480px){.healthcare-manager-button{padding:8px 10px;font-size:12px}.healthcare-manager-button .btn-text{display:none}.healthcare-manager-button .btn-badge{top:-4px;right:-4px;font-size:7px}}.sample-status-badge{display:inline-flex;align-items:center;gap:4px;margin-top:6px;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:500;position:relative;cursor:default}.sample-status-badge:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:6px 10px;background:#000000d9;color:#fff;font-size:12px;font-weight:400;border-radius:6px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:100;margin-bottom:4px}.sample-status-badge:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#000000d9;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:100}.sample-status-badge:hover:after,.sample-status-badge:hover:before{opacity:1;visibility:visible}.sample-status-badge--sample-requested{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:1px solid #f59e0b}.sample-status-badge--sample-sent{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af;border:1px solid #3b82f6}.sample-status-badge--sample-delivered{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46;border:1px solid #10b981}.sample-status-badge__icon{font-size:12px}.sample-status-badge__text{font-size:10px}.sample-status-badge__date{display:none}.profile-card__address{display:flex;align-items:flex-start;gap:6px}.profile-card__address p{flex:1;margin:0}.profile-card__address .profile-card__edit-icon{flex-shrink:0;opacity:.6;font-size:12px}.profile-panel__actions button:disabled,.profile-panel__section-header button:disabled{cursor:not-allowed;opacity:.6}.profile-panel__json{max-height:200px;overflow-y:auto;background-color:#f7f7f7;border-radius:6px;padding:12px;font-size:12px;line-height:1.4}.profile-panel__json--highlighted{position:relative}.profile-panel__json-line--changed{background-color:#d4edda;border-left:3px solid #28a745;padding-left:8px;margin-left:-8px;display:inline-block;width:calc(100% + 8px);animation:fadeInGreen .5s ease-in-out}@media(prefers-color-scheme:dark){.profile-panel__json-line--changed{background-color:#28a74533;border-left-color:#28a745}}@keyframes fadeInGreen{0%{background-color:#a3d9a5;border-left-color:#1e7e34}to{background-color:#d4edda;border-left-color:#28a745}}@media(prefers-color-scheme:dark){@keyframes fadeInGreen{0%{background-color:#28a74566;border-left-color:#52c97e}to{background-color:#28a74533;border-left-color:#28a745}}}.profile-panel__conflicts{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.profile-panel__conflicts li{border:1px solid #f5c6cb;background-color:#f8d7da;border-radius:6px;padding:10px;font-size:13px}.profile-panel__extracted{display:flex;flex-direction:column;gap:12px}.profile-panel__extracted-item{background:linear-gradient(to right,#d4edda,#f8f9fa);border-left:4px solid #28a745;border-radius:6px;padding:12px;animation:slideInFromLeft .3s ease-out}@media(prefers-color-scheme:dark){.profile-panel__extracted-item{background:linear-gradient(to right,#28a74526,#1e1e1e4d);border-left-color:#52c97e}}.profile-panel__extracted-field{display:flex;align-items:center;gap:8px;margin-bottom:8px}.profile-panel__extracted-field strong{color:#155724;font-size:14px;text-transform:capitalize}@media(prefers-color-scheme:dark){.profile-panel__extracted-field strong{color:#52c97e}}.profile-panel__extracted-path{font-size:11px;color:#6c757d;font-family:monospace;background-color:#0000000d;padding:2px 6px;border-radius:3px}@media(prefers-color-scheme:dark){.profile-panel__extracted-path{background-color:#ffffff1a;color:#adb5bd}}.profile-panel__extracted-change{display:flex;flex-direction:column;gap:4px;font-size:12px}.profile-panel__label{font-weight:600;color:#6c757d;margin-right:6px}.profile-panel__old-value{color:#856404;text-decoration:line-through;opacity:.7}@media(prefers-color-scheme:dark){.profile-panel__old-value{color:#ffc107}}.profile-panel__new-value{color:#155724;font-weight:500}@media(prefers-color-scheme:dark){.profile-panel__new-value{color:#52c97e}}@keyframes slideInFromLeft{0%{transform:translate(-20px);opacity:0}to{transform:translate(0);opacity:1}}.profile-panel__evidence{font-style:italic;color:#555}.profile-panel__alert{border-radius:6px;padding:10px;margin-bottom:12px;font-size:14px}.profile-panel__alert--warning{background-color:#fff3cd;border:1px solid #ffeeba;color:#856404}.profile-panel__alert--error{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.profile-panel__loading,.profile-panel__empty{text-align:center;padding:24px;color:#666;font-size:14px}.profile-panel__section-header{display:flex;align-items:center;justify-content:space-between;margin-top:24px;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--neutral-200)}.profile-panel__section-header h3{font-size:1.1rem;font-weight:700;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin:0;letter-spacing:-.01em}.editor-picks-grid{display:grid;grid-template-columns:1fr;gap:16px;padding:0;margin:0}.product-card{position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .3s ease;box-shadow:0 1px 3px #0000001a}.product-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.product-card__badge{position:absolute;top:12px;right:12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:10px;font-weight:600;letter-spacing:.5px;padding:4px 8px;border-radius:4px;z-index:10;box-shadow:0 2px 4px #0003}.product-card__badge--sponsored{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.product-card__image-wrapper{position:relative;width:100%;height:120px;background:linear-gradient(135deg,#f5f7fa,#e4e8ec);overflow:hidden}.product-card__image{width:100%;height:100%;object-fit:contain;padding:8px;transition:transform .3s ease}.product-card:hover .product-card__image{transform:scale(1.05)}.product-card__image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:48px;background:linear-gradient(135deg,#f5f7fa,#e4e8ec)}.product-card__content{padding:16px}.product-card__title{font-size:16px;font-weight:600;color:#111827;margin:0 0 8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-card__meta{display:flex;align-items:center;gap:6px;font-size:13px;color:#6b7280;margin-bottom:12px}.product-card__brand{font-weight:500;color:#4b5563}.product-card__separator{color:#d1d5db}.product-card__price{font-weight:600;color:#059669}.product-card__match{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#fef3c7,#fde68a);padding:6px 12px;border-radius:20px;margin-bottom:12px}.product-card__match-icon{font-size:14px}.product-card__match-score{font-size:13px;font-weight:600;color:#92400e}.product-card__reason{font-size:13px;line-height:1.6;color:#4b5563;margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.product-card__tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.product-card__tag{font-size:11px;font-weight:500;color:#6366f1;background:#eef2ff;padding:4px 10px;border-radius:12px;white-space:nowrap}.product-card__actions{display:flex;gap:8px}.product-card__button{flex:1;padding:10px 16px;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;text-align:center;display:inline-flex;align-items:center;justify-content:center}.product-card__button--primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.product-card__button--primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.product-card__button--secondary{flex:0 0 44px;background:#f3f4f6;color:#6b7280;font-size:18px;padding:10px}.product-card__button--secondary:hover{background:#e5e7eb;color:#ef4444}@media(prefers-color-scheme:dark){.product-card{background:#1f2937;border-color:#374151}.product-card__title{color:#f9fafb}.product-card__meta,.product-card__reason{color:#d1d5db}.product-card__brand{color:#e5e7eb}.product-card__button--secondary{background:#374151;color:#9ca3af}.product-card__button--secondary:hover{background:#4b5563}}.profile-panel__picks{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.profile-panel__picks li{border:1px solid #ddd;border-radius:6px;padding:10px;background-color:#fefefe}.profile-panel__pick-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.profile-panel__highlights{margin:6px 0 0;padding-left:16px}@media(max-width:900px){.app-layout{display:flex;flex-direction:column;height:100vh;position:relative}.chat-column{flex:1;overflow:hidden;display:flex;flex-direction:column}.chat-box{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:10px;margin-bottom:70px}.input-container{position:relative;z-index:999;background:var(--chat-box-bg);padding:12px;border-top:1px solid #ddd}.profile-panel{position:fixed;bottom:0;left:0;right:0;width:100%;max-height:85vh;background-color:var(--chat-box-bg);border:1px solid #ddd;border-radius:20px 20px 0 0;box-shadow:0 -4px 20px #00000026;transition:transform .3s cubic-bezier(.4,0,.2,1);z-index:1000;overflow:hidden;display:flex;flex-direction:column}.profile-panel.collapsed{transform:translateY(calc(100% - 60px))}.profile-panel.expanded{transform:translateY(0)}.profile-panel__header-mobile{display:flex;align-items:center;justify-content:center;padding:10px;min-height:60px;background:var(--chat-box-bg);border-bottom:1px solid rgba(0,0,0,.08);flex-shrink:0;position:relative}.profile-panel__toggle-btn{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 12px #667eea4d}.profile-panel__toggle-btn:hover{transform:scale(1.1);box-shadow:0 6px 16px #667eea66}.profile-panel__toggle-btn:active{transform:scale(.95)}.profile-panel__content{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:16px;touch-action:pan-y}.profile-panel__header button{display:none}@media(prefers-color-scheme:dark){.profile-panel__header-mobile{border-bottom:1px solid rgba(255,255,255,.05)}}}html,body{height:100%;overscroll-behavior:none}.banner{padding:8px 12px;border-radius:6px;margin-bottom:8px;font-size:.95rem;border:1px solid transparent}.banner--info{background:#eef6ff;border-color:#cfe3ff}.banner--warning{background:#fff8e6;border-color:#ffe2a8}.banner--error{background:#ffecec;border-color:#ffbaba}.diff-viewer{padding:10px;border:1px dashed #ccc;border-radius:6px;margin:8px 0;background:#fff9}.diff-viewer h4{margin:0 0 6px}.diff-viewer ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.diff-viewer__row{display:flex;gap:8px;align-items:center;margin-top:4px;font-size:.85rem}.diff-viewer__old{opacity:.7}.diff-viewer__arrow{opacity:.6}.diff-viewer__new{font-weight:600}.diff-viewer__conf{margin-left:auto;opacity:.7}.empty{opacity:.7;font-style:italic;margin-bottom:8px}.chat-box::-webkit-scrollbar{width:8px}.chat-box::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:4px}.chat-box::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}.chat-box::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}.message{margin:5px 0;padding:8px 12px;border-radius:5px;max-width:80%;word-wrap:break-word;color:var(--text-color);opacity:0;transform:translateY(10px);animation:fadeInUp .3s forwards}.message.user{background-color:var(--user-message-bg);align-self:flex-end}.message.bot{background-color:var(--bot-message-bg);align-self:flex-start}.message.bot.web-search-message{max-width:100%;background:transparent;border:none;box-shadow:none;padding:0}.message a{color:var(--link-color);text-decoration:none}.message a:hover{color:var(--link-hover-color);text-decoration:underline}@media(prefers-color-scheme:dark){.message a{color:#8ab4f8}.message a:hover{color:#4a90e2}}.message.bot.loading{display:flex;align-items:center}.message.bot.loading .spinner{margin-right:10px}.input-container{display:flex;gap:8px;border-top:1px solid #ddd;padding:10px 16px;padding-bottom:calc(18px + env(safe-area-inset-bottom,12px));background-color:var(--input-bg);align-items:center;flex-shrink:0;flex-wrap:nowrap;box-sizing:border-box;position:relative;z-index:1}@media(max-width:900px){.input-container{position:fixed;bottom:0;left:0;right:0;z-index:9997}}.input-container input[type=text]{flex:1;min-width:0;min-height:44px;padding:var(--space-2-5) var(--space-3);border:2px solid var(--input-border);border-radius:var(--radius-lg);font-size:16px;font-family:var(--font-sans);background-color:var(--input-bg);color:var(--text-color);transition:all var(--duration-200) var(--ease-out);box-sizing:border-box}.input-container input[type=text]:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #a855f71a}.image-upload-label{min-width:44px;min-height:44px;padding:var(--space-2);background:var(--gradient-secondary);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:20px;display:flex;align-items:center;justify-content:center;transition:all var(--duration-200) var(--ease-out);box-shadow:var(--shadow-sm)}.image-upload-label:hover{transform:translateY(-1px);box-shadow:var(--shadow-secondary)}.image-upload-label:active{transform:translateY(0)}.input-container button,.send-button{padding:var(--space-2-5) var(--space-5);background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-semibold);transition:all var(--duration-200) var(--ease-out);min-height:44px;display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-width:48px;box-shadow:var(--shadow-primary)}.send-button:hover{transform:translateY(-1px);box-shadow:0 12px 48px -12px #a855f780}.send-button .btn-icon,.manual-search-button .btn-icon{font-size:18px;line-height:1;flex-shrink:0}.send-button .btn-text,.manual-search-button .btn-text{font-size:14px;font-weight:500;white-space:nowrap}@media(max-width:480px){.send-button,.manual-search-button,.sample-request-button{padding:var(--space-2) var(--space-2-5);min-width:44px}.send-button .btn-text,.manual-search-button .btn-text{display:none}.send-button .btn-icon,.manual-search-button .btn-icon{font-size:20px}}.manual-search-button{padding:var(--space-2-5) var(--space-5);background:var(--gradient-success);color:#fff;border:none;border-radius:var(--radius-lg);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-semibold);transition:all var(--duration-200) var(--ease-out);min-height:44px;display:flex;align-items:center;justify-content:center;gap:var(--space-2);min-width:48px;box-shadow:var(--shadow-success)}.manual-search-button:hover{transform:translateY(-1px);box-shadow:0 12px 48px -12px #10b98166}.login-container{display:flex;justify-content:center;align-items:center;height:100vh;background:linear-gradient(135deg,#ece9e6,#fff);padding:20px}.login-form{background:#fff;padding:2rem;border-radius:10px;box-shadow:0 4px 8px #0000001a;width:100%;max-width:400px}.login-form h2{margin-bottom:1.5rem;text-align:center;font-size:24px;color:#333}.input-group{margin-bottom:1rem}.input-field{width:100%;box-sizing:border-box;padding:.75rem;border:1px solid #ddd;border-radius:5px;outline:none;transition:border .3s;font-size:16px;background-color:var(--input-bg);color:var(--text-color)}.input-field:focus{border-color:#007bff}.error-message{color:#e74c3c;margin-bottom:1rem;font-size:14px}.login-button{width:100%;box-sizing:border-box;padding:.75rem;background-color:var(--button-bg);border:none;color:#fff;border-radius:5px;font-size:16px;cursor:pointer;transition:background-color .3s;margin-bottom:1rem}.login-button:hover{background-color:var(--button-hover-bg)}.oauth-button{width:100%;box-sizing:border-box;padding:.75rem;background-color:#db4437;border:none;color:#fff;border-radius:5px;font-size:16px;cursor:pointer;transition:background-color .3s}.oauth-button:hover{background-color:#c3362f}@media(max-width:600px){.login-form{padding:1.5rem}}.message h1,.message h2,.message h3,.message h4,.message h5,.message h6{margin:8px 0;font-weight:700;color:var(--text-color)}.message p{margin:8px 0;line-height:1.5;color:var(--text-color)}.message strong{font-weight:700}.message em{font-style:italic}.message code{background-color:#0000000d;padding:2px 4px;border-radius:3px;font-family:Courier New,Courier,monospace}.message pre{background-color:#0000000d;padding:10px;border-radius:5px;overflow-x:auto;font-family:Courier New,Courier,monospace;margin:8px 0}.message ul,.message ol{margin:8px 0 8px 20px;padding:0;color:var(--text-color)}.message li{margin:4px 0}.message blockquote{border-left:4px solid #ccc;padding-left:10px;color:#666;margin:8px 0;font-style:italic}.message img{max-width:100%;height:auto;border-radius:5px;margin:8px 0}.spinner{width:20px;height:20px;position:relative}.double-bounce1,.double-bounce2{width:100%;height:100%;border-radius:50%;background-color:#007bff;opacity:.6;position:absolute;top:0;left:0;animation:bounce 2s infinite ease-in-out}.double-bounce2{animation-delay:-1s}@keyframes bounce{0%,to{transform:scale(0)}50%{transform:scale(1)}}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.chat-container{padding:10px}.input-container button{padding:10px;font-size:14px}.input-container input[type=text]{padding:8px;font-size:14px}.message{max-width:100%}}.input-container button{color:#fff}@media(prefers-color-scheme:dark){.message blockquote{border-left:4px solid #555;color:#aaa}.message a{color:var(--link-color)}.message a:hover{color:var(--link-hover-color)}}.body--sheet-open,body.bottomsheet-open{overflow:hidden;touch-action:none;overscroll-behavior:contain;position:fixed;width:100%}html,body,#root{height:100%;overscroll-behavior:none}@supports (-webkit-touch-callout: none){.chat-container,.chat-box{-webkit-overflow-scrolling:touch}}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;opacity:0;pointer-events:none;transition:opacity .18s ease;z-index:999}.sheet-overlay.open{opacity:1;pointer-events:auto}.sheet-panel{position:fixed;left:0;right:0;bottom:0;display:none;background:var(--chat-box-bg);border-top-left-radius:16px;border-top-right-radius:16px;box-shadow:0 -6px 24px #0000001f;flex-direction:column;z-index:1000;touch-action:pan-y;overscroll-behavior:contain}.sheet-panel--tall{height:88vh;height:92dvh;max-height:92svh}.sheet-panel--full{height:96vh;height:calc(98dvh + env(safe-area-inset-bottom,0px));max-height:calc(98svh + env(safe-area-inset-bottom,0px))}.sheet-panel.open{display:flex}.sheet-header{position:sticky;top:0;background:var(--chat-box-bg);padding:12px 16px 8px;border-bottom:1px solid rgba(0,0,0,.06);display:grid;grid-template-columns:24px 1fr 24px;align-items:center;gap:8px;z-index:1;flex-shrink:0;min-width:280px}@media(prefers-color-scheme:dark){.sheet-header{border-bottom-color:#ffffff1a}}.sheet-handle{grid-column:1 / -1;height:4px;width:44px;margin:0 auto 8px;border-radius:999px;background:#00000026}@media(prefers-color-scheme:dark){.sheet-handle{background:#ffffff4d}}.sheet-header h3{margin:0;text-align:center;font-size:16px;color:var(--text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.sheet-close{justify-self:end;background:transparent;border:none;font-size:18px;cursor:pointer;color:var(--text-color);padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.sheet-close:hover{opacity:.7}.sheet-body{padding:12px 16px 24px;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;max-height:100%;overscroll-behavior:contain;scrollbar-gutter:stable both-edges;position:relative}.sheet-body *{max-width:100%}.sheet-body .profile-panel{height:auto;overflow:visible}.open-profile-fab{display:none;position:fixed;right:20px;bottom:120px;width:56px;height:56px;border-radius:50%;border:2px solid rgba(168,85,247,.2);background:var(--gradient-primary);box-shadow:0 4px 12px #00000026;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);align-items:center;justify-content:center;z-index:1000;overflow:hidden;gap:8px;padding:0}.compact .open-profile-fab{display:flex}.open-profile-fab .fab-icon{font-size:24px;line-height:1}.open-profile-fab .fab-profile-photo{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.9);box-shadow:0 2px 4px #0000001a}.open-profile-fab .fab-text{font-size:14px;font-weight:600;white-space:nowrap;display:none}@media(min-width:480px){.compact .open-profile-fab{width:auto;padding:12px 20px;border-radius:28px;right:20px;bottom:125px}.compact .open-profile-fab .fab-text{display:inline}}@media(min-width:901px){.compact .open-profile-fab{padding:12px 24px;right:24px;bottom:150px}}.open-profile-fab:hover{transform:translateY(-2px);box-shadow:0 8px 24px #667eea4d}.open-profile-fab:active{transform:translateY(0)}.compact .chat-input-bar{padding-right:76px}.desktop-profile-wrapper{width:360px;max-width:100%;flex:0 0 auto;align-self:stretch;display:flex;flex-direction:column;min-height:0;max-height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.desktop-profile-wrapper .profile-panel{flex:1 1 auto;min-height:min-content;overflow:visible}.compact .desktop-profile-wrapper.desktop-only{display:none!important}@media(max-width:900px){.desktop-profile-wrapper.desktop-only{display:none!important}}.body--sheet-open{overflow:hidden;touch-action:none}@media(max-width:900px){.body--sheet-open .input-container{display:none}}.bottom-sheet__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;-webkit-backdrop-filter:saturate(120%) blur(2px);backdrop-filter:saturate(120%) blur(2px);z-index:9998;opacity:0;pointer-events:none;transition:opacity .2s ease}.bottom-sheet__overlay.open{opacity:1;pointer-events:auto}.bottom-sheet{position:fixed;left:0;right:0;bottom:0;z-index:9999;transform:translateY(100%);opacity:0;visibility:hidden;transition:transform .28s ease,opacity .2s ease,visibility 0s linear .28s;will-change:transform;max-height:100dvh;padding-bottom:env(safe-area-inset-bottom,0);display:none}.bottom-sheet.open{transform:translateY(0)!important;opacity:1;visibility:visible;transition:transform .28s ease,opacity .2s ease,visibility 0s}html.compact .bottom-sheet{display:block!important}@media(min-width:901px)and (max-width:1279px){.bottom-sheet{max-width:90vw;left:50%;right:auto;transform:translate(-50%) translateY(100%);border-radius:20px}.bottom-sheet.open{transform:translate(-50%) translateY(0)!important}}@media(min-width:1280px){.bottom-sheet{display:none!important}}.bottom-sheet__panel{margin:0 auto;width:100%;max-width:720px;height:82vh;background:var(--chat-box-bg);border-top-left-radius:16px;border-top-right-radius:16px;box-shadow:0 -8px 32px #0000003d;display:flex;flex-direction:column}.bottom-sheet__handle{width:40px;height:4px;border-radius:999px;background:#d6d6d6;margin:10px auto 6px}@media(prefers-color-scheme:dark){.bottom-sheet__handle{background:#ffffff4d}}.bottom-sheet__header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:6px 16px 8px;border-bottom:1px solid #eee;background:var(--chat-box-bg)}@media(prefers-color-scheme:dark){.bottom-sheet__header{border-bottom-color:#ffffff1a}}.bottom-sheet__header h3{margin:0;font-size:16px;color:var(--text-color);white-space:nowrap}.bottom-sheet--sm .bottom-sheet__panel{height:clamp(40vh,calc(var(--vh, 1vh) * 40),40vh)}.bottom-sheet--md .bottom-sheet__panel{height:clamp(70vh,calc(var(--vh, 1vh) * 70),70vh)}.bottom-sheet--lg .bottom-sheet__panel{height:clamp(82vh,calc(var(--vh, 1vh) * 82),90svh);max-height:min(92vh,90svh)}@media(max-width:900px){.bottom-sheet--sm .bottom-sheet__panel{height:clamp(60vh,calc(var(--vh, 1vh) * 60),60vh)}.bottom-sheet--md .bottom-sheet__panel{height:clamp(80vh,calc(var(--vh, 1vh) * 80),80vh)}}.bottom-sheet__scroll{position:relative;flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:8px 16px calc(80px + env(safe-area-inset-bottom,12px)) 16px}.bottom-sheet__body{overflow:visible}@media(max-width:900px){.bottom-sheet__scroll{max-height:92dvh;padding-bottom:max(72px,calc(var(--safe-bottom) + 72px))}.bottom-sheet__panel{max-height:92dvh}}.bottom-sheet__close{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;padding:8px;margin:-8px -8px -8px 8px;line-height:0;cursor:pointer;color:var(--text-color);font-size:24px}.bottom-sheet__close:hover{opacity:.7}.profile-panel__section{margin-bottom:24px;position:relative;width:100%}.profile-panel__section h4{margin:0 0 6px}@media(max-width:900px){.profile-panel__section{position:static!important;transform:none!important;margin-bottom:48px}.profile-panel__profile-cards{display:flex!important;flex-direction:column!important;margin-bottom:64px!important;min-height:0!important}.profile-card{margin-bottom:12px}.editor-picks-grid,.profile-panel__picks{position:static!important;transform:none!important;max-height:none!important;margin:16px 0}}@media(min-width:901px){.bottom-sheet,.bottom-sheet__overlay{display:none!important}}@media(prefers-reduced-motion:reduce){.sheet-panel,.sheet-overlay,.bottom-sheet__overlay{transition:none}}:root{--vh: 1vh}body.sheet-open{overflow:hidden;touch-action:none}.profile-panel--sheet{position:fixed;left:0;right:0;bottom:0;background:var(--chat-box-bg);color:var(--text-color);border-radius:16px 16px 0 0;box-shadow:0 -8px 24px #00000059;z-index:9999;height:clamp(60vh,calc(var(--vh, 1vh) * 82),92vh);max-height:92vh;display:flex;flex-direction:column;transform:translateY(0);will-change:transform;overscroll-behavior:contain;padding-bottom:max(env(safe-area-inset-bottom),12px)}.profile-panel__handle{width:48px;height:4px;border-radius:2px;background:#ffffff4d;align-self:center;margin:8px 0 4px}@media(prefers-color-scheme:light){.profile-panel__handle{background:#00000026}}.profile-panel__scroll{flex:1 1 auto;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-gutter:stable both-edges;padding:8px 16px 4px}.profile-panel__actions{position:sticky;bottom:0;display:flex;gap:8px;padding:8px 12px;background:var(--chat-box-bg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding-bottom:max(8px,env(safe-area-inset-bottom));border-top:1px solid rgba(255,255,255,.1)}@media(prefers-color-scheme:light){.profile-panel__actions{border-top-color:#0000001a}}@media(max-width:900px){.profile-panel{position:static!important;transform:none!important;max-height:none!important;box-shadow:none!important}.profile-panel__actions{position:static!important}}.bottom-actions{position:fixed;bottom:0;left:0;right:0;display:flex;gap:10px;padding:8px 12px;background:var(--input-bg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding-bottom:max(10px,env(safe-area-inset-bottom));z-index:900;border-top:1px solid rgba(255,255,255,.1)}@media(prefers-color-scheme:light){.bottom-actions{border-top-color:#0000001a}}.bottom-actions__btn{flex:1 1 0;min-width:0;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:6px;font-size:14px;font-weight:600}.bottom-actions__btn--iconOnly{flex:0 0 auto;width:44px}@media(max-width:420px){.bottom-actions__btn .label{display:none}}@supports (-webkit-touch-callout: none){html,body{position:static!important;overflow:visible!important;height:auto!important}#root{height:auto!important;overflow:visible!important}}.body--sheet-open{overflow:hidden!important;touch-action:none!important}@media(max-width:900px){.bottom-sheet .profile-panel,.sheet-panel .profile-panel{position:static!important;inset:auto!important;transform:none!important;max-height:none!important;box-shadow:none!important;border-radius:12px!important;overflow:visible!important}.bottom-sheet__scroll{flex:1 1 auto;min-height:0;overflow-y:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding-bottom:calc(140px + env(safe-area-inset-bottom,12px))!important}.bottom-sheet__scroll .profile-panel__content{overflow:visible!important;max-height:none!important}.editor-picks-grid,.profile-panel__picks,.profile-panel__section{position:static!important;transform:none!important;max-height:none!important}.profile-panel__actions{position:sticky!important;bottom:0!important;z-index:2!important}}.bottom-actions{z-index:900!important}.bottom-sheet{z-index:9999!important}.bottom-sheet__overlay{z-index:9998!important}.chat-box,.chat-scroll,.chat-container{padding-bottom:max(72px,var(--safe-bottom))!important}.toast-notification{position:fixed;top:80px;right:20px;background-color:var(--success-500);color:#fff;padding:16px 24px;border-radius:8px;box-shadow:0 4px 12px #00000026;z-index:10000;font-size:14px;font-weight:500;animation:slideInRight .3s ease-out,fadeOut .3s ease-in 2.7s;max-width:320px;word-wrap:break-word}@keyframes slideInRight{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@media(max-width:900px){.toast-notification{top:60px;right:10px;left:10px;max-width:none}}:root{--topbar-h: 36px;--topbar-pad-y: 8px;--topbar-gap: 10px;--topbar-radius: 10px}.top-bar{display:flex;align-items:center;gap:var(--topbar-gap);padding:var(--topbar-pad-y) 16px;min-height:calc(var(--topbar-h) + 2 * var(--topbar-pad-y));box-sizing:border-box}.top-bar select,.top-bar button,.settings-button{height:var(--topbar-h);min-height:var(--topbar-h);box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;line-height:1;border-radius:var(--topbar-radius);padding:0 12px}.top-bar select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:36px;background-clip:padding-box}.settings-button{width:var(--topbar-h);padding:0;cursor:pointer;border:1px solid transparent;background:transparent;transition:all .2s ease}.settings-button:hover{background:#00c89b1a;border-color:#00c89b4d}.settings-button:active{transform:scale(.96)}.top-bar svg{display:block}.reco-expert,.reco-expert__header,.section-recommendation,.section-recommendation__title,.section-title{background-color:transparent!important;border:none!important;box-shadow:none!important;outline:none!important}.reco-expert:before,.reco-expert:after,.reco-expert__header:before,.reco-expert__header:after,.section-recommendation:before,.section-recommendation:after,.section-title:before,.section-title:after{content:none!important;background:none!important;border:0!important;box-shadow:none!important}.reco-expert__header,.section-recommendation__title{background-image:linear-gradient(90deg,#5b61ff,#9a3dfb);color:#fff;border-radius:12px}@media(prefers-color-scheme:dark){.profile-panel,.desktop-profile-wrapper .profile-panel,.desktop-profile-wrapper{background-color:#fafafa!important;color:#1f2937!important}.profile-card{background-color:#fff!important;color:#1f2937!important;background-image:linear-gradient(135deg,#43e97b14,#38f9d714)!important;border-color:#43e97b40!important}.profile-card.profile-card--warning{background-image:linear-gradient(135deg,#ffc1071f,#ff98001f)!important;border-color:#ffc10766!important}.profile-card.profile-card--error{background-image:linear-gradient(135deg,#f443361f,#e539351f)!important;border-color:#f4433666!important}.profile-card.profile-card--empty{background-image:none!important;background-color:#fffde7!important;border-color:#ffeb3b!important;opacity:.85}.profile-card__title,.profile-card__label,.profile-card__value,.profile-card__content,.profile-card__content h4,.profile-card__content p,.profile-card .profile-card__icon,.profile-panel__header,.profile-panel__title,.profile-panel__section-title,.profile-panel>h3,.profile-panel>h4,.profile-panel__profile-cards p,.profile-panel__profile-cards span,.profile-panel__profile-cards label{color:#1f2937!important}.profile-card__icon svg,.profile-card__icon{color:#10b981!important;fill:currentColor}.profile-card--warning .profile-card__icon,.profile-card--warning .profile-card__icon svg{color:#f59e0b!important}.profile-card--error .profile-card__icon,.profile-card--error .profile-card__icon svg{color:#ef4444!important}.profile-card__subtitle,.profile-panel__subtitle{color:#6b7280!important}}.address-form-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;overflow-y:auto}.address-form-modal{background:#fff;border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.address-form-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid #e5e7eb;position:sticky;top:0;background:#fff;z-index:1}.address-form-header h2{margin:0;font-size:20px;font-weight:600;color:#111827}.address-form-close{background:none;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:4px 8px;line-height:1;transition:color .2s}.address-form-close:hover{color:#111827}.address-form{padding:24px}.address-form-notice{background:linear-gradient(135deg,#3b82f61a,#9333ea1a);border-left:4px solid #3b82f6;padding:16px 20px;margin:0 24px 20px;border-radius:8px;display:flex;align-items:center;gap:12px}.address-form-notice-icon{font-size:28px;flex-shrink:0}.address-form-notice-text{margin:0;font-size:14px;line-height:1.5;color:#1e40af;font-weight:500}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:6px}.form-label.required:after{content:" *";color:#ef4444}.form-input{width:100%;padding:10px 12px;font-size:14px;border:1px solid #d1d5db;border-radius:6px;transition:all .2s;font-family:inherit;box-sizing:border-box}.form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-input--error{border-color:#ef4444}.form-input--error:focus{box-shadow:0 0 0 3px #ef44441a}.form-input-group{display:flex;gap:8px}.form-input-group .form-input{flex:1}.form-error{display:block;margin-top:4px;font-size:13px;color:#ef4444}.form-button-secondary{padding:10px 16px;font-size:14px;font-weight:500;background-color:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s;white-space:nowrap}.form-button-secondary:hover{background-color:#e5e7eb}.address-form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:32px;padding-top:20px;border-top:1px solid #e5e7eb}.form-button{padding:10px 20px;font-size:14px;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s;border:none;font-family:inherit}.form-button:disabled{opacity:.5;cursor:not-allowed}.form-button-cancel{background-color:#fff;color:#374151;border:1px solid #d1d5db}.form-button-cancel:hover:not(:disabled){background-color:#f9fafb}.form-button-primary{background-color:#3b82f6;color:#fff;border:1px solid #3b82f6}.form-button-primary:hover:not(:disabled){background-color:#2563eb;border-color:#2563eb}@media(max-width:640px){.address-form-overlay{padding:0;align-items:flex-end}.address-form-container{max-height:95vh;border-radius:12px 12px 0 0;max-width:100%}.address-form-header{padding:20px 16px 12px}.address-form{padding:16px}.form-group{margin-bottom:16px}.address-form-actions{flex-direction:column-reverse;gap:8px}.form-button{width:100%}}.form-input:focus-visible,.form-button:focus-visible,.form-button-secondary:focus-visible,.address-form-close:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.profile-progress{position:sticky;top:0;z-index:40;background:#fff;padding:16px 20px;border-bottom:1px solid #e5e7eb;backdrop-filter:blur(8px) saturate(180%);-webkit-backdrop-filter:blur(8px) saturate(180%);transition:all .3s ease-out}@media(prefers-color-scheme:dark){.profile-progress{background:#1c1917f2;border-bottom-color:#374151}}.progress-content{max-width:600px;margin:0 auto}.progress-info{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px}.progress-icon{font-size:20px;animation:bounce 1s ease-in-out infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.progress-message{font-size:14px;font-weight:600;color:#374151}@media(prefers-color-scheme:dark){.progress-message{color:#f3f4f6}}.progress-bar-container{height:8px;background:#e5e7eb;border-radius:9999px;overflow:hidden;position:relative}@media(prefers-color-scheme:dark){.progress-bar-container{background:#374151}}.progress-bar-fill{height:100%;border-radius:9999px;transition:width .5s ease-out;position:relative;overflow:hidden}.progress--phase1-low .progress-bar-fill{background:linear-gradient(135deg,#f59e0b,#d97706)}.progress--phase1-high .progress-bar-fill{background:linear-gradient(135deg,#3b82f6,#2563eb)}.progress--phase2 .progress-bar-fill{background:linear-gradient(135deg,#667eea,#764ba2)}.progress-shine{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shine 2s ease-in-out infinite}@keyframes shine{0%{transform:translate(-100%)}50%,to{transform:translate(100%)}}@media(max-width:640px){.profile-progress{padding:12px 16px}.progress-message{font-size:13px}.progress-icon{font-size:18px}.progress-bar-container{height:6px}}.profile-panel{display:flex;flex-direction:column;height:100%;background:#fafafa!important;color:#1f2937!important;overflow-y:auto;overflow-x:hidden;color-scheme:light}.profile-header{padding:24px 20px;background:linear-gradient(135deg,var(--primary-500, #f472b6) 0%,var(--secondary-500, #c084fc) 100%);color:#fff;text-align:center}.profile-avatar{width:72px;height:72px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;font-size:28px;border:3px solid rgba(255,255,255,.3)}.profile-name{font-size:18px;font-weight:600;margin-bottom:4px}.profile-email{font-size:13px;opacity:.9}.progress-label{display:flex;justify-content:space-between;margin-bottom:8px;font-size:13px;color:var(--neutral-600, #4b5563)}.progress-bar{height:8px;background:var(--neutral-200, #e5e7eb);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--primary-500, #f472b6),var(--secondary-500, #c084fc));border-radius:4px;transition:width .3s ease}.profile-sections{flex:1;padding:16px;display:flex;flex-direction:column;gap:12px}.profile-section{background:#fff;border-radius:12px;padding:16px;box-shadow:0 1px 3px #0000000d}.section-title{font-size:14px;font-weight:600;color:var(--neutral-800, #1f2937);margin-bottom:12px;display:flex;align-items:center;gap:8px}.section-title svg,.section-title span.emoji{font-size:16px}.profile-field{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--neutral-100, #f3f4f6)}.profile-field:last-child{border-bottom:none}.field-label{font-size:13px;color:var(--neutral-500, #6b7280)}.field-value{font-size:13px;color:var(--neutral-800, #1f2937);font-weight:500;text-align:right;max-width:60%}.field-empty{color:var(--neutral-400, #9ca3af);font-style:italic}.sample-request-btn{width:100%;padding:14px;background:linear-gradient(135deg,var(--primary-500, #f472b6) 0%,var(--secondary-500, #c084fc) 100%);color:#fff;border:none;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s ease;margin-top:8px}.sample-request-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #f472b64d}.sample-request-btn:disabled{opacity:.6;cursor:not-allowed}.editor-picks-section{margin-top:16px}.editor-picks-grid{display:flex;flex-direction:column;gap:12px}.editor-pick-card{display:flex;gap:12px;padding:12px;background:#fff;border-radius:12px;border:1px solid var(--neutral-200, #e5e7eb);cursor:pointer;transition:all .2s ease}.editor-pick-card:hover{border-color:var(--primary-300, #f9a8d4);box-shadow:0 2px 8px #f472b626}.pick-image{width:64px;height:64px;border-radius:8px;object-fit:cover;background:var(--neutral-100, #f3f4f6)}.pick-info{flex:1;min-width:0}.pick-title{font-size:14px;font-weight:600;color:var(--neutral-800, #1f2937);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pick-reason{font-size:12px;color:var(--neutral-500, #6b7280);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pick-price{font-size:14px;font-weight:600;color:var(--primary-600, #db2777);margin-top:4px}.inline-edit-field{display:flex;align-items:center;gap:8px}.inline-edit-input{flex:1;padding:6px 10px;border:1px solid var(--primary-300, #f9a8d4);border-radius:6px;font-size:13px;outline:none}.inline-edit-input:focus{border-color:var(--primary-500, #f472b6);box-shadow:0 0 0 2px #f472b633}.inline-edit-actions{display:flex;gap:4px}.inline-edit-btn{width:28px;height:28px;border-radius:6px;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .15s ease}.inline-edit-btn.save{background:var(--success-100, #dcfce7);color:var(--success-600, #16a34a)}.inline-edit-btn.cancel{background:var(--neutral-100, #f3f4f6);color:var(--neutral-600, #4b5563)}@media(max-width:768px){.profile-panel{padding-bottom:env(safe-area-inset-bottom,20px)}.profile-header{padding:20px 16px}.profile-avatar{width:64px;height:64px;font-size:24px}}.desktop-cart-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.desktop-cart-panel{display:flex;flex-direction:column;position:fixed;right:0;top:0;bottom:0;width:clamp(360px,30vw,480px);background:var(--chat-box-bg, rgba(255, 255, 255, .95));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:-4px 0 24px #0003;border-left:1px solid rgba(255,255,255,.2);z-index:9999;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.desktop-cart-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;border-bottom:1px solid rgba(0,0,0,.1);background:var(--chat-box-bg, rgba(255, 255, 255, .98));flex-shrink:0}.desktop-cart-header h3{font-size:1.25rem;font-weight:600;margin:0;color:var(--text-primary, #333)}.desktop-cart-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary, #666);opacity:.6;transition:opacity .2s,transform .2s;padding:.25rem .5rem;line-height:1}.desktop-cart-close:hover{opacity:1;transform:scale(1.1)}.desktop-cart-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:1.5rem 2rem 2rem}.desktop-cart-content::-webkit-scrollbar{width:8px}.desktop-cart-content::-webkit-scrollbar-track{background:#0000000d}.desktop-cart-content::-webkit-scrollbar-thumb{background:#0003;border-radius:4px}.desktop-cart-content::-webkit-scrollbar-thumb:hover{background:#0000004d}.desktop-cart-content .shopping-cart{height:auto;overflow:visible}.desktop-cart-content .cart-items{flex:none;overflow:visible;max-height:none}.shopping-cart{display:flex;flex-direction:column;height:100%;background:#fff;font-family:var(--font-sans)}.shopping-cart.empty{justify-content:flex-start}.cart-header{display:flex;justify-content:flex-end;align-items:center;padding:.5rem 1rem;border-bottom:1px solid var(--neutral-200);flex-shrink:0}.close-btn{background:none;border:none;font-size:1.5rem;color:var(--neutral-400);cursor:pointer;padding:.5rem;line-height:1;border-radius:50%;transition:all var(--duration-200) var(--ease-out);display:none}.close-btn:hover{background:var(--neutral-100);color:var(--neutral-700)}.cart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:3rem 2rem;text-align:center}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.3}.cart-empty p{font-size:1.1rem;color:var(--neutral-500);margin:0 0 1.5rem}.continue-shopping{padding:.875rem 2rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-full);font-size:.95rem;font-weight:var(--font-semibold);cursor:pointer;transition:all var(--duration-200) var(--ease-out);box-shadow:var(--shadow-primary)}.continue-shopping:hover{transform:translateY(-2px);box-shadow:0 12px 48px -12px #a855f780}.cart-items{flex:1;overflow-y:auto;padding:1rem;scrollbar-width:thin;scrollbar-color:var(--neutral-300) transparent}.cart-items::-webkit-scrollbar{width:6px}.cart-items::-webkit-scrollbar-thumb{background:var(--neutral-300);border-radius:3px}.cart-item{display:flex;align-items:center;gap:.625rem;padding:.75rem;margin-bottom:.5rem;background:var(--neutral-50);border-radius:var(--radius-lg);border:1px solid var(--neutral-200);transition:all var(--duration-200) var(--ease-out)}.cart-item:hover{border-color:var(--neutral-300);box-shadow:var(--shadow-sm)}.cart-item:last-child{margin-bottom:0}.item-image{width:52px;height:52px;object-fit:contain;border-radius:var(--radius-md);background:#fff;padding:4px;border:1px solid var(--neutral-200);flex-shrink:0}.item-details{flex:1;min-width:80px;overflow:hidden}.item-details h4{margin:0 0 .125rem;font-size:.8rem;font-weight:var(--font-semibold);color:var(--neutral-800);line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-category{display:none}.item-price{font-size:.85rem;font-weight:var(--font-bold);color:var(--primary-600)}.item-quantity{display:flex;flex-direction:row;align-items:center;justify-content:center;background:#fff;border:2px solid #d1d5db;border-radius:8px;overflow:hidden;flex-shrink:0;width:90px;height:32px}.item-quantity button{width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:#f9fafb;border:none;font-size:18px;font-weight:700;color:#7c3aed;cursor:pointer;padding:0;margin:0;flex-shrink:0}.item-quantity button:hover:not(:disabled){background:var(--primary-100)}.item-quantity button.remove-action{color:var(--error-500);font-weight:700}.item-quantity button.remove-action:hover{background:var(--error-50)}.item-quantity button:disabled{color:var(--neutral-300);cursor:not-allowed}.item-quantity span{width:30px;height:30px;display:flex;align-items:center;justify-content:center;text-align:center;font-weight:700;font-size:16px;color:#111827;background:#fff;flex-shrink:0}.remove-btn{background:none;border:none;font-size:.75rem;color:var(--neutral-400);cursor:pointer;padding:.5rem;border-radius:var(--radius-md);transition:all var(--duration-150) var(--ease-out);white-space:nowrap}.remove-btn:hover{background:var(--error-50);color:var(--error-500)}.discount-section{display:flex;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--neutral-200);align-items:center;flex-wrap:wrap}.discount-input{flex:1;min-width:120px;padding:.625rem .875rem;border:1px solid var(--neutral-200);border-radius:var(--radius-md);font-size:.85rem;text-transform:uppercase;transition:border-color var(--duration-200) var(--ease-out)}.discount-input:focus{outline:none;border-color:var(--primary-500)}.discount-input::placeholder{text-transform:none;color:var(--neutral-400)}.apply-btn{padding:.625rem 1.25rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-md);font-size:.85rem;font-weight:var(--font-semibold);cursor:pointer;transition:all var(--duration-200) var(--ease-out);box-shadow:var(--shadow-primary)}.apply-btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px -8px #a855f766}.discount-error{width:100%;color:var(--error-500);font-size:.75rem;margin-top:.25rem}.discount-success{width:100%;color:var(--success-600);font-size:.75rem;font-weight:var(--font-semibold);margin-top:.25rem}.cart-summary{padding:1rem;background:var(--neutral-50);border-top:1px solid var(--neutral-200)}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.9rem;color:var(--neutral-600)}.summary-row.discount{color:var(--success-600);font-weight:var(--font-semibold)}.summary-row.total{padding-top:.75rem;margin-top:.5rem;border-top:2px solid var(--neutral-200);font-size:1.1rem;font-weight:var(--font-bold);color:var(--neutral-900)}.free-shipping-notice{background:var(--gradient-success-light);color:var(--success-700);padding:.625rem 1rem;border-radius:var(--radius-md);margin:.5rem 0;font-size:.8rem;text-align:center;font-weight:var(--font-medium);border:1px solid var(--success-300)}.checkout-btn{width:calc(100% - 2rem);margin:1rem;padding:1rem;background:var(--gradient-primary);color:#fff;border:none;border-radius:var(--radius-xl);font-size:1rem;font-weight:var(--font-semibold);cursor:pointer;transition:all var(--duration-200) var(--ease-out);box-shadow:var(--shadow-primary)}.checkout-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 48px -12px #a855f780}.checkout-btn:disabled{background:var(--neutral-300);box-shadow:none;cursor:not-allowed}@media(max-width:900px){.shopping-cart{display:flex;flex-direction:column;height:100%;overflow:hidden}.shopping-cart>.cart-items,.shopping-cart>.discount-section,.shopping-cart>.cart-summary,.shopping-cart>.checkout-btn{flex-shrink:0}.cart-items{flex:none;overflow:visible;max-height:none;padding:.75rem}.cart-item{padding:.75rem;gap:.75rem}.item-image{width:56px;height:56px}.item-details h4{font-size:.85rem}.item-price{font-size:.9rem}.item-quantity{width:84px!important;height:28px!important;min-width:84px}.item-quantity button{width:26px!important;height:26px!important;min-width:26px;font-size:16px}.item-quantity span{width:26px!important;height:26px!important;min-width:26px;font-size:14px}.discount-section{padding:.625rem .75rem;border-top:none}.cart-summary{padding:.75rem;background:transparent;border-top:1px solid var(--neutral-200)}.checkout-btn{width:calc(100% - 1.5rem);margin:.75rem;padding:.875rem}}.bottom-sheet__scroll .shopping-cart{display:contents}.bottom-sheet__scroll .shopping-cart .cart-header{display:none}.bottom-sheet__scroll .shopping-cart .cart-items{flex:none;overflow:visible;max-height:none}.bottom-sheet__scroll .shopping-cart .cart-summary{margin-top:.5rem}.bottom-sheet__scroll .shopping-cart .checkout-btn{margin-top:1rem;margin-bottom:0}@media(prefers-color-scheme:dark){.shopping-cart{background:#fff!important;color:#1f2937!important}.cart-item{background:#f9fafb!important;border-color:#e5e7eb!important}.item-details h4{color:#1f2937!important}.item-quantity{background:#fff!important;border-color:#d1d5db!important}.item-quantity button{background:#f3f4f6!important;color:#7c3aed!important}.item-quantity span{background:#fff!important;color:#1a1a1a!important}.cart-summary{background:#f9fafb!important}.summary-row{color:#4b5563!important}.summary-row.total{color:#111827!important}}.product-panel__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease;z-index:9998}.product-panel__backdrop.open{opacity:1;visibility:visible}.product-panel{position:fixed;background:#fff;z-index:9999;display:flex;flex-direction:column;box-shadow:-4px 0 24px #00000026}.product-panel--desktop{top:0;right:0;bottom:0;width:420px;max-width:90vw;transform:translate(100%);transition:transform .35s cubic-bezier(.32,.72,0,1);border-radius:16px 0 0 16px}.product-panel--desktop.open{transform:translate(0)}.product-panel--mobile{left:0;right:0;bottom:0;max-height:85vh;border-radius:20px 20px 0 0;transform:translateY(100%);transition:transform .35s cubic-bezier(.32,.72,0,1)}.product-panel--mobile.open{transform:translateY(0)}.product-panel__handle{width:40px;height:4px;background:#d1d5db;border-radius:2px;margin:10px auto 6px}.product-panel__header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.product-panel__header h3{margin:0;font-size:18px;font-weight:700;color:#1f2937}.product-panel__close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border:none;border-radius:8px;font-size:16px;color:#6b7280;cursor:pointer;transition:background .2s,color .2s}.product-panel__close:hover{background:#e5e7eb;color:#374151}.product-panel__scroll{flex:1;overflow-y:auto;overscroll-behavior:contain}.product-panel__content{display:flex;flex-direction:column}.product-panel__tabs{display:flex;gap:4px;padding:12px 16px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.product-panel__tab{flex:1;padding:10px 16px;background:transparent;border:none;border-radius:10px;font-size:14px;font-weight:600;color:#6b7280;cursor:pointer;transition:background .2s,color .2s}.product-panel__tab:hover{background:#8b5cf614;color:#8b5cf6}.product-panel__tab.active{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff;box-shadow:0 2px 8px #8b5cf64d}.product-panel__details{padding:20px;display:flex;flex-direction:column;gap:20px}.product-panel__image-container{position:relative;width:100%;aspect-ratio:1;max-height:280px;border-radius:16px;overflow:hidden;background:linear-gradient(135deg,#f3f4f6,#e5e7eb)}.product-panel__image{width:100%;height:100%;object-fit:cover}.product-panel__badge{position:absolute;top:12px;left:12px;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:700;color:#fff}.product-panel__badge--bongin{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 8px #f59e0b66}.product-panel__info{display:flex;flex-direction:column;gap:8px}.product-panel__title{margin:0;font-size:20px;font-weight:700;color:#1f2937;line-height:1.3}.product-panel__brand{margin:0;font-size:14px;color:#6b7280}.product-panel__price{margin:0;font-size:24px;font-weight:800;color:#059669}.product-panel__description{margin:0;font-size:14px;color:#4b5563;line-height:1.6}.product-panel__ai-match{display:flex;gap:12px;padding:14px;background:linear-gradient(135deg,#8b5cf614,#6366f10d);border-radius:12px;border:1px solid rgba(139,92,246,.2)}.product-panel__ai-icon{font-size:24px;flex-shrink:0}.product-panel__ai-match strong{display:block;font-size:12px;color:#8b5cf6;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.product-panel__ai-match p{margin:0;font-size:14px;color:#4b5563;line-height:1.5}.product-panel__actions{display:flex;gap:12px;margin-top:8px}.product-panel__btn{flex:1;padding:14px 20px;border:none;border-radius:12px;font-size:15px;font-weight:700;cursor:pointer;transition:transform .15s,box-shadow .15s;display:flex;align-items:center;justify-content:center;gap:8px}.product-panel__btn:hover{transform:translateY(-2px)}.product-panel__btn:active{transform:translateY(0)}.product-panel__btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.product-panel__btn--cart{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 4px 12px #f59e0b4d}.product-panel__btn--cart:hover:not(:disabled){box-shadow:0 6px 16px #f59e0b66}.product-panel__btn--wishlist{background:#8b5cf61a;color:#8b5cf6;border:2px solid rgba(139,92,246,.3)}.product-panel__btn--wishlist:hover{background:#8b5cf626;border-color:#8b5cf680}.product-panel__btn--wishlist.active{background:#ef44441a;color:#ef4444;border-color:#ef44444d}.product-panel__external-link{display:block;text-align:center;padding:12px;font-size:14px;color:#6b7280;text-decoration:none;transition:color .2s}.product-panel__external-link:hover{color:#8b5cf6}.product-panel__my-picks{padding:16px}.product-panel__picks-grid{display:flex;flex-direction:column;gap:12px}.product-panel__pick-card{display:flex;gap:14px;padding:12px;background:#f9fafb;border-radius:12px;border:1px solid #e5e7eb;cursor:pointer;transition:background .2s,border-color .2s;position:relative}.product-panel__pick-card:hover{background:#f3f4f6;border-color:#8b5cf64d}.product-panel__pick-image{width:60px;height:60px;border-radius:8px;overflow:hidden;background:#e5e7eb;flex-shrink:0}.product-panel__pick-image img{width:100%;height:100%;object-fit:cover}.product-panel__pick-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.product-panel__pick-title{margin:0;font-size:14px;font-weight:600;color:#1f2937;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-panel__pick-brand{margin:0;font-size:12px;color:#6b7280}.product-panel__pick-price{margin:0;font-size:14px;font-weight:700;color:#059669}.product-panel__pick-remove{position:absolute;top:8px;right:8px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:12px;color:#9ca3af;cursor:pointer;transition:background .2s,color .2s,border-color .2s;opacity:0}.product-panel__pick-card:hover .product-panel__pick-remove{opacity:1}.product-panel__pick-remove:hover{background:#fef2f2;border-color:#fecaca;color:#ef4444}.product-panel__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.product-panel__empty-icon{font-size:48px;margin-bottom:16px;opacity:.5}.product-panel__empty p{margin:0;font-size:16px;color:#6b7280}.product-panel__empty-hint{font-size:14px!important;color:#9ca3af!important;margin-top:8px!important}@media(prefers-color-scheme:dark){.product-panel{background:#1f2937}.product-panel__header{border-color:#374151}.product-panel__header h3{color:#f9fafb}.product-panel__close{background:#374151;color:#d1d5db}.product-panel__close:hover{background:#4b5563;color:#f3f4f6}.product-panel__tabs{background:#111827;border-color:#374151}.product-panel__tab{color:#9ca3af}.product-panel__tab:hover{background:#8b5cf626}.product-panel__title{color:#f9fafb}.product-panel__brand,.product-panel__description{color:#d1d5db}.product-panel__ai-match{background:#8b5cf626;border-color:#8b5cf64d}.product-panel__ai-match p{color:#d1d5db}.product-panel__external-link{color:#9ca3af}.product-panel__pick-card{background:#111827;border-color:#374151}.product-panel__pick-card:hover{background:#1f2937}.product-panel__pick-title{color:#f9fafb}.product-panel__pick-brand{color:#9ca3af}.product-panel__pick-remove{background:#1f2937;border-color:#374151;color:#6b7280}.product-panel__empty p{color:#9ca3af}}html.body--panel-open,html.body--panel-open body{overflow:hidden}.customer-stage-badge{display:inline-block;position:relative}.stage-badge-content{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;color:#fff;font-weight:600;box-shadow:0 2px 4px #0000001a;transition:transform .2s;position:relative}.stage-badge-content:hover{transform:translateY(-1px);box-shadow:0 3px 6px #00000026}.stage-badge-small .stage-badge-content{padding:4px 8px;font-size:11px;gap:4px}.stage-badge-small .stage-icon{font-size:12px}.stage-badge-medium .stage-badge-content{padding:6px 12px;font-size:13px;gap:6px}.stage-badge-medium .stage-icon{font-size:14px}.stage-badge-large .stage-badge-content{padding:10px 18px;font-size:16px;gap:8px}.stage-badge-large .stage-icon{font-size:18px}.stage-icon{line-height:1}.stage-label{white-space:nowrap;line-height:1}.stage-description{margin-top:6px;font-size:12px;color:#666;text-align:center}.customer-stage-analytics{padding:20px}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.analytics-header h2{margin:0;font-size:24px;color:#333}.refresh-btn{padding:8px 16px;background:#2196f3;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;transition:background .3s}.refresh-btn:hover{background:#1976d2}.analytics-loading{padding:40px;text-align:center;font-size:18px;color:#666}.analytics-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:40px}.metric-card{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #0000001a;text-align:center;transition:transform .2s}.metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.metric-card.highlight{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.metric-value{font-size:36px;font-weight:700;margin-bottom:8px}.metric-label{font-size:14px;color:#666}.metric-card.highlight .metric-label{color:#ffffffe6}.stage-distribution{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px}.stage-distribution h3{margin:0 0 20px;font-size:18px;color:#333}.stage-chart{display:flex;flex-direction:column;gap:15px}.stage-chart-row{display:flex;align-items:center;gap:15px}.stage-info{display:flex;align-items:center;gap:10px;min-width:220px}.stage-count{font-size:13px;color:#666}.stage-bar-container{flex:1;display:flex;align-items:center;gap:10px;position:relative}.stage-bar{height:28px;border-radius:4px;transition:width .5s ease;min-width:2px}.stage-percentage{font-size:13px;font-weight:600;color:#333;min-width:45px}.funnel-metrics{background:#fff;padding:25px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.funnel-metrics h3{margin:0 0 20px;font-size:18px;color:#333}.funnel-steps{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.funnel-step{flex:1;min-width:100px;text-align:center;padding:20px;background:#f5f5f5;border-radius:8px;transition:all .3s}.funnel-step:hover{background:#e8e8e8;transform:translateY(-2px)}.funnel-step.highlight{background:linear-gradient(135deg,#4caf50,#45a049);color:#fff}.funnel-label{font-size:12px;color:#666;margin-bottom:8px;font-weight:600}.funnel-step.highlight .funnel-label{color:#ffffffe6}.funnel-value{font-size:28px;font-weight:700;color:#333}.funnel-step.highlight .funnel-value{color:#fff}.funnel-arrow{font-size:24px;color:#999;flex-shrink:0}@media(max-width:900px){.funnel-steps{flex-direction:column}.funnel-arrow{transform:rotate(90deg)}.stage-chart-row{flex-direction:column;align-items:flex-start}.stage-bar-container{width:100%}}.business-analytics{background:#fff;border-radius:12px;border:1px solid #e0e0e0;margin-top:20px}.analytics-header{padding:20px 25px;border-bottom:1px solid #e0e0e0}.analytics-header h3{margin:0;font-size:20px;font-weight:600;color:#2d3748}.date-range-selector{padding:15px 25px;display:flex;align-items:center;gap:10px;background:#f8f9fa;border-bottom:1px solid #e0e0e0;flex-wrap:wrap}.date-range-selector span{font-size:14px;color:#666;font-weight:500}.date-range-selector button{padding:8px 16px;border:2px solid #e0e0e0;border-radius:6px;background:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;color:#666}.date-range-selector button:hover{border-color:#667eea;color:#667eea}.date-range-selector button.active{background:#667eea;color:#fff;border-color:#667eea}.tab-navigation{display:flex;gap:0;background:#f8f9fa;padding:0 25px;border-bottom:2px solid #e0e0e0;overflow-x:auto}.tab-navigation button{padding:15px 25px;border:none;background:transparent;font-size:14px;font-weight:600;color:#666;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all .2s;white-space:nowrap}.tab-navigation button:hover{color:#667eea}.tab-navigation button.active{color:#667eea;border-bottom-color:#667eea;background:#fff}.analytics-content{padding:25px;min-height:300px}.alerts-section{margin-bottom:25px}.alert-item{display:flex;align-items:center;gap:12px;padding:15px 18px;border-radius:8px;margin-bottom:12px;font-size:14px;font-weight:500}.alert-item.warning{background:#fff3e0;border:1px solid #ff9800;color:#e65100}.alert-item.critical{background:#ffebee;border:1px solid #f44336;color:#c62828}.alert-item.success{background:#e8f5e9;border:1px solid #4caf50;color:#2e7d32}.quick-stats{display:flex;gap:20px;margin-bottom:25px;flex-wrap:wrap}.stat-badge{padding:10px 18px;border-radius:20px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px}.stat-badge.pending{background:#fff3e0;color:#e65100}.stat-badge.completed{background:#e8f5e9;color:#2e7d32}.stat-badge.in-transit{background:#e3f2fd;color:#1565c0}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:25px}.metric-card{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:12px;padding:22px;transition:transform .2s,box-shadow .2s}.metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.metric-card h4{margin:0 0 10px;font-size:14px;color:#666;font-weight:500}.metric-card .value{font-size:28px;font-weight:700;color:#2d3748;margin:0 0 8px;word-break:break-word}.metric-card .trend{font-size:13px;font-weight:600}.metric-card .trend.positive{color:#22543d}.metric-card .trend.negative{color:#c53030}.metric-card.revenue{border-left:4px solid #48bb78}.metric-card.orders{border-left:4px solid #4299e1}.metric-card.avg-order{border-left:4px solid #9f7aea}.metric-card.inventory-value{border-left:4px solid #ed8936}.metric-card.customers{border-left:4px solid #38b2ac}.metric-card.conversion{border-left:4px solid #f56565}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.summary-card,.summary-item{background:#f8f9fa;border:2px solid #e0e0e0;border-radius:12px;padding:25px}.summary-card h4{margin:0 0 10px;font-size:14px;color:#666;font-weight:500}.big-number{font-size:32px;font-weight:700;color:#2d3748;margin:0 0 10px;word-break:break-word;max-width:100%;overflow-wrap:break-word}.trend-indicator{font-size:14px;font-weight:600}.trend-indicator.positive{color:#22543d}.trend-indicator.negative{color:#c53030}.summary-item{display:flex;justify-content:space-between;align-items:center}.summary-item.warning{border-color:#ff9800;background:#fff3e0}.summary-item.critical{border-color:#f44336;background:#ffebee}.summary-item span{font-size:14px;color:#666}.summary-item strong{font-size:24px;color:#2d3748}.chart-placeholder{background:#f8f9fa;border:2px dashed #cbd5e0;border-radius:12px;padding:60px;text-align:center;color:#718096}.orders-breakdown{margin-top:20px}.breakdown-item{margin-bottom:20px}.breakdown-bar{height:40px;border-radius:8px;margin-bottom:8px;transition:width .5s ease}.breakdown-item.completed .breakdown-bar{background:linear-gradient(90deg,#48bb78,#38a169)}.breakdown-item.pending .breakdown-bar{background:linear-gradient(90deg,#ed8936,#dd6b20)}.breakdown-item.cancelled .breakdown-bar{background:linear-gradient(90deg,#f56565,#e53e3e)}.breakdown-item span{font-size:14px;color:#666;font-weight:500}.inventory-details{margin-top:20px;padding:20px;background:#f8f9fa;border-radius:8px}.inventory-details p{margin:0;font-size:14px;color:#666}.analytics-actions{display:flex;gap:15px;padding:20px 25px;background:#f8f9fa;border-top:1px solid #e0e0e0;border-radius:0 0 12px 12px}.export-btn,.refresh-btn{padding:10px 20px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.export-btn.csv{background:#48bb78;color:#fff;border-color:#48bb78}.export-btn.csv:hover{background:#38a169;border-color:#38a169}.export-btn.json{background:#4299e1;color:#fff;border-color:#4299e1}.export-btn.json:hover{background:#3182ce;border-color:#3182ce}.refresh-btn{background:#fff;color:#666;margin-left:auto}.refresh-btn:hover{background:#667eea;color:#fff;border-color:#667eea}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.loading-spinner{text-align:center;padding:60px}.spinner{width:50px;height:50px;border:4px solid #e0e0e0;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{to{transform:rotate(360deg)}}.error-message{text-align:center;padding:40px;color:#c53030}.error-message button{margin-top:15px;padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:500}.no-data{text-align:center;padding:40px;color:#718096}@media(max-width:900px){.business-analytics{border-radius:0;border-left:none;border-right:none}.analytics-header{padding:15px 20px}.analytics-header h3{font-size:18px}.date-range-selector{padding:12px 20px;flex-wrap:wrap;gap:8px}.date-range-selector button{padding:6px 12px;font-size:12px}.tab-navigation{padding:0 15px;overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-navigation button{padding:12px 18px;font-size:13px}.analytics-content{padding:20px}.metrics-grid,.summary-grid{grid-template-columns:1fr}.quick-stats{gap:10px}.stat-badge{padding:8px 14px;font-size:12px}.analytics-actions{padding:15px 20px;flex-direction:column}.refresh-btn{margin-left:0}.metric-card .value{font-size:24px}.big-number{font-size:28px}}@media(max-width:480px){.metrics-grid,.summary-grid{grid-template-columns:1fr;gap:15px}.metric-card,.summary-card{padding:18px}.date-range-selector{justify-content:center}}.admin-page{min-height:100vh;background-color:var(--neutral-100)}.admin-header{background:var(--gradient-primary);color:#fff;padding:20px;box-shadow:var(--shadow-lg)}.admin-header__content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.admin-header__left h1{margin:0;font-size:1.5rem;font-weight:var(--font-semibold)}.admin-header__right{display:flex;gap:12px}.admin-button{padding:10px 20px;border:none;border-radius:var(--radius-lg);cursor:pointer;font-weight:var(--font-semibold);font-size:.95rem;transition:all var(--duration-200) var(--ease-out)}.admin-button--secondary{background-color:#fff3;color:#fff}.admin-button--secondary:hover{background-color:#ffffff4d}.admin-button--danger{background-color:var(--error-600);color:#fff}.admin-button--danger:hover{background-color:var(--error-700)}.admin-tabs{background-color:#fff;border-bottom:1px solid var(--neutral-200);display:flex;gap:4px;padding:0 20px;max-width:1400px;margin:0 auto}.admin-tab{padding:16px 24px;border:none;background:transparent;cursor:pointer;font-size:1rem;font-weight:var(--font-medium);color:var(--neutral-500);border-bottom:3px solid transparent;transition:all var(--duration-200) var(--ease-out)}.admin-tab:hover{color:var(--neutral-700);background-color:var(--neutral-50)}.admin-tab--active{color:var(--primary-600);border-bottom-color:var(--primary-600);font-weight:var(--font-semibold)}.admin-content{max-width:1400px;margin:0 auto;padding:20px}.admin-placeholder{padding:60px 20px;text-align:center;background:#fff;border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--neutral-200)}.admin-placeholder h2{margin:0 0 12px;color:var(--neutral-800)}.admin-placeholder p{color:var(--neutral-500);font-size:1rem}@media(max-width:900px){.admin-header__content{flex-direction:column;gap:16px;align-items:flex-start}.admin-header__right{width:100%;justify-content:flex-end}.admin-tabs{overflow-x:auto;padding:0 12px}.admin-tab{padding:12px 16px;font-size:.9rem;white-space:nowrap}.admin-content{padding:12px}}
