:root{--color-primary:#c9a96e;--color-primary-light:#d4ba85;--color-primary-dark:#b8944d;--color-primary-muted:#c9a96e26;--color-primary-glow:#c9a96e40;--color-bg-deepest:#0b0d14;--color-bg-dark:#0f1117;--color-bg-surface:#1a1d2e;--color-bg-elevated:#242736;--color-bg-hover:#2a2d3e;--color-bg-active:#32364a;--color-text-primary:#f0ece3;--color-text-secondary:#9ca3af;--color-text-muted:#6b7280;--color-text-inverse:#0f1117;--color-success:#34d399;--color-success-bg:#34d3991f;--color-warning:#fbbf24;--color-warning-bg:#fbbf241f;--color-danger:#f87171;--color-danger-bg:#f871711f;--color-info:#60a5fa;--color-info-bg:#60a5fa1f;--color-border:#ffffff14;--color-border-light:#ffffff0a;--color-border-strong:#ffffff26;--color-border-primary:#c9a96e4d;--font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-heading:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono","Fira Code","Consolas",monospace;--text-xs:0.6875rem;--text-sm:0.8125rem;--text-base:0.9375rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.75;--tracking-tight:-0.01em;--tracking-normal:0;--tracking-wide:0.05em;--tracking-wider:0.1em;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--radius-sm:0.375rem;--radius-md:0.5rem;--radius-lg:0.75rem;--radius-xl:1rem;--radius-2xl:1.5rem;--radius-full:9999px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 6px -1px #0006,0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #00000080,0 4px 6px -4px #0006;--shadow-xl:0 20px 25px -5px #0009,0 8px 10px -6px #00000080;--shadow-glow:0 0 20px #c9a96e26;--shadow-glow-strong:0 0 30px #c9a96e40;--shadow-inner:inset 0 2px 4px #0000004d;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:350ms cubic-bezier(0.4,0,0.2,1);--transition-spring:500ms cubic-bezier(0.34,1.56,0.64,1);--z-dropdown:100;--z-sticky:200;--z-overlay:300;--z-modal:400;--z-toast:500;--z-tooltip:600;--sidebar-width:280px;--sidebar-collapsed-width:72px;--topbar-height:64px;--content-max-width:1440px}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#0f1117;background:var(--color-bg-dark)}::-webkit-scrollbar-thumb{background:#242736;background:var(--color-bg-elevated);border-radius:9999px;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:#2a2d3e;background:var(--color-bg-hover)}::selection{background:#c9a96e26;background:var(--color-primary-muted);color:#c9a96e;color:var(--color-primary)}:focus-visible{outline:2px solid #c9a96e;outline:2px solid var(--color-primary);outline-offset:2px}.btn{align-items:center;border:1px solid #0000;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-2);justify-content:center;letter-spacing:var(--tracking-wide);line-height:1;text-decoration:none;transition:all var(--transition-base);white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.btn-sm{border-radius:var(--radius-sm);font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}.btn-md{font-size:var(--text-sm);padding:var(--space-3) var(--space-5)}.btn-lg{border-radius:var(--radius-lg);font-size:var(--text-base);padding:var(--space-4) var(--space-8)}.btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));box-shadow:var(--shadow-md),0 0 20px #c9a96e26;color:var(--color-text-inverse)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--color-primary-light),var(--color-primary));box-shadow:var(--shadow-lg),var(--shadow-glow);transform:translateY(-1px)}.btn-primary:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-secondary{background:var(--color-bg-elevated);border-color:var(--color-border);color:var(--color-text-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-strong)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#ef4444;box-shadow:var(--shadow-md),0 0 20px #f8717133;transform:translateY(-1px)}.btn-ghost{background:#0000;color:var(--color-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.btn-link{background:#0000;border:none;color:var(--color-primary);padding:0}.btn-link:hover:not(:disabled){color:var(--color-primary-light);text-decoration:underline}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-label{color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium);letter-spacing:var(--tracking-wide);text-transform:uppercase}.form-input,.form-select,.form-textarea{background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-base);padding:var(--space-3) var(--space-4);transition:all var(--transition-base);width:100%}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-muted)}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--color-border-strong)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-muted);outline:none}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-bg)}.form-error{align-items:center;color:var(--color-danger);display:flex;gap:var(--space-1)}.form-error,.form-hint{font-size:var(--text-xs)}.form-hint{color:var(--color-text-muted)}.form-textarea{min-height:100px;resize:vertical}.form-select,select,select.form-input{background-color:var(--color-surface);cursor:pointer}.form-select option,select option,select.form-input option{background-color:var(--color-surface);color:var(--color-text-primary)}.form-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%239CA3AF' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m6 8 4 4 4-4'/%3E%3C/svg%3E");background-position:right var(--space-3) center;background-repeat:no-repeat;background-size:1.25em;padding-right:var(--space-10)}.form-check{align-items:center;cursor:pointer;display:flex;gap:var(--space-3)}.form-check input[type=checkbox],.form-check input[type=radio]{accent-color:var(--color-primary);cursor:pointer;height:18px;width:18px}.toggle-switch-wrapper{align-items:center;display:flex;gap:var(--space-3)}.toggle-switch.toggle-loading{opacity:.5;pointer-events:none}.toggle-slider{background-color:var(--color-border);cursor:pointer}.toggle-slider,.toggle-slider:before{transition:.3s cubic-bezier(.4,0,.2,1)}.toggle-slider:before{background-color:#fff;box-shadow:0 2px 4px #0000001a}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-primary)}.toggle-switch input:focus-visible+.toggle-slider{outline:2px solid var(--color-primary);outline-offset:2px}.card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-base)}.card:hover{border-color:var(--color-border-strong)}.card-header{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;justify-content:space-between;padding:var(--space-5) var(--space-6)}.card-header h3{color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--font-semibold);margin:0}.card-body{padding:var(--space-6)}.card-footer{align-items:center;border-top:1px solid var(--color-border-light);display:flex;gap:var(--space-3);justify-content:flex-end;padding:var(--space-4) var(--space-6)}.badge{font-weight:var(--font-semibold);gap:var(--space-1);letter-spacing:var(--tracking-wide);padding:var(--space-1) var(--space-3);white-space:nowrap}.badge-primary{background:var(--color-primary-muted);color:var(--color-primary)}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-danger{background:var(--color-danger-bg);color:var(--color-danger)}.badge-info{background:var(--color-info-bg);color:var(--color-info)}.badge-neutral{background:var(--color-bg-elevated);color:var(--color-text-secondary)}.data-table-wrapper{-webkit-overflow-scrolling:touch;border:1px solid var(--color-border);border-radius:var(--radius-lg);max-width:100%;min-width:100%;overflow-x:auto;width:0}.data-table{font-size:var(--text-sm);min-width:800px}.data-table thead{background:var(--color-bg-elevated);position:-webkit-sticky;position:sticky;top:0;z-index:1}.data-table th{cursor:pointer;font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);padding:var(--space-3) var(--space-4);text-align:left;-webkit-user-select:none;user-select:none}.data-table th:hover{color:var(--color-text-primary)}.data-table th.sorted{color:var(--color-primary)}.data-table td{border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary);padding:var(--space-3) var(--space-4);white-space:nowrap}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tbody tr:hover{background:var(--color-bg-hover)}.data-table tbody tr.selected{background:var(--color-primary-muted)}.data-table tbody tr:last-child td{border-bottom:none}.stats-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-3);overflow:hidden;padding:var(--space-6);position:relative;transition:all var(--transition-base)}.stats-card:before{background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light));content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity var(--transition-base)}.stats-card:hover{border-color:var(--color-border-primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.stats-card:hover:before{opacity:1}.stats-card-icon{font-size:var(--text-xl)}.stats-card-label{color:var(--color-text-secondary);font-size:var(--text-xs);font-weight:var(--font-medium);letter-spacing:var(--tracking-wider);text-transform:uppercase}.stats-card-value{color:var(--color-text-primary);font-size:var(--text-3xl);font-weight:var(--font-bold);line-height:var(--leading-tight)}.stats-card-trend{align-items:center;display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-semibold);gap:var(--space-1)}.stats-card-trend.up{color:var(--color-success)}.stats-card-trend.down{color:var(--color-danger)}.modal-overlay{align-items:center;animation:fadeIn var(--transition-fast) ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;display:flex;inset:0;justify-content:center;padding:var(--space-6);position:fixed;z-index:var(--z-modal)}.modal{animation:slideUp var(--transition-base) ease-out;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-height:90vh;overflow-y:auto;width:100%}.modal-sm{max-width:400px}.modal-md{max-width:560px}.modal-lg{max-width:720px}.modal-xl{max-width:960px}.modal-header{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;justify-content:space-between;padding:var(--space-5) var(--space-6)}.modal-header h2{color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0}.modal-close{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:var(--text-lg);height:32px;justify-content:center;transition:all var(--transition-fast);width:32px}.modal-close:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.modal-body{padding:var(--space-6)}.modal-footer{border-top:1px solid var(--color-border-light);gap:var(--space-3);justify-content:flex-end;padding:var(--space-4) var(--space-6)}.modal-footer,.pagination{align-items:center;display:flex}.pagination{color:var(--color-text-secondary);font-size:var(--text-sm);justify-content:space-between;padding:var(--space-4) 0}.pagination-controls{gap:var(--space-1)}.pagination-btn{background:var(--color-bg-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;display:flex;height:36px;transition:all var(--transition-fast);width:36px}.pagination-btn:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-strong);color:var(--color-text-primary)}.pagination-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-inverse)}.pagination-btn:disabled{cursor:not-allowed;opacity:.4}.toast-container{display:flex;flex-direction:column;gap:var(--space-2);position:fixed;right:var(--space-4);top:var(--space-4);z-index:var(--z-toast)}.skeleton{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,var(--color-bg-elevated) 25%,var(--color-bg-hover) 50%,var(--color-bg-elevated) 75%);background-size:200% 100%;border-radius:var(--radius-md)}.skeleton-text{height:14px;margin-bottom:var(--space-2)}.skeleton-heading{height:24px;margin-bottom:var(--space-4);width:60%}.skeleton-card{height:120px}.skeleton-avatar{border-radius:50%;height:40px;width:40px}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--space-16) var(--space-8)}.empty-state-icon{font-size:3rem;opacity:.5}.empty-state-title{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin-bottom:var(--space-2)}.empty-state-description{color:var(--color-text-secondary);font-size:var(--text-sm);margin-bottom:var(--space-6);max-width:360px}.divider{background:var(--color-border);border:none;height:1px;margin:var(--space-6) 0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.w-full{width:100%}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--color-primary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-muted{color:var(--color-text-muted)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-header{flex-wrap:wrap}.page-header>div:last-child{flex-shrink:0}.page-title{line-height:var(--leading-tight);margin:0}.page-subtitle{margin:var(--space-1) 0 0}.search-filter{max-width:420px;min-width:200px}.search-filter .filter-icon{pointer-events:none}.filter-group{gap:var(--space-2)}.filter-icon-sm{font-size:1rem}.filter-select{min-width:140px}.form-row{display:flex}.form-row>.form-group{flex:1 1}.action-dropdown{animation:fadeIn var(--transition-fast) ease-out;background:var(--color-bg-surface);box-shadow:var(--shadow-lg);padding:var(--space-1);top:100%}.action-dropdown-item{border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3)}.action-dropdown-item.danger:hover{color:var(--color-danger)}@media (max-width:1024px){.filters-bar,.form-row,.page-header{flex-direction:column}.filters-bar{align-items:stretch}.search-filter{max-width:none}.hide-mobile,.hide-tablet{display:none!important}}@media (min-width:1025px){.show-mobile-only{display:none!important}}input[type=number]{-webkit-appearance:textfield;appearance:textfield}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=date]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(1)}.form-select,select{background-color:var(--color-bg-dark)}select option{background-color:var(--color-bg-surface);color:var(--color-text-primary)}.pagination-container{align-items:center;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;padding:var(--space-3) var(--space-4)}.pagination-info{color:var(--color-text-secondary);font-size:var(--text-sm);white-space:nowrap}.pagination-controls{align-items:center;display:flex;gap:2px}.pagination-btn{align-items:center;border-radius:var(--radius-md);display:inline-flex;font-size:var(--text-sm);font-weight:500;height:32px;justify-content:center;min-width:32px;padding:var(--space-1) var(--space-2)}.pagination-btn-active{background:var(--color-primary)!important;color:var(--color-text-inverse)!important;font-weight:600}.pagination-per-page{align-items:center;color:var(--color-text-secondary);display:flex;font-size:var(--text-sm);gap:var(--space-2)}.pagination-select{font-size:var(--text-sm);min-width:60px;padding:var(--space-1) var(--space-6) var(--space-1) var(--space-2);width:auto}@media (max-width:640px){.pagination-container{flex-direction:column;gap:var(--space-2)}}.btn-refresh{align-items:center;background:var(--color-primary-muted);border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-primary);cursor:pointer;display:inline-flex;font-size:15px;height:25px;justify-content:center;transition:all var(--transition-base);width:25px}.btn-refresh:hover{background:var(--color-primary);box-shadow:var(--shadow-glow);color:var(--color-text-inverse)}.btn-refresh:active{transform:rotate(90deg)}@media (max-width:1024px){.dashboard-content{padding:var(--space-4) var(--space-3)}.page-content{padding:var(--space-4)}.topbar .user-info,.topbar-center{display:none}.topbar-user-btn{padding:var(--space-2)}.analytics-stats,.dashboard-stats,.stats-grid{gap:var(--space-3);grid-template-columns:repeat(2,1fr)!important}.orders-toolbar{align-items:stretch;flex-direction:column}.toolbar-left,.toolbar-right{flex-direction:column;gap:var(--space-3)}.search-box{max-width:none;min-width:auto}.filter-group{flex-wrap:wrap}.view-toggle-group{min-width:auto;width:100%}.orders-status-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.pool-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.batch-grid,.production-grid,.purchase-grid{grid-template-columns:1fr 1fr}.menu-card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.modal-overlay{padding:var(--space-3)}.modal{max-height:95vh}.modal-lg,.modal-xl{max-width:100%}.modal-header{padding:var(--space-4) var(--space-4)}.modal-body{padding:var(--space-4)}.modal-footer{padding:var(--space-3) var(--space-4)}.analytics-filters-row,.delivery-analytics-filters{flex-wrap:wrap;gap:var(--space-2)}.analytics-filters-row>*,.delivery-analytics-filters>*{flex:1 1 auto;min-width:120px}.custom-date-inputs{flex-wrap:wrap}.cart-sidebar{position:static}.type-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto;padding-bottom:var(--space-2)}.type-tab{flex:0 0 auto;white-space:nowrap}}@media (max-width:768px){.dashboard-content{padding:var(--space-3) var(--space-2)}.page-content{padding:var(--space-3)}.page-header{align-items:flex-start;flex-direction:column;gap:var(--space-3)}.page-header>div:last-child{display:flex;gap:var(--space-2);width:100%}.page-header .btn{flex:1 1;justify-content:center}.page-title{font-size:var(--text-xl)}.analytics-stats,.dashboard-stats,.stats-grid{gap:var(--space-2);grid-template-columns:1fr 1fr!important}.stats-card{padding:var(--space-4)}.stats-card-value{font-size:var(--text-2xl)}.topbar{gap:var(--space-2);padding:0 var(--space-3)}.topbar-title h1{font-size:var(--text-sm)}.topbar-icon-btn{font-size:1.1rem;height:36px;width:36px}.data-table-wrapper,.orders-table-wrapper{border-radius:var(--radius-md)}.data-table{min-width:600px}.data-table td,.data-table th{font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}.form-row{flex-direction:column}.inventory-grid,.pool-grid,.stock-grid{grid-template-columns:1fr}.pool-card{padding:var(--space-4)}.batch-grid,.menu-card-grid,.production-grid,.purchase-grid{grid-template-columns:1fr}.menu-card-portions{flex-wrap:wrap}.filters-bar{align-items:stretch;flex-direction:column;gap:var(--space-2)}.search-filter{max-width:none;min-width:auto}.filter-group{flex-wrap:wrap;gap:var(--space-2);width:100%}.filter-select{flex:1 1;min-width:auto}.search-bar{min-width:auto}.category-chips{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto;padding-bottom:var(--space-2)}.category-chip{flex:0 0 auto}.orders-status-tabs{gap:var(--space-1);padding:var(--space-1)}.status-tab{font-size:var(--text-xs);padding:var(--space-2) var(--space-3)}.place-order-layout{grid-template-columns:1fr}.cart-actions,.cart-header,.cart-items,.cart-summary,.catalog-header,.catalog-items{padding:var(--space-3) var(--space-4)}.order-card-header{align-items:flex-start;flex-direction:column;gap:var(--space-2)}.modal-header h2{font-size:var(--text-base)}.modal-footer{flex-direction:column-reverse}.modal-footer .btn{justify-content:center;width:100%}.portion-block .form-group{min-width:0}.upload-zone{padding:var(--space-6)}.recipe-table{font-size:var(--text-xs)}.ingredient-qty-input{width:50px!important}.view-toggle-group{min-width:auto}.view-toggle-btn{font-size:var(--text-xs);min-width:auto;padding:var(--space-2) var(--space-2)}.analytics-chart-container{height:250px!important}.invoice-grid,.low-stock-grid,.user-grid,.waste-grid{grid-template-columns:1fr}.notification-card{padding:var(--space-3)}.profile-grid,.settings-grid{grid-template-columns:1fr}}@media (max-width:480px){.dashboard-content,.page-content{padding:var(--space-2)}.topbar{height:52px;padding:0 var(--space-2)}.topbar-menu-btn{height:36px;width:36px}.topbar-right{gap:var(--space-1)}.topbar-icon-btn{font-size:1rem;height:32px;width:32px}.page-title{font-size:var(--text-lg)}.page-subtitle{font-size:var(--text-xs)}.analytics-stats,.dashboard-stats,.stats-grid{gap:var(--space-2);grid-template-columns:1fr 1fr!important}.stats-card{padding:var(--space-3)}.stats-card-icon{font-size:var(--text-base);height:36px;width:36px}.stats-card-value{font-size:var(--text-xl)}.stats-card-label{font-size:10px}.btn-md{font-size:var(--text-xs);padding:var(--space-2) var(--space-4)}.btn-lg{font-size:var(--text-sm);padding:var(--space-3) var(--space-5)}.form-label{font-size:var(--text-xs)}.form-input,.form-select,.form-textarea{font-size:var(--text-sm);padding:var(--space-2) var(--space-3)}.modal-overlay{align-items:flex-end;padding:var(--space-2)}.modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:92vh}.modal-md,.modal-sm{max-width:100%}.modal-header{padding:var(--space-3) var(--space-3)}.modal-header h2{font-size:var(--text-sm);font-weight:700}.modal-body{padding:var(--space-3)}.modal-footer{padding:var(--space-2) var(--space-3)}.type-tabs{gap:var(--space-1)}.type-tab{padding:var(--space-2) var(--space-3)}.type-tab,.type-tab-label{font-size:var(--text-xs)}.orders-toolbar{gap:var(--space-2);padding:var(--space-3)}.view-toggle-group{flex-direction:column}.view-toggle-btn{min-width:auto}.date-select,.search-box{height:36px;min-width:auto}.date-select,.styled-btn{font-size:var(--text-xs)}.styled-btn{height:36px;padding:0 var(--space-3)}.inventory-grid,.stock-grid{gap:var(--space-2);grid-template-columns:1fr}.inventory-card,.stock-card{padding:var(--space-3)}.pool-card,.pool-grid{gap:var(--space-3)}.pool-card{padding:var(--space-3)}.pool-card-restaurant{font-size:var(--text-base)}.catalog-item{flex-wrap:wrap;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.catalog-item-price{margin-right:var(--space-2)}.add-qty-control input{width:48px}.cart-item-qty span{width:24px}.order-history-card{padding:var(--space-3) var(--space-4)}.order-card-total{font-size:var(--text-base)}.menu-card-grid{gap:var(--space-2)}.menu-card{padding:var(--space-3)}.menu-card-name{font-size:var(--text-sm)}.menu-card-desc{font-size:var(--text-xs)}.allergen-row{gap:var(--space-1)}.allergen-badge{font-size:10px;padding:1px 5px}.portion-pill{font-size:var(--text-xs);padding:var(--space-1) var(--space-2)}.portion-block>div[style*=grid-template-columns],.recipe-row{grid-template-columns:1fr!important}.recipe-row{gap:var(--space-2)!important;padding:var(--space-2)!important}.pagination-container{flex-direction:column;gap:var(--space-2)}.pagination-per-page{font-size:var(--text-xs)}.data-table{min-width:500px}.notif-dropdown{right:-8px;width:calc(100vw - 16px)}.user-dropdown{width:220px}.upload-zone{padding:var(--space-4)}.upload-zone-icon{font-size:32px}.analytics-chart-container{height:200px!important}.btn-action{font-size:.9rem;height:30px;width:30px}.action-btns{gap:var(--space-1)}.search-bar{margin-bottom:var(--space-3)!important}.search-bar .search-input{font-size:var(--text-sm)}.badge{font-size:10px;padding:1px 6px}.loading-overlay,.login-container{padding:var(--space-4)}.login-card{padding:var(--space-5)}}@media (max-width:768px){div[style*="grid-template-columns: repeat(auto-fit"]{gap:var(--space-2)!important;grid-template-columns:1fr 1fr!important}div[style*="grid-template-columns: 1fr 1fr"],div[style*="gridTemplateColumns: '1fr 1fr'"]{grid-template-columns:1fr!important}}@media (max-width:480px){div[style*=gridTemplateColumns]{grid-template-columns:1fr!important}div[style*="gap: var(--space-4)"]{gap:var(--space-2)!important}}@media (hover:none) and (pointer:coarse){.btn,.btn-action,.pagination-btn,.topbar-icon-btn,.topbar-menu-btn{min-height:44px;min-width:44px}.btn-sm{min-height:36px;min-width:36px}.catalog-item:hover,.inventory-card:hover,.menu-card:hover,.order-history-card:hover,.pool-card:hover,.stats-card:hover,.stock-card:hover{transform:none}.inventory-card:hover,.pool-card:hover,.stats-card:hover,.stock-card:hover{box-shadow:none}.category-chips::-webkit-scrollbar,.orders-status-tabs::-webkit-scrollbar,.type-tabs::-webkit-scrollbar{display:none}.category-chips,.orders-status-tabs,.type-tabs{-ms-overflow-style:none;scrollbar-width:none}}@media print{.btn,.btn-action,.btn-refresh,.modal-overlay,.sidebar,.sidebar-backdrop,.topbar,.topbar-menu-btn{display:none!important}.dashboard-main{margin-left:0!important}.dashboard-content,.page-content{padding:0!important}}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;text-rendering:optimizeLegibility}body{background-color:var(--color-bg-dark);color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);overflow-x:hidden}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,h1,h2,h3,h4,h5,h6{font-family:var(--font-body)}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary);font-weight:var(--font-semibold);line-height:var(--leading-tight)}code{font-family:var(--font-mono)}.loading-fullscreen{align-items:center;background:var(--color-bg-dark);display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-modal)}.loading-content{flex-direction:column;gap:var(--space-6)}.loading-content,.loading-logo{align-items:center;display:flex}.loading-logo{animation:pulse 2s ease-in-out infinite;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border-radius:var(--radius-xl);box-shadow:var(--shadow-glow-strong);height:64px;justify-content:center;width:64px}.logo-arabic-loading{color:var(--color-text-inverse);font-size:1.5rem;font-weight:var(--font-bold)}.loading-inline{align-items:center;display:flex;gap:var(--space-3);justify-content:center;padding:var(--space-4)}.spinner{animation:spin .8s linear infinite;border-color:var(--color-border);border-radius:50%;border-style:solid;border-top-color:var(--color-primary)}.spinner-sm{border-width:2px;height:16px;width:16px}.spinner-md{border-width:3px;height:28px;width:28px}.spinner-lg{border-width:3px;height:40px;width:40px}.loading-text{color:var(--color-text-secondary);font-size:var(--text-sm);margin:0}.sidebar{background:var(--color-bg-surface);border-right:1px solid var(--color-border);bottom:0;display:flex;flex-direction:column;left:0;overflow:hidden;position:fixed;top:0;transition:width var(--transition-base);width:var(--sidebar-width);z-index:var(--z-sticky)}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar-logo{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;gap:var(--space-3);min-height:var(--topbar-height);padding:var(--space-5) var(--space-5)}.sidebar-logo-icon{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border-radius:var(--radius-md);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.logo-arabic{color:var(--color-text-inverse);font-size:1.1rem;font-weight:var(--font-bold);line-height:1}.sidebar-logo-text{display:flex;flex-direction:column;overflow:hidden;white-space:nowrap}.logo-brand{color:var(--color-primary);font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);line-height:1.2}.logo-sub{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:var(--space-1);overflow-x:hidden;overflow-y:auto;padding:var(--space-3)}.sidebar-divider{background:var(--color-border-light);height:1px;margin:var(--space-2) var(--space-3)}.sidebar-section-label{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wider);padding:var(--space-3) var(--space-3) var(--space-1);text-transform:uppercase;white-space:nowrap}.sidebar-nav-item{align-items:center;background:#0000;border:1px solid #0000;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--font-medium);gap:var(--space-3);padding:var(--space-3) var(--space-3);text-align:left;text-decoration:none;transition:all var(--transition-fast);white-space:nowrap;width:100%}.sidebar-nav-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.sidebar-nav-item.active{background:var(--color-primary-muted);border-color:var(--color-border-primary);color:var(--color-primary)}.sidebar-nav-item .nav-icon{flex-shrink:0;font-size:1.25rem;height:22px;width:22px}.sidebar-nav-item .nav-label{flex:1 1;overflow:hidden;text-overflow:ellipsis}.sidebar-nav-item .nav-arrow{flex-shrink:0;font-size:1.1rem;opacity:.5}.submenu-trigger{cursor:pointer}.submenu-items{animation:fadeIn var(--transition-fast) ease-out;display:flex;flex-direction:column;gap:var(--space-1);margin-top:var(--space-1);padding-left:var(--space-2)}.submenu-item{font-size:var(--text-sm)!important;padding-left:var(--space-8)!important;position:relative}.submenu-dot{background:var(--color-text-muted);border-radius:50%;flex-shrink:0;height:5px;transition:all var(--transition-fast);width:5px}.submenu-item.active .submenu-dot{background:var(--color-primary);box-shadow:0 0 6px var(--color-primary-glow)}.sidebar-toggle{align-items:center;background:#0000;border:none;border-top:1px solid var(--color-border-light);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:1.25rem;justify-content:center;padding:var(--space-4);transition:all var(--transition-fast)}.sidebar-toggle:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.collapsed .sidebar-logo{justify-content:center;padding:var(--space-5) var(--space-2)}.collapsed .sidebar-nav-item{justify-content:center;padding:var(--space-3)}.collapsed .sidebar-nav-item .nav-arrow,.collapsed .sidebar-nav-item .nav-label,.collapsed .sidebar-section-label,.collapsed .submenu-items{display:none}@media (max-width:1024px){.sidebar{box-shadow:var(--shadow-xl);transform:translateX(-100%);width:var(--sidebar-width);z-index:calc(var(--z-sticky) + 10)}.sidebar.mobile-open{transform:translateX(0)}.sidebar.collapsed{width:var(--sidebar-width)}.sidebar-toggle{display:none}.hide-mobile{display:none!important}}.base-unit-equiv{color:#d4a017;font-size:11px;margin-top:2px}.topbar{background:var(--color-bg-surface);border-bottom:1px solid var(--color-border);height:var(--topbar-height);justify-content:space-between;padding:0 var(--space-6);position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}.topbar,.topbar-left{align-items:center;display:flex;gap:var(--space-4)}.topbar-left{min-width:0}.topbar-menu-btn{align-items:center;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:1.25rem;height:40px;justify-content:center;transition:all var(--transition-fast);width:40px}.topbar-menu-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.topbar-title h1{color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0;white-space:nowrap}.topbar-center{flex:1 1;margin:0 auto;max-width:480px}.topbar-search{align-items:center;background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:all var(--transition-base)}.topbar-search:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-muted)}.search-icon{color:var(--color-text-muted);flex-shrink:0;font-size:1.1rem}.search-input{background:#0000;border:none;color:var(--color-text-primary);flex:1 1;font-family:var(--font-body);font-size:var(--text-sm);min-width:0;outline:none}.search-input::placeholder,.search-shortcut{color:var(--color-text-muted)}.search-shortcut{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-shrink:0;font-family:var(--font-body);font-size:var(--text-xs);padding:2px 6px}.topbar-right{gap:var(--space-2)}.topbar-icon-btn,.topbar-right{align-items:center;display:flex}.topbar-icon-btn{background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;font-size:1.25rem;height:40px;justify-content:center;position:relative;transition:all var(--transition-fast);width:40px}.topbar-icon-btn:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong);color:var(--color-text-primary)}.notification-badge{align-items:center;background:var(--color-danger);border:2px solid var(--color-bg-surface);border-radius:50%;color:#fff;display:flex;font-size:10px;font-weight:var(--font-bold);height:16px;justify-content:center;position:absolute;right:6px;top:6px;width:16px}.topbar-user{position:relative}.topbar-user-btn{align-items:center;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;display:flex;gap:var(--space-3);padding:var(--space-2) var(--space-3);transition:all var(--transition-fast)}.topbar-user-btn:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong)}.user-avatar{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border-radius:var(--radius-md);color:var(--color-text-inverse);display:flex;flex-shrink:0;font-size:var(--text-xs);font-weight:var(--font-bold);height:32px;justify-content:center;width:32px}.user-avatar.lg{font-size:var(--text-sm);height:40px;width:40px}.user-info{display:flex;flex-direction:column;text-align:left}.user-name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--font-medium);line-height:1.2}.user-role{font-size:var(--text-xs)}.user-arrow,.user-role{color:var(--color-text-muted)}.user-arrow{font-size:1.1rem;transition:transform var(--transition-fast)}.user-arrow.rotated{transform:rotate(180deg)}.user-dropdown{animation:slideDown var(--transition-fast) ease-out;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);overflow:hidden;position:absolute;right:0;top:calc(100% + var(--space-2));width:260px;z-index:var(--z-dropdown)}.dropdown-header{align-items:center;display:flex;gap:var(--space-3);padding:var(--space-4)}.dropdown-name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold)}.dropdown-email{color:var(--color-text-muted);font-size:var(--text-xs)}.dropdown-divider{background:var(--color-border-light);height:1px}.dropdown-item{font-family:var(--font-body);padding:var(--space-3) var(--space-4);transition:all var(--transition-fast)}.dropdown-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.dropdown-item.danger{color:var(--color-danger)}.dropdown-item.danger:hover{background:var(--color-danger-bg)}@media (max-width:1024px){.topbar{padding:0 var(--space-4)}.topbar-title h1{font-size:var(--text-base)}}.notif-wrapper{position:relative}.notif-dropdown{animation:slideDown var(--transition-fast) ease-out;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);display:flex;flex-direction:column;max-height:520px;overflow:hidden;position:absolute;right:0;top:calc(100% + 8px);width:380px;z-index:var(--z-dropdown)}.notif-dropdown-header{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;flex-shrink:0;justify-content:space-between;padding:14px 16px 12px}.notif-dropdown-title{align-items:center;color:var(--color-text-primary);display:flex;font-size:var(--text-sm);font-weight:700;gap:8px}.notif-count-badge{background:var(--color-danger);border-radius:999px;color:#fff;font-size:10px;font-weight:700;padding:2px 7px}.notif-mark-all{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-primary);cursor:pointer;display:flex;font-size:11px;gap:4px;padding:4px 8px;transition:background var(--transition-fast)}.notif-mark-all:hover{background:var(--color-primary-muted)}.notif-dropdown-list{flex:1 1;overflow-y:auto}.notif-dropdown-item{align-items:flex-start;border-bottom:1px solid var(--color-border-light);cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:background var(--transition-fast)}.notif-dropdown-item:last-child{border-bottom:none}.notif-dropdown-item:hover{background:var(--color-bg-hover)}.notif-dropdown-item.unread{background:#c9a96e0d;background:rgba(var(--color-primary-rgb,201,169,110),.05);border-left:3px solid var(--color-primary)}.notif-dropdown-item.unread:hover{background:#c9a96e14;background:rgba(var(--color-primary-rgb,201,169,110),.08)}.notif-dropdown-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:16px;height:36px;justify-content:center;width:36px}.notif-dropdown-body{flex:1 1;min-width:0}.notif-dropdown-item-title{color:var(--color-text-primary);font-size:12px;font-weight:600;margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notif-dropdown-item-msg{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;color:var(--color-text-muted);display:-webkit-box;font-size:11px;line-height:1.4;overflow:hidden}.notif-dropdown-item-time{color:var(--color-text-muted);font-size:10px;margin-top:4px}.notif-dot{background:var(--color-primary);border-radius:50%;flex-shrink:0;height:8px;margin-top:4px;width:8px}.notif-dropdown-empty{align-items:center;color:var(--color-text-muted);display:flex;flex-direction:column;font-size:14px;gap:8px;padding:40px 20px}.notif-dropdown-empty span{font-size:32px;opacity:.5}.notif-dropdown-footer{align-items:center;background:#0000;border:none;border-top:1px solid var(--color-border-light);color:var(--color-primary);cursor:pointer;display:flex;flex-shrink:0;font-size:12px;font-weight:600;gap:6px;justify-content:center;padding:12px;transition:background var(--transition-fast);width:100%}.notif-dropdown-footer:hover{background:var(--color-bg-hover)}@media (max-width:480px){.notif-dropdown{right:-8px;width:calc(100vw - 32px)}}.dashboard-layout{background:var(--color-bg-dark);display:flex;min-height:100vh}.dashboard-main{display:flex;flex:1 1;flex-direction:column;margin-left:var(--sidebar-width);min-height:100vh;min-width:0;overflow-x:hidden;transition:margin-left var(--transition-base)}.sidebar-collapsed .dashboard-main{margin-left:var(--sidebar-collapsed-width)}.dashboard-content{box-sizing:border-box;flex:1 1;margin:0 auto;max-width:var(--content-max-width);overflow-x:hidden;overflow-y:auto;padding:var(--space-8);width:100%}.sidebar-backdrop{display:none}@media (max-width:1024px){.dashboard-main{margin-left:0}.dashboard-content{padding:var(--space-4)}.sidebar-backdrop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;display:block;inset:0;position:fixed;z-index:calc(var(--z-sticky) + 5)}}.login-page{background:var(--color-bg-dark);display:flex;min-height:100vh}.login-brand-panel{align-items:center;background:linear-gradient(135deg,var(--color-bg-deepest),var(--color-bg-surface));border-right:1px solid var(--color-border);display:flex;flex:1 1;justify-content:center;overflow:hidden;position:relative}.brand-content{max-width:420px;padding:var(--space-8);position:relative;text-align:center;z-index:2}.brand-logo{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border-radius:var(--radius-2xl);box-shadow:var(--shadow-glow-strong);display:flex;height:100px;justify-content:center;margin:0 auto var(--space-8);width:100px}.brand-arabic{font-size:2.5rem}.brand-arabic,.brand-arabic-sm{color:var(--color-text-inverse);font-weight:var(--font-bold);line-height:1}.brand-arabic-sm{font-size:1.5rem}.brand-title{color:var(--color-primary);font-family:var(--font-heading);font-size:var(--text-4xl);font-weight:var(--font-bold);letter-spacing:var(--tracking-wider);margin:0 0 var(--space-1)}.brand-subtitle{color:var(--color-text-muted);font-size:var(--text-sm);letter-spacing:.3em;margin:0 0 var(--space-6);text-transform:uppercase}.brand-divider{background:linear-gradient(90deg,#0000,var(--color-primary),#0000);height:2px;margin:0 auto var(--space-6);width:60px}.brand-tagline{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0 0 var(--space-3)}.brand-description{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin:0}.brand-decoration{inset:0;pointer-events:none;position:absolute;z-index:1}.decoration-circle{border:1px solid #c9a96e14;border-radius:50%;position:absolute}.circle-1{background:radial-gradient(circle,#c9a96e08 0,#0000 70%);height:400px;left:-100px;top:-100px;width:400px}.circle-2{background:radial-gradient(circle,#c9a96e0a 0,#0000 70%);bottom:-50px;height:300px;right:-50px;width:300px}.circle-3{border-color:#c9a96e0d;height:200px;left:10%;top:50%;transform:translateY(-50%);width:200px}.login-form-panel{align-items:center;display:flex;flex:1 1;justify-content:center;padding:var(--space-8)}.login-form-container{max-width:420px;width:100%}.login-mobile-logo{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border-radius:var(--radius-xl);box-shadow:var(--shadow-glow);display:none;height:56px;justify-content:center;margin-bottom:var(--space-6);width:56px}.login-form-header{margin-bottom:var(--space-8)}.login-form-header h2{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:var(--font-bold);margin:0 0 var(--space-2)}.login-form-header p{color:var(--color-text-secondary);font-size:var(--text-base);margin:0}.login-form{display:flex;flex-direction:column;gap:var(--space-5)}.login-error{animation:slideDown var(--transition-fast) ease-out;background:var(--color-danger-bg);border:1px solid #f8717133;border-radius:var(--radius-md);color:var(--color-danger);font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-3) var(--space-4)}.label-row,.login-error{align-items:center;display:flex}.label-row{justify-content:space-between}.forgot-link{color:var(--color-primary);font-size:var(--text-xs);text-decoration:none;transition:color var(--transition-fast)}.forgot-link:hover{color:var(--color-primary-light);text-decoration:underline}.input-with-icon{position:relative}.input-with-icon .input-icon{color:var(--color-text-muted);font-size:1.1rem;left:var(--space-4);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);z-index:1}.input-with-icon .form-input{padding-left:var(--space-10);padding-right:var(--space-4)}.password-toggle{align-items:center;background:#0000;border:none;color:var(--color-text-muted);cursor:pointer;display:flex;font-size:1.1rem;justify-content:center;padding:var(--space-1);position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);transition:color var(--transition-fast)}.password-toggle:hover{color:var(--color-text-primary)}.login-submit{font-size:var(--text-base)!important;height:48px;margin-top:var(--space-2)}.btn-spinner{animation:spin .8s linear infinite;border:2px solid #0f11174d;border-radius:50%;border-top:2px solid var(--color-text-inverse);height:18px;width:18px}.login-footer{margin-top:var(--space-10);text-align:center}.login-footer p{color:var(--color-text-muted);font-size:var(--text-xs);margin:0}@media (max-width:1024px){.login-brand-panel{flex:0.8 1}}@media (max-width:768px){.login-page{flex-direction:column}.login-brand-panel{display:none}.login-form-panel{padding:var(--space-6)}.login-mobile-logo{display:flex}}.dashboard-page{animation:fadeIn var(--transition-base) ease-out;display:flex;flex-direction:column;gap:var(--space-8)}.dashboard-welcome{align-items:center;background:linear-gradient(135deg,var(--color-bg-surface),var(--color-bg-elevated));border:1px solid var(--color-border);border-radius:var(--radius-xl);display:flex;justify-content:space-between;overflow:hidden;padding:var(--space-6) var(--space-8);position:relative}.dashboard-welcome:after{background:linear-gradient(135deg,#0000,#c9a96e0d);content:"";height:100%;pointer-events:none;position:absolute;right:0;top:0;width:300px}.welcome-title{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--text-2xl);font-weight:var(--font-bold);margin:0 0 var(--space-1)}.welcome-subtitle{color:var(--color-text-secondary);font-size:var(--text-base);margin:0}.welcome-date{color:var(--color-text-muted);font-size:var(--text-sm);white-space:nowrap}.stats-grid{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:repeat(4,1fr)}.stats-card-top{align-items:center;display:flex;justify-content:space-between}.stats-card-icon{align-items:center;border-radius:var(--radius-md);display:flex;font-size:1.25rem;height:44px;justify-content:center;width:44px}.stats-card-icon.primary{background:var(--color-primary-muted);color:var(--color-primary)}.stats-card-icon.success{background:var(--color-success-bg);color:var(--color-success)}.stats-card-icon.warning{background:var(--color-warning-bg);color:var(--color-warning)}.stats-card-icon.danger{background:var(--color-danger-bg);color:var(--color-danger)}.stats-card-icon.info{background:var(--color-info-bg);color:var(--color-info)}.section-title{color:var(--color-text-primary);font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--font-semibold);margin:0 0 var(--space-4)}.actions-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(4,1fr)}.action-card{align-items:center;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;display:flex;font-family:var(--font-body);gap:var(--space-3);padding:var(--space-4) var(--space-5);transition:all var(--transition-base)}.action-card:hover{background:var(--color-bg-hover);border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.action-icon{color:var(--color-primary);flex-shrink:0;font-size:1.25rem}.action-label{color:var(--color-text-primary);flex:1 1;font-size:var(--text-sm);font-weight:var(--font-medium);text-align:left}.action-arrow{color:var(--color-text-muted);font-size:1rem;transition:transform var(--transition-fast)}.action-card:hover .action-arrow{color:var(--color-primary);transform:translateX(4px)}.dashboard-grid-2{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:1.5fr 1fr}.dashboard-grid-3{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(3,1fr)}.expiry-list{display:flex;flex-direction:column}.expiry-item{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;justify-content:space-between;padding:var(--space-4) var(--space-6);transition:background var(--transition-fast)}.expiry-item:hover{background:var(--color-bg-hover)}.expiry-item:last-child{border-bottom:none}.expiry-info{display:flex;flex-direction:column;gap:var(--space-1)}.expiry-item-name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold)}.expiry-batch{color:var(--color-text-muted);font-size:var(--text-xs)}.back-to-login{align-items:center;color:var(--color-text-secondary);display:inline-flex;font-size:var(--text-sm);gap:var(--space-2);margin-bottom:var(--space-8);text-decoration:none;transition:color var(--transition-fast)}.back-to-login:hover{color:var(--color-primary)}.reset-success{padding:var(--space-8) 0;text-align:center}.reset-success-icon{color:var(--color-success);font-size:3rem;margin-bottom:var(--space-4)}.reset-success h2{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--text-2xl);font-weight:var(--font-bold);margin:0 0 var(--space-3)}.reset-success p{color:var(--color-text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin:0}.reset-success strong{color:var(--color-text-primary)}.activity-list{display:flex;flex-direction:column}.activity-item{border-bottom:1px solid var(--color-border-light);display:flex;gap:var(--space-4);padding:var(--space-4) var(--space-6)}.activity-item:last-child{border-bottom:none}.activity-dot{border-radius:50%;flex-shrink:0;height:8px;margin-top:6px;width:8px}.activity-content{flex:1 1}.activity-text{color:var(--color-text-primary);font-size:var(--text-sm);margin:0}.activity-time{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:var(--space-1)}@media (max-width:1200px){.actions-grid,.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid-2{grid-template-columns:1fr}}@media (max-width:768px){.actions-grid,.stats-grid{grid-template-columns:1fr}.dashboard-welcome{align-items:flex-start;flex-direction:column;gap:var(--space-3);padding:var(--space-5)}.dashboard-page{gap:var(--space-5)}}.stats-grid-6{grid-template-columns:repeat(6,1fr)}.stats-grid-4{grid-template-columns:repeat(4,1fr)}.stats-grid-3{grid-template-columns:repeat(3,1fr)}@media (max-width:1400px){.stats-grid-6{grid-template-columns:repeat(3,1fr)}}@media (max-width:900px){.stats-grid-3,.stats-grid-4,.stats-grid-6{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.stats-grid-3,.stats-grid-4,.stats-grid-6{grid-template-columns:1fr}}.dash-stat-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);transition:all var(--transition-base)}.dash-stat-card.clickable{cursor:pointer}.dash-stat-card.clickable:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.dash-stat-top{justify-content:space-between}.dash-stat-icon,.dash-stat-top{align-items:center;display:flex}.dash-stat-icon{border-radius:var(--radius-md);font-size:1.2rem;height:40px;justify-content:center;width:40px}.dash-stat-icon.primary{background:var(--color-primary-muted);color:var(--color-primary)}.dash-stat-icon.info{background:var(--color-info-bg);color:var(--color-info)}.dash-stat-icon.success{background:var(--color-success-bg);color:var(--color-success)}.dash-stat-icon.warning{background:var(--color-warning-bg);color:var(--color-warning)}.dash-stat-icon.danger{background:var(--color-danger-bg);color:var(--color-danger)}.dash-stat-trend{align-items:center;border-radius:999px;display:flex;font-size:11px;font-weight:600;gap:3px;padding:2px 7px}.dash-stat-trend.up{background:var(--color-success-bg);color:var(--color-success)}.dash-stat-trend.down{background:var(--color-danger-bg);color:var(--color-danger)}.dash-stat-value{color:var(--color-text-primary);font-size:1.5rem;font-weight:800;line-height:1.1}.dash-stat-label{color:var(--color-text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium)}.dash-stat-sub{color:var(--color-text-muted);font-size:11px}.actions-grid-6{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(6,1fr)}@media (max-width:1200px){.actions-grid-6{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.actions-grid-6{grid-template-columns:repeat(2,1fr)}}.action-icon-wrap{align-items:center;border-radius:var(--radius-md);display:flex;flex-shrink:0;font-size:1.1rem;height:36px;justify-content:center;width:36px}.dash-chart-row{grid-gap:var(--space-5);align-items:start;display:grid;gap:var(--space-5);grid-template-columns:2fr 1fr}.dash-chart-row:has(.dash-chart-card:nth-child(3)){grid-template-columns:2fr 1fr 1fr}@media (max-width:1200px){.dash-chart-row{grid-template-columns:1fr}}.dash-chart-card{min-width:0}.dash-chart-body{padding:var(--space-4) var(--space-2) var(--space-2)}.chart-loading{height:200px}.chart-empty,.chart-loading{align-items:center;color:var(--color-text-muted);display:flex;font-size:var(--text-sm);justify-content:center}.chart-empty{height:160px}.reports-page{display:flex;flex-direction:column;gap:var(--space-6)}.reports-section-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:10px;margin-bottom:var(--space-4);padding-bottom:var(--space-3)}.reports-section-header h2{font-size:var(--text-lg);font-weight:700;margin:0}.reports-tab-bar{border-bottom:2px solid var(--color-border);display:flex;flex-wrap:wrap;gap:4px;margin-bottom:var(--space-5)}.reports-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--color-text-muted);cursor:pointer;display:flex;font-family:inherit;font-size:var(--text-sm);font-weight:500;gap:6px;margin-bottom:-2px;padding:10px 18px;transition:all .15s}.reports-tab:hover{color:var(--color-text-primary)}.reports-tab.active{border-bottom-color:var(--color-primary);color:var(--color-primary);font-weight:600}.kpi-row{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(4,1fr);margin-bottom:var(--space-5)}@media (max-width:900px){.kpi-row{grid-template-columns:repeat(2,1fr)}}.kpi-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);text-align:center}.kpi-value{color:var(--color-text-primary);font-size:1.75rem;font-weight:800;margin-bottom:4px}.kpi-label{color:var(--color-text-muted);font-size:12px;font-weight:500}.dash-filter-bar{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);gap:16px;padding:12px 16px}.dash-filter-bar,.dash-filter-section{align-items:center;display:flex;flex-wrap:wrap}.dash-filter-section{gap:8px}.dash-filter-icon{color:var(--color-text-muted);flex-shrink:0;font-size:16px}.dash-filter-label{color:var(--color-text-muted);font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase;white-space:nowrap}.dash-filter-presets{display:flex;flex-wrap:wrap;gap:4px}.dash-filter-btn{align-items:center;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;display:inline-flex;font-family:inherit;font-size:12px;font-weight:500;gap:4px;padding:5px 12px;transition:all .15s;white-space:nowrap}.dash-filter-btn:hover{background:var(--color-bg-hover);background:var(--color-surface-hover,var(--color-bg-hover));border-color:var(--color-primary);color:var(--color-text-primary)}.dash-filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.dash-filter-select{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;font-family:inherit;font-size:12px;min-width:140px;padding:5px 10px}.dash-filter-select:focus{border-color:var(--color-primary);outline:none}.dash-filter-clear{align-items:center;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;display:flex;flex-shrink:0;font-size:14px;height:26px;justify-content:center;width:26px}.dash-filter-clear:hover{background:var(--color-danger-bg);border-color:var(--color-danger);color:var(--color-danger)}.dash-filter-custom{align-items:center;border-top:1px solid var(--color-border);color:var(--color-text-secondary);display:flex;flex-wrap:wrap;font-size:13px;gap:10px;padding-top:12px;width:100%}.dash-filter-custom label{align-items:center;color:var(--color-text-muted);display:flex;font-size:12px;font-weight:500;gap:6px}.dash-date-input{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);color-scheme:dark;cursor:pointer;font-family:inherit;font-size:12px;padding:5px 8px}.dash-date-input:focus{border-color:var(--color-primary);outline:none}.dash-filter-active{background:var(--color-primary-muted);border:1px solid var(--color-primary);border-radius:999px;color:var(--color-primary);font-size:11px;font-weight:600;margin-left:auto;padding:3px 10px;white-space:nowrap}.rest-list-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.rest-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr)}@media (max-width:1200px){.rest-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:700px){.rest-grid{grid-template-columns:1fr}}.rest-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;gap:12px;padding:16px;transition:all .15s}.rest-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.rest-card-alert{border-color:#f59e0b66}.rest-card-header{align-items:center;display:flex;gap:10px}.rest-card-avatar{align-items:center;background:linear-gradient(135deg,var(--color-primary),#a07836);border-radius:var(--radius-md);color:#fff;display:flex;flex-shrink:0;font-size:18px;font-weight:800;height:42px;justify-content:center;width:42px}.rest-card-name{color:var(--color-text-primary);font-size:14px;font-weight:700}.rest-card-manager{color:var(--color-text-muted);font-size:12px;margin-top:2px}.rest-card-stats{grid-gap:8px;border-bottom:1px solid var(--color-border-light);border-top:1px solid var(--color-border-light);display:grid;gap:8px;grid-template-columns:repeat(4,1fr);padding:10px 0}.rest-card-stat{align-items:center;display:flex;flex-direction:column;text-align:center}.rest-card-stat-val{font-size:13px;font-weight:700;line-height:1.2}.rest-card-stat-label{color:var(--color-text-muted);font-size:10px;margin-top:2px}.rest-card-footer{align-items:center;display:flex;justify-content:space-between}.rest-panel-overlay{animation:fadeIn .15s ease-out;background:#00000080;display:flex;inset:0;justify-content:flex-end;position:fixed;z-index:1000}.rest-panel{animation:slideInRight .2s ease-out;background:var(--color-bg-surface);background:var(--color-bg-elevated,var(--color-bg-surface));border-left:1px solid var(--color-border);display:flex;flex-direction:column;gap:0;height:100%;max-width:95vw;overflow-y:auto;width:420px}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.rest-panel-header{align-items:flex-start;background:inherit;border-bottom:1px solid var(--color-border);display:flex;gap:14px;padding:20px 20px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:1}.rest-panel-avatar{align-items:center;background:linear-gradient(135deg,var(--color-primary),#a07836);border-radius:var(--radius-lg);color:#fff;display:flex;flex-shrink:0;font-size:24px;font-weight:800;height:52px;justify-content:center;width:52px}.rest-panel-title{font-size:16px;font-weight:700;margin:0}.rest-panel-section{border-bottom:1px solid var(--color-border-light);padding:16px 20px}.rest-panel-section-title{color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.6px;margin:0 0 10px;text-transform:uppercase}.rest-info-grid{display:flex;flex-direction:column;gap:8px}.rest-info-item{align-items:center;color:var(--color-text-primary);display:flex;font-size:13px;gap:8px}.rest-info-icon{color:var(--color-text-muted);flex-shrink:0;font-size:15px}.rest-kpi-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(4,1fr)}.rest-kpi-card{background:var(--color-bg);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:10px 8px;text-align:center}.rest-kpi-val{font-size:14px;font-weight:800;line-height:1.2}.rest-kpi-label{color:var(--color-text-muted);font-size:10px;margin-top:3px}.rest-action-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(2,1fr)}.demand-tabs{display:flex;gap:4px}.demand-tab{align-items:center;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;display:inline-flex;font-family:inherit;font-size:12px;font-weight:500;gap:4px;padding:6px 14px;transition:all .15s}.demand-tab:hover{border-color:var(--color-primary);color:var(--color-text-primary)}.demand-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.heatmap-table{border-collapse:initial;border-spacing:0;font-size:12px;width:100%}.heatmap-table thead th{background:var(--color-bg-surface);border-bottom:2px solid var(--color-border);color:var(--color-text-secondary);font-size:11px;font-weight:600;padding:10px 8px;position:-webkit-sticky;position:sticky;text-align:center;top:0;white-space:nowrap}.heatmap-item-col{background:var(--color-bg-surface)!important;left:0;min-width:150px;position:-webkit-sticky;position:sticky;text-align:left!important;z-index:2}.heatmap-rest-col{max-width:120px;min-width:80px;overflow:hidden;text-overflow:ellipsis}.heatmap-rest-col.highlighted{border-bottom-color:var(--color-primary)!important;color:var(--color-primary)!important}.heatmap-total-col{color:var(--color-text-primary)!important;font-weight:700!important;min-width:60px}.heatmap-table tbody td{border-bottom:1px solid var(--color-border-light);padding:8px;text-align:center;transition:background .15s}.heatmap-item-name{background:var(--color-bg-surface);color:var(--color-text-primary);font-weight:600;left:0;position:-webkit-sticky;position:sticky;text-align:left!important;z-index:1}.heatmap-cell{border-radius:3px;color:var(--color-text-primary);font-weight:500}.heatmap-cell.highlighted{outline:2px solid var(--color-primary);outline-offset:-2px}.heatmap-total{background:var(--color-primary-muted)!important;color:var(--color-primary)!important;font-weight:800!important}.heatmap-table tbody tr:hover td{background:var(--color-bg-hover)}.heatmap-table tbody tr:hover .heatmap-cell{filter:brightness(1.15)}@media (max-width:768px){.demand-tabs{width:100%}.demand-tab{flex:1 1;justify-content:center}}.user-management-page{animation:fadeIn var(--transition-base) ease-out;display:flex;flex-direction:column;gap:var(--space-6)}.page-header{align-items:center;gap:var(--space-4)}.page-title{color:var(--color-text-primary);font-family:var(--font-heading);font-weight:var(--font-bold);margin:0 0 var(--space-1)}.page-subtitle{margin:0}.filters-bar{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between}.search-filter{flex:1 1;max-width:400px;min-width:280px;position:relative}.search-filter .filter-icon{color:var(--color-text-muted);font-size:1.1rem;left:var(--space-3);position:absolute;top:50%;transform:translateY(-50%)}.filter-input{padding-left:var(--space-10)!important}.filter-icon-sm{color:var(--color-text-muted);font-size:1.1rem}.filter-select{font-size:var(--text-sm)!important;min-width:160px;padding:var(--space-2) var(--space-8) var(--space-2) var(--space-3)!important}.user-stats{display:flex;flex-wrap:wrap;gap:var(--space-4)}.user-stat{align-items:center;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex:1 1;flex-direction:column;gap:var(--space-1);min-width:100px;padding:var(--space-4) var(--space-6)}.stat-value{color:var(--color-text-primary);font-size:var(--text-2xl);font-weight:var(--font-bold)}.stat-label{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:var(--tracking-wide);text-transform:uppercase}.user-cell{gap:var(--space-3)}.user-cell,.user-cell-avatar{align-items:center;display:flex}.user-cell-avatar{background:linear-gradient(135deg,var(--color-primary-muted),var(--color-primary-glow));border-radius:var(--radius-md);color:var(--color-primary);flex-shrink:0;font-size:var(--text-xs);font-weight:var(--font-bold);height:36px;justify-content:center;width:36px}.user-cell-info{display:flex;flex-direction:column}.user-cell-name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold)}.user-cell-email{color:var(--color-text-muted);font-size:var(--text-xs)}.row-disabled{opacity:.6}.action-menu-container{position:relative}.action-menu-trigger{font-size:1.25rem!important;padding:var(--space-1)!important}.action-dropdown{animation:slideDown var(--transition-fast) ease-out;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);min-width:160px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:var(--z-dropdown)}.action-dropdown-item{align-items:center;background:#0000;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;font-family:var(--font-body);font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-3) var(--space-4);text-align:left;transition:all var(--transition-fast);width:100%}.action-dropdown-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.action-dropdown-item.danger{color:var(--color-danger)}.action-dropdown-item.danger:hover{background:var(--color-danger-bg)}.form-row{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:1fr 1fr}.form-actions{margin-top:var(--space-4)}@media (max-width:768px){.page-header{align-items:flex-start;flex-direction:column}.filters-bar{align-items:stretch;flex-direction:column}.search-filter{max-width:none}.filter-group{flex-wrap:wrap}.user-stats{display:grid;grid-template-columns:repeat(2,1fr)}.form-row{grid-template-columns:1fr}}.profile-page{animation:fadeIn var(--transition-base) ease-out;display:flex;flex-direction:column;gap:var(--space-6)}.profile-layout{grid-gap:var(--space-6);align-items:flex-start;display:grid;gap:var(--space-6);grid-template-columns:280px 1fr}.profile-card{background:var(--color-bg-surface);border:1px solid var(--color-border);flex-direction:column;gap:var(--space-3);padding:var(--space-8);text-align:center}.profile-card,.profile-card-avatar{align-items:center;border-radius:var(--radius-xl);display:flex}.profile-card-avatar{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));box-shadow:var(--shadow-glow);color:var(--color-text-inverse);font-size:var(--text-2xl);font-weight:var(--font-bold);height:80px;justify-content:center;margin-bottom:var(--space-2);width:80px}.profile-card-name{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0}.profile-card-meta{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4);width:100%}.profile-card-meta span{align-items:center;background:var(--color-bg-dark);border-radius:var(--radius-md);color:var(--color-text-muted);display:flex;font-size:var(--text-xs);gap:var(--space-2);padding:var(--space-2) var(--space-3)}.profile-details{gap:var(--space-6)}.profile-details,.profile-fields{display:flex;flex-direction:column}.profile-fields{gap:var(--space-5)}.profile-field{display:flex;flex-direction:column;gap:var(--space-2)}.profile-field-label{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:var(--tracking-wide);text-transform:uppercase}.profile-field-value{color:var(--color-text-primary);font-size:var(--text-base)}.password-form{display:flex;flex-direction:column;gap:var(--space-4);max-width:400px}.password-toggle-inline{align-items:center;background:#0000;border:none;color:var(--color-text-muted);cursor:pointer;display:flex;font-size:1.1rem;position:absolute;right:12px;top:50%;transform:translateY(-50%)}.password-toggle-inline:hover{color:var(--color-text-primary)}.form-actions{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-2)}@media (max-width:768px){.profile-layout{grid-template-columns:1fr}}.settings-page{animation:fadeIn var(--transition-base) ease-out;display:flex;flex-direction:column;gap:var(--space-5)}.settings-tab-bar{-webkit-overflow-scrolling:touch;border-bottom:2px solid var(--color-border);display:flex;gap:2px;overflow-x:auto}.settings-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--color-text-muted);cursor:pointer;display:flex;font-family:inherit;font-size:13px;font-weight:500;gap:6px;margin-bottom:-2px;padding:10px 18px;position:relative;transition:all .15s;white-space:nowrap}.settings-tab:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.settings-tab.active{border-bottom-color:var(--color-primary);color:var(--color-primary);font-weight:600}.settings-tab-dot{background:var(--color-primary);border-radius:50%;height:6px;position:absolute;right:8px;top:8px;width:6px}.settings-content{animation:fadeIn .15s ease-out}.settings-section{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.settings-section-header{align-items:flex-start;border-bottom:1px solid var(--color-border-light);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:20px 24px 16px}.settings-section-header h3{color:var(--color-text-primary);font-size:16px;font-weight:700;margin:0}.settings-section-header p{color:var(--color-text-muted);font-size:13px;margin:4px 0 0}.settings-fields{display:flex;flex-direction:column;gap:0;padding:16px 24px 20px}.settings-field-row{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;gap:16px;justify-content:space-between;padding:12px 0}.settings-field-row:last-child{border-bottom:none}.settings-field-label{color:var(--color-text-primary);font-size:13px;font-weight:600;min-width:200px;white-space:nowrap}.settings-field-input-wrap{display:flex;flex:1 1;flex-direction:column;gap:4px;max-width:360px}.settings-field-input{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;color:var(--color-text-primary);font-family:inherit;font-size:13px;padding:8px 12px;transition:border-color .15s;width:100%}.settings-field-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #c9a96e26;outline:none}.settings-field-input:disabled{cursor:not-allowed;opacity:.5}.settings-field-helper{color:var(--color-text-muted);font-size:11px;line-height:1.3}.settings-toggle-row{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;justify-content:space-between;padding:12px 0}.settings-toggle-row:last-child{border-bottom:none}.settings-toggle-label{color:var(--color-text-primary);font-size:13px;font-weight:600}.settings-toggle{background:var(--color-border-strong);border:none;border-radius:12px;cursor:pointer;flex-shrink:0;height:24px;padding:2px;position:relative;transition:background .2s;width:44px}.settings-toggle.active{background:var(--color-primary)}.settings-toggle.disabled{cursor:not-allowed;opacity:.4}.settings-toggle-knob{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0000004d;display:block;height:20px;transition:transform .2s;width:20px}.settings-toggle.active .settings-toggle-knob{transform:translateX(20px)}.settings-integration-block{border-top:1px solid var(--color-border-light);padding:20px 24px}.settings-integration-block.disabled{opacity:.5}.settings-integration-header{align-items:center;display:flex;gap:12px;margin-bottom:16px}.settings-integration-header h4{align-items:center;display:flex;font-size:14px;font-weight:700;margin:0}.settings-integration-logo{align-items:center;border-radius:var(--radius-md);color:#fff;display:flex;flex-shrink:0;font-size:18px;font-weight:900;height:40px;justify-content:center;width:40px}.settings-integration-logo.xero{background:linear-gradient(135deg,#13b5ea,#0d9dd9)}.settings-integration-logo.epos{background:var(--color-border-strong);color:var(--color-text-muted)}.xero-section{display:flex;flex-direction:column;gap:16px}.xero-status-bar{align-items:center;border-radius:var(--radius-md);display:flex;font-size:13px;font-weight:600;gap:8px;padding:10px 14px}.xero-status-bar.connected{background:#22c55e1a;border:1px solid #22c55e4d;color:#22c55e}.xero-status-bar.disconnected{background:#f59e0b1a;border:1px solid #f59e0b4d;color:#f59e0b}.xero-form{gap:12px}.xero-field,.xero-form{display:flex;flex-direction:column}.xero-field{gap:4px}.xero-field label{color:var(--color-text-secondary);font-size:12px;font-weight:600}.xero-secret-wrap{align-items:center;display:flex;position:relative}.xero-secret-wrap .settings-field-input{padding-right:40px}.xero-eye-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:16px;height:28px;justify-content:center;position:absolute;right:8px;width:28px}.xero-eye-btn:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.xero-actions{gap:12px;padding-top:4px}.xero-actions,.xero-confirm-remove{align-items:center;display:flex;flex-wrap:wrap}.xero-confirm-remove{gap:8px}.xero-current{background:var(--color-bg);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:12px 14px}.xero-stored-row{align-items:center;color:var(--color-text-muted);display:flex;font-size:12px;gap:8px;margin-bottom:4px}.xero-stored-row:last-child{margin-bottom:0}.xero-stored-row span{color:var(--color-text-secondary);font-weight:600;min-width:100px}.xero-stored-row code{background:var(--color-bg-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);color:var(--color-text-primary);font-family:SF Mono,Fira Code,monospace;font-size:11px;padding:2px 6px;word-break:break-all}.xero-note{align-items:flex-start;background:var(--color-primary-muted);border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-text-secondary);display:flex;font-size:12px;gap:8px;line-height:1.5;padding:10px 14px}.xero-note code{background:#c9a96e26;border-radius:3px;font-family:SF Mono,Fira Code,monospace;font-size:11px;padding:1px 5px}.settings-info-box{align-items:flex-start;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);display:flex;font-size:12px;gap:8px;line-height:1.5;margin-top:8px;padding:12px 14px}.xero-integration-section{display:flex;flex-direction:column;gap:20px}.xero-accounts-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.xero-accounts-header h4{color:var(--color-text-primary);font-size:14px;font-weight:700;margin:0}.xero-accounts-header p{color:var(--color-text-muted);font-size:12px;margin:2px 0 0}.xero-no-accounts{align-items:center;background:var(--color-bg);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);display:flex;font-size:13px;gap:8px;padding:16px}.xero-accounts-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.xero-account-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color .2s,box-shadow .2s}.xero-account-card.connected{border-color:#22c55e4d}.xero-account-card:hover{box-shadow:0 2px 12px #00000026}.xero-account-card-header{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;justify-content:space-between;padding:14px 16px}.xero-account-card-info{align-items:center;display:flex;gap:10px}.xero-account-card-name{color:var(--color-text-primary);font-size:14px;font-weight:700;margin:0}.xero-account-card-status{font-size:11px;font-weight:600}.xero-account-card-status.connected{color:#22c55e}.xero-account-card-status.disconnected{color:var(--color-text-muted)}.xero-account-card-actions-top{display:flex;gap:4px}.xero-account-card-details{border-bottom:1px solid var(--color-border-light);padding:12px 16px}.xero-account-card-edit{display:flex;flex-direction:column;gap:10px;padding:14px 16px}.xero-account-card-edit,.xero-account-tenants{border-bottom:1px solid var(--color-border-light)}.xero-account-tenants{padding:12px 16px}.xero-account-tenants-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.xero-account-tenants-header h5{color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.5px;margin:0;text-transform:uppercase}.xero-tenant-list{display:flex;flex-direction:column;gap:4px}.xero-tenant-item{align-items:center;color:var(--color-text-primary);display:flex;font-size:12px;gap:6px;padding:4px 0}.xero-account-card-footer{align-items:center;display:flex;flex-wrap:wrap;gap:8px;padding:12px 16px}.xero-add-form{background:var(--color-bg);border:1px solid var(--color-primary);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:12px;padding:16px 20px}.xero-add-form-header{align-items:center;display:flex;justify-content:space-between}.xero-add-form-header h4{align-items:center;color:var(--color-primary);display:flex;font-size:14px;font-weight:700;gap:6px;margin:0}.xero-mapping-header{border-top:1px solid var(--color-border-light);padding-top:8px}.xero-mapping-header h4{color:var(--color-text-primary);font-size:14px;font-weight:700;margin:0}.xero-mapping-header p{color:var(--color-text-muted);font-size:12px;margin:2px 0 0}.xero-mapping-section{display:flex;flex-direction:column;gap:12px}.xero-mapping-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow-x:auto}.xero-mapping-table{border-collapse:collapse;font-size:13px;width:100%}.xero-mapping-table th{background:var(--color-bg);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.5px;padding:10px 14px;text-align:left;text-transform:uppercase}.xero-mapping-table td{border-bottom:1px solid var(--color-border-light);padding:10px 14px;vertical-align:middle}.xero-mapping-table tr:last-child td{border-bottom:none}.xero-mapping-table tr:hover td{background:var(--color-bg-hover)}.xero-mapping-table select{min-width:200px}.xero-mapping-restaurant{align-items:center;color:var(--color-text-primary);display:flex;font-weight:600;gap:8px}.xero-mapping-footer{display:flex;justify-content:flex-end}.xero-mapping-empty{align-items:center;background:var(--color-bg);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);display:flex;font-size:13px;gap:8px;padding:16px}@keyframes xeroSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.xero-spin{animation:xeroSpin 1s linear infinite}.xero-callback-page{align-items:center;background:var(--color-bg);display:flex;justify-content:center;min-height:100vh;padding:40px 20px}.xero-callback-card{align-items:center;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 4px 24px #0003;display:flex;flex-direction:column;gap:16px;max-width:480px;padding:40px;text-align:center;width:100%}.xero-callback-logo{margin-bottom:8px}.xero-callback-status{font-size:48px;line-height:1}.xero-callback-status.processing{color:#3b82f6}.xero-callback-status.success{color:#22c55e}.xero-callback-status.error{color:#ef4444}.xero-callback-spinner{animation:xeroSpin 1.5s linear infinite}.xero-callback-title{color:var(--color-text-primary);font-size:20px;font-weight:700;margin:0}.xero-callback-message{color:var(--color-text-muted);font-size:13px;line-height:1.5;margin:0}.xero-callback-tenants{background:var(--color-bg);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:12px 16px;text-align:left;width:100%}.xero-callback-tenants h4{color:var(--color-text-muted);font-size:12px;font-weight:700;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.xero-callback-tenants ul{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.xero-callback-tenants li{align-items:center;color:var(--color-text-primary);display:flex;font-size:13px;font-weight:500;gap:6px}.xero-callback-tenant-type{background:var(--color-bg-surface);border-radius:4px;color:var(--color-text-muted);font-size:10px;margin-left:auto;padding:1px 6px}.xero-callback-actions{align-items:center;display:flex;flex-direction:column;gap:8px;margin-top:8px;width:100%}@media (max-width:768px){.settings-field-row{align-items:flex-start;flex-direction:column;gap:6px}.settings-field-label{min-width:0}.settings-field-input-wrap{max-width:100%;width:100%}.settings-section-header{flex-direction:column}.xero-accounts-grid{grid-template-columns:1fr}.xero-mapping-table select{min-width:140px}}.type-tabs{margin-bottom:var(--space-4)}.type-tab,.type-tabs{display:flex;gap:var(--space-2)}.type-tab{align-items:center;background:var(--color-surface);border:2px solid #0000;border-radius:var(--radius-lg);color:var(--color-text-secondary);cursor:pointer;flex:1 1;font-size:var(--text-sm);font-weight:500;justify-content:center;padding:var(--space-3) var(--space-5);transition:all .25s ease}.type-tab:hover{background:var(--color-surface-hover);border-color:var(--type-color,var(--color-border))}.type-tab.active{background:color-mix(in srgb,var(--type-color) 12%,var(--color-surface));border-color:var(--type-color);box-shadow:0 0 12px color-mix(in srgb,var(--type-color) 20%,#0000);color:var(--color-text-primary)}.type-tab-icon{font-size:var(--text-lg)}.type-tab-label{font-weight:600}.type-tab-count{background:var(--color-surface-hover);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;padding:2px 8px}.type-tab.active .type-tab-count{background:var(--type-color);color:#fff}.stock-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.stock-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4);transition:all .25s ease}.stock-card:hover{border-color:var(--color-primary);box-shadow:0 4px 20px #00000026;transform:translateY(-2px)}.stock-card-header{align-items:center;display:flex;justify-content:space-between}.stock-card-name{color:var(--color-text-primary);font-size:var(--text-md);font-weight:600;margin:0}.stock-card-qty{align-items:baseline;display:flex;gap:var(--space-2);margin:var(--space-1) 0}.stock-card-qty .qty-value{color:var(--color-text-primary);font-size:var(--text-2xl);font-weight:700}.stock-card-qty .qty-unit{color:var(--color-text-muted);font-size:var(--text-sm);font-weight:500}.stock-bar{height:4px}.stock-bar,.stock-bar-fill{border-radius:var(--radius-full)}.stock-bar-fill{transition:width .5s ease}.stock-card-meta{color:var(--color-text-muted);display:flex;font-size:var(--text-xs);justify-content:space-between}.stock-card-actions{border-top:1px solid var(--color-divider);display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-1);padding-top:var(--space-2)}.vat-toggle-group{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;gap:2px;overflow:hidden;padding:2px}.vat-toggle-btn{background:#0000;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;flex:1 1;font-size:var(--text-sm);font-weight:500;padding:var(--space-2) var(--space-3);text-align:center;transition:all .2s ease}.vat-toggle-btn:not(.active):hover:not(:disabled){background:var(--color-bg-hover);color:var(--color-text-primary)}.vat-toggle-btn.active{background:var(--color-primary);color:var(--color-bg);font-weight:600}.vat-toggle-btn.exempt.active{background:var(--color-warning);color:var(--color-bg)}.vat-toggle-btn:disabled{cursor:not-allowed;opacity:.4}.recipe-builder{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5)}.recipe-builder-header{margin-bottom:var(--space-4)}.recipe-builder-header h3{color:var(--color-text-primary);font-size:var(--text-md);font-weight:700;margin:0 0 var(--space-1) 0}.recipe-builder-header p{color:var(--color-text-muted);font-size:var(--text-xs);margin:0}.recipe-ingredients{margin-top:var(--space-3)}.recipe-ingredients-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-3)}.recipe-ingredients-header strong{color:var(--color-text-primary);font-size:var(--text-sm)}.ingredient-search-box{background:var(--color-bg);border:1px solid var(--color-primary);border-radius:var(--radius-md);margin-bottom:var(--space-3);overflow:hidden}.ingredient-search-input-wrap{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.ingredient-search-input-wrap svg{color:var(--color-text-muted);flex-shrink:0}.ingredient-search-input-wrap .form-input{background:#0000;border:none;padding:var(--space-1) 0}.ingredient-search-results{max-height:200px;overflow-y:auto}.ingredient-search-item{align-items:center;background:#0000;border:none;color:var(--color-text-primary);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-2) var(--space-3);text-align:left;transition:background .15s;width:100%}.ingredient-search-item:hover{background:var(--color-surface-hover)}.ingredient-type-badge{flex-shrink:0;font-size:var(--text-md)}.ingredient-search-name{flex:1 1;font-weight:500}.ingredient-search-meta{color:var(--color-text-muted);font-size:var(--text-xs)}.ingredient-search-empty{color:var(--color-text-muted);font-size:var(--text-sm);padding:var(--space-4);text-align:center}.recipe-table{border-collapse:collapse;font-size:var(--text-sm);width:100%}.recipe-table th{color:var(--color-text-muted);font-size:var(--text-xs);font-weight:600;letter-spacing:.05em;text-align:left;text-transform:uppercase}.recipe-table td,.recipe-table th{border-bottom:1px solid var(--color-border);padding:var(--space-2) var(--space-3)}.recipe-table td{color:var(--color-text-primary);vertical-align:middle}.ingredient-qty-input{font-size:var(--text-sm)!important;padding:var(--space-1) var(--space-2)!important;text-align:center;width:80px!important}.recipe-empty{border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--text-sm);padding:var(--space-6);text-align:center}.category-list{display:flex;flex-direction:column;gap:var(--space-6)}.category-row{align-items:center;background:var(--color-surface);border-left:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex-direction:row;gap:var(--space-3);transition:border-color .2s}.category-row:hover{border-color:var(--color-primary)}.category-row-icon{flex-shrink:0;font-size:var(--text-xl)}.category-row-info{flex:1 1;min-width:0}.category-row-name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600}.category-row-desc{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:2px}.category-row-actions{align-items:center;display:flex;flex-shrink:0;gap:var(--space-1)}.category-add-form{border:1px dashed var(--color-primary);border-radius:var(--radius-md);flex-direction:column;gap:var(--space-3);padding:var(--space-4)}.category-add-form,.icon-pick-btn{background:var(--color-surface);display:flex}.icon-pick-btn{align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-md);height:36px;justify-content:center;transition:all .15s;width:36px}.icon-pick-btn.active,.icon-pick-btn:hover{border-color:var(--color-primary)}.icon-pick-btn.active{background:var(--color-primary)}.inventory-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.inventory-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);transition:all .25s ease}.inventory-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.inventory-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-3)}.inventory-card-name{color:var(--color-text-primary);font-size:var(--text-md);font-weight:700;margin:0 0 var(--space-1) 0}.inventory-card-sku{color:var(--color-text-muted);font-size:var(--text-xs);margin:0 0 var(--space-3) 0}.inventory-card-meta{border-top:1px solid var(--color-border);color:var(--color-text-secondary);display:flex;font-size:var(--text-sm);justify-content:space-between;margin-bottom:var(--space-2);padding:var(--space-2) 0}.inventory-card-footer{display:flex;flex-wrap:wrap;gap:var(--space-2)}.empty-state{padding:var(--space-12) var(--space-4)}.empty-state-icon{color:var(--color-text-muted);font-size:48px;margin-bottom:var(--space-4)}.empty-state h3{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:600;margin:0 0 var(--space-2) 0}.empty-state p{color:var(--color-text-muted);margin:0 0 var(--space-4) 0}.badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--text-xs);font-weight:600;padding:2px 8px}.badge-success{background:#22c55e1f;color:#22c55e}.badge-warning{background:#f59e0b1f;color:#f59e0b}.badge-danger{background:#ef44441f;color:#ef4444}.badge-info{background:#3b82f61f;color:#3b82f6}.expiry-badge{border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;padding:2px 8px}.expiry-badge.expired{background:#ef444426;color:#ef4444}.expiry-badge.critical{background:#f59e0b26;color:#f59e0b}.expiry-badge.warning{background:#3b82f626;color:#3b82f6}.expiry-badge.ok{background:#22c55e26;color:#22c55e}.expiry-badge.muted{color:var(--color-text-muted)}.expiry-badge.muted,.stock-bar{background:var(--color-surface-hover)}.stock-bar{border-radius:3px;height:6px;margin-top:var(--space-1);overflow:hidden;width:100%}.stock-bar-fill{border-radius:3px;height:100%;transition:width .4s ease}.stock-bar-fill.success{background:#22c55e}.stock-bar-fill.warning{background:#f59e0b}.stock-bar-fill.danger{background:#ef4444}.upload-zone{border:2px dashed var(--color-border);border-radius:var(--radius-lg);cursor:pointer;padding:var(--space-10);text-align:center;transition:all .25s ease}.upload-zone.dragging,.upload-zone:hover{background:color-mix(in srgb,var(--color-primary) 5%,#0000);border-color:var(--color-primary)}.upload-zone-icon{color:var(--color-text-muted);font-size:48px;margin-bottom:var(--space-3)}.modal-xl{max-width:800px}@media (max-width:768px){.type-tabs{flex-direction:column}.type-tab{justify-content:flex-start}.form-row{flex-direction:column}.recipe-table{font-size:var(--text-xs)}.ingredient-qty-input{width:60px!important}.inventory-grid{grid-template-columns:1fr}}.view-toggle{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;padding:2px}.view-toggle-btn{border-radius:var(--radius-sm);font-size:1.2rem;height:34px;transition:all .2s;width:34px}.view-toggle-btn:hover{background:var(--color-surface-hover);color:var(--color-primary)}.view-toggle-btn.active{background:var(--color-primary);box-shadow:0 0 8px #ffd70033;color:var(--color-bg)}.action-btns{display:flex;gap:var(--space-2)}.btn-action{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:1.1rem;height:34px;justify-content:center;transition:all .2s ease;width:34px}.btn-action:hover{background:var(--color-surface-hover);border-color:var(--color-primary);box-shadow:0 4px 12px #ffd7001a;color:var(--color-primary);transform:translateY(-2px)}.btn-action.delete:hover{background:#ef44440d;border-color:#ef4444;box-shadow:0 4px 12px #ef44441a;color:#ef4444}.stock-list-table{margin-top:var(--space-4);width:100%}.info-banner{animation:slideDown .4s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.batch-options-section{background:#d4af370a;border:1px solid #d4af371f;border-radius:var(--radius-md);margin-top:var(--space-3);padding:var(--space-4)}.batch-mode-options{display:flex;flex-direction:column;gap:var(--space-2)}.batch-mode-radio{align-items:flex-start;border-radius:var(--radius-md);cursor:pointer;display:flex;gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:background .15s}.batch-mode-radio:hover{background:#ffffff08}.batch-mode-radio input[type=radio]{accent-color:var(--color-primary);margin-top:4px}.batch-mode-radio .radio-label{display:flex;flex-direction:column}.batch-mode-radio .radio-label strong{color:var(--color-text-primary);font-size:var(--text-sm)}.batch-mode-radio .radio-desc{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:1px}.batch-summary{background:#00000026;border-radius:var(--radius-md);max-height:150px;overflow-y:auto;padding:var(--space-3)}.batch-summary-row{align-items:center;border-bottom:1px solid var(--color-divider);display:flex;font-size:var(--text-xs);gap:var(--space-3);padding:var(--space-1) 0}.batch-summary-row:last-child{border-bottom:none}.batch-summary-row .batch-num{color:var(--color-primary);font-family:monospace;font-family:var(--font-mono,monospace);font-weight:600;min-width:160px}.batch-summary-row .batch-qty{color:var(--color-text-primary);font-weight:600;min-width:80px}.batch-summary-row .batch-source{background:#3b82f61f;border-radius:var(--radius-full);color:#3b82f6;font-size:10px;font-weight:600;letter-spacing:.3px;padding:2px 8px;text-transform:uppercase}.batch-source-badge{font-size:10px!important;letter-spacing:.3px;padding:2px 8px!important}.batch-source-purchase{background:#22c55e1f;color:#22c55e}.batch-source-production{background:#f59e0b1f;color:#f59e0b}.batch-source-manual-adjustment{background:#a855f71f;color:#a855f7}.batch-source-bulk-upload{background:#3b82f61f;color:#3b82f6}.batch-source-unknown{background:#9ca3af1f;color:#9ca3af}.toggle-switch{cursor:pointer;display:inline-block;flex-shrink:0;height:24px;position:relative;transition:all .3s ease;width:44px}.toggle-switch input{height:0;opacity:0;width:0}.toggle-slider{background:#e2e8f0;border-radius:24px;bottom:0;box-shadow:inset 0 1px 3px #0000001a;left:0;right:0;top:0}.toggle-slider,.toggle-slider:before{position:absolute;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.toggle-slider:before{background:#fff;border-radius:50%;bottom:3px;box-shadow:0 2px 5px #0003;content:"";height:18px;left:3px;width:18px;z-index:2}.toggle-switch input:checked+.toggle-slider{background:#22c55e}.toggle-switch input:checked+.toggle-slider:before{transform:translateX(20px)}.toggle-switch:hover .toggle-slider{box-shadow:inset 0 1px 3px #0000001a,0 0 0 4px #22c55e1a}.toggle-loading{opacity:.7;pointer-events:none}.toggle-loading .toggle-slider:before{animation:toggle-spin .6s linear infinite;background:#0000;border:2px solid #e2e8f0;border-top-color:#22c55e;box-shadow:none}@keyframes toggle-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.toggle-loading input:checked+.toggle-slider:before{transform:translateX(20px) rotate(1turn)}.toggle-loading .toggle-slider{background:#f1f5f9!important}.ucb-container{animation:fadeIn .15s ease-out;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:12px;padding:16px}.ucb-header{align-items:center;display:flex;gap:10px}.ucb-header-icon{font-size:20px}.ucb-header strong{color:var(--color-text-primary);display:block;font-size:13px}.ucb-header-sub{color:var(--color-text-muted);display:block;font-size:11px;margin-top:1px}.ucb-levels{gap:10px}.ucb-level,.ucb-levels{display:flex;flex-direction:column}.ucb-level{gap:6px}.ucb-level-row{flex-wrap:wrap;gap:8px}.ucb-level-num,.ucb-level-row{align-items:center;display:flex}.ucb-level-num{background:var(--color-primary);border-radius:50%;color:#fff;flex-shrink:0;font-size:11px;font-weight:700;height:22px;justify-content:center;width:22px}.ucb-level-from{color:var(--color-text-primary);font-size:13px;font-weight:600;min-width:60px;white-space:nowrap}.ucb-arrow{color:var(--color-text-muted);flex-shrink:0;font-size:16px}.ucb-factor-input{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:inherit;font-size:13px;font-weight:600;padding:6px 8px;text-align:center;width:72px}.ucb-factor-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #c9a96e26;outline:none}.ucb-unit-select{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;font-family:inherit;font-size:12px;min-width:120px;padding:6px 10px}.ucb-unit-select:focus{border-color:var(--color-primary);outline:none}.ucb-remove-btn{align-items:center;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:14px;height:28px;justify-content:center;width:28px}.ucb-remove-btn:hover{background:#ef44441a;border-color:#ef4444;color:#ef4444}.ucb-level-summary{color:var(--color-primary);font-size:11px;font-weight:600;padding-left:30px}.ucb-status{align-items:center;border-radius:var(--radius-md);display:flex;font-size:12px;font-weight:600;gap:8px;padding:8px 12px}.ucb-status.complete{background:#22c55e1a;border:1px solid #22c55e4d;color:#22c55e}.ucb-status.incomplete{background:#f59e0b14;border:1px solid #f59e0b33;color:#f59e0b}.ucb-status-dot{background:#f59e0b;border-radius:50%;flex-shrink:0;height:6px;width:6px}.base-unit-equiv{color:var(--color-primary);font-size:10px;font-weight:500;margin-top:1px}@media (max-width:600px){.ucb-level-row{align-items:flex-start;flex-direction:column}.ucb-factor-input,.ucb-unit-select{width:100%}}.low-stock-stats{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(4,1fr);margin-bottom:var(--space-4)}@media (max-width:768px){.low-stock-stats{grid-template-columns:repeat(2,1fr)}}.ls-stat{background:var(--color-surface);border:1px solid;border-radius:var(--radius-lg);padding:16px 20px;text-align:center}.ls-stat-val{font-size:2rem;font-weight:800;line-height:1;margin-bottom:6px}.ls-stat-label{color:var(--color-text-muted);font-size:12px;font-weight:500}.ls-tabs{border-bottom:2px solid var(--color-border);display:flex;gap:4px;margin-bottom:var(--space-4)}.ls-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--color-text-muted);cursor:pointer;display:flex;font-family:inherit;font-size:var(--text-sm);font-weight:500;gap:6px;margin-bottom:-2px;padding:10px 18px;transition:all .15s}.ls-tab:hover{background:var(--color-surface-hover);border-radius:var(--radius-sm) var(--radius-sm) 0 0;color:var(--color-text)}.ls-tab.active{border-bottom-color:var(--color-primary);color:var(--color-primary);font-weight:600}.ls-tab-badge{background:#ef4444;border-radius:999px;color:#fff;font-size:10px;font-weight:700;min-width:18px;padding:1px 6px;text-align:center}.ls-filter-bar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--space-3)}.ls-filter-btn{background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;font-family:inherit;font-size:12px;padding:6px 14px;transition:all .15s}.ls-filter-btn:hover{background:var(--color-surface-hover);color:var(--color-text)}.ls-filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.ls-priority-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:11px;font-weight:600;gap:4px;padding:3px 8px;white-space:nowrap}.threshold-editor{align-items:center;display:flex;gap:6px}.threshold-input{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-size:13px;padding:4px 8px;text-align:center;width:70px}.threshold-input:focus{border-color:var(--color-primary);outline:none}.ls-section{margin-top:0}.restaurant-grid{display:flex;flex-direction:column;gap:8px;margin-bottom:var(--space-4)}.restaurant-card{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;display:flex;gap:14px;padding:14px 18px;transition:all .15s}.restaurant-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-1px)}.restaurant-card-avatar{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));border-radius:var(--radius-md);color:#fff;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:40px;justify-content:center;width:40px}.replenish-panel{display:flex;flex-direction:column;gap:16px}.replenish-existing-order{align-items:center;background:#3b82f61a;border:1px solid #3b82f64d;border-radius:var(--radius-md);color:var(--color-text);display:flex;font-size:13px;gap:10px;padding:12px 16px}.replenish-table{border-collapse:collapse;font-size:13px;width:100%}.replenish-table th{border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.5px;padding:10px 12px;text-align:left;text-transform:uppercase}.replenish-table td{border-bottom:1px solid var(--color-border-light);padding:12px;vertical-align:middle}.replenish-table tr:last-child td{border-bottom:none}.replenish-table tr:hover td{background:var(--color-surface-hover)}.replenish-footer{align-items:center;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding-top:14px}.qty-input-group{gap:4px}.qty-btn,.qty-input-group{align-items:center;display:flex}.qty-btn{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;flex-shrink:0;font-size:14px;height:28px;justify-content:center;transition:all .12s;width:28px}.qty-btn:hover{background:var(--color-surface-hover);color:var(--color-text)}.qty-input{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);font-family:inherit;font-size:13px;padding:4px 6px;text-align:center;width:60px}.qty-input:focus{border-color:var(--color-primary);outline:none}.po-form-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:1fr 1fr;margin-bottom:var(--space-6)}.po-form-grid .form-group.full-width{grid-column:1/-1}.po-item-selector{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-6);padding:var(--space-5)}.po-item-selector-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-4)}.po-item-selector-header h3{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--text-lg)}.po-items-list{display:flex;flex-direction:column;gap:var(--space-3)}.po-item-row{grid-gap:var(--space-3);align-items:center;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-3);grid-template-columns:2fr 1fr 100px 100px 80px 40px;padding:var(--space-3);transition:all .2s}.po-item-row:hover{border-color:var(--color-primary)}.po-item-row .item-name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600}.po-item-row .item-meta{color:var(--color-text-muted);font-size:var(--text-xs)}.po-item-row .item-total{color:var(--color-primary);font-size:var(--text-sm);font-weight:700;text-align:right}.po-item-row input.price-input,.po-item-row input.qty-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:var(--text-sm);padding:var(--space-2);text-align:center;width:100%}.po-item-row input.price-input:focus,.po-item-row input.qty-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #cfa36126;outline:none}.po-remove-btn{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:18px;justify-content:center;padding:var(--space-1);transition:all .2s}.po-remove-btn:hover{background:#ef44441a;color:var(--color-danger)}.po-summary{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-6);padding:var(--space-5)}.po-summary-row{align-items:center;color:var(--color-text-secondary);display:flex;font-size:var(--text-sm);justify-content:space-between;padding:var(--space-2) 0}.po-summary-row.total{border-top:1px solid var(--color-border);color:var(--color-primary);font-size:var(--text-lg);font-weight:700;margin-top:var(--space-3);padding-top:var(--space-3)}.po-add-item-dropdown{position:relative}.po-add-item-search{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--text-sm);padding:var(--space-3);width:100%}.po-add-item-search:focus{border-color:var(--color-primary);outline:none}.po-add-item-results{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);left:0;margin-top:var(--space-1);max-height:250px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:20}.po-add-item-option{align-items:center;border-bottom:1px solid var(--color-border);cursor:pointer;display:flex;justify-content:space-between;padding:var(--space-3);transition:background .15s}.po-add-item-option:last-child{border-bottom:none}.po-add-item-option:hover{background:var(--color-surface-hover)}.po-add-item-option .item-info{display:flex;flex-direction:column}.po-add-item-option .item-info .name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600}.po-add-item-option .item-info .meta,.po-add-item-option .stock-info{color:var(--color-text-muted);font-size:var(--text-xs)}.po-add-item-option .stock-info{text-align:right}.po-cards-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.po-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all .25s}.po-card:hover{border-color:var(--color-primary);box-shadow:0 4px 20px #cfa36114}.po-card-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:var(--space-4)}.po-card-header .po-number{color:var(--color-primary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:var(--text-md);font-weight:700}.po-card-body{padding:var(--space-4)}.po-card-meta{grid-gap:var(--space-2);display:grid;gap:var(--space-2);grid-template-columns:1fr 1fr;margin-bottom:var(--space-3)}.po-card-meta-item{display:flex;flex-direction:column}.po-card-meta-item .label{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.5px;text-transform:uppercase}.po-card-meta-item .value{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600}.po-card-items-summary{background:var(--color-bg);border-radius:var(--radius-md);margin-bottom:var(--space-3);padding:var(--space-3)}.po-card-items-summary .item-line{color:var(--color-text-secondary);display:flex;font-size:var(--text-sm);justify-content:space-between;padding:var(--space-1) 0}.po-card-footer{border-top:1px solid var(--color-border);display:flex;gap:var(--space-2);padding:var(--space-4)}.po-card-footer .btn{flex:1 1}.receive-item-row{grid-gap:var(--space-3);align-items:start;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-3);grid-template-columns:2fr 90px 90px 130px;margin-bottom:var(--space-3);padding:var(--space-4)}.receive-item-row .receive-item-info{display:flex;flex-direction:column;gap:2px}.receive-item-row .receive-item-name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600}.receive-item-row .receive-item-meta{color:var(--color-text-muted);font-size:var(--text-xs)}.receive-item-row .receive-field{display:flex;flex-direction:column;gap:2px}.receive-item-row .receive-field label{color:var(--color-text-muted);font-size:10px;letter-spacing:.5px;text-transform:uppercase}.receive-item-row .receive-field input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-primary);font-size:var(--text-sm);padding:var(--space-2);width:100%}.receive-item-row .receive-field input:focus{border-color:var(--color-primary);outline:none}.receive-item-row.raw-meat{border-left:3px solid #ef4444}.receive-item-row.grocery{border-left:3px solid #22c55e}.po-status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:var(--text-xs);font-weight:600;gap:4px;padding:3px 10px}.po-status-badge.pending{background:#f59e0b1f;color:#f59e0b}.po-status-badge.received{background:#22c55e1f;color:#22c55e}.po-status-badge.partially_received{background:#3b82f61f;color:#3b82f6}.po-status-badge.cancelled{background:#ef44441f;color:#ef4444}.po-detail-header{align-items:center;background:var(--color-bg);border-radius:var(--radius-md);display:flex;justify-content:space-between;margin-bottom:var(--space-4);padding:var(--space-4)}.po-detail-info-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(4,1fr);margin-bottom:var(--space-5)}.po-detail-info-item{display:flex;flex-direction:column;gap:2px}.po-detail-info-item .label{color:var(--color-text-muted);font-size:var(--text-xs);text-transform:uppercase}.po-detail-info-item .value{color:var(--color-text-primary);font-weight:600}@media (max-width:768px){.po-form-grid{grid-template-columns:1fr}.po-item-row{gap:var(--space-2);grid-template-columns:1fr 1fr}.po-cards-grid,.receive-item-row{grid-template-columns:1fr}.po-detail-info-grid{grid-template-columns:1fr 1fr}}.prod-item-select-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(260px,1fr));margin-bottom:var(--space-6)}.prod-search-bar{align-items:center;display:flex;margin-bottom:var(--space-4);position:relative}.prod-search-icon{color:var(--color-text-muted);font-size:20px;left:16px;pointer-events:none;position:absolute}.prod-search-input{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);font-size:var(--text-sm);padding:var(--space-3) var(--space-4);padding-left:44px;padding-right:44px;transition:all .2s ease;width:100%}.prod-search-input::placeholder{color:var(--color-text-muted)}.prod-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #d4af3726;outline:none}.prod-search-clear{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:20px;padding:4px;position:absolute;right:12px;transition:color .15s}.prod-search-clear:hover{color:var(--color-text-primary)}.ing-available.insufficient-value{color:#ef4444!important;font-weight:600}.prod-item-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;padding:var(--space-4);position:relative;transition:all .25s ease}.prod-item-card:hover{border-color:var(--color-primary);box-shadow:0 8px 24px #00000026;transform:translateY(-2px)}.prod-item-card.selected{background:#d4af370f;border-color:var(--color-primary);box-shadow:0 0 0 3px #d4af3726}.prod-item-card .item-icon{font-size:28px;margin-bottom:var(--space-2)}.prod-item-card .item-name{color:var(--color-text-primary);font-size:var(--text-md);font-weight:700;margin-bottom:var(--space-1)}.prod-item-card .item-meta{color:var(--color-text-muted);font-size:var(--text-xs)}.prod-item-card .item-stock{color:var(--color-text-secondary);font-size:var(--text-sm);margin-top:var(--space-2)}.prod-item-card .check-badge{align-items:center;background:var(--color-primary);border-radius:50%;color:var(--color-bg);display:flex;font-size:14px;font-weight:700;height:24px;justify-content:center;position:absolute;right:var(--space-3);top:var(--space-3);width:24px}.prod-qty-dropdown{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:var(--space-4) 0}.prod-qty-btn{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-primary);cursor:pointer;font-size:var(--text-md);font-weight:600;min-width:80px;padding:var(--space-3) var(--space-5);text-align:center;transition:all .2s ease}.prod-qty-btn:hover{background:#d4af370f;border-color:var(--color-primary)}.prod-qty-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-bg)}.recipe-preview{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin:var(--space-5) 0;padding:var(--space-5)}.recipe-preview-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-4)}.recipe-preview-header h3{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:700}.recipe-preview-header .scale-badge{background:#d4af371f;border-radius:var(--radius-full);color:var(--color-primary);font-size:var(--text-xs);font-weight:600;padding:4px 12px}.recipe-ingredient-row{grid-gap:var(--space-3);align-items:center;border-bottom:1px solid var(--color-divider);display:grid;font-size:var(--text-sm);gap:var(--space-3);grid-template-columns:auto 1fr 120px 120px 120px;padding:var(--space-3) 0}.recipe-ingredient-row:last-child{border-bottom:none}.recipe-ingredient-row .ing-icon{font-size:18px;text-align:center;width:28px}.recipe-ingredient-row .ing-name,.recipe-ingredient-row .ing-qty{color:var(--color-text-primary);font-weight:600}.recipe-ingredient-row .ing-qty{text-align:right}.recipe-ingredient-row .ing-available{color:var(--color-text-secondary);text-align:right}.recipe-ingredient-row .ing-status{text-align:center}.recipe-ingredient-row .ing-status .sufficient{color:#22c55e;font-weight:600}.recipe-ingredient-row .ing-status .insufficient{color:#ef4444;font-weight:600}.recipe-ingredient-header{grid-gap:var(--space-3);border-bottom:2px solid var(--color-divider);color:var(--color-text-muted);display:grid;font-size:var(--text-xs);font-weight:600;gap:var(--space-3);grid-template-columns:auto 1fr 120px 120px 120px;letter-spacing:.5px;padding:var(--space-2) 0 var(--space-3);text-transform:uppercase}.prod-steps{margin-bottom:var(--space-6)}.prod-step,.prod-steps{display:flex;gap:var(--space-2)}.prod-step{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600;padding:var(--space-2) var(--space-4);transition:all .2s ease}.prod-step.active{background:#d4af371f;border-color:var(--color-primary);color:var(--color-primary)}.prod-step.completed{background:#22c55e14;border-color:#22c55e4d;color:#22c55e}.prod-step-number{align-items:center;background:var(--color-border);border-radius:50%;color:var(--color-text-muted);display:flex;font-size:12px;font-weight:700;height:24px;justify-content:center;width:24px}.prod-step.active .prod-step-number{background:var(--color-primary);color:var(--color-bg)}.prod-step.completed .prod-step-number{background:#22c55e;color:#fff}.prod-cards-grid{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.prod-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:all .2s ease}.prod-card:hover{box-shadow:0 8px 24px #00000026;transform:translateY(-2px)}.prod-card-header{align-items:center;border-bottom:1px solid var(--color-divider);display:flex;justify-content:space-between;padding:var(--space-4)}.prod-card-header h4{color:var(--color-text-primary);font-size:var(--text-md);font-weight:700;margin:0}.prod-card-body{padding:var(--space-4)}.prod-card-meta{grid-gap:var(--space-2);display:grid;font-size:var(--text-sm);gap:var(--space-2);grid-template-columns:1fr 1fr;margin-bottom:var(--space-3)}.prod-card-meta .meta-label{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.3px;text-transform:uppercase}.prod-card-meta .meta-value{color:var(--color-text-primary);font-weight:600}.prod-card-footer{background:#0000001a;border-top:1px solid var(--color-divider);display:flex;gap:var(--space-2);padding:var(--space-3) var(--space-4)}.prod-status-badge{align-items:center;border-radius:var(--radius-full);display:inline-flex;font-size:var(--text-xs);font-weight:600;gap:4px;letter-spacing:.3px;padding:3px 12px}.prod-status-badge.in_progress{background:#f59e0b1f;border:1px solid #f59e0b40;color:#f59e0b}.prod-status-badge.completed{background:#22c55e1f;border:1px solid #22c55e40;color:#22c55e}.prod-status-badge.cancelled{background:#ef44441f;border:1px solid #ef444440;color:#ef4444}.invoice-preview{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin:0 auto;max-width:800px;padding:var(--space-6)}.invoice-header{align-items:flex-start;border-bottom:2px solid var(--color-primary);display:flex;justify-content:space-between;margin-bottom:var(--space-6);padding-bottom:var(--space-4)}.invoice-header .company-name{color:var(--color-primary);font-family:var(--font-heading);font-size:var(--text-2xl);font-weight:800}.invoice-header .invoice-title{text-align:right}.invoice-header .invoice-title h2{color:var(--color-text-primary);font-size:var(--text-lg);font-weight:700;margin:0 0 var(--space-1)}.invoice-header .invoice-title .inv-number{color:var(--color-primary);font-family:monospace;font-family:var(--font-mono,monospace);font-size:var(--text-sm);font-weight:600}.invoice-info-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:1fr 1fr;margin-bottom:var(--space-5)}.invoice-info-item{display:flex;flex-direction:column;gap:2px}.invoice-info-item .label{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.5px;text-transform:uppercase}.invoice-info-item .value{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600}.invoice-totals{align-items:flex-end;border-top:1px solid var(--color-divider);display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-5);padding-top:var(--space-4)}.invoice-totals .total-row{display:flex;font-size:var(--text-sm);justify-content:space-between;width:280px}.invoice-totals .total-row .label{color:var(--color-text-muted)}.invoice-totals .total-row .value{color:var(--color-text-primary);font-weight:600}.invoice-totals .total-row.grand{border-top:2px solid var(--color-primary);font-size:var(--text-lg);font-weight:700;padding-top:var(--space-2)}.invoice-totals .total-row.grand .value{color:var(--color-primary)}.complete-prod-modal-body{display:flex;flex-direction:column;gap:var(--space-4)}.output-adjustment{background:#f59e0b0f;border:1px solid #f59e0b26;border-radius:var(--radius-md);padding:var(--space-4)}.output-adjustment label{color:var(--color-text-primary);display:block;font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-2)}@media (max-width:768px){.prod-cards-grid,.prod-item-select-grid{grid-template-columns:1fr}.prod-steps{flex-wrap:wrap}.recipe-ingredient-header,.recipe-ingredient-row{font-size:var(--text-xs);grid-template-columns:auto 1fr 80px 80px 80px}.invoice-info-grid{grid-template-columns:1fr}}.category-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.category-chip{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;font-size:var(--text-xs);font-weight:500;padding:var(--space-2) var(--space-3);transition:all .2s ease;white-space:nowrap}.category-chip:hover{background:var(--color-surface-hover);border-color:var(--color-primary)}.category-chip.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-bg);font-weight:600}.page-content{background:var(--color-bg);min-height:100vh;padding:var(--space-6)}.page-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:var(--space-6)}.page-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--color-primary),var(--color-primary-light));-webkit-background-clip:text;background-clip:text;font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--space-1)}.page-subtitle{color:var(--color-text-secondary);font-size:var(--text-sm)}.orders-toolbar{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);justify-content:space-between;margin-bottom:var(--space-6);padding:var(--space-4)}.orders-toolbar,.toolbar-left,.toolbar-right{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-4)}.view-toggle-group{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:row;flex-shrink:0;gap:4px;min-width:250px;overflow:hidden;padding:4px}.view-toggle-btn{align-items:center;background:#0000;border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;display:flex;flex:1 0 auto;font-size:var(--text-sm);font-weight:600;gap:var(--space-2);height:36px;justify-content:center;min-width:110px;padding:var(--space-2) var(--space-3);position:relative;transition:all .2s ease;white-space:nowrap}.view-toggle-btn:hover{color:var(--color-text)}.view-toggle-btn.active{background:var(--color-bg);border-radius:var(--radius-md);box-shadow:0 1px 3px #0003;color:var(--color-primary)}.search-box{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;flex:1 1;height:40px;max-width:400px;min-width:250px;padding:0 var(--space-3)}.search-box svg{color:var(--color-text-tertiary);font-size:1.2rem;margin-right:var(--space-2)}.search-box input{background:#0000;border:none;color:var(--color-text);font-size:var(--text-sm);outline:none;width:100%}.filter-group{align-items:center;display:flex;gap:var(--space-3)}.date-select{-webkit-appearance:none;appearance:none;background:var(--color-surface);background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:16px;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;font-size:var(--text-sm);height:40px;min-width:150px;outline:none;padding:0 var(--space-3);padding-right:36px;transition:all .2s ease}.date-select:hover{background-color:var(--color-surface-hover);border-color:var(--color-primary-light)}.date-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px #dc262633}.date-select option{background:var(--color-surface);color:var(--color-text);padding:var(--space-2)}.custom-date-inputs{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;gap:var(--space-2);padding:2px}.custom-date-inputs input[type=date]{background:#0000;border:none;color:var(--color-text);color-scheme:dark;font-size:var(--text-sm);height:34px;outline:none;padding:0 var(--space-2)}.custom-date-inputs span{color:var(--color-text-secondary);font-weight:500}.styled-btn{align-items:center;border-radius:var(--radius-md);display:flex;font-weight:500;gap:var(--space-2);height:40px;padding:0 var(--space-4);transition:all .2s ease}.styled-btn.primary-outline{background:#0000;border:1px solid var(--color-primary);color:var(--color-primary)}.styled-btn.primary-outline:hover{background:#dc26261a}.export-dropdown-container{position:relative}.dropdown-menu{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 8px 16px #0006;display:flex;flex-direction:column;min-width:220px;padding:var(--space-2) 0;position:absolute;right:0;top:calc(100% + 8px);z-index:100}.dropdown-header{border-bottom:1px solid var(--color-border);color:var(--color-text);font-weight:600;margin-bottom:var(--space-2)}.dropdown-header,.dropdown-item{font-size:var(--text-sm);padding:var(--space-2) var(--space-4)}.dropdown-item{align-items:center;background:#0000;border:none;color:var(--color-text-secondary);cursor:pointer;display:flex;gap:var(--space-3);text-align:left;width:100%}.dropdown-item:hover{background:var(--color-surface-hover);color:var(--color-text)}.export-divider{background:var(--color-border);height:1px;margin:var(--space-2) 0}.export-section-label{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.05em;margin-top:var(--space-2);padding:0 var(--space-4) var(--space-1);text-transform:uppercase}.checkbox-label{gap:var(--space-2)}.checkbox-label input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:16px;width:16px}.orders-table-wrapper{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow-x:auto}.data-table{border-collapse:collapse;color:var(--color-text);text-align:left;width:100%}.data-table th{background:var(--color-bg);font-size:var(--text-xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.data-table td,.data-table th{border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);padding:var(--space-4)}.data-table td{font-size:var(--text-sm)}.data-table tbody tr:hover td{background:var(--color-surface-hover)}.pivot-table td.sticky-col,.pivot-table th.sticky-col{background:var(--color-surface);border-right:1px solid var(--color-border);left:0;position:-webkit-sticky;position:sticky;z-index:10}.pivot-table tbody tr:hover td.sticky-col{background:var(--color-surface-hover)}.category-row td{background:#c9a96e1a!important;border-top:2px solid var(--color-border);color:#c9a96e;font-size:var(--text-xs);font-weight:600;letter-spacing:.05em;text-transform:uppercase}.category-row td.sticky-col{background:#c9a96e26!important}.item-name-cell{color:var(--color-text);font-weight:500;max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.unit-cell{color:var(--color-text-tertiary);font-size:var(--text-xs)}.has-qty{background:#ffffff05;color:var(--color-text);font-weight:600}.no-qty{color:var(--color-text-tertiary);opacity:.5}.total-qty-cell{background:#dc26260d;color:var(--color-primary-light);font-weight:600}.grand-total-row td{background:var(--color-bg)!important;border-top:2px solid var(--color-border);color:var(--color-text);font-weight:700;padding-bottom:var(--space-5);padding-top:var(--space-5)}.orders-status-tabs{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;gap:var(--space-2);margin-bottom:var(--space-6);overflow-x:auto;padding:var(--space-2)}.status-tab{align-items:center;background:#0000;border:1px solid #0000;border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-2);padding:var(--space-2) var(--space-4);transition:all .2s;white-space:nowrap}.status-tab:hover{background:var(--color-surface-hover);color:var(--color-text)}.status-tab.active{background:var(--color-primary);color:#fff}@keyframes spin{to{transform:rotate(1turn)}}.spin{animation:spin 1s linear infinite}.empty-state{color:var(--color-text-tertiary);padding:var(--space-12)!important;text-align:center}.pool-grid{grid-gap:var(--space-5);display:grid;gap:var(--space-5);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));padding:var(--space-2) 0}.pool-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);transition:all .2s ease}.pool-card:hover{border-color:var(--color-primary-light);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;transform:translateY(-2px)}.pool-card-header{align-items:flex-start;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding-bottom:var(--space-3)}.pool-card-restaurant{color:var(--color-text);font-size:var(--text-lg);font-weight:700}.pool-card-time{background:#dc26261a;border-radius:var(--radius-full);color:var(--color-primary);font-weight:600;padding:4px 8px}.pool-card-info,.pool-card-time{align-items:center;display:flex;font-size:var(--text-sm)}.pool-card-info{color:var(--color-text-secondary);font-weight:500;justify-content:space-between}.btn-assign{align-items:center;background:var(--color-primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:600;justify-content:center;margin-top:auto;padding:var(--space-3);transition:background .2s ease;width:100%}.btn-assign:hover:not(:disabled){background:var(--color-primary-dark)}.btn-assign:disabled{background:var(--color-border);color:var(--color-text-tertiary);cursor:not-allowed}.admin-order-badge{align-items:center;background:#8b5cf626;border:1px solid #8b5cf64d;border-radius:20px;color:#a78bfa;display:inline-flex;font-size:10px;font-weight:600;gap:3px;margin-left:6px;padding:2px 8px;vertical-align:middle;white-space:nowrap}.place-order-layout{grid-gap:var(--space-6);align-items:start;display:grid;gap:var(--space-6);grid-template-columns:1fr 380px}@media (max-width:1024px){.place-order-layout{grid-template-columns:1fr}}.catalog-section{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}.catalog-header{border-bottom:1px solid var(--color-border);padding:var(--space-5) var(--space-6)}.catalog-header h3{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--text-lg);margin:0 0 var(--space-3) 0}.catalog-search{align-items:center;display:flex;gap:var(--space-3)}.catalog-search input{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);flex:1 1;font-size:var(--text-sm);outline:none;padding:var(--space-2) var(--space-3);transition:border-color var(--transition-base)}.catalog-search input:focus{border-color:var(--color-primary)}.catalog-search input::placeholder{color:var(--color-text-muted)}.catalog-items{max-height:600px;overflow-y:auto;padding:var(--space-4) var(--space-6)}.catalog-item{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;justify-content:space-between;margin-bottom:var(--space-3);padding:var(--space-3) var(--space-4);transition:all var(--transition-base)}.catalog-item:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #0003}.catalog-item.in-cart{background:var(--color-primary-muted);border-color:var(--color-primary)}.catalog-item-info{flex:1 1}.catalog-item-name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600;margin-bottom:2px}.catalog-item-meta{color:var(--color-text-muted);display:flex;font-size:var(--text-xs);gap:var(--space-3)}.catalog-item-price{color:var(--color-primary);font-size:var(--text-sm);font-weight:600;margin-right:var(--space-4);white-space:nowrap}.catalog-item-stock{border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500;padding:2px 8px}.catalog-item-stock.in-stock{background:var(--color-success-bg);color:var(--color-success)}.catalog-item-stock.low-stock{background:var(--color-warning-bg);color:var(--color-warning)}.catalog-item-stock.out-of-stock{background:var(--color-danger-bg);color:var(--color-danger)}.add-qty-control{align-items:center;display:flex;gap:var(--space-2)}.add-qty-control input{background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--text-sm);outline:none;padding:var(--space-1) var(--space-2);text-align:center;width:60px}.add-qty-control input:focus{border-color:var(--color-primary)}.btn-add-item{background:var(--color-primary);border:none;border-radius:var(--radius-md);color:var(--color-text-inverse);cursor:pointer;font-size:var(--text-xs);font-weight:600;padding:var(--space-1) var(--space-3);transition:all var(--transition-base);white-space:nowrap}.btn-add-item:hover{background:var(--color-primary-light);box-shadow:var(--shadow-glow);transform:translateY(-1px)}.btn-add-item:disabled{cursor:not-allowed;opacity:.5;transform:none}.cart-sidebar{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;position:-webkit-sticky;position:sticky;top:var(--space-6)}.cart-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:var(--space-5) var(--space-6)}.cart-header h3{color:var(--color-text-primary);font-family:var(--font-heading);font-size:var(--text-lg);margin:0}.cart-badge{align-items:center;background:var(--color-primary);border-radius:50%;color:var(--color-text-inverse);display:flex;font-size:var(--text-xs);font-weight:700;height:24px;justify-content:center;width:24px}.cart-items{max-height:350px;overflow-y:auto;padding:var(--space-4) var(--space-6)}.cart-empty{color:var(--color-text-muted);font-size:var(--text-sm);padding:var(--space-8) 0;text-align:center}.cart-item{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;justify-content:space-between;padding:var(--space-3) 0}.cart-item:last-child{border-bottom:none}.cart-item-info{flex:1 1;min-width:0}.cart-item-name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cart-item-detail{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:2px}.cart-item-qty{align-items:center;display:flex;gap:var(--space-1);margin:0 var(--space-3)}.cart-item-qty button{align-items:center;background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);cursor:pointer;display:flex;font-size:var(--text-sm);font-weight:600;height:24px;justify-content:center;transition:all var(--transition-fast);width:24px}.cart-item-qty button:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong)}.cart-item-qty span{font-weight:600;text-align:center;width:30px}.cart-item-price,.cart-item-qty span{color:var(--color-text-primary);font-size:var(--text-sm)}.cart-item-price{font-weight:700;min-width:60px;text-align:right}.btn-remove-item{background:none;border:none;color:var(--color-text-muted);cursor:pointer;font-size:var(--text-lg);margin-left:var(--space-2);padding:2px;transition:color var(--transition-fast)}.btn-remove-item:hover{color:var(--color-danger)}.cart-summary{background:var(--color-bg-elevated);border-top:1px solid var(--color-border);padding:var(--space-4) var(--space-6)}.cart-summary-row{color:var(--color-text-secondary);display:flex;font-size:var(--text-sm);justify-content:space-between;padding:var(--space-1) 0}.cart-summary-row.total{border-top:2px solid var(--color-border);color:var(--color-primary);font-size:var(--text-base);font-weight:700;margin-top:var(--space-2);padding-top:var(--space-2)}.cart-notes{margin-top:var(--space-3)}.cart-notes textarea{background:var(--color-bg-dark);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-family:inherit;font-size:var(--text-sm);min-height:60px;outline:none;padding:var(--space-2) var(--space-3);resize:vertical;width:100%}.cart-notes textarea:focus{border-color:var(--color-primary)}.cart-notes textarea::placeholder{color:var(--color-text-muted)}.cart-actions{border-top:1px solid var(--color-border);padding:var(--space-4) var(--space-6)}.btn-place-order{background:linear-gradient(135deg,var(--color-success),#16a34a);border:none;border-radius:var(--radius-lg);color:#fff;cursor:pointer;font-size:var(--text-base);font-weight:700;letter-spacing:.5px;padding:var(--space-3);transition:all var(--transition-base);width:100%}.btn-place-order:hover{box-shadow:0 4px 16px #34d3994d;transform:translateY(-2px)}.btn-place-order:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.order-history-card{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);cursor:pointer;margin-bottom:var(--space-4);padding:var(--space-5) var(--space-6);transition:all var(--transition-base)}.order-history-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md)}.order-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-3)}.order-card-number{color:var(--color-primary);font-family:var(--font-heading);font-size:var(--text-base);font-weight:700}.order-card-date{color:var(--color-text-muted);font-size:var(--text-sm)}.order-card-items{color:var(--color-text-secondary);font-size:var(--text-sm);margin-bottom:var(--space-3)}.order-card-footer{align-items:center;display:flex;justify-content:space-between}.order-card-total{color:var(--color-primary);font-size:var(--text-lg);font-weight:700}.inv-tabs{border-bottom:2px solid var(--color-border);margin-bottom:var(--space-5);padding-bottom:0}.inv-tab,.inv-tabs{display:flex;gap:var(--space-2)}.inv-tab{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--color-text-muted);cursor:pointer;font-size:var(--text-sm);font-weight:600;margin-bottom:-2px;padding:var(--space-3) var(--space-4);transition:all .2s ease}.inv-tab:hover{background:#00000005;color:var(--color-text)}.inv-tab.active{background:#d4af370a;border-bottom-color:var(--color-primary);color:var(--color-primary)}.inv-tab-icon{font-size:1.1rem}.inv-type-badge{align-items:center;border-radius:var(--radius-sm);display:inline-flex;font-size:11px;font-weight:600;gap:4px;letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.inv-type-order{background:#3b82f61a;border:1px solid #3b82f633;color:#2563eb}.inv-type-production{background:#d4af371a;border:1px solid #d4af3733;color:#b8860b}.inv-type-consolidated{background:#8b5cf61a;border:1px solid #8b5cf633;color:#7c3aed}.badge-info{background:#0ea5e91a;color:#0284c7}.badge-success{background:#22c55e1a;color:#16a34a}.badge-muted{background:var(--color-surface-hover);color:var(--color-text-muted)}.badge-danger{background:#ef44441a;color:#dc2626}.badge-warning{background:#f59e0b1a;color:#d97706}.inv-discount-badge{align-items:center;background:#16a34a1a;border:1px solid #16a34a33;border-radius:var(--radius-sm);color:#16a34a;display:inline-flex;font-size:10px;font-weight:600;gap:2px;margin-left:6px;padding:2px 6px;white-space:nowrap}@media print{body{background:#fff;margin:0;padding:0}.modal-overlay{background:#0000!important;position:static!important}.modal-footer,.modal-header,.page-wrapper,.sidebar,.topbar{display:none!important}.modal{box-shadow:none!important;max-width:100%!important;width:100%!important}.invoice-preview{padding:0!important}}.menu-card-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:var(--space-5)}.menu-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;padding:var(--space-4);position:relative;transition:all .2s ease}.menu-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.menu-card.inactive{border-style:dashed;opacity:.55}.menu-card-header{align-items:flex-start;display:flex;gap:var(--space-2);justify-content:space-between;margin-bottom:var(--space-3)}.menu-card-cat{align-items:center;background:var(--color-bg);border-radius:var(--radius-full);color:var(--color-text-muted);display:inline-flex;font-size:var(--text-xs);gap:4px;padding:2px 8px;white-space:nowrap}.menu-card-name{color:var(--color-text-primary);font-size:var(--text-md);font-weight:700;line-height:1.3;margin:0 0 var(--space-1)}.menu-card-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--color-text-muted);display:-webkit-box;flex:1 1;font-size:var(--text-xs);line-height:1.4;margin-bottom:var(--space-3);overflow:hidden}.allergen-row{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:var(--space-3)}.allergen-badge{align-items:center;background:#f59e0b1a;border:1px solid #f59e0b33;border-radius:var(--radius-sm);color:#f59e0b;display:inline-flex;font-size:10px;font-weight:600;gap:2px;letter-spacing:.5px;padding:2px 6px;text-transform:uppercase}.allergen-badge.tag-d{background:#3b82f61a;border-color:#3b82f633;color:#3b82f6}.allergen-badge.tag-g{background:#eab3081a;border-color:#eab30833;color:#b45309}.allergen-badge.tag-e{background:#f973161a;border-color:#f9731633;color:#ea580c}.allergen-badge.tag-n{background:#a855f71a;border-color:#a855f733;color:#9333ea}.allergen-badge.tag-s,.allergen-badge.tag-v{background:#22c55e1a;border-color:#22c55e33;color:#16a34a}.menu-card-portions{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--space-3)}.portion-pill{align-items:center;background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);display:inline-flex;font-size:var(--text-xs);gap:4px;padding:3px 10px}.portion-pill .portion-price{color:var(--color-primary);font-weight:700}.menu-card-footer{align-items:center;border-top:1px solid var(--color-divider);display:flex;justify-content:space-between;margin-top:auto;padding-top:var(--space-3)}.menu-card-actions{display:flex;gap:4px}.menu-active-badge{border-radius:var(--radius-full);font-size:10px;font-weight:600;letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.menu-active-badge.active{background:#22c55e1a;border:1px solid #22c55e33;color:#22c55e}.menu-active-badge.inactive{background:#94a3b81a;border:1px solid #94a3b833;color:#94a3b8}.portion-block{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-4);padding:var(--space-4)}.portion-block-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--space-3)}.portion-block-title{color:var(--color-text-primary);display:flex;font-size:var(--text-sm);font-weight:700}.portion-block-title,.recipe-row{align-items:center;gap:var(--space-2)}.recipe-row{grid-gap:var(--space-2);border-bottom:1px solid var(--color-divider);display:grid;grid-template-columns:1fr 100px 80px 40px;padding:var(--space-2) 0}.recipe-row:last-child{border-bottom:none}.recipe-row .recipe-item-name{color:var(--color-text-primary);font-size:var(--text-sm);font-weight:600}.recipe-row .recipe-item-type{color:var(--color-text-muted);font-size:var(--text-xs)}.allergen-grid{grid-gap:var(--space-2);display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.allergen-check{align-items:center;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;display:flex;font-size:var(--text-sm);gap:var(--space-2);padding:var(--space-2) var(--space-3);transition:all .15s ease}.allergen-check:hover{background:#6366f10a;background:rgba(var(--color-primary-rgb,99,102,241),.04);border-color:var(--color-primary)}.allergen-check.selected{background:#6366f114;background:rgba(var(--color-primary-rgb,99,102,241),.08);border-color:var(--color-primary);font-weight:600}.ingredient-picker{position:relative}.ingredient-picker-dropdown{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);left:0;margin-top:4px;max-height:220px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:50}.ingredient-picker-item{align-items:center;border-bottom:1px solid var(--color-divider);cursor:pointer;display:flex;font-size:var(--text-sm);justify-content:space-between;padding:var(--space-2) var(--space-3);transition:background .1s}.ingredient-picker-item:hover{background:var(--color-bg)}.ingredient-picker-item:last-child{border-bottom:none}.ingredient-picker-item .ing-meta{color:var(--color-text-muted);font-size:var(--text-xs)}.menu-empty{padding:var(--space-12);text-align:center}.menu-empty-icon{font-size:56px;margin-bottom:var(--space-4);opacity:.3}.menu-form-steps{border-bottom:1px solid var(--color-divider);display:flex;gap:var(--space-3);margin-bottom:var(--space-5);padding-bottom:var(--space-3)}.menu-form-step{align-items:center;color:var(--color-text-muted);display:flex;font-size:var(--text-sm);font-weight:500;gap:var(--space-2)}.menu-form-step.active{color:var(--color-primary);font-weight:700}.menu-form-step.completed{color:var(--color-success)}.menu-form-step-num{align-items:center;background:var(--color-bg);border:2px solid var(--color-border);border-radius:50%;display:flex;font-size:11px;font-weight:700;height:24px;justify-content:center;width:24px}.menu-form-step.active .menu-form-step-num{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.menu-form-step.completed .menu-form-step-num{background:var(--color-success);border-color:var(--color-success);color:#fff}.portion-fields-grid{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:2fr 130px 130px;margin-bottom:var(--space-3)}.menu-form-2col{grid-gap:var(--space-4);display:grid;gap:var(--space-4);grid-template-columns:1fr 1fr;margin-bottom:var(--space-4)}@media (max-width:768px){.menu-card-grid{gap:var(--space-3);grid-template-columns:1fr}.menu-card{padding:var(--space-3)}.menu-card-name{font-size:var(--text-sm)}.portion-pill{font-size:11px;padding:2px 8px}.portion-block{padding:var(--space-3)}.portion-block-header{flex-wrap:wrap;gap:var(--space-2)}.menu-form-steps{gap:var(--space-2)}.menu-form-step{font-size:var(--text-xs)}.allergen-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.menu-form-2col,.portion-fields-grid{grid-template-columns:1fr}.ingredient-picker-dropdown{max-height:200px}.recipe-row{gap:var(--space-1);grid-template-columns:1fr 70px 80px 60px 28px}.recipe-row .recipe-item-name{font-size:var(--text-xs)}.menu-empty{padding:var(--space-6)}.menu-empty-icon{font-size:40px}}@media (max-width:480px){.menu-card-footer,.menu-card-grid{gap:var(--space-2)}.menu-card-footer{align-items:stretch;flex-direction:column}.menu-card-actions{justify-content:flex-end}.allergen-badge{font-size:9px;padding:1px 4px}.portion-fields-grid,.recipe-row{grid-template-columns:1fr}.recipe-row{padding:var(--space-2)}.recipe-row>:first-child{grid-column:1/-1}}.waste-page{box-sizing:border-box;width:100%}.waste-header{flex-wrap:wrap;gap:var(--space-2);justify-content:space-between;margin-bottom:var(--space-4)}.waste-header,.waste-header h1{align-items:center;display:flex}.waste-header h1{font-size:var(--text-xl);font-weight:700;gap:10px}.waste-stats{grid-gap:var(--space-3);display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:var(--space-4)}.waste-stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3);text-align:center;transition:transform .2s,box-shadow .2s}.waste-stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.waste-stat-card .stat-label{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.waste-stat-card .stat-value{color:var(--color-text);font-size:var(--text-xl);font-weight:700}.waste-stat-card .stat-count{color:var(--color-text-muted);font-size:var(--text-xs);margin-top:2px}.waste-stat-card.highlight{background:linear-gradient(135deg,#ef4444,#dc2626);border:none;color:#fff}.waste-stat-card.highlight .stat-count,.waste-stat-card.highlight .stat-label{color:#fffc}.waste-stat-card.highlight .stat-value{color:#fff}.waste-filters{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.waste-filters input,.waste-filters select{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--text-sm);min-width:140px;padding:8px 12px}.waste-filters input[type=text]{min-width:200px}.waste-category-badge{font-size:11px;padding:3px 10px}.waste-category-badge,.waste-source-badge{align-items:center;border-radius:999px;display:inline-flex;font-weight:600;gap:4px;letter-spacing:.3px}.waste-source-badge{font-size:10px;padding:2px 8px}.waste-source-badge.auto{background:#8b5cf626;color:#7c3aed}.waste-source-badge.manual{background:#3b82f626;color:#2563eb}.waste-table-wrapper{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow-x:auto}.waste-form-group{margin-bottom:var(--space-3)}.waste-form-group label{color:var(--color-text);display:block;font-size:var(--text-sm);font-weight:600;margin-bottom:6px}.waste-form-group input,.waste-form-group select,.waste-form-group textarea{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--text-sm);padding:10px 12px;width:100%}.waste-form-group textarea{min-height:80px;resize:vertical}.waste-form-group .batch-option{align-items:center;display:flex;justify-content:space-between}.waste-detail-grid{grid-gap:var(--space-2);display:grid;gap:var(--space-2);grid-template-columns:1fr 1fr;margin-bottom:var(--space-3)}.waste-detail-item{padding:8px 0}.waste-detail-item .detail-label{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.5px;margin-bottom:2px;text-transform:uppercase}.waste-detail-item .detail-value{color:var(--color-text);font-size:var(--text-sm);font-weight:500}.audit-trail{border-top:1px solid var(--color-border);margin-top:var(--space-3);padding-top:var(--space-3)}.audit-trail h4{color:var(--color-text-muted);font-size:12px;letter-spacing:.5px;margin:0 0 var(--space-2);text-transform:uppercase}.audit-entry{border-bottom:1px solid var(--color-border);display:flex;font-size:var(--text-xs);gap:var(--space-2);padding:8px 0}.audit-entry:last-child{border-bottom:none}.audit-entry .audit-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:12px;height:24px;justify-content:center;width:24px}.audit-entry .audit-icon.created{background:#22c55e26;color:#16a34a}.audit-entry .audit-icon.edited{background:#f59e0b26;color:#d97706}.audit-entry .audit-icon.deleted{background:#ef444426;color:#dc2626}.audit-entry .audit-content{flex:1 1}.audit-entry .audit-meta,.waste-empty{color:var(--color-text-muted)}.waste-empty{padding:60px 20px;text-align:center}.waste-empty .empty-icon{font-size:48px;margin-bottom:var(--space-2);opacity:.5}.waste-empty p{font-size:var(--text-sm);margin:4px 0}.notifications-page{box-sizing:border-box;width:100%}.notifications-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:space-between;margin-bottom:var(--space-4)}.notifications-header h1{align-items:center;display:flex;font-size:var(--text-xl);font-weight:700;gap:10px;margin:0}.unread-count{background:#ef4444;border-radius:999px;color:#fff;font-size:12px;font-weight:700;min-width:22px;padding:2px 8px;text-align:center}.notif-filter-bar{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;margin-bottom:var(--space-3)}.notif-filter-tabs{display:flex;flex-wrap:wrap;gap:4px}.notif-filter-tab{align-items:center;background:#0000;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;display:flex;font-size:var(--text-sm);gap:5px;padding:6px 14px;transition:all .15s;white-space:nowrap}.notif-filter-tab:hover{background:var(--color-surface-hover);color:var(--color-text)}.notif-filter-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.notif-tab-badge{background:#ef4444;border-radius:999px;color:#fff;font-size:10px;font-weight:700;padding:1px 6px}.notif-filter-tab.active .notif-tab-badge{background:#ffffff40}.notif-search{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;gap:8px;min-width:220px;padding:8px 12px}.notif-search input{background:#0000;border:none;color:var(--color-text);font-size:var(--text-sm);outline:none;width:100%}.notification-card{align-items:flex-start;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;display:flex;gap:var(--space-3);margin-bottom:var(--space-2);overflow:hidden;padding:14px 16px;position:relative;transition:transform .15s,box-shadow .15s}.notification-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.notification-card.unread{background:var(--color-surface-hover);border-left:3px solid var(--color-primary)}.notif-priority-strip{border-radius:0 var(--radius-lg) var(--radius-lg) 0;height:100%;position:absolute;right:0;top:0;width:4px}.notif-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:18px;height:42px;justify-content:center;width:42px}.notif-body{flex:1 1;min-width:0}.notif-title{align-items:center;color:var(--color-text);display:flex;flex-wrap:wrap;font-size:var(--text-sm);font-weight:600;gap:4px;margin-bottom:4px}.notif-badge{border-radius:999px;display:inline-block;font-size:10px;font-weight:600;padding:2px 8px}.notif-message{font-size:13px;line-height:1.5;word-break:break-word}.notif-message,.notif-time{color:var(--color-text-muted)}.notif-time{font-size:11px;margin-top:6px}.notif-unread-dot{background:var(--color-primary);border-radius:50%;flex-shrink:0;height:8px;margin-top:6px;width:8px}.notif-actions{display:flex;flex-direction:column;gap:4px;opacity:0;transition:opacity .15s}.notification-card:hover .notif-actions{opacity:1}.notif-action-btn{align-items:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;display:flex;flex-shrink:0;font-size:14px;height:28px;justify-content:center;transition:all .15s;width:28px}.notif-action-btn:hover{background:var(--color-surface-hover);color:var(--color-text)}.notif-action-btn.danger:hover{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.notifications-empty{color:var(--color-text-muted);padding:80px 20px;text-align:center}.notifications-empty .empty-icon{font-size:48px;margin-bottom:var(--space-2);opacity:.5}.create-notif-container{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-4);padding:24px}.create-notif-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr;margin-bottom:20px}@media (max-width:768px){.create-notif-grid{grid-template-columns:1fr}}.create-notif-col{display:flex;flex-direction:column;gap:14px}.notif-form-group{display:flex;flex-direction:column;gap:6px}.notif-form-group label{color:var(--color-text);font-size:var(--text-sm);font-weight:600}.notif-form-group input,.notif-form-group select,.notif-form-group textarea{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);box-sizing:border-box;color:var(--color-text);color-scheme:dark;font-family:inherit;font-size:var(--text-sm);padding:9px 12px;width:100%}.notif-form-group textarea{min-height:90px;resize:vertical}.notif-form-group input:focus,.notif-form-group select:focus,.notif-form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-muted);outline:none}.notif-user-list{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:180px;overflow-y:auto}.notif-user-option{align-items:center;border-bottom:1px solid var(--color-border-light);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:8px 12px;transition:background .1s}.notif-user-option input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;flex-shrink:0;height:16px;margin:0;max-width:16px;min-width:16px;width:16px}.notif-user-option:last-child{border-bottom:none}.notif-user-option:hover{background:var(--color-surface-hover)}.notif-user-role{color:var(--color-text-muted);font-size:10px;margin-left:auto;text-transform:capitalize}.notif-preview{border:1px dashed var(--color-border);border-radius:var(--radius-md);padding:12px}.notif-preview-label{color:var(--color-text-muted);font-size:10px;font-weight:600;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.notif-preview-card{align-items:flex-start;display:flex;gap:10px}.notif-preview-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:16px;height:36px;justify-content:center;width:36px}.create-notif-footer{align-items:center;border-top:1px solid var(--color-border);display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;padding-top:16px}#root{min-height:100vh}
/*# sourceMappingURL=main.57e921ce.css.map*/