.app-header{z-index:1000;background:var(--color-bg-header);transition:box-shadow var(--transition-base);position:fixed;top:0;left:0;right:0}.app-header.scrolled{box-shadow:var(--shadow-md)}.header-top{background:var(--color-bg-dark);color:#fffc;font-size:var(--font-size-xs);padding:6px 0}.header-top-inner{justify-content:space-between;align-items:center;display:flex}.top-text{font-weight:400}.header-top-right{align-items:center;gap:var(--space-lg);display:flex}.top-link{color:#fffc;transition:color var(--transition-fast)}.top-link:hover{color:#fff}.top-divider{opacity:.3}.header-main{padding:var(--space-lg) 0;border-bottom:1px solid var(--color-border-light)}.header-main-inner{align-items:center;gap:var(--space-2xl);display:flex}.logo{align-items:center;gap:var(--space-sm);font-size:var(--font-size-2xl);letter-spacing:-.5px;flex-shrink:0;font-weight:800;text-decoration:none;display:flex}.logo:hover{color:inherit}.logo-icon{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));color:#fff;border-radius:var(--radius-md);width:32px;height:32px;font-weight:800;font-size:var(--font-size-lg);justify-content:center;align-items:center;line-height:1;display:flex;box-shadow:0 2px 8px #ff47474d}.logo-text{align-items:baseline;display:flex}.logo-socio{color:var(--color-text-primary)}.logo-mart{color:var(--color-primary)}.search-container{flex:1;max-width:800px}.search-bar{background:var(--color-bg);border:2px solid var(--color-border);border-radius:var(--radius-full);padding:0 4px 0 var(--space-lg);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);align-items:center;display:flex}.search-bar:focus-within{border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #ff47471a}.search-icon{width:18px;height:18px;color:var(--color-text-muted);flex-shrink:0}.search-input{padding:var(--space-md) var(--space-md);font-size:var(--font-size-base);background:0 0;border:none;flex:1}.search-input:focus{outline:none}.search-btn{border-radius:var(--radius-full);background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));color:#fff;width:40px;height:40px;transition:transform var(--transition-fast);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.search-btn:hover{transform:scale(1.05)}.search-btn svg{width:18px;height:18px}.header-actions{align-items:center;gap:var(--space-xl);flex-shrink:0;display:flex}.header-action{flex-direction:column;align-items:center;gap:2px;display:flex}.action-link{color:var(--color-text-primary);flex-direction:column;align-items:center;gap:2px;text-decoration:none;display:flex}.action-link:hover{color:var(--color-primary)}.action-icon{width:24px;height:24px}.action-label{font-size:var(--font-size-xs);white-space:nowrap;font-weight:500}.user-dropdown-container{position:relative}.user-dropdown-trigger{cursor:pointer;margin-bottom:-10px;padding-bottom:10px}.user-dropdown-menu{border:1px solid var(--color-border);box-shadow:var(--shadow-md);opacity:0;visibility:hidden;min-width:150px;transition:all var(--transition-fast);z-index:100;background:#fff;border-radius:8px;flex-direction:column;margin-top:5px;padding:8px 0;display:flex;position:absolute;top:100%;right:50%;transform:translate(50%,10px)}.user-dropdown-container:hover .user-dropdown-menu{opacity:1;visibility:visible;transform:translate(50%)}.dropdown-item{color:var(--color-text-primary);text-align:left;padding:10px 16px;font-size:.9rem;font-weight:500;text-decoration:none}.dropdown-item:hover{color:var(--color-primary);background:#f3f4f6}.cart-action{color:var(--color-text-primary);text-decoration:none}.cart-action:hover{color:var(--color-primary)}.cart-icon-wrapper{position:relative}.cart-badge{background:var(--color-primary);color:#fff;border-radius:var(--radius-full);justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:700;animation:.3s badgePop;display:flex;position:absolute;top:-8px;right:-10px}@keyframes badgePop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}@media (max-width:768px){.header-top{display:none}.header-main-inner{gap:var(--space-md)}.logo{font-size:var(--font-size-lg)}.action-label{display:none}.search-container{max-width:none}}.all-categories-container{flex-shrink:0;position:relative}.all-categories-trigger-btn{align-items:center;gap:var(--space-sm);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);white-space:nowrap;transition:all var(--transition-fast);cursor:pointer;height:40px;padding:8px 16px;font-weight:600;display:flex}.all-categories-trigger-btn:hover{background:var(--color-border-light);border-color:var(--color-border-dark)}.menu-icon-sm{width:14px;height:14px}.categories-dropdown-menu{border:1px solid var(--color-border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1010;background:#fff;flex-direction:column;min-width:200px;padding:8px 0;display:flex;position:absolute;top:115%;left:0}.category-dropdown-item{color:var(--color-text-primary);font-size:var(--font-size-sm);text-align:left;transition:background var(--transition-fast), color var(--transition-fast);padding:10px 16px;font-weight:500;text-decoration:none}.category-dropdown-item:hover{color:var(--color-primary);background:#f3f4f6}.category-dropdown-item.highlight{color:var(--color-primary);font-weight:700}@media (max-width:768px){.all-categories-text{display:none}.all-categories-trigger-btn{gap:0;padding:8px 10px}}
.app-footer{background:var(--color-bg-dark);color:#ffffffb3;padding-top:var(--space-4xl)}.footer-inner{gap:var(--space-4xl);margin-bottom:var(--space-4xl);grid-template-columns:2fr 3fr;display:grid}.footer-brand{max-width:320px}.footer-logo{font-size:var(--font-size-2xl);margin-bottom:var(--space-md);font-weight:800;text-decoration:none;display:inline-block}.footer-logo .logo-socio{color:#fff}.footer-logo .logo-mart{color:var(--color-primary)}.footer-desc{line-height:1.6;font-size:var(--font-size-sm)}.footer-links{gap:var(--space-2xl);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.footer-column h4{color:#fff;margin-bottom:var(--space-lg);font-weight:600;font-size:var(--font-size-base)}.footer-column ul{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.footer-column a{color:inherit;font-size:var(--font-size-sm);transition:color var(--transition-fast);text-decoration:none}.footer-column a:hover{color:#fff}.footer-bottom{padding:var(--space-xl) 0;text-align:center;font-size:var(--font-size-xs);border-top:1px solid #ffffff1a}@media (max-width:768px){.footer-inner{gap:var(--space-2xl);grid-template-columns:1fr}}
.chat-widget-container{z-index:9999;pointer-events:none;flex-direction:column;align-items:flex-end;display:flex;position:fixed;bottom:24px;right:24px}.chat-popup{pointer-events:auto;background-color:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;width:340px;height:480px;margin-bottom:16px;animation:.3s fade-in-up;display:flex;overflow:hidden;box-shadow:0 5px 25px #0003}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-header{background-color:var(--color-primary);color:#fff;justify-content:space-between;align-items:center;padding:16px;display:flex}.chat-header-title{align-items:center;gap:8px;margin:0;font-weight:600;display:flex}.status-dot{background-color:#4ade80;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.close-btn{color:#fffc;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:4px;display:flex}.close-btn:hover{color:#fff}.chat-messages{background-color:#f9fafb;flex-direction:column;flex:1;gap:12px;padding:16px;display:flex;overflow-y:auto}.empty-chat{text-align:center;color:#9ca3af;margin:auto;font-size:14px}.message-row{display:flex}.message-row.customer{justify-content:flex-end}.message-row.admin{justify-content:flex-start}.message-bubble{flex-direction:column;gap:4px;max-width:82%;font-size:14px;line-height:1.4;display:flex}.message-row.customer .message-bubble{align-items:flex-end}.message-row.admin .message-bubble{align-items:flex-start}.bubble-text{margin:0;padding:10px 14px}.message-row.customer .bubble-text{background-color:var(--color-primary);color:#fff;border-radius:16px 16px 0}.message-row.admin .bubble-text{color:#1f2937;background-color:#fff;border:1px solid #e5e7eb;border-radius:16px 16px 16px 0;box-shadow:0 1px 2px #0000000d}.bubble-media{cursor:pointer;border-radius:12px;max-width:200px;transition:transform .2s;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000026}.bubble-media:hover{transform:scale(1.02)}.chat-media-thumb{object-fit:cover;width:200px;height:150px;display:block}.media-overlay{opacity:0;background:#00000040;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.bubble-media:hover .media-overlay{opacity:1}.bubble-media video~.media-overlay{opacity:1;background:#00000059}.bubble-media:has(video) .media-overlay{opacity:1;background:#00000059}.media-preview-bar{background-color:#f0f9ff;border-top:1px solid #bae6fd;align-items:center;gap:8px;padding:8px 12px;animation:.2s slide-up;display:flex}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.preview-thumb{object-fit:cover;border:1px solid #e0f2fe;border-radius:8px;flex-shrink:0;width:48px;height:48px}.preview-name{color:#0369a1;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:12px;overflow:hidden}.preview-remove{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:4px;font-size:14px;line-height:1;transition:background .15s,color .15s;display:flex}.preview-remove:hover{color:#ef4444;background:#fee2e2}.chat-input-form{background-color:#fff;border-top:1px solid #f3f4f6;align-items:center;gap:6px;padding:10px 12px;display:flex}.attach-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;padding:6px;transition:background .15s,color .15s;display:flex}.attach-btn:hover{color:var(--color-primary);background:#f1f5f9}.attach-btn:disabled{opacity:.4;cursor:not-allowed}.chat-input{background-color:#f3f4f6;border:none;border-radius:20px;flex:1;min-width:0;padding:10px 16px;font-size:14px}.chat-input:focus{outline:none;box-shadow:0 0 0 2px #ff47474d}.chat-input:disabled{opacity:.6}.send-btn{background-color:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;min-width:36px;height:36px;transition:transform .1s,opacity .2s;display:flex}.send-btn:hover{opacity:.9}.send-btn:active{transform:scale(.95)}.send-btn:disabled{opacity:.5;cursor:not-allowed}.upload-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.floating-btn{color:#fff;cursor:pointer;pointer-events:auto;background-color:#000;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:transform .2s;display:flex;position:relative;box-shadow:0 4px 12px #0000004d}.floating-btn:hover{transform:scale(1.1)}.floating-btn svg{width:24px;height:24px}.unread-badge{color:#fff;background-color:#ef4444;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px}.chat-lightbox{z-index:99999;pointer-events:auto;background:#000000d9;justify-content:center;align-items:center;animation:.2s fade-in;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.lightbox-media{object-fit:contain;border-radius:8px;max-width:90vw;max-height:85vh;box-shadow:0 8px 32px #0009}.lightbox-close{color:#fff;cursor:pointer;z-index:10;background:#ffffff26;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;transition:background .15s;display:flex;position:absolute;top:16px;right:20px}.lightbox-close:hover{background:#ffffff4d}
