:root{--color-primary-navy: #2B4A6F;--color-primary-blue: #3E6891;--color-accent-metallic: #A8BACF;--color-ice-blue: #DDE7F1;--color-ice-bg: #EDF3F9;--color-text-heading: #1A2533;--color-text-body: #4B5E71;--color-text-muted: #8295A8;--color-text-light: #FFFFFF;--color-bg-page: #F4F7FB;--color-bg-card: #FFFFFF;--color-bg-subtle: #F8FAFD;--color-border: #DCE4ED;--color-border-subtle: #E8EEF5;--color-success: #16A34A;--color-success-bg: #DCFCE7;--color-warning: #D97706;--color-warning-bg: #FEF3C7;--color-danger: #DC3545;--color-danger-bg: #FEE2E2;--color-info: #2563EB;--color-info-bg: #DBEAFE;--shadow-sm: 0 1px 2px 0 rgba(27, 43, 65, .04);--shadow-md: 0 4px 6px -1px rgba(27, 43, 65, .07), 0 2px 4px -1px rgba(27, 43, 65, .04);--shadow-lg: 0 10px 15px -3px rgba(27, 43, 65, .08), 0 4px 6px -2px rgba(27, 43, 65, .04);--shadow-xl: 0 20px 25px -5px rgba(27, 43, 65, .1), 0 10px 10px -5px rgba(27, 43, 65, .04);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-full: 9999px;--sidebar-width: 250px;--sidebar-collapsed-width: 72px;--header-height: 64px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;overflow-x:hidden;-webkit-text-size-adjust:100%}body{font-family:var(--font-family);background-color:var(--color-bg-page);color:var(--color-text-body);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{color:var(--color-text-heading);font-weight:700;line-height:1.25}a{color:var(--color-primary-blue);text-decoration:none;transition:color .15s ease}a:hover{color:var(--color-primary-navy)}button,input,select,textarea{font-family:inherit;font-size:inherit;touch-action:manipulation}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--color-bg-page)}::-webkit-scrollbar-thumb{background:var(--color-accent-metallic);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--color-primary-blue)}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.flex-1{flex:1}.flex-wrap{flex-wrap:wrap}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-lg{font-size:1.125rem}.text-xl{font-size:1.25rem}.text-2xl{font-size:1.5rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-muted{color:var(--color-text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){:root{--header-height: 58px}}@media(max-width:768px){:root{--header-height: 56px}h1{font-size:1.35rem!important}h2{font-size:1.15rem!important}h3{font-size:1.05rem!important}.d-none-mobile{display:none!important}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(1,minmax(0,1fr))}.table-container{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}}@media(min-width:769px){.d-none-desktop{display:none!important}}@media(max-width:480px){.card{padding:14px 12px!important}.btn{padding:8px 12px}.btn-sm{padding:5px 8px;font-size:.725rem}}@media print{body *{visibility:hidden}#thermal-receipt,#thermal-receipt *{visibility:visible}#thermal-receipt{position:absolute;left:0;top:0;width:80mm;margin:0;padding:10px;background:#fff;color:#000;font-family:Courier New,Courier,monospace;font-size:12px}.no-print{display:none!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;font-size:.875rem;font-weight:600;border-radius:var(--radius-md);border:1px solid transparent;cursor:pointer;transition:all .15s ease;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--color-primary-blue);color:#fff;border-color:var(--color-primary-blue)}.btn-primary:hover:not(:disabled){background-color:var(--color-primary-navy);border-color:var(--color-primary-navy)}.btn-secondary{background-color:var(--color-ice-blue);color:var(--color-primary-navy);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background-color:var(--color-accent-metallic);color:var(--color-text-heading)}.btn-outline{background-color:transparent;color:var(--color-text-body);border-color:var(--color-border)}.btn-outline:hover:not(:disabled){background-color:var(--color-ice-bg);color:var(--color-text-heading);border-color:var(--color-primary-blue)}.btn-danger{background-color:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background-color:#b91c1c}.btn-success{background-color:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background-color:#15803d}.btn-sm{padding:5px 10px;font-size:.775rem;border-radius:var(--radius-sm)}.btn-lg{padding:12px 24px;font-size:1rem}.card{background-color:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:20px;transition:box-shadow .2s ease,border-color .2s ease}.card:hover{box-shadow:var(--shadow-md)}.badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:.75rem;font-weight:600;border-radius:var(--radius-full)}.badge-paid,.badge-success{background-color:var(--color-success-bg);color:var(--color-success)}.badge-pending,.badge-warning{background-color:var(--color-warning-bg);color:var(--color-warning)}.badge-overdue,.badge-danger{background-color:var(--color-danger-bg);color:var(--color-danger)}.badge-navy{background-color:var(--color-primary-navy);color:#fff}.badge-blue{background-color:var(--color-ice-blue);color:var(--color-primary-blue)}.input,.select,.textarea{width:100%;padding:9px 13px;font-size:.875rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:#fff;color:var(--color-text-heading);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.input:focus,.select:focus,.textarea:focus{border-color:var(--color-primary-blue);box-shadow:0 0 0 3px #3e689126}.input-sm{padding:6px 10px;font-size:.8rem}.form-group{margin-bottom:16px}.form-label{display:block;font-size:.825rem;font-weight:600;color:var(--color-text-heading);margin-bottom:6px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#1a253373;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.modal-content{background-color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--color-border);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;animation:modalIn .2s ease-out}@keyframes modalIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.modal-header{padding:18px 20px;border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between}.modal-body{padding:20px}.modal-footer{padding:16px 20px;border-top:1px solid var(--color-border);display:flex;align-items:center;justify-content:flex-end;gap:10px;background-color:var(--color-bg-subtle);border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg)}@media(max-width:640px){.modal-overlay{padding:0;align-items:flex-end}.modal-content{max-height:92vh;border-radius:20px 20px 0 0;width:100%;max-width:100%}.modal-header{padding:14px 16px}.modal-body{padding:16px}.modal-footer{padding:12px 16px}}.table-container{width:100%;overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:#fff}.table{width:100%;border-collapse:collapse;text-align:left;font-size:.875rem}.table th{background-color:var(--color-ice-bg);color:var(--color-text-heading);font-weight:600;padding:12px 16px;border-bottom:1px solid var(--color-border);white-space:nowrap}.table td{padding:12px 16px;border-bottom:1px solid var(--color-border-subtle);color:var(--color-text-body)}.table tr:last-child td{border-bottom:none}.table tr:hover td{background-color:var(--color-bg-subtle)}@media print{body *{visibility:hidden}.no-print,header,aside,nav,.sidebar{display:none!important}#kot-print-area,#kot-print-area *,#receipt-print-area,#receipt-print-area *{visibility:visible}#kot-print-area,#receipt-print-area{position:absolute;left:0;top:0;width:80mm!important;max-width:80mm!important;margin:0!important;padding:2mm!important;background-color:#fff!important;color:#000!important;box-shadow:none!important}}.app-sidebar{width:var(--sidebar-width);background-color:#fff;border-right:1px solid var(--color-border);height:100vh;position:fixed;left:0;top:0;display:flex;flex-direction:column;z-index:100;transition:width .2s cubic-bezier(.4,0,.2,1),transform .25s cubic-bezier(.4,0,.2,1)}.app-sidebar.collapsed{width:var(--sidebar-collapsed-width)}.app-header{height:var(--header-height);background-color:#fff;border-bottom:1px solid var(--color-border);position:fixed;top:0;right:0;left:var(--sidebar-width);display:flex;align-items:center;justify-content:space-between;padding:0 24px;z-index:90;transition:left .2s cubic-bezier(.4,0,.2,1)}.app-header.sidebar-collapsed{left:var(--sidebar-collapsed-width)}.app-main{margin-left:var(--sidebar-width);padding-top:calc(var(--header-height) + 16px);padding-left:24px;padding-right:24px;padding-bottom:40px;transition:margin-left .2s cubic-bezier(.4,0,.2,1);min-height:100vh;max-width:100%;box-sizing:border-box}.app-main.sidebar-collapsed{margin-left:var(--sidebar-collapsed-width)}.pos-layout{display:grid;grid-template-columns:1fr 380px;gap:20px;height:calc(100vh - var(--header-height) - 48px)}.pos-menu-section{display:flex;flex-direction:column;overflow:hidden;min-width:0}.pos-cart-section{display:flex;flex-direction:column;padding:16px;height:100%;background-color:#fff}.pos-mobile-nav,.pos-mobile-floating-bar{display:none}.pos-items-grid{flex:1;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:14px;align-content:start;padding-right:6px}.mobile-menu-btn{display:none!important}.desktop-collapse-btn{display:inline-flex!important}@media(max-width:1024px){.app-sidebar{width:min(84vw,290px)!important;transform:translate(-100%)!important;z-index:1000!important}.app-sidebar.mobile-open{transform:translate(0)!important;box-shadow:4px 0 25px #00000040!important}.app-header{left:0!important;padding:0 12px!important}.app-main{margin-left:0!important;padding-left:12px!important;padding-right:12px!important;padding-bottom:24px!important}.mobile-menu-btn{display:inline-flex!important}.desktop-collapse-btn,.header-clock,.header-live-badge{display:none!important}.pos-layout{display:block!important;height:auto!important;padding-bottom:70px}.pos-mobile-nav{display:flex!important}.pos-layout.tab-menu .pos-menu-section{display:flex!important;overflow:visible!important}.pos-layout.tab-menu .pos-cart-section,.pos-layout.tab-cart .pos-menu-section{display:none!important}.pos-layout.tab-cart .pos-cart-section{display:flex!important;height:auto!important}.pos-items-grid{grid-template-columns:repeat(auto-fill,minmax(135px,1fr))!important;gap:10px!important;overflow:visible!important}.pos-mobile-floating-bar{display:flex!important}}
