@import "https://fonts.googleapis.com/css2?family=Quicksand:wght@400;500;600;700&subset=vietnamese&display=swap";:root{--bg-primary:#fff0f9;--bg-secondary:#fff;--bg-tertiary:#fde7f3;--bg-glass:#ffffffe6;--text-primary:#1a1a1a;--text-secondary:#64748b;--text-inverse:#fff;--brand-primary:#db2777;--brand-secondary:#be185d;--brand-light:#fbcfe8;--brand-bg-transparent:#db27771a;--success:#10b981;--danger:#ef4444;--warning:#f59e0b;--info:#3b82f6;--font-brand:"Quicksand", sans-serif;--font-ui:"Quicksand", sans-serif;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--glass-border:1px solid #db27771a;--glass-shadow:0 4px 16px 0 #db27770d;--glass-blur:blur(8px);--transition-fast:.15s ease-in-out;--transition-normal:.3s ease-in-out}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-ui);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-brand);letter-spacing:-.01em;font-weight:700}a{color:var(--brand-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--brand-secondary)}button{font-family:var(--font-ui);cursor:pointer;background:0 0;border:none;outline:none}.glass-panel{background:var(--bg-glass);-webkit-backdrop-filter:var(--glass-blur);border:var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--glass-shadow)}.btn-primary{background:var(--brand-primary);color:var(--text-inverse);border-radius:var(--radius-md);transition:all var(--transition-fast);justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:1rem;font-weight:600;display:inline-flex}.btn-primary:active{background:var(--brand-secondary);transform:translateY(1px)}.btn-secondary{background:var(--bg-tertiary);color:var(--brand-primary);border-radius:var(--radius-md);transition:all var(--transition-fast);justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-size:1rem;font-weight:600;display:inline-flex}.btn-secondary:active{background:var(--brand-light)}.input-field{background:var(--bg-secondary);width:100%;color:var(--text-primary);border-radius:var(--radius-md);font-size:1rem;font-family:var(--font-ui);transition:all var(--transition-fast);border:1px solid #e2e8f0;padding:12px 16px}.input-field:focus{border-color:var(--brand-primary);box-shadow:0 0 0 3px var(--brand-bg-transparent);outline:none}.input-field::placeholder{color:var(--text-secondary)}.heading-lg{font-size:2rem;font-family:var(--font-brand);color:var(--brand-primary)}.heading-md{font-size:1.25rem;font-family:var(--font-brand);color:#1a1a1a}.text-body{color:var(--text-primary);font-size:.95rem}.text-muted{color:var(--text-secondary);font-size:.85rem}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-col{flex-direction:column;display:flex}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--brand-light);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--brand-primary)}.pos-responsive-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=768px){.pos-responsive-grid{grid-template-columns:repeat(3,1fr);gap:14px}}@media (width>=1024px){.pos-responsive-grid{grid-template-columns:repeat(4,1fr);gap:16px}}.customer-responsive-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=768px){.customer-responsive-grid{grid-template-columns:repeat(3,1fr);gap:14px}}.pos-cat-sidebar{background:#fff;border-right:1px solid #e2e8f0;flex-shrink:0;width:76px;overflow-y:auto}.pos-cat-item{text-align:center;cursor:pointer;padding:14px 6px;transition:all .15s}.pos-cat-label{font-size:10px;line-height:1.3;display:block}.pos-desktop-cart-pane{display:none}.customer-layout{flex-direction:column;min-height:100dvh;display:flex}.customer-menu-pane{flex:1}.customer-body{flex-direction:column;flex:1;display:flex;position:relative}.customer-cart-pane-desktop{display:none}.customer-cat-sidebar{width:76px}.customer-cat-item{padding:14px 6px}.customer-cat-icon{width:40px;height:40px;margin-bottom:6px!important}.customer-cat-icon svg{width:18px;height:18px}.customer-cat-text{font-size:10px;line-height:1.3}.sm-grid-2col{flex-direction:column;gap:12px;display:flex}@media (width>=768px){.sm-grid-2col{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}}@media (width>=1024px){.pos-cat-sidebar{width:210px}.pos-cat-item{text-align:left;align-items:center;gap:12px;padding:13px 16px;display:flex}.pos-cat-label{font-size:14px}.pos-desktop-cart-pane{background:#fff;border-left:1px solid #e2e8f0;flex-direction:column;flex-shrink:0;width:360px;display:flex;overflow:hidden;box-shadow:-4px 0 20px #0000000a}.pos-mobile-bottom-bar,.pos-mobile-cart-overlay{display:none!important}.customer-layout{height:100dvh;flex-direction:row!important}.customer-left-pane{flex-direction:column;flex:1;display:flex;overflow:hidden}.customer-body{flex:1;display:flex;overflow:hidden}.customer-cat-sidebar{width:160px!important}.customer-cat-item{padding:16px 8px!important}.customer-cat-icon{width:48px!important;height:48px!important;margin-bottom:8px!important}.customer-cat-icon svg{width:22px!important;height:22px!important}.customer-cat-text{font-size:12px!important;line-height:1.4!important}.customer-responsive-grid{grid-template-columns:repeat(4,1fr);gap:16px}.customer-menu-pane{flex:1;overflow-y:auto}.customer-cart-pane-desktop{background:#fff;border-left:1px solid #e2e8f0;flex-direction:column;flex-shrink:0;width:380px;display:flex;overflow:hidden;box-shadow:-4px 0 20px #0000000a}.customer-mobile-cart-bar,.customer-mobile-cart-sheet{display:none!important}.co-modal-overlay{justify-content:center!important;align-items:center!important}.co-modal-panel{width:100%;max-width:520px;max-height:80vh;border-radius:16px!important}.sm-grid-2col{grid-template-columns:repeat(3,1fr)}}
