:root{--bg:#ffffff;--surface:#ffffff;--surface-2:#f4f4f4;--primary:#111111;--on-primary:#ffffff;--primary-dark:#111111;--accent:#111111;--on-accent:#ffffff;--text:#111111;--muted:#6e6e6e;--border:#e5e5e5;--header-bg:#ffffff;--header-fg:#111111;--header-dim:rgba(17,17,17,0.65);--header-line:rgba(17,17,17,0.14);--header-hover:rgba(17,17,17,0.06);--header-input:rgba(17,17,17,0.05);--header-ring:rgba(17,17,17,0.4);color-scheme:light}[data-theme=dark]{color-scheme:dark;--bg:#000000;--surface:#101010;--surface-2:#1a1a1a;--primary:#f5f5f5;--on-primary:#000000;--primary-dark:#f5f5f5;--accent:#f5f5f5;--on-accent:#000000;--text:#f5f5f5;--muted:#a3a3a3;--border:#2b2b2b;--header-bg:#000000;--header-fg:#ffffff;--header-dim:rgba(255,255,255,0.7);--header-line:rgba(255,255,255,0.16);--header-hover:rgba(255,255,255,0.12);--header-input:rgba(255,255,255,0.1);--header-ring:rgba(255,255,255,0.65);--surface-hover:#242424}.account-name,.banner-title,.card-title,.section-title,h1,h2,h3{font-weight:500;letter-spacing:.01em}.banner-title,.hero h1{font-size:2rem;font-weight:400}.banner-carousel-slide:has(>.banner-html-embed){min-height:0;display:block;padding:0}.banner-html-embed{position:relative;width:100%;min-height:300px;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden;padding:clamp(.75rem,3vw,1.5rem);box-sizing:border-box}.banner-html-embed>*{max-width:100%;flex-shrink:0}.banner-html-embed img,.banner-html-embed svg{max-width:100%;height:auto}.banner-html-embed embed,.banner-html-embed iframe,.banner-html-embed object,.banner-html-embed video{width:100%;height:100%;border:0}.banner-html-preview{position:relative;inset:auto;min-height:180px;border:1px solid var(--border);border-radius:8px}.card-img{font-size:2rem}[data-theme=dark] .hero{background:var(--header-bg)}[data-theme=dark] .admin-table th{background:#1a1a1a}[data-theme=dark] .admin-product-img,[data-theme=dark] .admin-product-img-placeholder,[data-theme=dark] .card-img,[data-theme=dark] .quickview-img{background:#1c1c1c}[data-theme=dark] .account-form input:focus{box-shadow:0 0 0 3px rgba(255,255,255,.2)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{color-scheme:dark}.theme-toggle{width:1.75rem;height:1.75rem;border-radius:99px;border:none;background:transparent;color:var(--header-fg);display:inline-flex;align-items:center;justify-content:center;gap:.4rem;cursor:pointer;padding:0;flex-shrink:0;transition:background .15s,border-color .15s,transform .1s}.theme-toggle:hover{background:var(--header-hover)}.theme-toggle:active{transform:scale(.94)}.theme-toggle svg{display:block;flex-shrink:0}.theme-segment{display:inline-flex;border:1.5px solid var(--border);border-radius:10px;overflow:hidden}.theme-segment button{font:inherit;font-size:.85rem;font-weight:500;padding:.5rem .9rem;background:transparent;color:var(--muted);border:none;cursor:pointer}.theme-segment button+button{border-left:1.5px solid var(--border)}.theme-segment button.active{background:var(--primary);color:var(--on-primary)}.account-card .theme-segment{margin-bottom:1.75rem}.cropper{display:flex;flex-direction:column;gap:.6rem;align-items:flex-start}.cropper-view{position:relative;overflow:hidden;border-radius:12px;border:1.5px solid var(--border);background:var(--surface-2);touch-action:none;cursor:-webkit-grab;cursor:grab;max-width:100%}.cropper-view:active{cursor:-webkit-grabbing;cursor:grabbing}.cropper-view img{position:absolute;top:0;left:0;max-width:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.cropper-grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(var(--border) 1px,transparent 1px) 0 33.3% /100% 33.4% no-repeat,linear-gradient(var(--border) 1px,transparent 1px) 0 66.6% /100% 33.4% no-repeat,linear-gradient(90deg,var(--border) 1px,transparent 1px) 33.3% 0 /33.4% 100% no-repeat,linear-gradient(90deg,var(--border) 1px,transparent 1px) 66.6% 0 /33.4% 100% no-repeat;opacity:.7}.cropper-zoom-row{display:flex;align-items:center;gap:.5rem;width:260px;max-width:100%}.cropper-zoom{flex:1 1;accent-color:var(--primary)}.cropper-actions{display:flex;gap:.5rem}*{box-sizing:border-box}body{margin:0;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}a{color:inherit;text-decoration:none}.container{max-width:1100px;margin:0 auto;padding:0 1.25rem}.header{background:var(--header-bg);color:var(--header-fg);position:-webkit-sticky;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,.15);border-bottom:1px solid var(--header-line)}.nav{display:flex;justify-content:space-between;height:56px}.brand,.nav{align-items:center}.brand{display:inline-flex;gap:.45rem;font-weight:600;font-size:1.05rem;letter-spacing:.04em}.brand-logo{width:28px;height:28px;flex-shrink:0}.brand-text{letter-spacing:.5px}.nav-links,.nav-menu{display:flex;align-items:center}.nav-links{gap:.35rem;list-style:none;margin:0;padding:0}.nav-link{display:inline-flex;align-items:center;gap:.45rem;color:var(--header-fg);padding:.4rem .65rem;border-radius:8px;font-weight:500;font-size:.875rem;letter-spacing:.01em;transition:background .15s,color .15s}.nav-link.active,.nav-link:hover{background:var(--header-hover);color:var(--header-fg)}.user-menu-wrap{position:relative}button.user-menu-button{font:inherit;background:none;border:none;cursor:pointer;border-radius:99px}.avatar-img{object-fit:cover;display:block}.avatar,.avatar-img{width:1.75rem;height:1.75rem;border-radius:999px;border:2px solid var(--header-ring);flex-shrink:0}.avatar{display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;line-height:1;color:var(--on-primary);background:var(--primary);text-transform:uppercase}.user-menu{position:absolute;top:calc(100% + .35rem);right:0;min-width:150px;background:var(--header-bg);border:1px solid var(--header-line);border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,.35);padding:.35rem;display:flex;flex-direction:column;z-index:200}.user-menu-item{display:block;width:100%;text-align:left;padding:.55rem .75rem;border-radius:6px;color:var(--header-fg);text-decoration:none;font:inherit;font-size:.95rem;background:none;border:none;cursor:pointer;transition:background .15s,color .15s}.user-menu-item:focus-visible,.user-menu-item:hover{background:var(--header-hover);color:var(--header-fg)}.user-menu-item:disabled{opacity:.6;cursor:default}.nav-icon{display:inline-flex;align-items:center;justify-content:center}.nav-label{display:inline}.nav-badge{background:var(--accent);color:var(--on-accent);font-weight:700;border-radius:999px;min-width:1.3rem;height:1.3rem;padding:0 .35rem;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem}.nav-toggle{display:none}@media (min-width:769px){.header-mobile-right,.mobile-footer-nav{display:none}}@media (max-width:768px){.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;background:transparent;border:none;cursor:pointer;padding:0}.nav-toggle-bar{width:22px;height:2.5px;background:#fff;border-radius:2px;transition:transform .2s,opacity .2s}.nav-menu{display:none}.nav-menu.open{position:absolute;top:56px;left:0;right:0;background:var(--header-bg);border-top:1px solid var(--header-line);transform:translateY(-10px);opacity:0;transition:transform .18s ease,opacity .18s ease;z-index:99;transform:translateY(0);opacity:1}.nav-links{display:flex;flex-direction:column;justify-content:space-around;align-items:center;gap:0;padding:1rem;width:100%}.nav-link{flex:1 1;flex-direction:column;gap:.25rem;padding:.55rem;text-align:center;min-width:0}.nav-label{display:inline}.nav-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;background:transparent;border:none;cursor:pointer;padding:0}.nav-toggle-bar{width:22px;height:2.5px;background:#fff;border-radius:2px;transition:transform .2s,opacity .2s}.nav-menu{display:none}.nav-menu.open{display:block;position:absolute;top:56px;left:0;right:0;background:var(--header-bg);border-top:1px solid var(--header-line);transform:translateY(-10px);opacity:0;transition:transform .18s ease,opacity .18s ease;z-index:99;transform:translateY(0);opacity:1}}.nav-toggle-bar{width:22px;height:2.5px;background:var(--header-fg);border-radius:2px;transition:transform .2s,opacity .2s}@media (max-width:768px){.nav-toggle{display:flex}.nav-menu{position:absolute;top:56px;left:0;right:0;background:var(--header-bg);border-top:1px solid var(--header-line);transform:translateY(-10px);opacity:0;pointer-events:none;transition:transform .18s ease,opacity .18s ease;z-index:99}.nav-menu.open{transform:translateY(0);opacity:1;pointer-events:auto}.nav-links{display:flex;justify-content:space-around;align-items:center;gap:0;padding:.5rem 0 1rem;width:100%}.nav-link{flex:1 1;flex-direction:column;gap:.25rem;padding:.55rem .25rem;text-align:center;min-width:0}.nav-icon{display:flex}.nav-label{display:none}.nav-badge{position:absolute;top:.25rem;right:.5rem;min-width:1.1rem;height:1.1rem;padding:0 .3rem;font-size:.7rem}.nav-link.active:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);margin-top:.15rem}.header-mobile-right{align-items:center;gap:.5rem;justify-content:space-between}.header-mobile-right,.header-search-form{display:flex;flex:1 1}.header-search-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.header-search-input{flex:1 1;padding:.4rem .6rem;border:1px solid var(--header-line);border-radius:6px;font-size:.9rem;background:var(--header-hover);color:var(--header-fg)}.header-search-input::placeholder{color:var(--header-dim)}.header-nav-link{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:6px;color:var(--header-fg);transition:background .15s,color .15s}.header-nav-link:hover{background:var(--header-hover);color:var(--header-fg)}.header-nav-link.user-menu-button{width:auto}.brand-text,.footer,.footer-desktop{display:none}main{padding-bottom:64px}.mobile-footer-nav{display:flex;align-items:center;justify-content:space-around;position:fixed;bottom:0;left:0;right:0;height:64px;background:var(--header-bg);border-top:1px solid var(--header-line);padding:.25rem 0;z-index:100;gap:.25rem}.mobile-footer-nav-link{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:60px;height:56px;color:var(--header-dim);text-decoration:none;border:none;background:none;cursor:pointer;font-size:.85rem;transition:color .15s;position:relative}.mobile-nav-icon{margin-bottom:2px}.mobile-nav-label{font-size:.7rem;font-weight:500;letter-spacing:.3px}.mobile-footer-nav-link:hover{color:var(--header-fg)}.mobile-footer-nav-link.active{color:var(--accent)}.mobile-nav-badge{position:absolute;top:2px;right:-6px;background:var(--accent);color:var(--primary-dark);font-size:.65rem;font-weight:700;border-radius:999px;min-width:16px;height:16px;padding:0 3px;display:flex;align-items:center;justify-content:center}}.hero{background:var(--header-bg);color:#fff;padding:3.5rem 0;text-align:center}.hero h1{margin:0 0 .5rem;font-size:2.5rem}.hero p{margin:0;opacity:.9;font-size:1.1rem}.section-title{font-size:1.6rem;margin:2.5rem 0 1rem;border-bottom:2px solid var(--border);padding-bottom:.4rem}.category-tabs{display:flex;gap:.5rem;margin:1rem 0;flex-wrap:wrap}.category-tab{padding:.5rem 1.2rem;border:1px solid var(--border);border-radius:20px;background:var(--surface);color:var(--text);cursor:pointer;font-size:.9rem;transition:all .15s;white-space:nowrap}.category-tab:hover{background:var(--surface-hover,#f5f5f5)}.category-tab.active{background:var(--accent,#c0a373);color:var(--on-accent);border-color:var(--accent,#c0a373)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:1.25rem;gap:1.25rem}.quickview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;background:rgba(0,0,0,.6);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;margin:0;overflow:hidden;opacity:0;animation:quickviewFadeIn .15s ease-out forwards}@keyframes quickviewFadeIn{0%{opacity:0}to{opacity:1}}.quickview-modal{background:var(--surface);border:1px solid var(--border);border-radius:16px;max-width:880px;width:100%;max-height:90vh;overflow:hidden auto;box-shadow:0 20px 60px rgba(0,0,0,.3);display:flex;align-items:stretch;position:relative;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.quickview-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--muted);padding:.25rem .5rem;line-height:1}.quickview-close:hover{color:var(--text)}.quickview-img{flex:0 0 380px;min-height:380px;max-height:540px;aspect-ratio:1/1;align-self:center;margin:1.5rem 0 1.5rem 1.5rem;border-radius:12px;background:var(--surface-2,#f0f0f0);display:flex;align-items:center;justify-content:center;overflow:hidden}.quickview-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.quickview-placeholder{font-size:3rem;text-shadow:0 2px 4px rgba(0,0,0,.2)}.quickview-body{flex:1 1;padding:2rem;display:flex;flex-direction:column;justify-content:center}.quickview-title{margin:0 0 .25rem;font-size:1.5rem;color:var(--primary)}.quickview-category{font-size:.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.quickview-price{font-size:1.4rem;font-weight:700;color:var(--primary-dark);margin-bottom:.75rem}.quickview-desc{margin:0 0 1.25rem;color:var(--muted);font-size:.95rem;line-height:1.5;overflow-y:auto;max-height:120px}.quickview-qty-row{margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.quickview-qty-row label{font-size:.9rem;font-weight:600}.quickview-qty-input{width:60px;padding:.4rem .5rem;border:1px solid var(--border);border-radius:6px;font-size:.95rem;text-align:center}.quickview-add-btn{width:100%;font-weight:600}.card-error{margin:.5rem 0 0;padding:.5rem .65rem;font-size:.85rem}.card{position:relative}@media (max-width:768px){.quickview-overlay{padding:1rem;align-items:center;justify-content:center}.quickview-modal{border-radius:12px;max-width:420px;width:100%;flex-direction:column;max-height:90vh;margin:0 auto}.quickview-img{flex:0 0 auto;width:calc(100% - 1.5rem);min-height:0;max-height:38vh;aspect-ratio:1/1;margin:.75rem .75rem 0}.quickview-img img{min-height:0}.quickview-body{padding:1.25rem;flex:1 1}.quickview-desc{max-height:100px}.quickview-title{font-size:1.3rem}}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden;display:flex;flex-direction:column;transition:transform .15s,box-shadow .15s}.card:hover{transform:translateY(-3px);box-shadow:0 6px 18px rgba(0,0,0,.08)}.card-img,.card-img-btn{aspect-ratio:1/1;background:#f0f0f0;display:flex;align-items:center;justify-content:center;font-size:2.5rem;overflow:hidden}.card-img-btn{width:100%;padding:0;border:none;cursor:pointer;font-family:inherit;color:inherit}.card-img img,.card-img-btn img{width:100%;height:100%;object-fit:cover;object-position:center}.card-body{padding:1rem;display:flex;flex-direction:column;flex:1 1}.card-title{margin:0 0 .35rem;font-size:1.1rem}.card-desc{margin:0 0 .75rem;color:var(--muted);font-size:.9rem;flex:1 1}.card-footer{display:flex;align-items:center;justify-content:space-between}.price{font-weight:700;color:var(--primary-dark);font-size:1.05rem}.btn{display:inline-block;background:var(--primary);color:var(--on-primary);border:none;border-radius:6px;padding:.6rem 1rem;font-size:.95rem;cursor:pointer;transition:background .2s}.btn:hover{opacity:.85}.btn:disabled{background:#ccc;cursor:not-allowed}.btn-secondary{background:var(--surface);color:var(--primary);border:1px solid var(--primary)}.account-actions{display:flex;gap:.5rem;flex-wrap:wrap}.account-page{padding:2rem 0 3rem}.account-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:0 10px 40px rgba(0,0,0,.08);padding:2rem;max-width:720px;margin:0 auto}.account-profile{display:flex;align-items:center;gap:1.25rem}.account-avatar{width:4.5rem;height:4.5rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;line-height:1;color:var(--on-primary);background:var(--primary);text-transform:uppercase;flex-shrink:0}.account-name{margin:0 0 .35rem;font-size:1.5rem;color:var(--primary-dark);overflow-wrap:anywhere}.account-avatar-img{width:4.5rem;height:4.5rem;border-radius:999px;object-fit:cover;flex-shrink:0}.account-form{display:flex;flex-direction:column;gap:.9rem;margin-bottom:1.75rem}.account-form .form-row{display:flex;flex-direction:column;gap:.35rem}.account-form label{font-size:.85rem;font-weight:500;color:var(--primary-dark)}.account-form input{padding:.7rem .9rem;border:1.5px solid var(--border);border-radius:10px;font-size:.95rem;background:var(--surface-2);color:var(--text)}.account-form input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(0,0,0,.12)}.link-btn{background:none;border:none;color:var(--primary);font-weight:600;cursor:pointer;padding:0;font-size:.85rem}.link-btn:hover{text-decoration:underline}.role-badge{display:inline-block;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;padding:.2rem .6rem;border-radius:999px;background:#eee;color:#555}.role-admin,.role-super-admin{background:var(--primary);color:var(--on-primary)}.role-customer,.role-saler{background:transparent;border:1px solid var(--muted);color:var(--muted)}.account-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:.75rem;gap:.75rem;margin:1.5rem 0}.stat{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:.9rem .5rem;text-align:center}.stat-value{font-size:1.35rem;font-weight:700;color:var(--primary-dark)}.stat-label{font-size:.8rem;color:var(--muted);margin-top:.15rem}.account-section-title{font-size:1.1rem;color:var(--primary-dark);margin:0 0 .75rem}.account-order-list{list-style:none;margin:0 0 1.5rem;padding:0;border:1px solid var(--border);border-radius:12px;overflow:hidden}.account-order-row{display:flex;align-items:center;gap:.75rem;padding:.65rem .9rem;font-size:.9rem;background:var(--surface-2)}.account-order-row+.account-order-row{border-top:1px solid var(--border)}.account-order-id{font-weight:700;color:var(--primary-dark)}.account-order-total{margin-left:auto;font-weight:700}.order-status{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:.15rem .55rem;border-radius:999px;background:var(--surface-2);color:var(--text);border:1px solid var(--border)}@media (max-width:600px){.account-card{padding:1.5rem}.account-stats{grid-template-columns:1fr 1fr 1fr;gap:.5rem}.stat-value{font-size:1.1rem}}.cart-table{width:100%;border-collapse:collapse}.cart-table td,.cart-table th{padding:.75rem;border-bottom:1px solid var(--border);text-align:left}.qty-input{width:60px}.cart-page-container{padding:2rem 0}.cart-table-container{overflow:hidden}.cart-summary,.cart-table-container{background:var(--surface);border:1px solid var(--border);border-radius:8px}.cart-summary{display:flex;align-items:center;justify-content:space-between;margin-top:1.5rem;padding:1rem;gap:1rem}.cart-total{text-align:right}.cart-total-value{font-size:1.5rem;font-weight:700;color:var(--primary-dark)}.cart-checkout{display:flex;gap:1rem;margin-top:2rem}.footer{background:var(--header-bg);color:var(--header-fg);padding:.5rem 0;margin-top:3rem}.footer-slim{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem}.footer-logo{font-weight:700;font-size:1rem}.footer-social{display:flex;gap:.5rem}.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--header-hover);color:var(--header-fg);transition:background .2s,transform .2s;font-size:.9rem}.footer-social a:hover{background:var(--accent);color:var(--on-accent);transform:translateY(-2px)}.footer-contact{display:flex;gap:1rem;flex-wrap:wrap}.footer-contact p{margin:0;font-size:.85rem}.footer-contact a{color:var(--header-fg);transition:color .2s}.footer-contact a:hover{color:var(--accent)}.footer-bottom p{margin:0;font-size:.85rem;color:var(--header-dim)}.empty-cart,.muted{color:var(--muted)}.empty-cart{text-align:center;padding:3rem 0}.form-row{margin-bottom:1rem}.form-row input,.form-row textarea{width:100%;padding:.6rem;border:1px solid var(--border);border-radius:6px;font-size:1rem}.success-msg{background:#e8f5e9;color:#2e7d32;margin-bottom:1.5rem}.flash,.success-msg{padding:1rem;border-radius:6px}.flash{margin-bottom:1rem}.flash.error{background:#ffebee;color:#c62828}.flash.success{background:#e8f5e9;color:#2e7d32}.footer a{color:var(--header-fg)}.admin-dashboard{display:flex;min-height:calc(100vh - 56px);background:var(--bg)}.admin-sidebar{flex:0 0 220px;background:var(--header-bg);color:var(--header-fg);display:flex;flex-direction:column;padding:1.5rem}.admin-brand{font-size:1.25rem;font-weight:700;margin-bottom:2rem}.admin-nav{display:flex;flex-direction:column;gap:.5rem}.admin-nav-link{color:var(--header-dim);padding:.6rem .85rem;border-radius:6px;text-decoration:none;font-weight:500;font-size:.95rem;transition:background .15s,color .15s;border:none;background:none;cursor:pointer;text-align:left}.admin-nav-link:hover{background:var(--header-hover);color:var(--header-fg)}.admin-nav-link.active{background:var(--accent);color:var(--on-accent)}.admin-main{flex:1 1;padding:2rem;overflow-x:auto}@media (max-width:768px){.admin-main{padding:1rem}}.admin-header{margin-bottom:1.5rem}.admin-header h1{margin:0;font-size:1.75rem;color:var(--primary)}.admin-toolbar{display:flex;gap:1rem;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap}.admin-search{flex:1 1;min-width:200px}.admin-search input{width:100%;padding:.5rem .75rem;border:1px solid var(--border);border-radius:6px;font-size:.95rem}.admin-filters{display:flex;gap:.5rem;align-items:center;flex-wrap:nowrap}.filter-select{padding:.4rem .6rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);font-size:.9rem;cursor:pointer}.btn-primary{background:var(--accent);color:var(--on-accent);padding:.55rem 1rem;transition:background .15s}.btn-primary:hover{background:#b38e20}.btn-sm{padding:.3rem .6rem;font-size:.85rem}.btn-outline{background:var(--surface);color:var(--primary);border:1px solid var(--border);border-radius:6px;padding:.3rem .6rem;cursor:pointer;transition:background .15s}.btn-outline:hover{background:#f0f0f0}.btn-danger{background:#c62828;border-radius:6px;padding:.3rem .6rem}.btn-danger:hover{background:#a31d1d}.admin-loading{padding:2rem;color:var(--muted);text-align:center}.diag-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:1.25rem;gap:1.25rem}.diag-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:1.25rem}.diag-card h2{margin-top:0;margin-bottom:.75rem;font-size:1.05rem;color:var(--primary-dark)}.diag-table{width:100%;border-collapse:collapse;font-size:.9rem}.diag-table td,.diag-table th{text-align:left;padding:.4rem .5rem;border-bottom:1px solid var(--border)}.diag-table th{color:var(--muted);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.03em}.ok-badge{background:#e8f5e9;color:#2e7d32}.err-badge,.ok-badge{padding:.15rem .55rem;border-radius:12px;font-size:.8rem;font-weight:600}.err-badge{background:#ffebee;color:#c62828}.warn-badge{background:#fff8e1;color:#ff6f00;padding:.15rem .55rem;border-radius:12px;font-size:.8rem;font-weight:600}.admin-table-container{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden}@media (max-width:768px){.admin-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.admin-table{min-width:700px}}.admin-table{width:100%;border-collapse:collapse}.admin-table td,.admin-table th{padding:.7rem .9rem;text-align:left;border-bottom:1px solid var(--border)}.admin-table th{background:#f4f4f4;font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;color:var(--primary-dark)}.admin-actions-header{text-align:center}.admin-img-cell{width:60px}.admin-product-img,.admin-product-img-placeholder{width:50px;height:50px;display:flex;align-items:center;justify-content:center;border-radius:4px;font-size:1.5rem;background:#f0f0f0}.admin-status{display:inline-block;padding:.15rem .5rem;border-radius:12px;font-size:.8rem;font-weight:600}.admin-status.available{background:#e8f5e9;color:#2e7d32}.admin-status.unavailable{background:#ffebee;color:#c62828}.admin-mobile-header{display:none}.desktop-only{display:block}.admin-actions-cell{text-align:center;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.25rem;flex-wrap:nowrap}.admin-status-col{text-align:center}.admin-actions-row{display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap}.admin-actions-cell .btn-sm,.admin-actions-row .btn-sm{display:inline-flex;align-items:center;padding:.25rem .5rem;margin:0;font-size:.8rem;line-height:1;white-space:nowrap}.admin-empty{text-align:center;color:var(--muted);padding:2rem}.admin-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.admin-modal{background:var(--surface);border-radius:8px;max-width:600px;width:100%;box-shadow:0 10px 30px rgba(0,0,0,.2)}.admin-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.admin-modal-header h2{margin:0;font-size:1.25rem;color:var(--primary)}.admin-modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--muted);padding:.25rem .5rem}.admin-form{padding:1.25rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.form-row{margin:0}.form-row label{display:block;margin-bottom:.3rem;font-weight:600;font-size:.9rem}.form-row input,.form-row select,.form-row textarea{width:100%;padding:.5rem .6rem;border:1px solid var(--border);border-radius:6px;font-size:.95rem}.form-row textarea{resize:vertical}.form-row small{display:block;margin-top:.2rem;color:var(--muted);font-size:.8rem}.admin-modal-footer{display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.25rem;border-top:1px solid var(--border)}.admin-confirm{background:var(--surface);border-radius:8px;max-width:420px;width:100%;padding:1.5rem;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,.2)}.admin-confirm h3{margin:0 0 .75rem;color:var(--primary)}.admin-confirm p{margin:0 0 1.25rem;color:var(--muted)}.admin-confirm-actions{display:flex;gap:.75rem;justify-content:center}@media (max-width:768px){.hero{padding:1.5rem 0}.hero h1{font-size:1.75rem}.hero p{font-size:.9rem}.admin-dashboard{flex-direction:column}.desktop-only{display:none}.admin-mobile-header{display:flex;align-items:center;justify-content:space-between;background:var(--header-bg);color:var(--header-fg);padding:.6rem 1rem;position:-webkit-sticky;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,.15)}.admin-mobile-menu{position:relative}.admin-hamburger{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;color:var(--header-fg);border:none;background:none;cursor:pointer;transition:background .15s,color .15s}.admin-hamburger:hover{background:var(--header-hover);color:var(--header-fg)}.admin-hamburger svg{width:24px;height:24px}.admin-mobile-dropdown{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--surface);border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.2);padding:.5rem;min-width:200px;z-index:200;border:1px solid var(--border)}.admin-mobile-dropdown-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;border-radius:8px;border:none;background:none;cursor:pointer;color:var(--text);font-size:.9rem;font-weight:500;text-align:left;text-decoration:none;transition:background .15s,color .15s}.admin-mobile-dropdown-item:hover{background:var(--bg);color:var(--primary)}.admin-mobile-dropdown-item.active{background:var(--primary);color:var(--on-primary)}.admin-mobile-dropdown-item.active svg{stroke:var(--on-primary)}.admin-mobile-dropdown-item svg{flex-shrink:0;stroke:var(--text);transition:stroke .15s}.admin-sidebar{display:none}.admin-brand{margin:0}.admin-toolbar{flex-direction:column;align-items:stretch;gap:.75rem}.admin-filters{flex-wrap:wrap}.admin-users-table{min-width:680px}.admin-user-actions{text-align:center;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:.25rem;flex-wrap:nowrap}.grid{grid-template-columns:repeat(2,1fr)}.footer-grid,.form-grid{grid-template-columns:1fr}.footer-grid{gap:1.5rem}.footer-social{justify-content:flex-start}.admin-header h1{font-size:1.4rem}.admin-table td,.admin-table th{padding:.5rem;font-size:.85rem}.admin-actions-cell{flex-direction:column;gap:.15rem}.admin-actions-cell .btn-sm,.admin-user-actions .btn-sm{padding:.2rem .4rem;font-size:.75rem}.admin-user-badge{font-size:.75rem;padding:.1rem .35rem}.admin-modal{max-width:95vw;padding:0 .5rem}.admin-modal-header{padding:.75rem 1rem}.admin-modal-header h2{font-size:1.1rem}.admin-form{padding:1rem}.admin-modal-footer{padding:.75rem 1rem}.cart-page-container{padding:1rem 0}.cart-table-container{overflow-x:auto;-webkit-overflow-scrolling:touch}.cart-table{min-width:640px}.cart-table td,.cart-table th{padding:.5rem;font-size:.85rem}.cart-summary{padding:.75rem;gap:.75rem}.cart-checkout{flex-direction:column;gap:.75rem}.cart-checkout .btn{width:100%}}@media (max-width:480px){.admin-table td,.admin-table th{padding:.35rem .3rem;font-size:.75rem}.admin-img-cell{width:50px}.admin-product-img,.admin-product-img-placeholder{width:35px;height:35px;font-size:1.1rem}.admin-status{font-size:.7rem;padding:.1rem .35rem}.admin-actions-cell .btn-sm,.admin-user-actions .btn-sm{padding:.15rem .3rem;font-size:.65rem}.admin-user-badge{font-size:.65rem;padding:.1rem .3rem}.admin-header h1{font-size:1.25rem}.cart-page-container{padding:.75rem 0}.cart-table td,.cart-table th{padding:.35rem;font-size:.75rem}.cart-total-value{font-size:1.2rem}}.banner-carousel{position:relative;width:100%;overflow:hidden;border-radius:0 0 12px 12px}.banner-carousel-slide{position:relative;width:100%;min-height:320px;background-size:cover;background-position:50%;background-repeat:no-repeat;display:flex;align-items:center}.banner-carousel-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.5),rgba(0,0,0,.3));display:flex;align-items:center;padding:2rem}.banner-title{color:#fff;font-size:2.5rem;margin:0 0 .5rem;text-shadow:0 2px 8px rgba(0,0,0,.5)}.banner-desc{color:#fff;font-size:1.1rem;max-width:500px;margin:0;text-shadow:0 1px 4px rgba(0,0,0,.4)}.banner-carousel-dots{position:absolute;bottom:1rem;left:50%;transform:translateX(-50%);display:flex;gap:.5rem;z-index:10}.banner-carousel .dot{width:12px;height:12px;border-radius:50%;border:2px solid rgba(255,255,255,.6);background:transparent;cursor:pointer;transition:all .2s ease}.banner-carousel .dot.active{background:var(--primary,#8b5a2b);border-color:var(--primary,#8b5a2b)}.banner-carousel-progress{position:absolute;bottom:0;left:0;height:3px;background:var(--primary,#8b5a2b);animation:bannerProgress 5s linear infinite}@keyframes bannerProgress{0%{width:0}to{width:100%}}.banner-carousel-loading{padding:2rem;text-align:center;color:var(--muted)}.admin-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.admin-section-header h2{margin:0}.btn-sm{padding:.375rem .75rem;font-size:.875rem;border-radius:4px;border:1px solid var(--border);background:var(--surface);cursor:pointer;transition:all .2s ease;margin-right:.25rem}.btn-sm:hover{background:var(--surface-hover)}.btn-primary{background:var(--primary,#8b5a2b);color:var(--on-primary);border:none;border-radius:6px;padding:.5rem 1rem;cursor:pointer;font-weight:600}.btn-primary:hover{opacity:.9}.btn-danger{background:#dc2626;color:#fff;border:none;border-radius:4px;padding:.25rem .75rem;font-size:.875rem;cursor:pointer}.btn-danger:hover{opacity:.9}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:var(--surface);border-radius:12px;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px rgba(0,0,0,.3)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border)}.modal-header h3{margin:0}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--muted)}.modal-body{padding:1.5rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid var(--border)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600}.form-group input[type=number],.form-group input[type=text],.form-group input[type=url],.form-group textarea{width:100%;padding:.5rem;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text)}.form-group textarea{resize:vertical}.form-group input[type=file]{margin-bottom:.5rem}.badge{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.875rem;font-weight:600}.badge-enabled{background:#dcfce7;color:#166534}.badge-disabled,.badge-super-admin{background:#fee2e2;color:#991b1b}.badge-admin{background:#dcfce7;color:#166534}.badge-saler{background:#fef3c7;color:#92400e}.badge-customer{background:#e0e7ff;color:#3730a3}.admin-table-actions{width:200px;text-align:right;white-space:nowrap}.admin-table-actions .btn-sm{margin:0 .15rem;padding:.25rem .5rem;font-size:.8rem;line-height:1;display:inline-flex;align-items:center}@media (max-width:768px){.banner-title{font-size:1.4rem}.banner-carousel-slide{min-height:140px}.banner-html-embed{min-height:0}.grid{grid-template-columns:repeat(2,1fr);gap:.6rem}.card-body{padding:.6rem}.card-title{font-size:.95rem}.card-desc{display:none}.card-footer{flex-direction:column;align-items:stretch;gap:.4rem}.card-footer .price{font-size:.95rem}.card-footer .btn{width:100%;padding:.5rem;font-size:.85rem}}