:root{--color-primary:#e65100;--color-primary-hover:#c2410c;--color-primary-active:#9a3412;--color-primary-light:#fff3e0;--color-primary-subtle:#ffe0b2;--color-primary-ring:#e651002e;--color-brown-900:#2c1810;--color-brown-800:#3e2419;--color-brown-700:#543729;--color-brown-600:#6d4c3d;--color-brown-500:#8d6b5a;--color-brown-300:#bea99e;--color-brown-200:#d8ccc5;--color-brown-100:#efe9e4;--color-brown-50:#f7f3f0;--color-bg:#faf7f2;--color-bg-secondary:#f3ece2;--color-surface:#fff;--color-surface-hover:#fdfbf8;--color-surface-subtle:#faf5ee;--color-border:#e8ddd2;--color-border-subtle:#f0e6dc;--color-border-strong:#d5c2b2;--color-text-main:#2c1810;--color-text-body:#543729;--color-text-muted:#8d6b5a;--color-text-subtle:#a88e80;--color-text-inverse:#fff;--color-success:#16a34a;--color-success-bg:#dcfce7;--color-success-border:#86efac;--color-success-text:#14532d;--color-warning:#d97706;--color-warning-bg:#fef3c7;--color-warning-border:#fde68a;--color-warning-text:#78350f;--color-error:#dc2626;--color-error-bg:#fee2e2;--color-error-border:#fecaca;--color-error-text:#7f1d1d;--font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-xs:0 1px 2px #2c18100a;--shadow-sm:0 2px 6px #2c18100f;--shadow-md:0 6px 18px #2c181014;--shadow-lg:0 14px 32px #2c18101a;--shadow-focus:0 0 0 3px var(--color-primary-ring);--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.22s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{background-color:var(--color-bg);color:var(--color-text-main);font-family:var(--font-family);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-size:.975rem;line-height:1.55;overflow-x:hidden}img,svg{max-width:100%;display:block}a{color:var(--color-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary-hover)}button{cursor:pointer;background:0 0;border:none;outline:none;font-family:inherit}.app-shell{flex-direction:column;min-height:100vh;display:flex}.main-viewport{flex-direction:column;flex:1;display:flex}.navbar{z-index:1000;-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);background:#fffffff5;position:sticky;top:0;box-shadow:0 1px 8px #2c18100a}.nav-container{justify-content:space-between;align-items:center;gap:1rem;max-width:1240px;margin:0 auto;padding:.75rem 1.5rem;display:flex}.nav-brand{color:var(--color-brown-900);align-items:center;gap:.75rem;text-decoration:none;display:flex}.brand-logo-img{object-fit:contain;border-radius:var(--radius-sm);width:40px;height:40px;box-shadow:0 2px 6px #e6510033}.brand-text-wrapper{flex-direction:column;display:flex}.brand-text{letter-spacing:.03em;color:var(--color-brown-900);font-size:1.3rem;font-weight:800;line-height:1.1}.brand-subtext{letter-spacing:.05em;color:var(--color-primary);text-transform:uppercase;font-size:.68rem;font-weight:600}.badge-m1{border-radius:var(--radius-full);background:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-primary-subtle);margin-left:.25rem;padding:.15rem .5rem;font-size:.65rem;font-weight:700}.nav-links{align-items:center;gap:1.5rem;display:flex}.nav-link{color:var(--color-text-body);border-radius:var(--radius-sm);transition:all var(--transition-fast);align-items:center;gap:.4rem;padding:.4rem .6rem;font-size:.925rem;font-weight:500;text-decoration:none;display:inline-flex}.nav-link:hover{color:var(--color-primary);background-color:var(--color-surface-subtle)}.nav-link.active{color:var(--color-primary);font-weight:600}.nav-tag-soon{border-radius:var(--radius-full);background:var(--color-brown-100);color:var(--color-brown-600);padding:.1rem .4rem;font-size:.65rem;font-weight:600}.nav-actions{align-items:center;gap:1rem;display:flex}.nav-cart-btn{border-radius:var(--radius-md);background:var(--color-surface-subtle);border:1px solid var(--color-border);width:40px;height:40px;color:var(--color-brown-900);transition:all var(--transition-fast);justify-content:center;align-items:center;font-size:1.15rem;display:inline-flex;position:relative}.nav-cart-btn:hover{background:var(--color-primary-light);border-color:var(--color-primary-subtle);color:var(--color-primary)}.cart-count-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 4px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:-4px;right:-4px;box-shadow:0 1px 3px #0003}.user-profile-badge{background:var(--color-surface-subtle);border-radius:var(--radius-full);border:1px solid var(--color-border);align-items:center;gap:.65rem;padding:.3rem .75rem .3rem .4rem;display:flex}.user-avatar-circle{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.85rem;font-weight:700;display:flex}.user-name{color:var(--color-brown-900);white-space:nowrap;text-overflow:ellipsis;max-width:140px;font-size:.85rem;font-weight:600;overflow:hidden}.user-role-tag{border-radius:var(--radius-full);background:var(--color-brown-100);color:var(--color-brown-700);text-transform:uppercase;padding:.15rem .45rem;font-size:.65rem;font-weight:700}.button-logout{color:var(--color-brown-600);border-radius:var(--radius-xs);transition:all var(--transition-fast);padding:.25rem .5rem;font-size:.8rem;font-weight:600}.button-logout:hover{color:var(--color-error);background:var(--color-error-bg)}.mobile-menu-btn{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);width:44px;height:44px;color:var(--color-brown-900);cursor:pointer;justify-content:center;align-items:center;font-size:1.25rem;display:none}.mobile-nav-drawer{display:none}.button{border-radius:var(--radius-md);transition:all var(--transition-normal);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.4rem;font-size:.95rem;font-weight:600;line-height:1.25;text-decoration:none;display:inline-flex}.button-primary{background:var(--color-primary);color:#fff;box-shadow:0 2px 8px #e6510040}.button-primary:hover:not(:disabled){background:var(--color-primary-hover);color:#fff;transform:translateY(-1px);box-shadow:0 4px 14px #e6510059}.button-primary:active:not(:disabled){background:var(--color-primary-active);transform:translateY(0)}.button-primary:disabled{opacity:.65;cursor:not-allowed;box-shadow:none}.button-secondary{background:var(--color-surface);color:var(--color-brown-900);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-xs)}.button-secondary:hover:not(:disabled){background:var(--color-surface-subtle);border-color:var(--color-brown-500);color:var(--color-brown-900)}.button-oauth{color:var(--color-brown-900);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-xs);background:#fff;width:100%;font-weight:500}.button-oauth:hover{background:var(--color-surface-subtle);border-color:var(--color-brown-500)}.button-block{width:100%}.button-sm{border-radius:var(--radius-sm);padding:.45rem .9rem;font-size:.85rem}.form-group{flex-direction:column;gap:.4rem;margin-bottom:1.15rem;display:flex}.form-group label{color:var(--color-brown-900);font-size:.875rem;font-weight:600}.form-group input,.form-group textarea,.form-group select{width:100%;color:var(--color-brown-900);border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;outline:none;padding:.72rem .95rem;font-family:inherit;font-size:.95rem}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-brown-300)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.input-disabled{cursor:not-allowed;background-color:var(--color-bg-secondary)!important;color:var(--color-brown-600)!important;border-color:var(--color-border)!important}.field-hint{color:var(--color-text-muted);font-size:.775rem;line-height:1.35}.form-row{gap:1rem;display:flex}.flex-1{flex:1}.password-label-row{justify-content:space-between;align-items:center;display:flex}.btn-toggle-password{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:.8rem;font-weight:600}.btn-toggle-password:hover{text-decoration:underline}.auth-forgot-link{color:var(--color-primary);transition:color var(--transition-fast);font-size:.8rem;font-weight:600;text-decoration:none}.auth-forgot-link:hover{color:var(--color-primary-hover);text-decoration:underline}.alert{border-radius:var(--radius-md);align-items:flex-start;gap:.75rem;margin-bottom:1.25rem;padding:.85rem 1.1rem;font-size:.9rem;line-height:1.45;display:flex}.alert-error{background-color:var(--color-error-bg);border:1px solid var(--color-error-border);color:var(--color-error-text)}.alert-success{background-color:var(--color-success-bg);border:1px solid var(--color-success-border);color:var(--color-success-text)}.alert-icon{font-size:1.1rem;line-height:1}.auth-split-wrapper{background-color:var(--color-bg);flex:1;min-height:calc(100vh - 65px);display:flex}.auth-showcase-side{border-right:1px solid var(--color-border);background:linear-gradient(145deg,#fff9f2 0%,#f5efeb 100%);flex-direction:column;flex:1.15;justify-content:space-between;padding:3.5rem;display:flex;position:relative;overflow:hidden}.showcase-top{flex-direction:column;gap:1.5rem;max-width:580px;display:flex}.showcase-brand{align-items:center;gap:.85rem;display:flex}.showcase-logo-img{object-fit:contain;border-radius:var(--radius-md);width:52px;height:52px;box-shadow:0 4px 12px #e6510040}.showcase-brand-name{color:var(--color-brown-900);font-size:1.6rem;font-weight:800;line-height:1.1}.showcase-tagline{color:var(--color-brown-900);letter-spacing:-.02em;font-size:2.15rem;font-weight:800;line-height:1.22}.showcase-description{color:var(--color-text-body);font-size:1.05rem;line-height:1.6}.showcase-image-card{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);max-width:580px;margin:1.75rem 0;position:relative;overflow:hidden}.showcase-hero-img{object-fit:cover;width:100%;height:270px;display:block}.showcase-image-badge{-webkit-backdrop-filter:blur(8px);color:#fff;border-radius:var(--radius-full);background:#2c1810d9;align-items:center;gap:.4rem;padding:.4rem .85rem;font-size:.8rem;font-weight:600;display:flex;position:absolute;bottom:1rem;left:1rem}.showcase-pillars{grid-template-columns:repeat(3,1fr);gap:1rem;max-width:580px;display:grid}.pillar-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#ffffffb3;padding:.85rem}.pillar-icon{margin-bottom:.35rem;font-size:1.35rem}.pillar-title{color:var(--color-brown-900);margin-bottom:.2rem;font-size:.85rem;font-weight:700}.pillar-desc{color:var(--color-text-muted);font-size:.75rem;line-height:1.35}.auth-form-side{flex:1;justify-content:center;align-items:center;padding:3rem 2rem;display:flex}.auth-form-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);width:100%;max-width:440px;box-shadow:var(--shadow-md);padding:2.5rem 2.25rem}.auth-card-header{margin-bottom:1.75rem}.auth-card-header h2{color:var(--color-brown-900);margin-bottom:.35rem;font-size:1.65rem;font-weight:800}.auth-card-subtitle{color:var(--color-text-muted);font-size:.9rem}.portal-selector-tabs{background:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border);margin-bottom:1.25rem;padding:4px;display:flex}.portal-selector-tab{color:var(--color-brown-600);border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:.4rem;padding:.55rem .4rem;font-size:.825rem;font-weight:600;display:flex}.portal-selector-tab.active{color:var(--color-primary);background:#fff;box-shadow:0 1px 4px #2c181014}.portal-role-desc{color:var(--color-text-muted);background:var(--color-surface-subtle);border-radius:var(--radius-sm);border:1px dashed var(--color-border-strong);margin-bottom:1.35rem;padding:.5rem .8rem;font-size:.8rem}.auth-divider{color:var(--color-brown-300);text-transform:uppercase;align-items:center;margin:1.35rem 0;font-size:.8rem;font-weight:600;display:flex}.auth-divider:before,.auth-divider:after{content:"";border-bottom:1px solid var(--color-border);flex:1}.auth-divider span{color:var(--color-text-muted);padding:0 .85rem}.auth-footer{text-align:center;color:var(--color-text-body);margin-top:1.5rem;font-size:.875rem}.auth-footer p{margin-bottom:.5rem}.auth-link{color:var(--color-primary);font-weight:600}.auth-sub-note{color:var(--color-text-muted);font-size:.775rem}.dashboard-layout{width:100%;max-width:1300px;min-height:calc(100vh - 65px);margin:0 auto;display:flex}.dashboard-sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);flex-direction:column;flex-shrink:0;width:280px;padding:1.75rem 1.25rem;display:flex}.sidebar-customer-header{border-bottom:1px solid var(--color-border);align-items:center;gap:.85rem;margin-bottom:1.5rem;padding-bottom:1.5rem;display:flex}.sidebar-avatar{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.2rem;font-weight:700;display:flex;box-shadow:0 2px 6px #e6510040}.sidebar-user-details h3{color:var(--color-brown-900);font-size:.975rem;font-weight:700;line-height:1.2}.sidebar-user-details p{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;max-width:165px;font-size:.8rem;overflow:hidden}.sidebar-nav{flex-direction:column;flex:1;gap:.35rem;display:flex}.sidebar-nav-item{border-radius:var(--radius-md);color:var(--color-brown-700);transition:all var(--transition-fast);text-align:left;align-items:center;gap:.75rem;width:100%;padding:.75rem .95rem;font-size:.925rem;font-weight:500;display:flex}.sidebar-nav-item:hover{background:var(--color-surface-subtle);color:var(--color-primary)}.sidebar-nav-item.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:700}.sidebar-nav-item .item-icon{font-size:1.15rem;line-height:1}.sidebar-nav-item .item-text{flex:1}.sidebar-tag-live{border-radius:var(--radius-full);background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border);padding:.15rem .45rem;font-size:.65rem;font-weight:700}.sidebar-tag-soon{border-radius:var(--radius-full);background:var(--color-brown-100);color:var(--color-brown-600);padding:.15rem .45rem;font-size:.65rem;font-weight:600}.sidebar-footer{border-top:1px solid var(--color-border);padding-top:1.25rem}.sidebar-logout-btn{border-radius:var(--radius-md);width:100%;color:var(--color-brown-600);transition:all var(--transition-fast);align-items:center;gap:.75rem;padding:.7rem .95rem;font-size:.9rem;font-weight:600;display:flex}.sidebar-logout-btn:hover{background:var(--color-error-bg);color:var(--color-error)}.dashboard-content{background-color:var(--color-bg);flex:1;padding:2.25rem 2.5rem;overflow-y:auto}.content-header{margin-bottom:2rem}.content-header h1,.content-header h2{color:var(--color-brown-900);margin-bottom:.35rem;font-size:1.75rem;font-weight:800}.content-header p{color:var(--color-text-body);font-size:.95rem}.profile-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);max-width:840px;padding:2rem 2.25rem}.profile-section-title{color:var(--color-brown-900);border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:.5rem;margin-bottom:1.25rem;padding-bottom:.6rem;font-size:1.1rem;font-weight:700;display:flex}.profile-section-divider{border:none;border-top:1px dashed var(--color-border);margin:1.75rem 0}.profile-actions-bar{border-top:1px solid var(--color-border-subtle);justify-content:flex-end;align-items:center;gap:1rem;margin-top:2rem;padding-top:1.25rem;display:flex}.overview-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin-bottom:2rem;display:grid}.overview-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);transition:all var(--transition-fast);flex-direction:column;justify-content:space-between;padding:1.5rem;display:flex}.overview-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong);transform:translateY(-2px)}.overview-card-header{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.overview-card-icon{border-radius:var(--radius-md);background:var(--color-primary-light);width:44px;height:44px;color:var(--color-primary);justify-content:center;align-items:center;font-size:1.6rem;display:flex}.overview-card-title{color:var(--color-brown-900);font-size:1rem;font-weight:700}.overview-card-content{color:var(--color-text-body);margin-bottom:1.25rem;font-size:.9rem;line-height:1.5}.placeholder-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);text-align:center;max-width:640px;box-shadow:var(--shadow-sm);margin:1.5rem auto;padding:3.5rem 2rem}.placeholder-icon{margin-bottom:1.25rem;font-size:3.5rem}.placeholder-card h3{color:var(--color-brown-900);margin-bottom:.75rem;font-size:1.4rem;font-weight:800}.placeholder-text{color:var(--color-text-body);max-width:480px;margin:0 auto 1.75rem;font-size:.95rem;line-height:1.6}.spinner{border:3px solid #e6510033;border-top-color:var(--color-primary);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=768px){.desktop-only{display:none!important}.brand-subtext{display:none}.brand-logo-img{width:34px;height:34px}.brand-text{font-size:1.15rem}.nav-container{padding:.65rem 1rem}.nav-links{display:none}.mobile-menu-btn{display:flex}.auth-split-wrapper{flex-direction:column}.auth-showcase-side{border-right:none;border-bottom:1px solid var(--color-border);padding:2rem 1.25rem}.showcase-tagline{font-size:1.6rem}.showcase-description{font-size:.925rem}.showcase-hero-img{height:190px}.showcase-pillars{grid-template-columns:1fr;gap:.65rem}.auth-form-side{padding:2rem 1rem}.auth-form-card{box-shadow:none;border:1px solid var(--color-border);padding:1.75rem 1.25rem}.form-row{flex-direction:column;gap:0}.dashboard-layout{flex-direction:column}.dashboard-sidebar{border-right:none;border-bottom:1px solid var(--color-border);width:100%;padding:1rem}.sidebar-customer-header{margin-bottom:.75rem;padding-bottom:.75rem}.sidebar-nav{-webkit-overflow-scrolling:touch;flex-direction:row;gap:.4rem;padding-bottom:.5rem;overflow-x:auto}.sidebar-nav-item{white-space:nowrap;padding:.5rem .75rem;font-size:.85rem}.sidebar-footer{display:none}.dashboard-content{padding:1.5rem 1rem}.profile-card{padding:1.5rem 1.15rem}.profile-actions-bar{justify-content:stretch}.profile-actions-bar .button{width:100%}.mobile-nav-drawer.open{z-index:999;background:#fff;flex-direction:column;padding:1.5rem;display:flex;position:fixed;inset:65px 0 0;overflow-y:auto}.mobile-drawer-links{flex-direction:column;gap:.65rem;margin-bottom:1.5rem;display:flex}.mobile-drawer-link{border-radius:var(--radius-md);background:var(--color-surface-subtle);color:var(--color-brown-900);justify-content:space-between;align-items:center;padding:.85rem 1rem;font-size:.95rem;font-weight:600;text-decoration:none;display:flex}.mobile-drawer-link.active{background:var(--color-primary-light);color:var(--color-primary)}}@media (width>=769px) and (width<=1024px){.auth-showcase-side{padding:2.5rem 2rem}.showcase-tagline{font-size:1.8rem}.auth-form-side{padding:2.5rem 1.5rem}.dashboard-sidebar{width:220px;padding:1.5rem 1rem}.dashboard-content{padding:2rem 1.5rem}}.badge-status{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:700;display:inline-flex}.badge-pending{background:var(--color-warning-bg);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.badge-approved{background:var(--color-success-bg);color:var(--color-success-text);border:1px solid var(--color-success-border)}.badge-rejected{background:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-error-border)}.file-upload-box{border:2px dashed var(--color-border-strong);background:var(--color-surface-subtle);border-radius:var(--radius-md);text-align:center;transition:border-color var(--transition-fast), background-color var(--transition-fast);cursor:pointer;padding:1.25rem;position:relative}.file-upload-box:hover{border-color:var(--color-primary);background:#fff8f3}.file-upload-box input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.file-upload-icon{margin-bottom:.35rem;font-size:1.75rem}.file-upload-text{color:var(--color-text-body);font-size:.85rem;font-weight:600}.file-upload-hint{color:var(--color-text-muted);margin-top:.2rem;font-size:.75rem}.file-selected-pill{background:var(--color-primary-light);color:var(--color-primary-hover);border:1px solid var(--color-primary-subtle);border-radius:var(--radius-sm);align-items:center;gap:.5rem;margin-top:.5rem;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:inline-flex}.application-status-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:1.5rem;padding:2rem}.application-status-card.pending{border-left:5px solid var(--color-warning)}.application-status-card.approved{border-left:5px solid var(--color-success)}.application-status-card.rejected{border-left:5px solid var(--color-error)}.status-rejection-banner{background:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-md);color:var(--color-error-text);margin:1.25rem 0;padding:1.25rem}.status-rejection-banner h4{margin-bottom:.35rem;font-size:.95rem;font-weight:700}.status-rejection-banner p{font-size:.9rem;line-height:1.5}.admin-toolbar{border-bottom:1px solid var(--color-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem;padding-bottom:1.25rem;display:flex}.admin-filter-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.admin-filter-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-body);cursor:pointer;transition:all var(--transition-fast);padding:.45rem .9rem;font-size:.825rem;font-weight:600}.admin-filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.admin-filter-btn.active{background:var(--color-brown-900);color:#fff;border-color:var(--color-brown-900)}.admin-filter-badge{border-radius:var(--radius-full);background:#ffffff40;margin-left:.4rem;padding:.1rem .45rem;font-size:.725rem;display:inline-block}.admin-filter-btn:not(.active) .admin-filter-badge{background:var(--color-brown-100);color:var(--color-brown-900)}.admin-table-container{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow-x:auto}.admin-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.admin-table th{background:var(--color-surface-subtle);color:var(--color-brown-900);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:.85rem 1rem;font-weight:700}.admin-table td{border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-body);vertical-align:middle;padding:.85rem 1rem}.admin-table tr:hover td{background-color:var(--color-surface-hover)}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background-color:#2c181099;justify-content:center;align-items:center;padding:1.5rem;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-window{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-lg);width:100%;max-width:680px;max-height:90vh;padding:2rem;animation:.25s ease-out slideUp;position:relative;overflow-y:auto}.modal-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.modal-close-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:1.5rem;line-height:1}.modal-close-btn:hover{color:var(--color-brown-900)}.modal-details-grid{grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem;display:grid}@media (width<=640px){.modal-details-grid{grid-template-columns:1fr}}.modal-detail-block{background:var(--color-surface-subtle);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:1rem}.modal-detail-label{text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.35rem;font-size:.75rem;font-weight:700}.modal-detail-value{color:var(--color-brown-900);font-size:.925rem;font-weight:600}.modal-detail-subtext{color:var(--color-text-body);margin-top:.2rem;font-size:.8rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.customer-shops-container,.customer-shop-detail-container{width:100%}.shops-directory-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.shop-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast);flex-direction:column;display:flex;overflow:hidden}.shop-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-subtle);transform:translateY(-2px)}.shop-card-image-box{background-color:var(--color-surface-subtle);height:160px;position:relative;overflow:hidden}.shop-card-img{object-fit:cover;width:100%;height:100%;display:block}.shop-card-img-placeholder{background:var(--color-brown-100);justify-content:center;align-items:center;width:100%;height:100%;font-size:3rem;display:flex}.shop-card-badge{border-radius:var(--radius-full);align-items:center;gap:.35rem;padding:.25rem .6rem;font-size:.75rem;font-weight:700;display:inline-flex;position:absolute;top:.75rem;right:.75rem;box-shadow:0 2px 4px #0000001a}.badge-open{color:#2e7d32;background:#e8f5e9;border:1px solid #a5d6a7}.badge-closed{color:#c62828;background:#ffebee;border:1px solid #ffcdd2}.shop-card-body{flex-direction:column;flex:1;padding:1.25rem;display:flex}.shop-card-title{color:var(--color-brown-900);margin:0 0 .4rem;font-size:1.15rem;font-weight:700}.shop-card-desc{color:var(--color-text-body);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 1rem;font-size:.85rem;line-height:1.45;display:-webkit-box;overflow:hidden}.shop-card-details{color:var(--color-text-muted);flex-direction:column;gap:.35rem;margin-top:auto;margin-bottom:1.25rem;font-size:.825rem;display:flex}.shop-detail-row{align-items:flex-start;gap:.45rem;display:flex}.shop-detail-row .detail-icon{font-size:.9rem;line-height:1.3}.shop-card-action{margin-top:auto}.shop-header-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);margin-bottom:1.5rem;padding:1.5rem}.shop-header-left{align-items:flex-start;gap:1.25rem;display:flex}@media (width<=640px){.shop-header-left{flex-direction:column}}.shop-header-avatar{border-radius:var(--radius-lg);background:var(--color-surface-subtle);border:1px solid var(--color-border);flex-shrink:0;justify-content:center;align-items:center;width:90px;height:90px;display:flex;overflow:hidden}.shop-header-img{object-fit:cover;width:100%;height:100%}.shop-header-avatar-fallback{font-size:2.5rem}.shop-header-details{flex:1}.shop-header-title-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.4rem;display:flex}.shop-header-name{color:var(--color-brown-900);margin:0;font-size:1.5rem;font-weight:800}.shop-status-badge{border-radius:var(--radius-full);align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.785rem;font-weight:700;display:inline-flex}.status-open{color:#2e7d32;background:#e8f5e9;border:1px solid #a5d6a7}.status-closed{color:#c62828;background:#ffebee;border:1px solid #ffcdd2}.status-dot{background:currentColor;border-radius:50%;width:7px;height:7px}.shop-header-description{color:var(--color-text-body);margin:0 0 .75rem;font-size:.9rem;line-height:1.5}.shop-header-meta{color:var(--color-text-muted);flex-wrap:wrap;gap:1.25rem;font-size:.85rem;display:flex}.catalog-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.category-chips{flex-wrap:wrap;gap:.5rem;display:flex}.category-chip{border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-brown-700);cursor:pointer;transition:all var(--transition-fast);padding:.4rem .85rem;font-size:.825rem;font-weight:600}.category-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.category-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.catalog-search{min-width:240px;position:relative}.catalog-search-input{border:1px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);outline:none;width:100%;padding:.5rem 2rem .5rem .85rem;font-size:.875rem}.catalog-search-input:focus{border-color:var(--color-primary)}.clear-search-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:.8rem;position:absolute;top:50%;right:.65rem;transform:translateY(-50%)}.products-count-label{color:var(--color-text-muted);margin-bottom:1rem;font-size:.85rem;font-weight:500}.products-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:1.25rem;display:grid}.product-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-fast);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.product-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary-subtle);transform:translateY(-2px)}.product-card.product-unavailable{opacity:.78;background:#fcfaf8}.product-image-container{background:var(--color-surface-subtle);height:140px;position:relative;overflow:hidden}.product-image{object-fit:cover;width:100%;height:100%;display:block}.product-image-placeholder{background:var(--color-brown-100);justify-content:center;align-items:center;width:100%;height:100%;font-size:2.5rem;display:flex}.product-category-tag{color:#fff;border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#2c1810bf;padding:.2rem .5rem;font-size:.685rem;font-weight:600;position:absolute;bottom:.5rem;left:.5rem}.product-info{flex-direction:column;flex:1;padding:1rem;display:flex}.product-unit{color:var(--color-text-muted);text-transform:uppercase;margin-bottom:.25rem;font-size:.75rem;font-weight:600}.product-name{color:var(--color-brown-900);margin:0 0 .35rem;font-size:1rem;font-weight:700;line-height:1.35}.product-desc{color:var(--color-text-body);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .85rem;font-size:.8rem;line-height:1.4;display:-webkit-box;overflow:hidden}.product-footer{border-top:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;margin-top:auto;padding-top:.75rem;display:flex}.product-price{color:var(--color-primary);font-size:1.15rem;font-weight:800}.price-currency{margin-right:1px;font-size:.95rem}.badge-available{color:#2e7d32;border-radius:var(--radius-full);background:#e8f5e9;align-items:center;gap:.3rem;padding:.2rem .5rem;font-size:.75rem;font-weight:700;display:inline-flex}.badge-unavailable{color:#c62828;border-radius:var(--radius-full);background:#ffebee;align-items:center;gap:.3rem;padding:.2rem .5rem;font-size:.75rem;font-weight:700;display:inline-flex}.badge-dot{border-radius:50%;width:6px;height:6px}.dot-green{background:#2e7d32}.dot-red{background:#c62828}.m4-order-hint{text-align:center;border-top:1px dashed var(--color-border-subtle);margin-top:.5rem;padding-top:.4rem}.hint-text{color:var(--color-primary);font-size:.7rem;font-weight:600}.hint-text.text-muted{color:var(--color-text-muted)}.shopkeeper-portal-container{width:100%;max-width:1100px;margin:0 auto;padding:2rem 1.5rem}.shopkeeper-top-bar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;margin-bottom:1.5rem;padding:1.5rem 2rem;display:flex}.shopkeeper-top-left{align-items:center;gap:1rem;display:flex}.shopkeeper-brand-icon{font-size:2.25rem;line-height:1}.shopkeeper-brand-title{color:var(--color-brown-900);margin:0 0 .15rem;font-size:1.5rem;font-weight:800}.shopkeeper-brand-subtitle{color:var(--color-text-muted);font-size:.875rem}.shopkeeper-top-actions{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.shop-status-toggle-btn{border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:.5rem;padding:.45rem .95rem;font-size:.85rem;font-weight:700;display:inline-flex}.shop-status-toggle-btn.is-open{color:#2e7d32;background:#e8f5e9;border:1px solid #a5d6a7}.shop-status-toggle-btn.is-closed{color:#c62828;background:#ffebee;border:1px solid #ffcdd2}.shop-status-toggle-btn .toggle-dot{background:currentColor;border-radius:50%;width:8px;height:8px}.shopkeeper-tabs-nav{border-bottom:2px solid var(--color-border);gap:.75rem;margin-bottom:1.5rem;padding-bottom:.5rem;display:flex}.shopkeeper-tab-item{border-radius:var(--radius-md);color:var(--color-brown-700);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.95rem;font-weight:600;display:inline-flex}.shopkeeper-tab-item:hover{background:var(--color-surface-subtle);color:var(--color-primary)}.shopkeeper-tab-item.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:700}.tab-badge{background:var(--color-brown-200);color:var(--color-brown-800);border-radius:var(--radius-full);padding:.1rem .45rem;font-size:.75rem}.shopkeeper-metrics-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem;display:grid}.metric-box{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);padding:1.25rem}.metric-num{color:var(--color-brown-900);font-size:1.75rem;font-weight:800;line-height:1.2;display:block}.metric-label{color:var(--color-text-muted);margin-top:.25rem;font-size:.8rem;font-weight:600;display:block}.text-success{color:#2e7d32!important}.text-warning{color:#e65100!important}.shopkeeper-toolbar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:1rem 1.25rem;display:flex}.toolbar-search-box{flex:1;min-width:200px;position:relative}.toolbar-search-input{border:1px solid var(--color-border);border-radius:var(--radius-md);outline:none;width:100%;padding:.5rem 1.75rem .5rem .85rem;font-size:.875rem}.toolbar-category-filter{align-items:center;gap:.5rem;display:flex}.category-dropdown{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:.45rem .75rem;font-size:.875rem}.shopkeeper-products-table-wrapper{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow-x:auto}.shopkeeper-products-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.shopkeeper-products-table th{background:var(--color-surface-subtle);color:var(--color-brown-900);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:.95rem 1.25rem;font-weight:700}.shopkeeper-products-table td{border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-body);vertical-align:middle;padding:.95rem 1.25rem}.shopkeeper-products-table tr:hover td{background:var(--color-surface-hover)}.table-product-cell{align-items:center;gap:.85rem;display:flex}.table-product-thumb{border-radius:var(--radius-md);background:var(--color-surface-subtle);border:1px solid var(--color-border-subtle);flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.table-product-thumb img{object-fit:cover;width:100%;height:100%}.table-product-name{color:var(--color-brown-900);font-weight:700}.table-product-unit{color:var(--color-text-muted);font-size:.775rem}.table-category-tag{color:var(--color-brown-700);background:var(--color-brown-100);border-radius:var(--radius-sm);white-space:nowrap;padding:.2rem .55rem;font-size:.75rem;font-weight:600}.table-price{color:var(--color-brown-900);font-size:.95rem}.stock-control-group{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);align-items:center;gap:.4rem;padding:.15rem .35rem;display:inline-flex}.stock-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;width:24px;height:24px;color:var(--color-brown-900);justify-content:center;align-items:center;font-weight:700;line-height:1;display:flex}.stock-btn:hover:not(:disabled){background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.stock-btn:disabled{opacity:.4;cursor:not-allowed}.stock-value{text-align:center;min-width:28px;font-weight:700}.stock-value.stock-zero{color:#c62828}.table-status-pill{border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);border:none;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:700;display:inline-flex}.pill-available{color:#2e7d32;background:#e8f5e9}.pill-unavailable{color:#c62828;background:#ffebee}.pill-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.table-actions{justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.button-danger-subtle{color:#c62828;background:0 0;border:1px solid #ffcdd2}.button-danger-subtle:hover{background:#ffebee;border-color:#c62828}.shopkeeper-settings-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:2.25rem}.settings-header{border-bottom:1px solid var(--color-border);margin-bottom:2rem;padding-bottom:1rem}.settings-header h2{color:var(--color-brown-900);margin:0 0 .25rem;font-size:1.4rem;font-weight:800}.settings-header p{color:var(--color-text-muted);margin:0;font-size:.9rem}.form-group-status-toggle{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;margin-bottom:1.75rem;padding:1.25rem;display:flex}.switch-toggle-label{cursor:pointer;width:52px;height:28px;display:inline-block;position:relative}.switch-toggle-label input{opacity:0;width:0;height:0}.switch-slider{cursor:pointer;background-color:#ccc;border-radius:28px;transition:all .3s;position:absolute;inset:0}.switch-slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:all .3s;position:absolute;bottom:4px;left:4px}input:checked+.switch-slider{background-color:#2e7d32}input:checked+.switch-slider:before{transform:translate(24px)}.photo-upload-row{align-items:center;gap:1.25rem;margin-top:.5rem;display:flex}.photo-preview-box{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-subtle);flex-shrink:0;justify-content:center;align-items:center;width:70px;height:70px;display:flex;overflow:hidden}.photo-preview-img{object-fit:cover;width:100%;height:100%}.photo-preview-empty{font-size:2rem}.photo-upload-inputs{flex-direction:column;flex:1;gap:.5rem;display:flex}.file-input-label{cursor:pointer;align-self:flex-start}.settings-actions-bar{border-top:1px solid var(--color-border);margin-top:2rem;padding-top:1.25rem}.modal-dialog{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);box-shadow:var(--shadow-lg);width:100%;max-width:580px;max-height:90vh;animation:.25s ease-out slideUp;position:relative;overflow-y:auto}.modal-form{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.modal-checkbox-row{padding:.5rem 0}.checkbox-label{color:var(--color-brown-900);cursor:pointer;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:flex}.modal-actions{border-top:1px solid var(--color-border);justify-content:flex-end;align-items:center;gap:.75rem;padding-top:1rem;display:flex}.alert-dismiss{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;margin-left:auto;font-size:.85rem}.alert-dismiss:hover{opacity:1}.sidebar-cart-badge{border-radius:var(--radius-full);background:var(--color-primary);color:#fff;justify-content:center;align-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 6px;font-size:.75rem;font-weight:700;line-height:1;display:inline-flex;box-shadow:0 1px 3px #e651004d}.nav-cart-badge{border-radius:var(--radius-full);background:var(--color-primary);color:#fff;justify-content:center;align-items:center;min-width:18px;height:18px;margin-left:.35rem;padding:0 5px;font-size:.7rem;font-weight:700;line-height:1;display:inline-flex}.product-cart-action-row{border-top:1px dashed var(--color-border-subtle);margin-top:.75rem;padding-top:.75rem}.product-cart-btn{border-radius:var(--radius-sm);width:100%;transition:all var(--transition-fast);justify-content:center;align-items:center;gap:.4rem;padding:.55rem .85rem;font-size:.85rem;font-weight:700;display:inline-flex}.button-disabled{background:var(--color-brown-100);color:var(--color-text-muted);border:1px solid var(--color-border);cursor:not-allowed;opacity:.8}.product-stepper-box{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.product-qty-stepper{background:var(--color-primary-light);border:1px solid var(--color-primary-subtle);border-radius:var(--radius-sm);align-items:center;padding:2px;display:inline-flex}.product-step-btn{background:var(--color-surface);width:28px;height:28px;color:var(--color-primary);border-radius:var(--radius-xs);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-xs);border:none;justify-content:center;align-items:center;font-size:1rem;font-weight:800;display:inline-flex}.product-step-btn:hover:not(:disabled){background:var(--color-primary);color:#fff}.product-step-btn:disabled{opacity:.45;cursor:not-allowed}.product-step-qty{text-align:center;min-width:32px;color:var(--color-brown-900);font-size:.9rem;font-weight:700}.in-cart-indicator{color:var(--color-success);background:var(--color-success-bg);border-radius:var(--radius-full);padding:.2rem .45rem;font-size:.725rem;font-weight:700}.spinner-inline{border:2px solid #0003;border-top-color:currentColor;border-radius:50%;width:12px;height:12px;animation:.6s linear infinite spin;display:inline-block}.cart-conflict-alert{border-left:4px solid var(--color-warning);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.conflict-alert-content{flex:1;align-items:flex-start;gap:.75rem;min-width:260px;display:flex}.conflict-alert-content p{margin:.25rem 0 0;font-size:.85rem;line-height:1.4}.conflict-alert-actions{align-items:center;gap:.5rem;display:flex}.button-ghost{color:var(--color-text-body);background:0 0;border:1px solid #0000}.button-ghost:hover{background:#0000000d}.button-error{background:var(--color-error);color:#fff;border:1px solid var(--color-error)}.button-error:hover{background:#b91c1c}.empty-cart-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);text-align:center;box-shadow:var(--shadow-sm);max-width:640px;margin:1rem auto;padding:3.5rem 2rem}.empty-cart-icon{margin-bottom:1rem;font-size:3.5rem;line-height:1}.empty-cart-title{color:var(--color-brown-900);margin-bottom:.5rem;font-size:1.35rem;font-weight:800}.empty-cart-subtitle{color:var(--color-text-body);margin-bottom:1.75rem;font-size:.925rem;line-height:1.55}.empty-cart-browse-btn{align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;display:inline-flex}.cart-content-layout{grid-template-columns:1fr 340px;align-items:start;gap:1.5rem;display:grid}@media (width<=900px){.cart-content-layout{grid-template-columns:1fr}}.cart-main-column{flex-direction:column;gap:1rem;display:flex}.cart-store-banner{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;display:flex}.store-banner-left{align-items:center;gap:1rem;display:flex}.store-banner-avatar{border-radius:var(--radius-md);background:var(--color-primary-light);border:1px solid var(--color-border-subtle);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:flex;overflow:hidden}.store-banner-img{object-fit:cover;width:100%;height:100%}.store-banner-name{color:var(--color-brown-900);margin:0;font-size:1.15rem;font-weight:800}.store-banner-badge{color:var(--color-success);background:var(--color-success-bg);border-radius:var(--radius-full);padding:.15rem .45rem;font-size:.7rem;font-weight:700}.store-banner-address{color:var(--color-text-muted);margin-top:.2rem;font-size:.8rem}.single-shop-pill{color:var(--color-primary);background:var(--color-primary-light);border:1px solid var(--color-primary-subtle);border-radius:var(--radius-full);padding:.25rem .65rem;font-size:.75rem;font-weight:700;display:inline-block}.cart-items-header{justify-content:space-between;align-items:center;padding:.25rem .5rem;display:flex}.items-count-heading{color:var(--color-brown-900);font-size:.95rem;font-weight:700}.cart-clear-link{color:var(--color-error);cursor:pointer;background:0 0;border:none;padding:0;font-size:.825rem;font-weight:600;text-decoration:underline}.cart-clear-link:hover{color:#b91c1c}.cart-items-list{flex-direction:column;gap:.75rem;display:flex}.cart-item-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast);grid-template-columns:80px 1fr auto;align-items:center;gap:1.25rem;padding:1.25rem;display:grid}.cart-item-card:hover{border-color:var(--color-border-strong)}@media (width<=640px){.cart-item-card{grid-template-columns:70px 1fr;gap:1rem}.cart-item-actions-box{border-top:1px dashed var(--color-border-subtle);grid-column:1/-1;justify-content:space-between;align-items:center;padding-top:.75rem;display:flex}}.cart-item-thumb-box{border-radius:var(--radius-md);background:var(--color-bg-secondary);border:1px solid var(--color-border-subtle);flex-shrink:0;justify-content:center;align-items:center;width:80px;height:80px;display:flex;overflow:hidden}.cart-item-thumb{object-fit:cover;width:100%;height:100%}.cart-item-thumb-fallback{font-size:2rem}.cart-item-info{flex-direction:column;gap:.2rem;display:flex}.cart-item-header{align-items:center;gap:.5rem;display:flex}.cart-item-category{text-transform:uppercase;color:var(--color-primary);background:var(--color-primary-light);border-radius:var(--radius-xs);letter-spacing:.5px;padding:.1rem .4rem;font-size:.7rem;font-weight:700}.cart-item-unit{color:var(--color-text-muted);font-size:.75rem}.cart-item-name{color:var(--color-brown-900);margin:0;font-size:1rem;font-weight:700;line-height:1.3}.cart-item-unit-price{color:var(--color-text-muted);font-size:.85rem;font-weight:500}.cart-item-stock-warning{color:var(--color-error);margin-top:.25rem;font-size:.75rem;font-weight:600}.cart-item-actions-box{align-items:center;gap:1.25rem;display:flex}.cart-item-stepper{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);align-items:center;padding:2px;display:inline-flex}.cart-step-btn{background:var(--color-surface);width:28px;height:28px;color:var(--color-brown-900);border-radius:var(--radius-xs);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-xs);border:none;justify-content:center;align-items:center;font-size:.95rem;font-weight:800;display:inline-flex}.cart-step-btn:hover:not(:disabled){background:var(--color-primary);color:#fff}.cart-step-btn:disabled{opacity:.4;cursor:not-allowed}.cart-step-qty{text-align:center;min-width:30px;color:var(--color-brown-900);font-size:.9rem;font-weight:700}.cart-item-subtotal-box{flex-direction:column;align-items:flex-end;min-width:80px;display:flex}.subtotal-label{color:var(--color-text-muted);text-transform:uppercase;font-size:.7rem}.subtotal-amount{color:var(--color-primary);font-size:1.05rem;font-weight:800}.cart-item-remove-btn{color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-xs);transition:all var(--transition-fast);background:0 0;border:none;padding:.25rem .4rem;font-size:.75rem;font-weight:600}.cart-item-remove-btn:hover:not(:disabled){color:var(--color-error);background:var(--color-error-bg)}.cart-summary-column{position:sticky;top:1.5rem}.order-summary-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.summary-card-title{color:var(--color-brown-900);border-bottom:1px solid var(--color-border-subtle);margin:0;padding-bottom:.5rem;font-size:1.15rem;font-weight:800}.summary-shop-info{background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);padding:.75rem 1rem}.summary-shop-name{color:var(--color-brown-900);font-size:.925rem;font-weight:700}.summary-shop-sub{color:var(--color-text-muted);font-size:.75rem}.summary-rows-group{flex-direction:column;gap:.6rem;display:flex}.summary-row{color:var(--color-text-body);justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.summary-value{color:var(--color-brown-900);font-weight:600}.summary-free{color:var(--color-success);font-weight:700}.summary-divider{background:var(--color-border);height:1px;margin:.25rem 0}.summary-total-row{justify-content:space-between;align-items:baseline;display:flex}.summary-total-label{color:var(--color-brown-900);font-size:1.1rem;font-weight:800}.summary-total-amount{color:var(--color-primary);font-size:1.5rem;font-weight:900}.summary-m5-notice{background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);color:var(--color-text-muted);align-items:flex-start;gap:.5rem;padding:.75rem .85rem;font-size:.775rem;line-height:1.45;display:flex}.summary-m5-notice .notice-icon{flex-shrink:0;font-size:.95rem}.summary-continue-btn{text-align:center;width:100%;font-weight:600}.cart-inline-conflict-banner{border-radius:var(--radius-lg);background-color:#fef2f2;border:2px solid #dc2626;border-left-width:6px;flex-direction:column;gap:1rem;margin-bottom:1.5rem;padding:1.15rem 1.35rem;animation:.25s ease-out fadeInDown;display:flex;box-shadow:0 4px 14px #dc26261f}@media (width>=640px){.cart-inline-conflict-banner{flex-direction:row;justify-content:space-between;align-items:center}}.conflict-banner-main{flex:1;align-items:flex-start;gap:.85rem;display:flex}.conflict-banner-icon-col{flex-shrink:0;justify-content:center;align-items:center;margin-top:.15rem;font-size:1.35rem;line-height:1;display:flex}.conflict-banner-text-col{flex-direction:column;gap:.35rem;display:flex}.conflict-banner-title{color:#991b1b;margin:0;font-size:.95rem;font-weight:800;line-height:1.3}.conflict-banner-message{color:#7f1d1d;margin:0;font-size:.885rem;font-weight:500;line-height:1.5}.conflict-banner-actions{flex-shrink:0;align-items:center;gap:.65rem;display:flex}.conflict-banner-actions .button-ghost{color:#991b1b;background-color:#fff;border:1px solid #fecaca}.conflict-banner-actions .button-ghost:hover{color:#7f1d1d;background-color:#fee2e2}.cart-inline-error-banner{border-radius:var(--radius-md);color:#7f1d1d;background-color:#fef2f2;border:1px solid #fecaca;border-left:5px solid #dc2626;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem;padding:.9rem 1.15rem;animation:.2s ease-out fadeInDown;display:flex;box-shadow:0 2px 8px #dc262614}.error-banner-main{flex:1;align-items:flex-start;gap:.75rem;display:flex}.error-banner-icon{flex-shrink:0;margin-top:.1rem;font-size:1.15rem;line-height:1}.error-banner-text{flex-direction:column;gap:.2rem;display:flex}.error-banner-text strong{color:#991b1b;font-size:.9rem}.error-banner-text p{color:#7f1d1d;margin:0;font-size:.85rem;line-height:1.4}.cart-inline-error-banner .button-ghost{color:#991b1b;background-color:#fff;border:1px solid #fecaca;flex-shrink:0}.cart-inline-error-banner .button-ghost:hover{color:#7f1d1d;background-color:#fee2e2}.customer-checkout-container{width:100%;animation:.25s ease-out fadeIn}.checkout-back-btn{color:var(--color-brown-700);margin-bottom:.25rem;padding:.35rem .65rem}.checkout-alert-error{background-color:var(--color-error-bg);border:1px solid var(--color-error-border);border-radius:var(--radius-md);color:var(--color-error-text);align-items:flex-start;gap:.85rem;margin-bottom:1.5rem;padding:1rem 1.25rem;animation:.2s ease-out fadeInDown;display:flex}.checkout-alert-icon{font-size:1.25rem;line-height:1}.checkout-alert-content h4{color:#991b1b;margin-bottom:.2rem;font-size:.95rem;font-weight:700}.checkout-alert-content p{margin:0;font-size:.875rem;line-height:1.45}.checkout-grid-layout{grid-template-columns:1fr 380px;align-items:start;gap:1.75rem;display:grid}.checkout-main-col{flex-direction:column;gap:1.5rem;display:flex}.checkout-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem}.checkout-card-header{border-bottom:1px solid var(--color-border-subtle);align-items:flex-start;gap:.85rem;margin-bottom:1.25rem;padding-bottom:.85rem;display:flex}.checkout-step-badge{background:var(--color-primary);color:#fff;border-radius:var(--radius-full);flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.85rem;font-weight:700;display:inline-flex}.checkout-section-title{color:var(--color-brown-900);margin-bottom:.15rem;font-size:1.15rem;font-weight:700}.checkout-section-subtitle{color:var(--color-text-muted);font-size:.85rem}.checkout-address-preview{background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);align-items:flex-start;gap:1rem;padding:1.15rem;display:flex}.address-preview-icon{font-size:1.5rem;line-height:1}.address-preview-details{flex-direction:column;gap:.3rem;font-size:.9rem;display:flex}.address-recipient-name{color:var(--color-brown-900);align-items:center;gap:.5rem;font-size:1rem;display:flex}.address-verified-tag{color:var(--color-success-text);background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-full);padding:.15rem .5rem;font-size:.725rem;font-weight:600}.address-phone{color:var(--color-brown-700);font-weight:500}.address-street,.address-locality{color:var(--color-text-body)}.checkout-address-incomplete-warning{border-radius:var(--radius-md);background:#fffbeb;border:1px solid #fde68a;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.warning-icon{font-size:1.5rem}.warning-body h4{color:#92400e;margin-bottom:.35rem;font-size:.975rem;font-weight:700}.warning-body p{color:#78350f;font-size:.875rem;line-height:1.5}.payment-options-list{flex-direction:column;gap:.85rem;display:flex}.payment-option-card{border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);align-items:flex-start;gap:1rem;padding:1.15rem;display:flex}.payment-option-selected{border-color:var(--color-primary);background:#fff8f2}.payment-option-disabled{opacity:.65;cursor:not-allowed;background:#faf8f5;border-style:dashed}.payment-radio-col{margin-top:.2rem}.payment-info-col{flex:1}.payment-title-row{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.payment-method-name{color:var(--color-brown-900);font-weight:600}.payment-badge-active{color:#065f46;border-radius:var(--radius-full);background:#d1fae5;padding:.15rem .5rem;font-size:.725rem;font-weight:600}.payment-badge-soon{color:var(--color-text-muted);background:var(--color-border-subtle);border-radius:var(--radius-full);padding:.15rem .5rem;font-size:.725rem;font-weight:600}.payment-method-desc{color:var(--color-text-muted);margin:0;font-size:.825rem;line-height:1.45}.checkout-items-list{flex-direction:column;gap:.65rem;display:flex}.checkout-item-row{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.checkout-item-row:last-child{border-bottom:none}.checkout-item-details{flex-direction:column;flex:1;gap:.15rem;display:flex}.checkout-item-name{color:var(--color-brown-900);font-size:.925rem;font-weight:600}.checkout-item-unit{color:var(--color-text-muted);font-size:.8rem}.checkout-item-qty{color:var(--color-brown-700);font-size:.85rem}.checkout-item-subtotal{color:var(--color-brown-900);text-align:right;min-width:70px;font-size:.95rem;font-weight:700}.checkout-summary-col{position:sticky;top:1.5rem}.checkout-summary-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.5rem}.summary-address-alert{color:#92400e;border-radius:var(--radius-sm);background:#fffbeb;border:1px solid #fde68a;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.65rem .85rem;font-size:.8rem;line-height:1.35;display:flex}.checkout-place-order-btn{justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.85rem;font-size:1rem;font-weight:700;display:flex;box-shadow:0 4px 14px #e6510040}.checkout-place-order-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}.checkout-trust-box{border-top:1px solid var(--color-border-subtle);flex-direction:column;gap:.5rem;margin-top:1.25rem;padding-top:1rem;display:flex}.trust-item{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.775rem;display:flex}.order-success-container{flex-direction:column;gap:1.75rem;max-width:900px;margin:0 auto;animation:.3s ease-out fadeIn;display:flex}.order-success-hero{border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);background:linear-gradient(135deg,#f0fdf4 0%,#dcfce7 100%);border:1px solid #86efac;padding:2.25rem}.order-success-check-badge{background:var(--color-success);color:#fff;border-radius:var(--radius-full);justify-content:center;align-items:center;width:58px;height:58px;margin-bottom:1rem;font-size:1.85rem;font-weight:900;display:inline-flex;box-shadow:0 4px 12px #16a34a4d}.order-success-title{color:#14532d;margin-bottom:.5rem;font-size:1.85rem;font-weight:800}.order-success-subtitle{color:#166534;max-width:580px;margin:0 auto 1.5rem;font-size:1rem;line-height:1.5}.order-success-meta-bar{border-radius:var(--radius-full);background:#ffffffd9;border:1px solid #86efac99;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;padding:.65rem 1.5rem;display:inline-flex}.meta-pill{color:var(--color-brown-900);align-items:center;gap:.35rem;font-size:.875rem;display:flex}.meta-label{color:var(--color-text-muted)}.order-status-badge{border-radius:var(--radius-full);text-transform:uppercase;padding:.2rem .6rem;font-size:.75rem;font-weight:700;display:inline-block}.status-created{color:#1e40af;background:#dbeafe;border:1px solid #bfdbfe}.status-confirmed,.status-accepted{color:#065f46;background:#d1fae5;border:1px solid #a7f3d0}.status-preparing{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.status-out_for_delivery{color:#3730a3;background:#e0e7ff;border:1px solid #c7d2fe}.status-delivered{color:#14532d;background:#dcfce7;border:1px solid #86efac}.status-cancelled{color:#991b1b;background:#fee2e2;border:1px solid #fecaca}.order-success-details-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;display:grid}.success-info-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:1.25rem}.info-card-header{border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:.5rem;margin-bottom:.85rem;padding-bottom:.5rem;display:flex}.info-card-header h3{color:var(--color-brown-900);margin:0;font-size:.95rem;font-weight:700}.info-card-body .store-name,.info-card-body .recipient-name{color:var(--color-brown-900);margin-bottom:.25rem;font-size:1.05rem;font-weight:700}.info-card-body p{color:var(--color-text-body);margin-bottom:.25rem;font-size:.875rem;line-height:1.4}.store-fulfill-badge{color:var(--color-primary);background:var(--color-primary-light);border:1px solid var(--color-primary-subtle);border-radius:var(--radius-full);margin-top:.5rem;padding:.2rem .5rem;font-size:.725rem;font-weight:600;display:inline-block}.cod-security-tag{color:var(--color-text-muted);background:var(--color-bg);border-radius:var(--radius-xs);margin-top:.5rem;padding:.2rem .4rem;font-size:.725rem;display:inline-block}.success-items-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);padding:1.5rem}.success-items-title{color:var(--color-brown-900);margin-bottom:1rem;font-size:1.15rem;font-weight:700}.success-items-table{border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);overflow:hidden}.items-table-header{background:var(--color-bg);color:var(--color-text-muted);text-transform:uppercase;grid-template-columns:2fr 1fr 1fr 1fr;padding:.75rem 1rem;font-size:.8rem;font-weight:700;display:grid}.items-table-row{border-top:1px solid var(--color-border-subtle);grid-template-columns:2fr 1fr 1fr 1fr;align-items:center;padding:.85rem 1rem;font-size:.9rem;display:grid}.item-unit-tag{color:var(--color-text-muted);margin-left:.35rem;font-size:.8rem}.items-table-footer{border-top:2px solid var(--color-border);background:var(--color-surface-subtle);flex-direction:column;gap:.4rem;padding:1rem;display:flex}.footer-row{color:var(--color-text-body);justify-content:space-between;font-size:.9rem;display:flex}.footer-total-row{border-top:1px solid var(--color-border-subtle);color:var(--color-brown-900);justify-content:space-between;align-items:center;padding-top:.5rem;font-size:1.1rem;font-weight:800;display:flex}.grand-total-val{color:var(--color-primary);font-size:1.25rem}.order-success-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;padding:1rem 0;display:flex}.customer-orders-container{width:100%;animation:.25s ease-out fadeIn}.orders-list{flex-direction:column;gap:1.25rem;display:flex}.order-history-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);transition:transform var(--transition-fast), box-shadow var(--transition-fast);overflow:hidden}.order-history-card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong)}.order-card-header{background:var(--color-bg);border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.order-header-left{align-items:center;gap:.5rem;font-size:.9rem;display:flex}.order-id-label{color:var(--color-text-muted)}.order-id-val{color:var(--color-brown-900);font-family:monospace;font-size:.95rem}.order-date-separator{color:var(--color-border-strong)}.order-date{color:var(--color-text-muted);font-size:.85rem}.order-card-body{flex-direction:column;gap:.75rem;padding:1.25rem;display:flex}.order-store-row{color:var(--color-brown-900);align-items:center;gap:.4rem;font-size:1rem;display:flex}.store-city{color:var(--color-text-muted);font-size:.85rem}.order-items-summary{align-items:center;gap:.75rem;display:flex}.items-count-badge{background:var(--color-primary-light);color:var(--color-primary);border-radius:var(--radius-full);white-space:nowrap;padding:.2rem .5rem;font-size:.75rem;font-weight:700}.items-names-preview{color:var(--color-text-body);text-overflow:ellipsis;white-space:nowrap;max-width:500px;font-size:.875rem;overflow:hidden}.order-meta-info-row{border-top:1px dashed var(--color-border-subtle);color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:1.25rem;padding-top:.5rem;font-size:.825rem;display:flex}.meta-info-item{align-items:center;gap:.35rem;display:flex}.order-card-footer{background:var(--color-surface-subtle);border-top:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.order-total-box{align-items:baseline;gap:.5rem;display:flex}.total-amount{color:var(--color-primary);font-size:1.15rem;font-weight:800}.order-detail-container{width:100%;animation:.25s ease-out fadeIn}.order-detail-top-nav{margin-bottom:1rem}.order-detail-header-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.5rem 1.75rem;display:flex}.order-title-row{align-items:center;gap:.75rem;margin-bottom:.25rem;display:flex}.order-title-row h1{color:var(--color-brown-900);font-size:1.65rem;font-weight:800}.order-placed-time{color:var(--color-text-muted);font-size:.875rem}.header-total-due{flex-direction:column;align-items:flex-end;display:flex}.due-label{color:var(--color-text-muted);text-transform:uppercase;font-size:.8rem;font-weight:600}.due-amount{color:var(--color-primary);font-size:1.65rem;font-weight:800}.order-detail-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem;margin-bottom:1.5rem;display:grid}.detail-info-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:1.25rem}.detail-card-header{border-bottom:1px solid var(--color-border-subtle);align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem;display:flex}.detail-card-header h3{color:var(--color-brown-900);font-size:.95rem;font-weight:700}.detail-card-content{font-size:.9rem}.detail-shop-name,.detail-recipient-name{color:var(--color-brown-900);margin-bottom:.35rem;font-size:1.05rem;font-weight:700;display:block}.detail-text{color:var(--color-text-body);margin-bottom:.25rem;line-height:1.4}.detail-badge-pill{color:var(--color-brown-700);background:var(--color-bg);border:1px solid var(--color-border-subtle);border-radius:var(--radius-full);margin-top:.5rem;padding:.15rem .5rem;font-size:.725rem;font-weight:600;display:inline-block}.order-items-detail-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);margin-bottom:1.5rem;padding:1.5rem}.items-card-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.25rem;display:flex}.items-card-top h3{color:var(--color-brown-900);font-size:1.15rem;font-weight:700}.snapshot-tag{color:#1e40af;border-radius:var(--radius-full);background:#dbeafe;border:1px solid #bfdbfe;padding:.2rem .65rem;font-size:.75rem;font-weight:600}.snapshot-explanation{color:var(--color-text-muted);margin-bottom:1.25rem;font-size:.825rem}.order-items-table-wrapper{overflow-x:auto}.order-detail-items-table{border-collapse:collapse;width:100%;font-size:.9rem}.order-detail-items-table th{background:var(--color-bg);text-align:left;color:var(--color-text-muted);text-transform:uppercase;border-bottom:1px solid var(--color-border);padding:.85rem 1rem;font-size:.8rem;font-weight:700}.order-detail-items-table td{border-bottom:1px solid var(--color-border-subtle);vertical-align:middle;padding:1rem}.table-item-name strong{color:var(--color-brown-900);font-size:.95rem;display:block}.table-item-desc{color:var(--color-text-muted);margin-top:.15rem;font-size:.8rem;display:block}.table-unit-label{color:var(--color-text-muted);background:var(--color-bg);border-radius:var(--radius-sm);padding:.15rem .5rem;font-size:.8rem;display:inline-block}.table-qty-badge{color:var(--color-brown-900);background:var(--color-bg-secondary);border-radius:var(--radius-sm);padding:.15rem .55rem;font-weight:700;display:inline-block}.order-detail-items-table tfoot td{border-bottom:none;padding:.75rem 1rem;font-size:.925rem}.tfoot-grand-total td{border-top:2px solid var(--color-border);padding-top:1rem;font-size:1.15rem}.order-detail-footer-actions{justify-content:flex-end;align-items:center;gap:1rem;display:flex}@media (width<=900px){.checkout-grid-layout{grid-template-columns:1fr}.checkout-summary-col{position:static}}.has-sticky-cart{padding-bottom:5.5rem!important}.sticky-cart-bar-wrapper{z-index:999;-webkit-backdrop-filter:blur(12px);border-top:1px solid var(--color-border);background:#fffffff5;animation:.28s cubic-bezier(.16,1,.3,1) slideUpCartBar;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #2c18101f}@keyframes slideUpCartBar{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.sticky-cart-bar{justify-content:space-between;align-items:center;gap:1.25rem;max-width:1200px;margin:0 auto;padding:.85rem 1.5rem;display:flex}.sticky-cart-bar-left{align-items:center;gap:.85rem;display:flex}.sticky-cart-icon{background:var(--color-primary-light);border-radius:var(--radius-full);justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;line-height:1;display:inline-flex}.sticky-cart-info{align-items:baseline;gap:.4rem;display:flex}.sticky-cart-count{color:var(--color-brown-900);white-space:nowrap;font-size:1.05rem;font-weight:700}.sticky-cart-shop-name{color:var(--color-text-muted);white-space:nowrap;font-size:.825rem}.sticky-cart-divider{background:var(--color-border);width:1px;height:24px}.sticky-cart-total{align-items:baseline;gap:.35rem;display:flex}.sticky-cart-total-label{color:var(--color-text-muted);font-size:.85rem}.sticky-cart-total-amount{color:var(--color-primary);white-space:nowrap;font-size:1.25rem;font-weight:800}.sticky-cart-bar-actions{align-items:center;gap:.75rem;display:flex}.sticky-cart-view-btn{white-space:nowrap;padding:.65rem 1.25rem;font-size:.925rem;font-weight:600}.sticky-cart-checkout-btn{white-space:nowrap;transition:transform var(--transition-fast), box-shadow var(--transition-fast);align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.975rem;font-weight:700;display:inline-flex;box-shadow:0 4px 14px #e6510047}.sticky-cart-checkout-btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px #e6510059}.checkout-btn-arrow{transition:transform var(--transition-fast);font-size:1.1rem}.sticky-cart-checkout-btn:hover .checkout-btn-arrow{transform:translate(3px)}@media (width<=640px){.has-sticky-cart{padding-bottom:6.5rem!important}.sticky-cart-bar-wrapper{padding-bottom:max(.25rem, env(safe-area-inset-bottom))}.sticky-cart-bar{gap:.75rem;padding:.65rem 1rem}.sticky-cart-bar-left{gap:.5rem}.sticky-cart-icon{width:34px;height:34px;font-size:1.25rem}.sticky-cart-info{flex-direction:column;align-items:flex-start;gap:0}.sticky-cart-count{font-size:.9rem}.sticky-cart-shop-name,.sticky-cart-divider,.sticky-cart-total-label{display:none}.sticky-cart-total-amount{font-size:1.1rem}.sticky-cart-view-btn{padding:.55rem .85rem;font-size:.85rem}.sticky-cart-checkout-btn{min-height:44px;padding:.65rem 1rem;font-size:.9rem}}@media (width<=420px){.sticky-cart-bar{flex-wrap:wrap;padding:.5rem .75rem}.sticky-cart-bar-left{justify-content:space-between;width:100%}.sticky-cart-bar-actions{grid-template-columns:1fr 2fr;gap:.5rem;width:100%;display:grid}.sticky-cart-view-btn,.sticky-cart-checkout-btn{justify-content:center;width:100%}}.badge-warning-count{font-weight:800;box-shadow:0 2px 6px #e6510066;color:#fff!important;background:#e65100!important}.shopkeeper-orders-view{flex-direction:column;gap:1.5rem;display:flex}.shopkeeper-orders-controls{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:1rem;padding:1rem 1.25rem;display:flex}.orders-filter-pills{flex-wrap:wrap;gap:.5rem;display:flex}.orders-filter-pills .filter-pill{border:1px solid var(--color-border);background:var(--color-surface-subtle);color:var(--color-text-body);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);padding:.45rem 1rem;font-size:.85rem;font-weight:600}.orders-filter-pills .filter-pill:hover{border-color:var(--color-primary);color:var(--color-primary);background:#fff8f3}.orders-filter-pills .filter-pill.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 2px 8px #e6510040}.orders-search-and-refresh{align-items:center;gap:.75rem;display:flex}.orders-search-box{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast);flex:1;align-items:center;padding:0 .75rem;display:flex;position:relative}.orders-search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 2px #e6510026}.orders-search-box .search-icon{color:var(--color-text-muted);margin-right:.5rem;font-size:.95rem}.orders-search-box input{outline:none;width:100%;background:0 0!important;border:none!important;padding:.65rem 0!important;font-size:.9rem!important}.clear-search-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:.85rem}.clear-search-btn:hover{color:var(--color-brown-900)}.refresh-orders-btn{white-space:nowrap;padding:.65rem 1rem;font-weight:600}.shopkeeper-orders-list{flex-direction:column;gap:1.25rem;display:flex}.shopkeeper-order-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast), box-shadow var(--transition-fast), border-color var(--transition-fast);flex-direction:column;gap:1rem;padding:1.25rem 1.5rem;display:flex}.shopkeeper-order-card:hover{border-color:var(--color-primary-subtle);box-shadow:var(--shadow-md)}.order-card-header{border-bottom:1px solid var(--color-border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding-bottom:.75rem;display:flex}.order-id-and-date{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.order-id-badge{color:var(--color-brown-900);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:#f5efeb;padding:.25rem .6rem;font-family:monospace;font-size:.9rem;font-weight:700}.order-time-stamp{color:var(--color-text-muted);font-size:.825rem}.order-card-body{grid-template-columns:1.2fr 1fr;gap:1.5rem;display:grid}.order-customer-section{flex-direction:column;gap:.45rem;display:flex}.order-info-line{color:var(--color-text-body);align-items:flex-start;gap:.5rem;font-size:.875rem;display:flex}.order-info-line .info-icon{flex-shrink:0;margin-top:.1rem;font-size:.95rem}.customer-name-text{color:var(--color-brown-900);font-weight:700}.order-phone-link{color:var(--color-primary);font-weight:600;text-decoration:none}.order-phone-link:hover{text-decoration:underline}.order-address-text{color:var(--color-text-muted);word-break:break-word;line-height:1.4}.order-items-summary-section{background:var(--color-surface-subtle);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);flex-direction:column;gap:.5rem;padding:.75rem 1rem;display:flex}.items-summary-header{justify-content:space-between;align-items:center;display:flex}.items-count-tag{text-transform:uppercase;color:var(--color-brown-900);letter-spacing:.03em;font-size:.8rem;font-weight:700}.order-items-chips-list{flex-direction:column;gap:.35rem;display:flex}.order-item-chip{align-items:center;gap:.4rem;font-size:.85rem;display:flex}.item-qty-badge{color:var(--color-brown-900);border-radius:var(--radius-sm);background:#efe6dc;padding:.1rem .35rem;font-size:.75rem;font-weight:700}.item-chip-name{white-space:nowrap;text-overflow:ellipsis;color:var(--color-text-body);flex:1;overflow:hidden}.item-chip-price{color:var(--color-text-muted);font-size:.8rem;font-weight:600}.items-more-chip{color:var(--color-primary);margin-top:.2rem;font-size:.75rem;font-weight:600}.order-card-footer{border-top:1px solid var(--color-border-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:.75rem;display:flex}.order-payment-badge-wrap{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.order-payment-method-pill{color:#2e7d32;border-radius:var(--radius-full);background:#e8f5e9;border:1px solid #c8e6c9;padding:.25rem .65rem;font-size:.8rem;font-weight:700}.order-total-display{align-items:baseline;gap:.4rem;display:flex}.total-label{color:var(--color-text-muted);font-size:.825rem}.total-amount-val{color:var(--color-primary);font-size:1.15rem;font-weight:800}.view-order-btn{font-weight:700}.order-detail-modal{flex-direction:column;width:95%;max-width:680px;max-height:90vh;display:flex}.order-detail-modal-title{align-items:center;gap:.75rem;display:flex}.order-detail-icon{font-size:1.6rem}.order-detail-modal-title h3{color:var(--color-brown-900);margin:0;font-size:1.2rem}.order-detail-full-id{color:var(--color-text-muted);word-break:break-all;font-family:monospace;font-size:.8rem}.order-detail-header-right{align-items:center;gap:.75rem;display:flex}.order-detail-modal-body{flex-direction:column;gap:1.25rem;padding:1.25rem 1.5rem;display:flex;overflow-y:auto}.m7-milestone-banner{border-radius:var(--radius-md);color:#0d47a1;background:#e3f2fd;border:1px solid #bbdefb;align-items:flex-start;gap:.65rem;padding:.75rem 1rem;font-size:.825rem;line-height:1.45;display:flex}.m7-milestone-banner .m7-icon{flex-shrink:0;font-size:1.1rem}.order-detail-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.detail-card-panel{background:var(--color-surface-subtle);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;gap:.5rem;padding:1rem;display:flex}.detail-card-panel h4{color:var(--color-brown-900);border-bottom:1px solid var(--color-border-subtle);margin:0 0 .35rem;padding-bottom:.35rem;font-size:.9rem}.detail-info-row{justify-content:space-between;gap:.5rem;font-size:.85rem;display:flex}.detail-label{color:var(--color-text-muted);flex-shrink:0}.detail-value{color:var(--color-text-body);text-align:right;word-break:break-word}.order-detail-items-panel{flex-direction:column;gap:.5rem;display:flex}.order-detail-items-panel h4{color:var(--color-brown-900);margin:0;font-size:.925rem}.order-items-table-wrapper{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.order-items-table{border-collapse:collapse;width:100%;font-size:.85rem}.order-items-table th,.order-items-table td{border-bottom:1px solid var(--color-border-subtle);padding:.65rem .85rem}.order-items-table th{background:var(--color-surface-subtle);color:var(--color-brown-900);text-align:left;font-weight:700}.item-unit-label{color:var(--color-text-muted);font-size:.75rem;font-weight:400}.order-items-table tfoot td{background:var(--color-surface-subtle);font-size:.85rem}.order-total-row td{border-top:1px solid var(--color-border);border-bottom:none;font-size:.95rem}.order-detail-meta-panel{background:var(--color-surface-subtle);border:1px solid var(--color-border-subtle);border-radius:var(--radius-md);grid-template-columns:repeat(3,1fr);gap:.75rem;padding:.75rem 1rem;display:grid}.meta-box{flex-direction:column;gap:.2rem;display:flex}.meta-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.03em;font-size:.75rem}.meta-val{color:var(--color-brown-900);font-size:.85rem;font-weight:700}@media (width<=768px){.order-card-body{grid-template-columns:1fr;gap:1rem}.order-detail-grid{grid-template-columns:1fr}.order-detail-meta-panel{grid-template-columns:1fr;gap:.5rem}.order-card-footer{flex-direction:column;align-items:stretch}.order-payment-badge-wrap{justify-content:space-between}.view-order-btn{justify-content:center;width:100%}}.stripe-test-notice-box{border-radius:var(--radius-md);background:linear-gradient(135deg,#f5f3ff 0%,#ede9fe 100%);border:1px solid #c4b5fd;padding:1rem 1.25rem;box-shadow:0 2px 4px #6366f10d}.stripe-badge-header{color:#5b21b6;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.95rem;display:flex}.stripe-badge-header .stripe-icon{font-size:1.15rem}.stripe-test-desc{color:#6d28d9;margin:0 0 .75rem;font-size:.85rem;line-height:1.45}.stripe-test-instructions{border-radius:var(--radius-sm);background:#fff;border:1px dashed #a78bfa;padding:.75rem 1rem}.instructions-title{text-transform:uppercase;letter-spacing:.04em;color:#4c1d95;margin-bottom:.5rem;font-size:.8rem;font-weight:700}.test-card-details{color:var(--color-brown-900);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.35rem 1rem;font-size:.825rem;display:grid}.test-card-details code{color:#1f2937;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:4px;padding:.1rem .35rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.85rem;font-weight:600}.payment-pill-online{color:#4338ca!important;background:#eef2ff!important;border:1px solid #c7d2fe!important}.payment-status-tag{letter-spacing:.02em;border-radius:999px;align-items:center;gap:.25rem;padding:.2rem .55rem;font-size:.75rem;font-weight:700;display:inline-flex}.status-paid{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.status-pending{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.badge-paid{color:#047857;background:#ecfdf5;border:1px solid #6ee7b7}.shopkeeper-order-detail-page{flex-direction:column;gap:1.25rem;width:100%;padding:.5rem 0;display:flex}.shopkeeper-order-detail-card{background:var(--color-surface,#fff);border:1px solid var(--color-border);border-radius:var(--radius-lg,12px);flex-direction:column;gap:1.5rem;padding:1.75rem;display:flex;box-shadow:0 1px 3px #0000000d}.modal-overlay{z-index:1050;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#0000008c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.grocery-ticker{border:1px solid var(--color-border);border-radius:var(--radius-full);width:100%;box-shadow:var(--shadow-xs);-webkit-user-select:none;user-select:none;background:#fffdf9;padding:.65rem 0;overflow:hidden}.grocery-ticker-mask{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 32px calc(100% - 32px),#0000);mask-image:linear-gradient(90deg,#0000,#000 32px calc(100% - 32px),#0000)}.grocery-ticker-track{will-change:transform;width:max-content;animation:30s linear infinite tickerScroll;display:flex}.grocery-ticker:hover .grocery-ticker-track{animation-play-state:paused}.grocery-ticker-group{flex-shrink:0;align-items:center;gap:1.75rem;padding-right:1.75rem;display:flex}.ticker-item{color:var(--color-brown-800);white-space:nowrap;align-items:center;gap:.5rem;font-size:.9rem;font-weight:600;display:inline-flex}.ticker-icon{font-size:1.05rem;line-height:1}.ticker-separator{color:var(--color-primary);opacity:.6;font-size:.85rem}@keyframes tickerScroll{0%{transform:translate(0,0)}to{transform:translate(-50%)}}@media (width<=640px){.grocery-ticker{border-radius:var(--radius-lg);padding:.55rem 0}.ticker-item{gap:.4rem;font-size:.825rem}.grocery-ticker-group{gap:1.25rem;padding-right:1.25rem}}@media (prefers-reduced-motion:reduce){.grocery-ticker-track{flex-wrap:wrap;justify-content:center;gap:.75rem 1.25rem;width:100%;animation:none!important;transform:none!important}.grocery-ticker{padding:.75rem 1rem;-webkit-mask-image:none;mask-image:none}.grocery-ticker-mask{-webkit-mask-image:none;mask-image:none}.grocery-ticker-group[aria-hidden=true]{display:none}.grocery-ticker-group{flex-wrap:wrap;justify-content:center;gap:.75rem 1.25rem;padding-right:0}}
