@import "https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Inter:wght@300;400;500;600&display=swap";@import "https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200&display=swap";:root{--primary:#1b5e20;--primary-light:#2e7d32;--primary-dark:#030;--primary-container:#a5d6a7;--on-primary:#fff;--secondary:#1565c0;--secondary-light:#1976d2;--secondary-container:#bbdefb;--on-secondary:#fff;--tertiary:#6b1d3d;--tertiary-container:#f8bbd0;--background:#f0f7ff;--surface:#f4faff;--surface-low:#e8f4fd;--surface-mid:#dff1fb;--surface-high:#d4e9f7;--surface-highest:#c8e1ef;--surface-card:#fff;--on-surface:#0d1e25;--on-surface-variant:#3d5060;--on-surface-muted:#6b8090;--error:#c62828;--error-container:#ffcdd2;--success:#1b5e20;--success-container:#c8e6c9;--warning:#e65100;--warning-container:#ffe0b2;--info:#0277bd;--info-container:#b3e5fc;--outline:#1e3c5026;--outline-strong:#1e3c5040;--shadow-sm:0 2px 8px #003c640f;--shadow-md:0 4px 16px #003c641a;--shadow-lg:0 8px 32px #003c6424;--shadow-xl:0 16px 48px #003c642e;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;--font-display:"Manrope", sans-serif;--font-body:"Inter", sans-serif;--transition:.2s ease;--transition-slow:.3s ease;--sidebar-width:240px;--header-height:64px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);background:var(--background);color:var(--on-surface);min-height:100vh;line-height:1.5}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--on-surface);font-weight:700;line-height:1.2}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.125rem}p{color:var(--on-surface-variant)}a{color:var(--secondary);transition:color var(--transition);text-decoration:none}a:hover{color:var(--secondary-light)}.material-symbols-rounded{font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;vertical-align:middle;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-size:20px;display:inline-flex}.icon-filled{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.icon-lg{font-size:28px}.icon-xl{font-size:36px}.icon-sm{font-size:16px}.app-layout{min-height:100vh;display:flex}.main-content{margin-left:var(--sidebar-width);flex-direction:column;flex:1;min-height:100vh;display:flex}.page-content{padding:var(--space-8);flex:1;overflow-y:auto}.sidebar{width:var(--sidebar-width);background:linear-gradient(180deg, var(--primary-dark) 0%, var(--primary) 40%, #2d5a1b 100%);z-index:100;height:100vh;box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:fixed;top:0;left:0}.sidebar-logo{padding:var(--space-6) var(--space-5);border-bottom:1px solid #ffffff1a}.sidebar-logo h1{color:#fff;font-size:1.3rem;font-family:var(--font-display);letter-spacing:-.5px}.sidebar-logo p{color:#fff9;font-size:.7rem;font-family:var(--font-body);margin-top:2px}.sidebar-user{padding:var(--space-4) var(--space-5);align-items:center;gap:var(--space-3);border-bottom:1px solid #ffffff1a;display:flex}.sidebar-user-avatar{border-radius:var(--radius-full);color:#fff;background:#ffffff26;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:700;display:flex}.sidebar-user-info h4{color:#fff;text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:.8rem;font-weight:600;overflow:hidden}.sidebar-user-info p{color:#fff9;margin-top:1px;font-size:.7rem}.sidebar-nav{padding:var(--space-3) 0;flex:1;overflow-y:auto}.sidebar-section-label{padding:var(--space-4) var(--space-5) var(--space-2);text-transform:uppercase;letter-spacing:1.5px;color:#ffffff73;font-size:.65rem;font-weight:700}.sidebar-link{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);color:#ffffffbf;transition:all var(--transition);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;font-size:.875rem;font-weight:500;text-decoration:none;display:flex;position:relative}.sidebar-link:hover{color:#fff;background:#ffffff1a}.sidebar-link.active{color:#fff;background:#ffffff26}.sidebar-link.active:before{content:"";background:var(--primary-container);border-radius:0 2px 2px 0;width:3px;height:50%;position:absolute;top:25%;left:0}.sidebar-link .badge{background:var(--error);color:#fff;border-radius:var(--radius-full);text-align:center;min-width:18px;margin-left:auto;padding:2px 6px;font-size:.65rem;font-weight:700}.sidebar-footer{padding:var(--space-4) var(--space-5);border-top:1px solid #ffffff1a}.sidebar-status{align-items:center;gap:var(--space-2);color:#fff9;font-size:.75rem;display:flex}.status-dot{border-radius:var(--radius-full);background:#4caf50;width:8px;height:8px;box-shadow:0 0 6px #4caf50b3}.page-header{margin-bottom:var(--space-7);justify-content:space-between;align-items:center;display:flex}.page-header-left h2{color:var(--on-surface);letter-spacing:-.5px;font-size:1.75rem}.page-header-left p{color:var(--on-surface-muted);margin-top:var(--space-1);font-size:.875rem}.btn{align-items:center;gap:var(--space-2);padding:10px var(--space-5);border-radius:var(--radius-lg);font-family:var(--font-body);cursor:pointer;transition:all var(--transition);white-space:nowrap;border:none;font-size:.875rem;font-weight:600;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%);color:#fff;box-shadow:0 2px 8px #1b5e204d}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #1b5e2066}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:linear-gradient(135deg, var(--secondary) 0%, var(--secondary-light) 100%);color:#fff;box-shadow:0 2px 8px #1565c04d}.btn-secondary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #1565c066}.btn-outline{color:var(--primary);border:1.5px solid var(--primary);background:0 0}.btn-outline:hover:not(:disabled){background:var(--success-container)}.btn-ghost{color:var(--on-surface-variant);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface-mid)}.btn-danger{background:var(--error);color:#fff;box-shadow:0 2px 8px #c628284d}.btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #c6282866}.btn-sm{padding:6px var(--space-3);border-radius:var(--radius-md);font-size:.8rem}.btn-lg{padding:var(--space-4) var(--space-8);border-radius:var(--radius-xl);font-size:1rem}.btn-xl{padding:var(--space-6) var(--space-10);border-radius:var(--radius-xl);gap:var(--space-2);flex-direction:column;height:auto;font-size:1.125rem}.btn-icon{padding:var(--space-2);border-radius:var(--radius-md);color:var(--on-surface-variant);background:0 0}.btn-icon:hover:not(:disabled){background:var(--surface-mid)}.btn-loading{pointer-events:none;position:relative}.btn-loading:after{content:"";border:2px solid #0000;border-top-color:currentColor;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin;position:absolute}.card{background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);overflow:hidden}.card-header{padding:var(--space-5) var(--space-6);background:var(--surface-low);justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.card-header h3{color:var(--on-surface);font-size:1rem}.card-body{padding:var(--space-6)}.card-footer{padding:var(--space-4) var(--space-6);background:var(--surface-low);border-top:1px solid var(--outline)}.kpi-grid{gap:var(--space-5);margin-bottom:var(--space-7);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.kpi-card{background:var(--surface-card);border-radius:var(--radius-xl);padding:var(--space-5) var(--space-6);box-shadow:var(--shadow-sm);gap:var(--space-2);transition:all var(--transition);flex-direction:column;display:flex;position:relative;overflow:hidden}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.kpi-card:before{content:"";background:linear-gradient(90deg, var(--primary) 0%, var(--secondary) 100%);height:3px;position:absolute;top:0;left:0;right:0}.kpi-label{text-transform:uppercase;letter-spacing:.5px;color:var(--on-surface-muted);font-size:.75rem;font-weight:600}.kpi-value{font-family:var(--font-display);color:var(--on-surface);letter-spacing:-1px;font-size:2rem;font-weight:800;line-height:1}.kpi-sub{color:var(--on-surface-muted);align-items:center;gap:var(--space-1);font-size:.75rem;display:flex}.kpi-icon{right:var(--space-4);top:var(--space-4);color:var(--primary-container);opacity:.4;font-size:32px;position:absolute}.form-group{gap:var(--space-2);margin-bottom:var(--space-5);flex-direction:column;display:flex}.form-label{color:var(--on-surface-variant);letter-spacing:.2px;font-size:.8rem;font-weight:600}.form-label .required{color:var(--error);margin-left:2px}.form-input,.form-select,.form-textarea{background:var(--surface-high);border-radius:var(--radius-lg);padding:10px var(--space-4);font-family:var(--font-body);color:var(--on-surface);transition:all var(--transition);border:1.5px solid #0000;outline:none;width:100%;font-size:.9rem}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary);background:var(--surface-card);box-shadow:0 0 0 3px #1b5e201a}.form-input.error,.form-select.error{border-color:var(--error);background:var(--error-container)}.form-textarea{resize:vertical;min-height:80px}.form-row{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.form-error{color:var(--error);align-items:center;gap:var(--space-1);font-size:.75rem;display:flex}.form-hint{color:var(--on-surface-muted);font-size:.75rem}.table-wrapper{border-radius:var(--radius-xl);overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:.875rem}.table thead tr{background:var(--surface-low)}.table thead th{padding:var(--space-3) var(--space-4);text-align:left;text-transform:uppercase;letter-spacing:.5px;color:var(--on-surface-variant);white-space:nowrap;font-size:.75rem;font-weight:700}.table tbody tr{transition:background var(--transition)}.table tbody tr:nth-child(2n){background:var(--surface-low)}.table tbody tr:hover{background:var(--surface-mid)}.table tbody td{padding:var(--space-3) var(--space-4);color:var(--on-surface);vertical-align:middle}.badge{border-radius:var(--radius-full);letter-spacing:.3px;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:700;display:inline-flex}.badge-success{background:var(--success-container);color:var(--success)}.badge-error{background:var(--error-container);color:var(--error)}.badge-warning{background:var(--warning-container);color:var(--warning)}.badge-info{background:var(--info-container);color:var(--info)}.badge-neutral{background:var(--surface-highest);color:var(--on-surface-variant)}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;padding:var(--space-5);background:#00142880;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal{background:var(--surface-card);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);width:100%;max-width:560px;max-height:90vh;animation:.25s slideUp;overflow-y:auto}.modal-lg{max-width:800px}.modal-xl{max-width:1100px}.modal-header{padding:var(--space-6);border-bottom:1px solid var(--outline);justify-content:space-between;align-items:center;display:flex}.modal-header h3{font-size:1.25rem}.modal-body{padding:var(--space-6)}.modal-footer{padding:var(--space-5) var(--space-6);border-top:1px solid var(--outline);justify-content:flex-end;gap:var(--space-3);display:flex}.search-bar{position:relative}.search-bar .material-symbols-rounded{left:var(--space-3);color:var(--on-surface-muted);font-size:18px;position:absolute;top:50%;transform:translateY(-50%)}.search-bar input{padding-left:36px}.alert{padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);font-size:.875rem;display:flex}.alert-error{background:var(--error-container);color:var(--error)}.alert-success{background:var(--success-container);color:var(--success)}.alert-warning{background:var(--warning-container);color:var(--warning)}.alert-info{background:var(--info-container);color:var(--info)}.tabs{gap:var(--space-1);background:var(--surface-high);border-radius:var(--radius-lg);margin-bottom:var(--space-6);padding:4px;display:flex}.tab{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);color:var(--on-surface-variant);cursor:pointer;transition:all var(--transition);text-align:center;background:0 0;border:none;flex:1;font-size:.85rem;font-weight:600}.tab.active{background:var(--surface-card);color:var(--primary);box-shadow:var(--shadow-sm)}.tab:hover:not(.active){color:var(--on-surface)}.empty-state{padding:var(--space-12);text-align:center;justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;display:flex}.empty-state .material-symbols-rounded{color:var(--outline-strong);font-size:56px}.empty-state h3{color:var(--on-surface-variant);font-size:1.1rem}.empty-state p{max-width:320px;font-size:.875rem}.spinner{border:3px solid var(--surface-high);border-top-color:var(--primary);border-radius:50%;width:36px;height:36px;animation:.6s linear infinite spin}.loading-full{justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;min-height:60vh;display:flex}.loading-full p{color:var(--on-surface-muted);font-size:.875rem}.divider{background:var(--outline);height:1px;margin:var(--space-5) 0}.qty-control{align-items:center;gap:var(--space-2);display:flex}.qty-control button{border-radius:var(--radius-full);border:1.5px solid var(--outline-strong);background:var(--surface-card);cursor:pointer;width:28px;height:28px;transition:all var(--transition);color:var(--on-surface);justify-content:center;align-items:center;font-size:18px;line-height:1;display:flex}.qty-control button:hover{background:var(--surface-mid);border-color:var(--primary);color:var(--primary)}.qty-control span{text-align:center;min-width:28px;font-size:.95rem;font-weight:700}.toast-container{bottom:var(--space-6);right:var(--space-6);z-index:2000;gap:var(--space-3);flex-direction:column;display:flex;position:fixed}.toast{background:var(--on-surface);color:#fff;padding:var(--space-3) var(--space-5);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);align-items:center;gap:var(--space-3);min-width:280px;font-size:.875rem;animation:.25s slideInRight;display:flex}.toast-success{background:var(--primary)}.toast-error{background:var(--error)}.toast-warning{background:var(--warning)}.filters-bar{align-items:center;gap:var(--space-4);margin-bottom:var(--space-5);padding:var(--space-4) var(--space-5);background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);flex-wrap:wrap;display:flex}.filter-group{align-items:center;gap:var(--space-2);display:flex}.filter-group label{color:var(--on-surface-variant);white-space:nowrap;font-size:.8rem;font-weight:600}.filter-group select,.filter-group input{background:var(--surface-high);border-radius:var(--radius-md);padding:6px var(--space-3);color:var(--on-surface);transition:all var(--transition);border:1.5px solid #0000;outline:none;font-size:.85rem}.filter-group select:focus,.filter-group input:focus{border-color:var(--primary);background:var(--surface-card)}.assistant-fab{z-index:2200;align-items:center;gap:var(--space-3);color:#fff;box-shadow:var(--shadow-xl);cursor:pointer;background:linear-gradient(135deg,#0d4c8c,#1a7a3c);border:none;border-radius:999px;padding:12px 20px 12px 12px;animation:3s ease-in-out infinite fabPulse;display:inline-flex;position:fixed;bottom:24px;right:24px}@keyframes fabPulse{0%,to{box-shadow:0 4px 20px #0d4c8c66,0 0 #0d4c8c4d}50%{box-shadow:0 4px 30px #1a7a3c80,0 0 0 8px #1a7a3c1a}}.assistant-fab:hover{animation:none;transform:scale(1.05);box-shadow:0 6px 35px #0d4c8c99}.assistant-fab-logo,.assistant-header-logo{object-fit:contain;background:#ffffff24;border-radius:50%;width:56px;height:56px}.assistant-header-video{object-fit:cover;vertical-align:middle;border-radius:50%;width:24px;height:24px}.assistant-fab.is-open{background:linear-gradient(135deg,#1a7a3c,#0d4c8c);animation:2s ease-in-out infinite fabPulseOpen}@keyframes fabPulseOpen{0%,to{box-shadow:0 4px 20px #1a7a3c66,0 0 #1a7a3c4d}50%{box-shadow:0 4px 30px #0d4c8c80,0 0 0 8px #0d4c8c1a}}.assistant-widget-shell{z-index:2100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#08151d47;justify-content:flex-end;align-items:flex-end;padding:24px;display:flex;position:fixed;inset:0}.assistant-module-shell{width:100%;min-width:0;height:calc(100vh - 170px);min-height:760px}.assistant-widget-card{width:min(1200px,100vw - 48px);height:min(820px,100vh - 48px);box-shadow:var(--shadow-xl);background:linear-gradient(#eff7fc 0%,#fff 100%);border-radius:28px;grid-template-rows:auto 1fr;display:grid;overflow:hidden}.assistant-widget-card.is-embedded{width:100%;height:100%;min-height:0}.assistant-widget-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);background:linear-gradient(135deg,#0f4b78f5,#1b5e20eb);display:flex}.assistant-widget-header h3,.assistant-widget-header p{color:#fff}.assistant-widget-body{grid-template-columns:minmax(320px,390px) 1fr;height:100%;min-height:0;display:grid}.assistant-context-panel{gap:var(--space-4);padding:var(--space-5);background:#dff1fb8c;grid-template-rows:auto minmax(280px,1fr) minmax(180px,.6fr);min-height:0;display:grid;overflow-y:auto}.assistant-manual-card,.assistant-purchase-card{grid-template-rows:auto 1fr;min-height:0;display:grid}.assistant-scroll-body{min-height:0;overflow-y:auto}.assistant-purchase-body{max-height:240px}.assistant-chat-panel{background:linear-gradient(#f4faffb3,#fff 45%);grid-template-rows:1fr auto;height:100%;min-height:0;display:grid}.assistant-chat-messages{padding:var(--space-5);gap:var(--space-3);align-content:start;min-height:0;display:grid;overflow-y:auto}.assistant-chat-bubble{padding:var(--space-4);box-shadow:var(--shadow-sm);border:1px solid var(--outline);background:#fff;border-radius:20px}.assistant-chat-bubble.is-user{background:linear-gradient(135deg, var(--secondary), var(--secondary-light));border:none}.assistant-chat-title{margin-bottom:var(--space-2);font-weight:700}.assistant-chat-bubble.is-user .assistant-chat-title,.assistant-chat-bubble.is-user .assistant-chat-text{color:#fff}.assistant-chat-text{white-space:pre-wrap}.assistant-chat-meta{margin-top:var(--space-2);color:var(--on-surface-muted);font-size:.76rem}.assistant-chat-composer{padding:var(--space-5);border-top:1px solid var(--outline);gap:var(--space-3);background:#fff;display:grid}.assistant-empty-state{padding:var(--space-5)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-pulse{animation:2s ease-in-out infinite pulse}@keyframes thinkingPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.98)}}.thinking-text{animation:1.5s ease-in-out infinite thinkingPulse;display:inline-block}@keyframes thinkingDotsAnim{0%{content:"."}25%{content:".."}50%{content:"..."}75%{content:""}}.thinking-dots-animated{letter-spacing:2px;animation:1.5s step-end infinite thinkingDotsAnim;display:inline-block}.auth-page{background:linear-gradient(135deg, var(--primary-dark) 0%, var(--primary) 50%, #1565c0 100%);min-height:100vh;padding:var(--space-5);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.auth-page:before{content:"";background:#ffffff08;border-radius:50%;width:600px;height:600px;position:absolute;top:-200px;right:-200px}.auth-page:after{content:"";background:#ffffff08;border-radius:50%;width:400px;height:400px;position:absolute;bottom:-100px;left:-100px}.auth-card{background:var(--surface-card);border-radius:var(--radius-2xl);padding:var(--space-10);width:100%;max-width:440px;box-shadow:var(--shadow-xl);z-index:1;animation:.35s slideUp;position:relative}.auth-logo{text-align:center;margin-bottom:var(--space-8)}.auth-logo h1{color:var(--primary);letter-spacing:-1px;font-size:2rem}.auth-logo p{color:var(--on-surface-muted);margin-top:4px;font-size:.8rem}.auth-logo .logo-icon{background:linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);border-radius:var(--radius-xl);width:56px;height:56px;margin:0 auto var(--space-4);justify-content:center;align-items:center;display:flex;box-shadow:0 8px 24px #1b5e204d}.auth-logo .logo-icon .material-symbols-rounded{color:#fff;font-size:28px}.auth-notice{background:var(--info-container);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-5);gap:var(--space-2);color:var(--info);align-items:flex-start;font-size:.8rem;display:flex}@media print{.no-print{display:none!important}.ticket-print{color:#000;background:#fff;width:80mm;font-family:Courier New,monospace;font-size:12px}.ticket-print.narrow{width:58mm;font-size:10px}body{background:#fff}}.pos-layout{gap:var(--space-5);height:calc(100vh - var(--header-height) - var(--space-10));grid-template-columns:1fr 380px;display:grid;overflow:hidden}.pos-products{padding-right:var(--space-2);overflow-y:auto}.pos-cart{background:var(--surface-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);flex-direction:column;display:flex;overflow:hidden}.product-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(160px,1fr));display:grid}.product-card{background:var(--surface-card);border-radius:var(--radius-xl);padding:var(--space-5) var(--space-4);text-align:center;cursor:pointer;transition:all var(--transition);box-shadow:var(--shadow-sm);align-items:center;gap:var(--space-2);border:2px solid #0000;flex-direction:column;display:flex}.product-card:hover{box-shadow:var(--shadow-md);border-color:var(--primary);transform:translateY(-2px)}.product-card.in-cart{border-color:var(--primary);background:var(--success-container)}.product-card .product-icon{background:linear-gradient(135deg, var(--primary-container) 0%, var(--secondary-container) 100%);border-radius:var(--radius-lg);width:52px;height:52px;margin-bottom:var(--space-1);justify-content:center;align-items:center;display:flex}.product-card .product-icon .material-symbols-rounded{color:var(--primary);font-size:28px}.product-card h4{color:var(--on-surface);font-size:.8rem;font-weight:700;line-height:1.2}.product-card .price{font-family:var(--font-display);color:var(--primary);font-size:1rem;font-weight:800}.product-card .stock-chip{padding:2px 6px;font-size:.65rem}.cart-items{padding:var(--space-4);flex:1;overflow-y:auto}.cart-item{align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-lg);background:var(--surface-low);margin-bottom:var(--space-2);transition:all var(--transition);display:flex}.cart-item:hover{background:var(--surface-mid)}.cart-item-name{color:var(--on-surface);flex:1;font-size:.85rem;font-weight:600}.cart-item-subtotal{color:var(--primary);white-space:nowrap;font-size:.9rem;font-weight:700}.cart-summary{background:var(--surface-low);padding:var(--space-4) var(--space-5);border-top:1px solid var(--outline)}.cart-total-row{color:var(--on-surface-variant);margin-bottom:var(--space-2);justify-content:space-between;align-items:center;font-size:.875rem;display:flex}.cart-total-row.total{font-size:1.25rem;font-weight:800;font-family:var(--font-display);color:var(--on-surface);padding-top:var(--space-3);border-top:1px solid var(--outline);margin-top:var(--space-2)}.cashback-widget{background:linear-gradient(135deg, var(--secondary-container) 0%, var(--primary-container) 100%);border-radius:var(--radius-lg);padding:var(--space-4);margin:var(--space-4)}.cashback-widget h4{color:var(--primary-dark);margin-bottom:var(--space-2);align-items:center;gap:var(--space-1);font-size:.8rem;font-weight:700;display:flex}.cashback-amount{font-family:var(--font-display);color:var(--primary);font-size:1.5rem;font-weight:800}.cashback-status{color:var(--on-surface-variant);margin-top:4px;font-size:.72rem}.payment-method{background:var(--surface-low);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-3);align-items:center;gap:var(--space-3);display:flex}.payment-method label{align-items:center;gap:var(--space-2);cursor:pointer;color:var(--on-surface);min-width:130px;font-size:.875rem;font-weight:600;display:flex}.payment-amount-input{background:var(--surface-card);border:1.5px solid var(--outline);border-radius:var(--radius-md);padding:8px var(--space-3);font-size:1rem;font-weight:700;font-family:var(--font-display);color:var(--on-surface);transition:all var(--transition);outline:none;flex:1}.payment-amount-input:focus{border-color:var(--primary)}.pos-start{justify-content:center;align-items:center;gap:var(--space-8);flex-direction:column;min-height:calc(100vh - 200px);display:flex}.pos-start-title{text-align:center}.pos-start-title h2{color:var(--on-surface);font-size:2rem}.pos-start-title p{color:var(--on-surface-muted);margin-top:var(--space-2)}.pos-start-buttons{gap:var(--space-5);grid-template-columns:repeat(3,1fr);width:100%;max-width:700px;display:grid}.pos-start-btn{background:var(--surface-card);border-radius:var(--radius-2xl);padding:var(--space-8) var(--space-5);align-items:center;gap:var(--space-4);cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-slow);border:2px solid #0000;flex-direction:column;display:flex}.pos-start-btn:hover{border-color:var(--primary);box-shadow:var(--shadow-lg);transform:translateY(-4px)}.pos-start-btn .icon-wrap{border-radius:var(--radius-xl);justify-content:center;align-items:center;width:72px;height:72px;display:flex}.pos-start-btn .material-symbols-rounded{font-size:36px}.pos-start-btn h3{text-align:center;color:var(--on-surface);font-size:1.1rem}.pos-start-btn p{text-align:center;color:var(--on-surface-muted);font-size:.8rem}.stock-bar-wrap{align-items:center;gap:var(--space-2);display:flex}.stock-bar{background:var(--surface-high);border-radius:var(--radius-full);flex:1;height:6px;overflow:hidden}.stock-bar-fill{border-radius:var(--radius-full);height:100%;transition:width .5s}.report-summary-grid{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));display:grid}.ticket-preview{color:#000;padding:var(--space-5);border-radius:var(--radius-lg);max-width:320px;box-shadow:var(--shadow-xl);background:#fff;border:1px solid #e0e0e0;margin:0 auto;font-family:Courier New,monospace;font-size:13px}.ticket-preview.narrow{max-width:235px;font-size:11px}.ticket-divider{margin:var(--space-3) 0;border:none;border-top:1px dashed #aaa}.ticket-center{text-align:center}.ticket-bold{font-weight:700}.ticket-row{justify-content:space-between;display:flex}@media (width<=1200px){.pos-layout{grid-template-columns:1fr 340px}.product-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}@media (width<=900px){.pos-start-buttons,.form-row{grid-template-columns:1fr}.kpi-grid{grid-template-columns:1fr 1fr}.assistant-widget-shell{align-items:stretch;padding:12px}.assistant-widget-card{border-radius:22px;width:100%;height:100%}.assistant-widget-body{grid-template-columns:1fr}.assistant-module-shell,.assistant-widget-card.is-embedded{height:auto;min-height:0}.assistant-context-panel{grid-template-rows:auto auto auto;max-height:42vh}.assistant-fab{padding-right:12px;bottom:12px;right:12px}}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--on-surface-muted)}.text-success{color:var(--success)}.text-error{color:var(--error)}.text-warning{color:var(--warning)}.text-primary{color:var(--primary)}.font-mono{font-family:Courier New,monospace}.font-bold{font-weight:700}.font-display{font-family:var(--font-display)}.d-flex{display:flex}.align-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mt-4{margin-top:var(--space-4)}.w-full{width:100%}.cursor-pointer{cursor:pointer}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}
