@import"https://fonts.googleapis.com/css2?family=Manrope:wght@500;600;700;800&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap";:root{--bg: #f8f1e7;--bg-soft: #fffaf2;--bg-glow-1: rgba(255, 145, 77, .2);--bg-glow-2: rgba(103, 45, 16, .12);--surface-glass: rgba(255, 255, 255, .62);--surface-glass-strong: rgba(255, 255, 255, .8);--surface-cream: rgba(255, 248, 238, .9);--surface-emboss: #f4eadc;--glass-blur: blur(20px) saturate(1.35);--glass-blur-sm: blur(12px) saturate(1.25);--glass-edge: rgba(255, 255, 255, .65);--primary: #c75a14;--primary-dark: #873100;--primary-soft: #ffe0c9;--accent: #f59e0b;--accent-soft: #fff0c7;--espresso: #2a160e;--text: #211815;--muted: #7a6558;--border: rgba(96, 56, 31, .14);--hairline: rgba(96, 56, 31, .12);--danger: #d92d20;--success: #2f855a;--warning: #b7791f;--info: #5b6bb5;--brand: var(--primary);--brand-dark: var(--primary-dark);--sidebar: var(--surface-glass);--sidebar-hover: rgba(255, 255, 255, .55);--card: var(--surface-glass-strong);--surface: var(--bg);--surface-container-lowest: rgba(255, 255, 255, .92);--surface-container-low: var(--surface-emboss);--surface-container: #efe3d4;--surface-container-high: #eadcc9;--surface-container-highest: #e6d6c1;--surface-variant: var(--surface-emboss);--surface-bright: #fffdf8;--on-surface: var(--text);--on-surface-variant: var(--muted);--outline: #8c7164;--outline-variant: rgba(96, 56, 31, .18);--ghost-border: var(--border);--secondary: #9b4427;--secondary-fixed: #ffe0d4;--on-secondary-fixed: #3a0b00;--on-secondary-fixed-variant: #7c2d12;--tertiary: #b7791f;--tertiary-container: #ffe1b3;--tertiary-fixed: #ffeccb;--error: var(--danger);--error-container: #ffdad6;--success-container: #def7e6;--green: var(--success);--yellow: var(--accent);--blue: var(--primary);--purple: #6a5acd;--red: var(--danger);--orange: var(--accent);--radius-pill: 999px;--radius-xs: 12px;--radius-sm: 16px;--radius: 24px;--radius-lg: 28px;--radius-xl: 32px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--ease-out: cubic-bezier(.22, .68, .32, 1);--ease-emph: cubic-bezier(.2, .7, .3, 1);--dur-1: .15s;--dur-2: .2s;--dur-3: .28s;--inset-hi: inset 0 1px 0 rgba(255, 255, 255, .7);--inset-hi-strong: inset 0 1px 0 rgba(255, 255, 255, .9);--shadow-xs: 0 1px 2px rgba(80, 46, 20, .06);--shadow: 0 2px 4px rgba(80, 46, 20, .05), 0 10px 24px rgba(80, 46, 20, .09), 0 24px 50px rgba(80, 46, 20, .08);--shadow-lg: 0 4px 8px rgba(80, 46, 20, .07), 0 18px 40px rgba(80, 46, 20, .12), 0 36px 70px rgba(80, 46, 20, .12);--shadow-float: 0 8px 20px rgba(80, 46, 20, .12), 0 30px 70px rgba(80, 46, 20, .18);--btn-3d: inset 0 1px 0 rgba(255, 255, 255, .45), inset 0 -2px 1px rgba(120, 40, 0, .4), 0 6px 14px rgba(199, 90, 20, .32), 0 2px 4px rgba(80, 46, 20, .18);--btn-3d-hover: inset 0 1px 0 rgba(255, 255, 255, .5), inset 0 -2px 1px rgba(120, 40, 0, .4), 0 12px 24px rgba(199, 90, 20, .4), 0 4px 8px rgba(80, 46, 20, .2);--ring-focus: 0 0 0 4px rgba(199, 90, 20, .18);--glow-primary: var(--btn-3d)}*{box-sizing:border-box;margin:0;padding:0}::selection{background:#f59e0b42;color:var(--espresso)}body{font-family:Plus Jakarta Sans,Segoe UI,system-ui,-apple-system,sans-serif;color:var(--text);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;background-color:var(--bg);background-image:radial-gradient(1100px 720px at 8% -6%,var(--bg-glow-1),transparent 46%),radial-gradient(1000px 760px at 104% 110%,var(--bg-glow-2),transparent 50%),radial-gradient(900px 600px at 100% 0%,rgba(255,221,184,.3),transparent 52%);background-attachment:fixed}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.035'/%3E%3C/svg%3E");mix-blend-mode:multiply}h1,h2,h3,h4,h5,.topbar h1,.stat-card .value,.login-card h1{font-family:Manrope,Plus Jakarta Sans,system-ui,sans-serif;letter-spacing:-.02em;color:var(--espresso);text-wrap:balance}h1,.topbar h1,.login-card h1{letter-spacing:-.03em}.stat-card .value,.pagination-info,td.text-right,.bill td{font-variant-numeric:tabular-nums lining-nums}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}*{scrollbar-width:thin;scrollbar-color:rgba(199,90,20,.3) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-thumb{background:#c75a1442;border-radius:999px;border:2px solid transparent;background-clip:padding-box}*::-webkit-scrollbar-thumb:hover{background:#c75a146b;background-clip:padding-box}select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%237a6558' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:14px;padding-right:40px}select::-ms-expand{display:none}.app-shell{display:flex;min-height:100vh}.sidebar{width:250px;background:linear-gradient(180deg,#ffffffad,#fffaf280);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);color:var(--text);display:flex;flex-direction:column;position:fixed;top:0;bottom:0;left:0;z-index:50;transition:transform .25s var(--ease-out);border-right:1px solid var(--glass-edge);box-shadow:inset -1px 0 #fff6,10px 0 50px #502e1412}.sidebar-brand{display:flex;align-items:center;gap:11px;padding:24px 22px 18px;font-size:21px;font-weight:800;color:var(--primary);font-family:Manrope,sans-serif;letter-spacing:-.03em;line-height:1.1}.sidebar-brand img{width:190px;height:67px}.sidebar-nav{flex:1;overflow-y:auto;padding:8px 0 16px}.nav-section{padding:14px 24px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-weight:700}.nav-link{position:relative;display:flex;align-items:center;gap:14px;margin:3px 12px;padding:12px 16px;color:var(--muted);font-size:15px;border-radius:var(--radius-sm);font-weight:600;font-family:Manrope,sans-serif;letter-spacing:-.01em;border:1px solid transparent;transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),transform var(--dur-1) var(--ease-out),border-color var(--dur-2) var(--ease-out)}.nav-link:hover{background:#fff9;color:var(--espresso);transform:translateY(-1px);border-color:var(--glass-edge);box-shadow:var(--shadow-xs),var(--inset-hi)}.nav-link:active{transform:translateY(0) scale(.99)}.nav-link.active{background:linear-gradient(180deg,#e07a2e 0%,var(--primary) 100%);color:#fff;font-weight:800;border-color:#ffffff40;box-shadow:inset 0 1px #ffffff73,0 8px 18px #c75a145c,0 2px 4px #502e1429}.nav-link.active:hover{transform:translateY(-1px)}.nav-link .icon{width:22px;text-align:center;font-size:18px;transition:transform var(--dur-2) var(--ease-out)}.nav-link.active .icon{transform:scale(1.08)}.main{flex:1;margin-left:250px;display:flex;flex-direction:column;min-width:0}.topbar{height:66px;background:#fffaf2b3;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-edge);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:40;box-shadow:0 1px #ffffff80,0 6px 24px #502e140a}.topbar h1{font-size:19px;font-weight:800}.topbar-user{position:relative}.user-trigger{display:flex;align-items:center;gap:12px;background:#ffffff80;border:1px solid var(--glass-edge);cursor:pointer;padding:5px 8px 5px 14px;border-radius:var(--radius-pill);box-shadow:var(--shadow-xs),var(--inset-hi);transition:background var(--dur-2) var(--ease-out),transform var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.user-trigger:hover{background:#ffffffc7;transform:translateY(-1px);box-shadow:var(--shadow),var(--inset-hi)}.avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(140deg,var(--accent) 0%,var(--primary) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;overflow:hidden;flex-shrink:0;box-shadow:0 5px 14px #c75a144d,inset 0 1px 1px #ffffff80}.avatar img{width:100%;height:100%;object-fit:cover}.topbar-user .meta{line-height:1.25}.topbar-user .meta .role{font-size:12px;color:var(--muted);text-transform:capitalize}.user-menu{position:absolute;top:calc(100% + 10px);right:0;background:var(--surface-glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);border-radius:var(--radius);box-shadow:var(--shadow-lg),var(--inset-hi);min-width:184px;padding:8px;z-index:50}.user-menu-item{display:flex;align-items:center;gap:10px;width:100%;background:none;border:none;cursor:pointer;text-align:left;padding:10px 12px;border-radius:var(--radius-xs);font-size:14px;color:var(--text);transition:background var(--dur-1) var(--ease-out)}.user-menu-item:hover{background:#c75a141a}.content{padding:30px;flex:1}.hamburger{display:none;background:none;border:none;font-size:22px;color:var(--text)}.cards-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(224px,1fr));margin-bottom:28px}.stat-card{position:relative;overflow:hidden;background:linear-gradient(150deg,#ffffffd9,#fff8eeb3);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-edge);border-radius:var(--radius-lg);padding:22px;display:flex;align-items:center;gap:16px;box-shadow:var(--shadow),var(--inset-hi);transition:transform var(--dur-3) var(--ease-out),box-shadow var(--dur-3) var(--ease-out)}.stat-card:before{content:"";position:absolute;top:0;left:0;right:40%;height:60%;background:linear-gradient(160deg,rgba(255,255,255,.5),transparent 70%);pointer-events:none}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg),var(--inset-hi)}.stat-card .stat-icon{position:relative;overflow:hidden;width:52px;height:52px;border-radius:16px;font-size:23px;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:inset 0 1px 1px #ffffffb3,0 6px 16px #f59e0b47}.stat-card .stat-icon:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(155deg,rgba(255,255,255,.5) 0%,transparent 55%);pointer-events:none}.stat-card .label{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px}.stat-card .value{font-size:31px;font-weight:800;line-height:1.03;letter-spacing:-.03em;color:var(--espresso)}.panel{position:relative;background:var(--surface-glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);border-radius:var(--radius-xl);box-shadow:var(--shadow),var(--inset-hi);padding:26px;margin-bottom:26px}.panel.mb-0{margin-bottom:0}.panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;flex-wrap:wrap;gap:12px}.panel-header h2{font-size:17px;font-weight:800}.panel-grid{display:grid;gap:22px;grid-template-columns:2fr 1fr}@media (max-width: 900px){.panel-grid{grid-template-columns:1fr}}.table-wrap{overflow-x:auto;border-radius:var(--radius)}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:16px;white-space:nowrap}thead th{font-size:11px;text-transform:uppercase;color:var(--muted);letter-spacing:.08em;font-weight:700;background:#f4eadc99;padding-top:15px;padding-bottom:15px}thead th:first-child{border-top-left-radius:var(--radius-xs);border-bottom-left-radius:var(--radius-xs)}thead th:last-child{border-top-right-radius:var(--radius-xs);border-bottom-right-radius:var(--radius-xs)}tbody td{border-bottom:1px solid var(--hairline)}tbody tr{transition:background var(--dur-2) var(--ease-out)}tbody tr:hover{background:#ffffff8c}tbody tr:last-child td{border-bottom:none}.empty{text-align:center;color:var(--muted);padding:36px}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 12px 5px 10px;border-radius:var(--radius-pill);font-size:12px;font-weight:700;letter-spacing:.01em;line-height:1.4;box-shadow:var(--inset-hi-strong),0 1px 2px #502e140f}.badge:before{content:"";flex-shrink:0;width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px color-mix(in srgb,currentColor 16%,transparent)}.badge-green{background:#def0e3;color:#1f6e45}.badge-yellow{background:var(--accent-soft);color:#9a6a00}.badge-blue{background:#ffe6d2;color:#b04c0e}.badge-purple{background:#e7e6fb;color:#534bb0}.badge-red{background:#ffe0dc;color:#c12717}.badge-orange{background:var(--primary-soft);color:#a14409}.badge-gray{background:var(--surface-emboss);color:#6b5a4d}.btn{display:inline-flex;align-items:center;gap:7px;padding:11px 22px;border-radius:var(--radius-pill);border:1px solid transparent;font-size:14px;font-weight:700;color:var(--text);background:linear-gradient(180deg,#fffffff2,#fff8eed9);box-shadow:var(--shadow-xs),var(--inset-hi);transition:transform var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out),filter var(--dur-2) var(--ease-out)}.btn:active{transform:translateY(1px) scale(.985)}.btn-primary{background:linear-gradient(180deg,#e58236 0%,var(--primary) 52%,#a84a0d 100%);color:#fff;border-color:#ffffff38;box-shadow:var(--btn-3d)}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--btn-3d-hover);filter:brightness(1.04) saturate(1.03)}.btn-primary:active{transform:translateY(1px) scale(.99);box-shadow:inset 0 2px 4px #78280066,0 3px 8px #c75a1447}.btn-outline{background:var(--surface-cream);border-color:var(--glass-edge);color:var(--espresso);box-shadow:var(--shadow-xs),var(--inset-hi)}.btn-outline:hover{background:#fff;transform:translateY(-2px);box-shadow:var(--shadow),var(--inset-hi)}.btn-danger{background:linear-gradient(180deg,#ee5a4e 0%,var(--danger) 55%,#b21d12 100%);color:#fff;border-color:#fff3;box-shadow:inset 0 1px #ffffff59,inset 0 -2px 1px #780a0066,0 6px 14px #d92d204d,0 2px 4px #502e1429}.btn-danger:hover{transform:translateY(-2px);filter:brightness(1.04)}.btn-danger:active{transform:translateY(1px) scale(.99)}.btn-sm{padding:8px 10px;font-size:13px;margin-bottom:12px}.btn-icon{padding:8px 10px}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none;filter:saturate(.6)}.form-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr}.form-grid.one{grid-template-columns:1fr}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1 / -1}.field label{font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.field input,.field select,.field textarea{padding:13px 15px;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:14px;font-family:inherit;background-color:var(--surface-cream);color:var(--text);box-shadow:inset 0 2px 4px #502e140f;transition:border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),background-color var(--dur-2) var(--ease-out)}.field select{padding-right:40px}.field input::placeholder,.field textarea::placeholder{color:#ab9a8c}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--primary);background-color:#fff;box-shadow:var(--ring-focus),inset 0 1px 2px #502e140d}.form-items{overflow:visible}.form-items td{vertical-align:middle;border-bottom:none}.form-items select,.form-items input:not([type=checkbox]){width:100%;padding:11px 13px;border:1px solid var(--border);border-radius:var(--radius-xs);font-size:14px;font-family:inherit;background-color:var(--surface-cream);box-sizing:border-box;box-shadow:inset 0 2px 4px #502e140d;transition:border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),background-color var(--dur-2) var(--ease-out)}.form-items select{padding-right:38px}.form-items select:focus,.form-items input:not([type=checkbox]):focus{outline:none;border-color:var(--primary);background-color:#fff;box-shadow:var(--ring-focus)}.form-items select{min-width:150px;cursor:pointer}.form-items .qty-input{width:72px;text-align:center}.form-items .unit-select{min-width:96px}.form-items .instr-input{min-width:180px}.form-items input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:var(--primary)}.expiry-tag{display:inline-flex;align-items:center;gap:6px;color:var(--danger);font-weight:700}.cell-customize{vertical-align:top}.recipe-box{position:relative;min-width:230px;max-width:260px;overflow:visible;white-space:normal}.order-items table{table-layout:fixed;width:100%}.order-items thead th:nth-child(1){width:24%}.order-items thead th:nth-child(2){width:68px}.order-items thead th:nth-child(3){width:76px}.order-items thead th:nth-child(4){width:30%}.order-items thead th:nth-child(5){width:86px}.order-items thead th:nth-child(6){width:52px}.order-items td{vertical-align:top}.order-items .recipe-box{min-width:0;max-width:100%;width:100%}.order-items .cell-remove{vertical-align:middle;text-align:center}.recipe-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:11px 13px;border:1px solid var(--border);border-radius:var(--radius-xs);background-color:var(--surface-cream);font-size:13px;color:var(--text);text-align:left;box-shadow:inset 0 2px 4px #502e140d;transition:border-color var(--dur-2) var(--ease-out),background-color var(--dur-2) var(--ease-out)}.recipe-toggle:hover{border-color:var(--primary);background-color:#fff}.recipe-summary{flex:1;overflow:hidden;text-overflow:ellipsis}.recipe-add{color:var(--primary);white-space:nowrap;font-weight:700}.recipe-toggle .caret{color:var(--muted);font-size:11px;flex-shrink:0}.recipe-cost{color:var(--muted);font-size:12px}.recipe-edit{position:static;width:100%;margin-top:8px;display:flex;flex-direction:column;gap:6px;white-space:normal;max-height:170px;overflow-y:auto;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-cream);box-shadow:inset 0 1px #ffffffb3,0 10px 24px #40200c14}.recipe-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.recipe-name{font-size:13px;color:var(--text)}.stepper{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:var(--radius-xs);overflow:hidden;flex-shrink:0;box-shadow:var(--inset-hi)}.stepper button{width:30px;height:30px;border:none;background:var(--surface-emboss);padding:0;font-size:17px;line-height:1;color:var(--text);display:flex;align-items:center;justify-content:center;transition:background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.stepper button:hover:not(:disabled){background:var(--primary);color:#fff}.stepper button:disabled{opacity:.4;cursor:not-allowed}.stepper-val{min-width:40px;text-align:center;font-size:13px;font-weight:700;padding:0 4px}.stepper-val.muted{color:var(--muted);font-weight:500}.bill-note{font-size:11px;color:var(--muted);margin-top:2px}.status-select{padding:9px 34px 9px 14px;border:1px solid transparent;border-radius:var(--radius-pill);font-size:13px;font-weight:700;font-family:inherit;cursor:pointer;background-color:var(--surface-emboss);box-shadow:var(--inset-hi-strong);transition:box-shadow var(--dur-2) var(--ease-out)}.status-select:focus{outline:none;box-shadow:var(--ring-focus)}.status-select--paid{background-color:#def0e3;color:#1f6e45}.status-select--pending{background-color:var(--primary-soft);color:#a14409}.status-select--failed{background-color:#ffe0dc;color:#c12717}.toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:20px}.toolbar input,.toolbar select{padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-pill);font-size:14px;background-color:var(--surface-glass-strong);font-family:inherit;color:var(--text);box-shadow:inset 0 1px 3px #502e140d,var(--inset-hi);transition:border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),background-color var(--dur-2) var(--ease-out)}.toolbar select{padding-right:40px}.toolbar input:focus,.toolbar select:focus{outline:none;border-color:var(--primary);background-color:#fff;box-shadow:var(--ring-focus)}.toolbar .grow{flex:1;min-width:200px}.toolbar-actions{display:flex;gap:10px}.filter-tabs{display:flex;gap:8px;flex-wrap:wrap}.filter-tabs button{padding:9px 18px;border:1px solid var(--glass-edge);background:var(--surface-cream);border-radius:var(--radius-pill);font-size:13px;font-weight:700;color:var(--muted);box-shadow:var(--inset-hi);transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),transform var(--dur-1) var(--ease-out)}.filter-tabs button:hover{transform:translateY(-1px);background:#fff;box-shadow:var(--shadow-xs),var(--inset-hi)}.filter-tabs button.active{background:linear-gradient(180deg,#e58236,var(--primary));color:#fff;border-color:#ffffff38;box-shadow:var(--btn-3d)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#2a160e57;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);display:flex;align-items:flex-start;justify-content:center;padding:44px 16px;z-index:100;overflow-y:auto;animation:overlayIn .2s var(--ease-out)}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface-glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-xl);width:100%;max-width:600px;box-shadow:var(--shadow-float),var(--inset-hi);border:1px solid var(--glass-edge);animation:modalIn .24s var(--ease-emph)}@keyframes modalIn{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal.lg{max-width:1080px}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:22px 26px;border-bottom:1px solid var(--hairline)}.modal-head h3{font-size:18px;font-weight:800}.modal-head .close{background:none;border:none;font-size:24px;color:var(--muted);border-radius:8px;line-height:1;transition:color var(--dur-1) var(--ease-out)}.modal-head .close:hover{color:var(--primary)}.modal-body{padding:26px}.modal-foot{padding:20px 26px;border-top:1px solid var(--hairline);display:flex;justify-content:flex-end;gap:10px}.form-items{overflow-x:auto}.form-items table{width:100%;min-width:850px;table-layout:fixed}.form-items th:first-child,.form-items td:first-child{width:32%}.form-items th:last-child,.form-items td:last-child{width:58px;text-align:center}.remove-icon-btn{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;font-size:22px;font-weight:800;line-height:1}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#2a160e2e;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);display:flex;justify-content:flex-end;align-items:flex-start;padding:72px 16px 16px;z-index:110}.drawer{width:346px;max-width:92vw;max-height:calc(100vh - 88px);background:var(--surface-glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);border-radius:var(--radius-lg);box-shadow:var(--shadow-float),var(--inset-hi);display:flex;flex-direction:column;overflow-y:auto;transform-origin:top right;animation:popIn .18s var(--ease-out)}@keyframes popIn{0%{opacity:0;transform:scale(.96) translateY(-6px)}to{opacity:1;transform:scale(1) translateY(0)}}.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border-bottom:1px solid var(--hairline)}.drawer-head h3{font-size:15px;font-weight:800}.drawer-head .close{background:none;border:none;font-size:24px;line-height:1;color:var(--muted)}.drawer-body{padding:20px}.profile-card{width:394px;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 100% 0%,rgba(255,145,77,.16),transparent 55%),radial-gradient(120% 90% at 0% 100%,rgba(255,105,135,.12),transparent 55%),var(--surface-glass-strong)}.profile-card .drawer-head{border-bottom:none;padding:20px 22px 8px}.profile-card .drawer-head h3{font-size:17px}.profile-card .drawer-head .close{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;background:var(--surface-cream);border:1px solid var(--glass-edge);box-shadow:var(--shadow-xs);transition:background var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-out)}.profile-card .drawer-head .close:hover{background:#fff;color:var(--primary)}.profile-card .drawer-body{padding:8px 22px 22px;position:relative}.profile-hero{display:flex;align-items:center;gap:16px;margin:6px 0 20px}.profile-hero .avatar{width:76px;height:76px;font-size:30px;flex:none;box-shadow:0 8px 20px #c75a1452,inset 0 1px 2px #ffffff80}.profile-hero-meta{min-width:0}.profile-name{font-size:21px;font-weight:800;line-height:1.15;margin-bottom:3px;color:var(--text)}.profile-role{font-size:13.5px;color:var(--muted);font-weight:600;margin-bottom:8px}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 11px 4px 9px;border-radius:var(--radius-pill);font-size:12px;font-weight:700;line-height:1}.status-pill.is-active{color:var(--success);background:var(--success-container)}.status-pill.is-inactive{color:var(--danger);background:var(--error-container)}.status-pill .status-dot{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px #2f855a2e}.status-pill.is-inactive .status-dot{box-shadow:0 0 0 3px #d92d202e}.avatar-edit{position:relative;border:none;cursor:pointer;padding:0;background:var(--primary);overflow:visible}.avatar-edit img{border-radius:50%}.avatar-edit .avatar-edit-badge{position:absolute;right:-2px;bottom:-2px;width:26px;height:26px;background:#fff;border:1px solid var(--glass-edge);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text);box-shadow:var(--shadow)}.avatar-edit .avatar-edit-spin{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#2a160e66;color:#fff;border-radius:50%;font-weight:700}.avatar-hint{font-size:12px;color:var(--muted);margin-top:4px}.profile-details{background:var(--surface-container-lowest);border:1px solid var(--glass-edge);border-radius:var(--radius-sm);box-shadow:var(--shadow-xs),var(--inset-hi);padding:4px 14px;margin-bottom:18px}.profile-row{display:flex;align-items:center;gap:12px;padding:13px 2px;border-bottom:1px solid var(--hairline)}.profile-row:last-child{border-bottom:none}.profile-row-icon{width:34px;height:34px;flex:none;border-radius:10px;display:flex;align-items:center;justify-content:center}.profile-row-icon.icon-email{color:var(--danger);background:#d92d201f}.profile-row-icon.icon-role{color:var(--purple);background:#6a5acd24}.profile-row-icon.icon-status{color:var(--success);background:#2f855a21}.profile-row-icon.icon-perm{color:var(--primary);background:#c75a1421}.profile-row-label{font-size:14px;font-weight:700;color:var(--text);flex:none}.profile-row-value{margin-left:auto;min-width:0;text-align:right;font-size:13.5px;color:var(--muted);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-row-value .pill-list{justify-content:flex-end;flex-wrap:wrap}.profile-row-arrow{flex:none;color:var(--muted);font-size:20px;line-height:1;opacity:.6}.btn-logout{width:100%;display:flex;align-items:center;justify-content:center;gap:9px;padding:14px 18px;border:none;border-radius:var(--radius-pill);cursor:pointer;font-family:inherit;font-size:15px;font-weight:800;color:#fff;letter-spacing:.2px;background:linear-gradient(95deg,#f5435f,#f76b3c 55%,#f9942a);box-shadow:0 8px 20px #f44f5f59,inset 0 1px #ffffff4d;transition:transform var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),filter var(--dur-2) var(--ease-out)}.btn-logout:hover{transform:translateY(-1px);filter:brightness(1.03);box-shadow:0 12px 26px #f44f5f6b,inset 0 1px #ffffff59}.btn-logout:active{transform:translateY(0)}@media (max-width: 480px){.drawer-overlay{padding:60px 12px 12px;justify-content:center}.profile-card{width:100%}.profile-name{font-size:19px}.profile-hero .avatar{width:68px;height:68px;font-size:27px}}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--hairline);margin-bottom:22px}.tabs button{padding:12px 18px;background:none;border:none;font-size:14px;color:var(--muted);border-bottom:2px solid transparent;font-weight:700;transition:color var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out)}.tabs button.active{color:var(--primary);border-bottom-color:var(--primary)}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background-color:var(--bg);background-image:radial-gradient(820px 560px at 14% 6%,rgb(177 173 171 / 34%),transparent 52%),radial-gradient(760px 620px at 100% 100%,rgba(103,45,16,.32),transparent 55%),radial-gradient(600px 500px at 92% 0%,rgb(171 175 172 / 32%),transparent 55%)}.login-card{background:var(--surface-glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-radius:var(--radius-xl);padding:44px;width:100%;max-width:412px;box-shadow:var(--shadow-float),var(--inset-hi);border:1px solid var(--glass-edge)}.login-card .logo{text-align:center;margin-bottom:12px}.login-card .logo img{width:160px;padding:14px;filter:drop-shadow(0 4px 8px rgba(199,90,20,.28))}.login-card h1{text-align:center;font-size:28px;margin-bottom:4px;font-weight:800}.login-card .sub{text-align:center;color:var(--muted);margin-bottom:28px}.login-card .field{margin-bottom:16px}.login-card .btn{width:100%;justify-content:center;margin-top:8px}.demo-box{margin-top:24px;padding:18px;background:var(--surface-cream);border:1px solid var(--glass-edge);border-radius:var(--radius);font-size:12.5px;color:var(--muted);box-shadow:var(--inset-hi)}.demo-box b{color:var(--text)}.demo-box .demo-row{cursor:pointer;padding:4px 0;transition:color var(--dur-1) var(--ease-out)}.demo-box .demo-row:hover{color:var(--primary)}.pw-wrap{position:relative}.pw-wrap input{width:100%;padding-right:44px}.pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;padding:7px;color:var(--muted);display:flex;align-items:center;justify-content:center;border-radius:8px;transition:color var(--dur-1) var(--ease-out)}.pw-toggle:hover{color:var(--primary)}.alert{padding:14px 16px;border-radius:var(--radius-sm);margin-bottom:14px;font-size:13.5px;font-weight:500;box-shadow:var(--inset-hi)}.alert-error{background:#ffe0dc;color:#c12717}.alert-success{background:var(--success-container);color:#1f6e45}.alert-warn{background:var(--accent-soft);color:#9a6a00}.loader{text-align:center;padding:44px;color:var(--muted)}.row-actions{display:flex;gap:8px}.text-muted{color:var(--muted)}.text-right{text-align:right}.mb-0{margin-bottom:0}.pill-list{display:flex;flex-wrap:wrap;gap:6px}.table-wrap,.orders-table-wrap{overflow:visible}.orders-table-wrap{position:relative}.orders-table--admin table{table-layout:fixed;width:100%}.orders-table--admin td{overflow:hidden;text-overflow:ellipsis}.orders-table--admin th{white-space:normal;line-height:1.2}.orders-table--admin th:nth-child(1),.orders-table--admin td:nth-child(1){width:8%}.orders-table--admin th:nth-child(2),.orders-table--admin td:nth-child(2){width:13%}.orders-table--admin th:nth-child(3),.orders-table--admin td:nth-child(3){width:12%}.orders-table--admin th:nth-child(4),.orders-table--admin td:nth-child(4){width:9%}.orders-table--admin th:nth-child(5),.orders-table--admin td:nth-child(5){width:8%}.orders-table--admin th:nth-child(6),.orders-table--admin td:nth-child(6){width:11%}.orders-table--admin th:nth-child(7),.orders-table--admin td:nth-child(7){width:12%}.orders-table--admin th:nth-child(8),.orders-table--admin td:nth-child(8){width:13%}.orders-table--admin th:nth-child(9),.orders-table--admin td:nth-child(9){width:8%}.orders-table--admin td:nth-child(9){text-align:center;padding-right:14px}.orders-table--admin th:last-child,.orders-table--admin td:last-child{width:6%;text-align:center;padding-left:8px;padding-right:8px}.admin-bill-action{display:flex;justify-content:center;align-items:center}.admin-bill-action .btn{min-width:0;height:34px;padding:0 14px;border-radius:999px}.actions-grid{display:grid;grid-template-columns:74px 84px 86px;gap:8px;align-items:center;justify-content:end;min-width:260px;overflow:visible;position:relative}.action-placeholder{visibility:hidden;pointer-events:none}.action-btn{height:32px;width:100%;display:inline-flex;align-items:center;justify-content:center;border-radius:14px;border:1px solid transparent;font-size:13px;font-weight:700;font-family:inherit;color:#fff;white-space:nowrap;transition:transform var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out),filter var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out)}.action-btn:active{transform:translateY(1px) scale(.98)}.action-pay{background:linear-gradient(180deg,#46b06a 0%,var(--success) 55%,#246b45 100%);box-shadow:inset 0 1px #ffffff59,0 6px 14px #2f855a4d,0 2px 4px #143c2829}.action-pay:hover{transform:translateY(-2px);filter:brightness(1.05)}.action-cancel{background:linear-gradient(180deg,#ee5a4e 0%,var(--danger) 55%,#b21d12 100%);box-shadow:inset 0 1px #ffffff52,0 6px 14px #d92d204d,0 2px 4px #50140a29}.action-cancel:hover{transform:translateY(-2px);filter:brightness(1.05)}.action-more-wrap{position:relative;display:inline-flex;width:auto;overflow:visible}.action-more{background:var(--surface-cream);color:var(--espresso);border-color:var(--glass-edge);box-shadow:var(--shadow-xs),var(--inset-hi)}.action-more:hover{background:#fff;transform:translateY(-1px);box-shadow:var(--shadow),var(--inset-hi)}.actions-dropdown{position:absolute;top:calc(100% + 6px);right:25px;z-index:9999;display:flex;flex-direction:column;gap:2px;min-width:100px;width:max-content;padding:6px;overflow:visible;background:var(--surface-glass-strong);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-edge);border-radius:14px;box-shadow:var(--shadow-lg),var(--inset-hi);animation:popIn .16s var(--ease-out)}.actions-dropdown button{display:flex;align-items:center;width:100%;white-space:nowrap;background:none;border:none;text-align:left;cursor:pointer;padding:9px 12px;border-radius:10px;font-size:13px;font-weight:600;color:var(--text);transition:background var(--dur-1) var(--ease-out),color var(--dur-1) var(--ease-out)}.actions-dropdown button:hover{background:#c75a141a;color:var(--primary)}@media (max-width: 768px){.table-wrap.responsive td:has(.actions-grid){flex-direction:column;align-items:stretch;gap:8px}.table-wrap.responsive td:has(.actions-grid):before{flex:0 0 auto}.actions-grid{min-width:0;justify-content:stretch}.actions-dropdown{left:0;right:0;min-width:0}}.pagination{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:20px 4px 4px}.pagination-summary{display:flex;align-items:center;gap:16px}.pagination-info{font-size:13px;color:var(--muted);font-weight:500}.page-size{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.page-size select{padding:8px 34px 8px 14px;border:1px solid var(--border);border-radius:var(--radius-pill);font-size:13px;background-color:var(--surface-cream);font-family:inherit;box-shadow:var(--inset-hi)}.pagination-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pagination-controls .page-indicator{font-size:13px;color:var(--muted);min-width:96px;text-align:center;font-weight:600}.pagination-controls .btn[disabled]{opacity:.45;cursor:not-allowed}.kitchen-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}.kitchen-card{position:relative;height:440px;display:grid;grid-template-rows:auto 1fr auto;gap:14px;padding:18px;border-radius:var(--radius-xl);overflow:hidden;backdrop-filter:blur(22px) saturate(135%);-webkit-backdrop-filter:blur(22px) saturate(135%);border:1px solid rgba(255,255,255,.66);transition:transform .22s var(--ease-out),box-shadow .22s var(--ease-out);box-shadow:0 24px 56px #44271224,0 10px 22px #4427121a,inset 0 1px #ffffffd1}.kitchen-card:hover{transform:translateY(-4px);box-shadow:0 30px 74px #4427122e,0 14px 28px #44271221,inset 0 1px #ffffffe6}.kitchen-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(180deg,#ffffff57,#ffffff0d 42%,#ffffff24)}.kitchen-card.custom{background:linear-gradient(160deg,#fff8f2,#ffe4c8);border-color:#d86a1f38}.kitchen-card.normal{background:linear-gradient(160deg,#fcfaf8,#e7dbcf);border-color:#75533d38}.kitchen-card .card-head,.kitchen-card .body-shell,.kitchen-card .card-footer{position:relative;z-index:1}.kitchen-card .head-shell{display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px;border-radius:24px;border:1px solid rgba(255,255,255,.4);box-shadow:inset 0 1px #ffffffad}.kitchen-card.custom .head-shell,.kitchen-card.custom .body-shell,.kitchen-card.custom .card-footer{background:linear-gradient(160deg,#fff7eee6,#ffe3c6c7);border-color:#d86a1f24}.kitchen-card.normal .head-shell,.kitchen-card.normal .body-shell,.kitchen-card.normal .card-footer{background:linear-gradient(160deg,#fffcf9e6,#e3d6cac2);border-color:#75533d1f}.kitchen-card .tag-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.kitchen-card .pill{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;font-size:12px;font-weight:900;border:1px solid rgba(78,45,22,.1);box-shadow:inset 0 1px #ffffffc2;white-space:nowrap;background:#ffffff94;color:var(--muted)}.kitchen-card .pill .dot{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.9}.kitchen-card.custom .type-pill{background:linear-gradient(145deg,#ffecd6f5,#ffcea1d6);color:#a65214}.kitchen-card.normal .type-pill{background:linear-gradient(145deg,#f7f1ebf5,#d9c9bcd6);color:#664b39}.kitchen-card .status-pending{background:#ffecbec7;color:#956000}.kitchen-card .status-pending .dot{background:#c57b08}.kitchen-card .status-preparing{background:#ffe2cfc7;color:#a55412}.kitchen-card .status-preparing .dot{background:#d76a1f}.kitchen-card .status-ready{background:#dce3ffc7;color:#4963dd}.kitchen-card .status-ready .dot{background:#556fe5}.kitchen-card .status-completed{background:#def5e7c7;color:#28734a}.kitchen-card .status-completed .dot{background:#2f8b5a}.kitchen-card .order-id{margin:0;font-family:Manrope,sans-serif;font-size:19px;font-weight:900;letter-spacing:-.02em}.kitchen-card .meta{margin-top:6px;color:var(--muted);font-size:13px;line-height:1.45;font-weight:600}.kitchen-card .icon-orb{width:56px;height:56px;border-radius:20px;display:grid;place-items:center;font-size:23px;border:1px solid rgba(255,255,255,.62);box-shadow:0 12px 24px #4427121a,inset 0 1px #ffffffd6;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#ffffff94}.kitchen-card.custom .icon-orb{color:#c86418}.kitchen-card.normal .icon-orb{color:#73553f}.kitchen-card .body-shell{min-height:0;padding:14px;border-radius:24px;border:1px solid rgba(255,255,255,.4);box-shadow:inset 0 1px #ffffff9e;overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(214,104,31,.42) rgba(255,255,255,.14)}.kitchen-card .body-shell::-webkit-scrollbar{width:7px}.kitchen-card .body-shell::-webkit-scrollbar-thumb{background:#d6681f61;border-radius:999px}.kitchen-card .item+.item{margin-top:12px;padding-top:12px;border-top:1px dashed rgba(78,45,22,.13)}.kitchen-card .item-title{margin:0 0 10px;font-family:Manrope,sans-serif;font-size:16px;font-weight:900;line-height:1.35}.kitchen-card .note{display:grid;grid-template-columns:22px 1fr;gap:8px;margin-bottom:10px;padding:10px 12px;border-radius:16px;background:linear-gradient(180deg,#ffefc7d1,#ffdfa48f);border:1px solid rgba(221,171,61,.42);box-shadow:inset 0 1px #fffc;color:#9a5d09;font-size:13px;line-height:1.45;font-weight:800}.kitchen-card .recipe{display:grid;grid-template-columns:22px 1fr;gap:8px;color:#806a5b;font-size:13px;line-height:1.52;font-weight:600}.kitchen-card .card-footer{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px;border-radius:20px;border:1px solid rgba(255,255,255,.4);box-shadow:inset 0 1px #fff9}.kitchen-card .status-btn{cursor:pointer;min-height:38px;padding:10px 4px;border-radius:999px;font-family:inherit;font-size:12px;font-weight:900;color:#563f30;white-space:nowrap;background:linear-gradient(180deg,#ffffffe6,#f6ede4eb);border:1px solid rgba(78,45,22,.1);box-shadow:0 10px 18px #4c2b141a,inset 0 1px #ffffffe0;transition:transform .16s var(--ease-out),box-shadow .16s var(--ease-out)}.kitchen-card .status-btn:hover{transform:translateY(-2px)}.kitchen-card .status-btn:active{transform:translateY(1px) scale(.985)}.kitchen-card .status-btn.active.pending{color:#fff;background:linear-gradient(180deg,#e8a01b,#c57b08);box-shadow:0 13px 22px #c57b083d,inset 0 1px #ffffff3d}.kitchen-card .status-btn.active.preparing{color:#fff;background:linear-gradient(180deg,#ec8433,#c95c14);box-shadow:0 13px 22px #c95c143d,inset 0 1px #ffffff3d}.kitchen-card .status-btn.active.ready{color:#fff;background:linear-gradient(180deg,#7288f3,#546ee5);box-shadow:0 13px 22px #546ee53d,inset 0 1px #ffffff3d}.kitchen-card .status-btn.active.completed{color:#fff;background:linear-gradient(180deg,#4aa56f,#2f8b5a);box-shadow:0 13px 22px #2f8b5a3d,inset 0 1px #ffffff3d}@media (max-width: 1320px){.kitchen-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 768px){.kitchen-board{grid-template-columns:1fr}}.bill{max-width:360px;margin:0 auto;font-family:Courier New,monospace;color:#000}.bill h2,.bill .center{text-align:center}.bill table{width:100%}.bill td,.bill th{padding:3px;border:none;white-space:normal}.bill .line{border-top:1px dashed #000;margin:8px 0}@media print{@page{margin:12mm}#root{display:none!important}.modal-overlay{position:static!important;inset:auto!important;padding:0!important;background:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow:visible!important;display:block!important;animation:none!important}.modal{position:static!important;width:auto!important;max-width:none!important;background:none!important;box-shadow:none!important;border:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;animation:none!important}.modal-head,.modal-foot{display:none!important}.modal-body{padding:0!important}.bill{max-width:100%!important;width:100%!important;margin:0 auto!important;font-size:15px!important;color:#000!important}}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media (max-width: 768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.main{margin-left:0}.hamburger{display:block}.form-grid{grid-template-columns:1fr}.sidebar-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#2a160e6b;z-index:45}.content{padding:16px}.toolbar{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:stretch}.toolbar>.grow,.toolbar>.btn,.toolbar>.filter-tabs{grid-column:1 / -1;min-width:0}.toolbar>input,.toolbar>select{grid-column:span 1;min-width:0;width:100%}.toolbar>input.grow{grid-column:1 / -1}.toolbar>.btn{justify-content:center}.toolbar>div:empty{display:none}.toolbar>.toolbar-actions{grid-column:1 / -1}.toolbar-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.toolbar-actions .btn{justify-content:center;width:100%}.toolbar.search-inline>input.grow{grid-column:span 1}.table-wrap.responsive{overflow-x:visible}.table-wrap.responsive table,.table-wrap.responsive tbody,.table-wrap.responsive tr,.table-wrap.responsive td{display:block;width:auto}.table-wrap.responsive thead{display:none}.table-wrap.responsive tr{background:var(--surface-glass-strong);backdrop-filter:var(--glass-blur-sm);-webkit-backdrop-filter:var(--glass-blur-sm);border:1px solid var(--glass-edge);border-radius:var(--radius);padding:4px 16px;margin-bottom:12px;box-shadow:var(--shadow),var(--inset-hi)}.table-wrap.responsive tr:hover{background:var(--surface-glass-strong)}.table-wrap.responsive td{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--hairline);white-space:normal;text-align:right}.table-wrap.responsive td:last-child{border-bottom:none}.table-wrap.responsive td[data-label]:before{content:attr(data-label);text-align:left;flex:0 0 38%;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.table-wrap.responsive td.empty{display:block;text-align:center}.table-wrap.responsive td.empty:before{display:none}.table-wrap.responsive td:has(.row-actions){flex-direction:column;align-items:stretch;gap:8px}.table-wrap.responsive td:has(.row-actions):before{flex:0 0 auto}.table-wrap.responsive .row-actions{justify-content:flex-end;flex-wrap:nowrap;gap:8px}.table-wrap.responsive .row-actions .btn{flex:0 1 auto;white-space:nowrap}.pagination{flex-direction:column;align-items:stretch;gap:12px}.pagination-summary{justify-content:space-between;width:100%}.pagination-controls{width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.pagination-controls .page-indicator{min-width:auto}.pagination-controls .btn{width:100%;justify-content:center}.form-items{overflow-x:visible}.form-items table,.form-items tbody,.form-items tr,.form-items td{display:block;width:auto}.form-items thead{display:none}.form-items tr{background:var(--surface-cream);border:1px solid var(--glass-edge);border-radius:var(--radius);padding:4px 16px;margin-bottom:12px;box-shadow:var(--shadow),var(--inset-hi)}.form-items td{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--hairline);white-space:normal;text-align:right}.form-items td:last-child{border-bottom:none}.form-items td[data-label]:before{content:attr(data-label);text-align:left;flex:0 0 34%;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.form-items td select,.form-items td input:not([type=checkbox]){flex:1;min-width:0;width:auto}.form-items .qty-input{flex:0 0 90px;width:90px;text-align:center}.form-items td.cell-customize{flex-direction:column;align-items:stretch;gap:6px}.form-items td.cell-customize:before{flex:0 0 auto}.form-items .recipe-box{width:100%;min-width:0}.form-items td.cell-remove{justify-content:stretch}.form-items td.cell-remove:empty{display:none}.form-items td.cell-remove .btn{width:100%;justify-content:center}.orders-table-wrap table{min-width:0}.orders-table-wrap th:last-child,.orders-table-wrap td:last-child{width:auto;min-width:0}.orders-table-wrap .row-actions{flex-wrap:wrap}.orders-table-wrap .cancel-order-btn{width:auto}}.orders-table-wrap{overflow-x:auto}.orders-table-wrap table{min-width:1180px}.orders-table-wrap th:last-child,.orders-table-wrap td:last-child{width:80px;min-width:80px}.orders-table-wrap .row-actions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}.orders-table-wrap .row-actions .btn{white-space:nowrap}.orders-table-wrap .cancel-order-btn{padding:8px 14px;min-width:78px;justify-content:center;box-shadow:inset 0 1px #ffffff59,0 4px 10px #d92d2038}.recipe-form-items{overflow-x:visible}.recipe-form-items table{width:100%;min-width:0;table-layout:fixed}.recipe-form-items th:nth-child(1),.recipe-form-items td:nth-child(1){width:32%}.recipe-form-items th:nth-child(2),.recipe-form-items td:nth-child(2){width:16%}.recipe-form-items th:nth-child(3),.recipe-form-items td:nth-child(3){width:18%}.recipe-form-items th:nth-child(4),.recipe-form-items td:nth-child(4){width:12%;text-align:center}.recipe-form-items th:nth-child(5),.recipe-form-items td:nth-child(5){width:15%;text-align:center}.recipe-form-items .btn-danger{white-space:nowrap;padding:8px 12px;font-size:12px}.bill-logo{display:block;margin:16px auto;height:45px;width:auto;object-fit:contain}.bill-logo-wrap{text-align:center;margin-bottom:15px}.recipes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px;align-items:stretch}.recipe-card{position:relative;height:365px;display:grid;grid-template-rows:auto auto 1fr;gap:14px;padding:18px;border-radius:30px;overflow:hidden;background:linear-gradient(160deg,#fffbf6e6,#ffe8d2d6);backdrop-filter:blur(22px) saturate(140%);-webkit-backdrop-filter:blur(22px) saturate(140%);border:1px solid rgba(255,255,255,.66);box-shadow:0 28px 60px #4a2a1424,0 12px 24px #4a2a141a,inset 0 1px #ffffffd1;transition:transform .22s ease,box-shadow .22s ease}.recipe-card:hover{transform:translateY(-4px);box-shadow:0 34px 76px #4a2a142e,0 14px 30px #4a2a141f,inset 0 1px #ffffffe6}.recipe-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(180deg,#ffffff57,#ffffff0f 42%,#ffffff24),radial-gradient(circle at 14% 0%,rgba(255,255,255,.56),transparent 34%);pointer-events:none}.recipe-card .card-top,.recipe-card .card-body-wrap{position:relative;z-index:1}.recipe-card .card-top{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start}.recipe-card .recipe-name{margin:0;font-family:inherit;font-size:20px;font-weight:900;line-height:1.2;letter-spacing:-.03em;color:var(--text);min-width:0}.recipe-card .action-group{display:flex;gap:8px;align-items:center;flex-shrink:0}.recipe-card .action-btn{height:40px;width:40px;cursor:pointer;display:grid;place-items:center;border-radius:999px;color:#523c2e;background:linear-gradient(180deg,#ffffffe6,#f4ebe1f0);border:1px solid rgba(96,58,31,.08);box-shadow:0 10px 18px #4a2a1414,inset 0 1px #ffffffe6;transition:transform .16s ease,box-shadow .16s ease}.recipe-card .action-btn:hover{transform:translateY(-2px);box-shadow:0 14px 24px #4a2a141f,inset 0 1px #fffffff0}.recipe-card .action-btn svg{width:18px;height:18px;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}.recipe-card .action-btn.edit-text{width:auto;min-width:68px;padding:0 14px;font-size:13px;font-weight:900}.recipe-card .action-btn.delete{color:#fff;background:linear-gradient(180deg,#f15548,#c9281d);border-color:transparent;box-shadow:0 12px 22px #c9271c3d,inset 0 1px #ffffff3d}.recipe-card .card-divider{height:1px;border:0;background:linear-gradient(90deg,#603a1f1f,#603a1f0a);margin:-2px 0 0;position:relative;z-index:1}.recipe-card .card-body-wrap{min-height:0;border-radius:22px;background:linear-gradient(160deg,#fffcf8e0,#ffeddcbd);border:1px solid rgba(96,58,31,.08);box-shadow:inset 0 1px #ffffffc7,inset 0 -8px 20px #fff3;overflow:hidden}.recipe-card .card-body{height:100%;padding:10px 8px 30px 12px;overflow:auto;position:relative;scrollbar-width:thin;scrollbar-color:rgba(178,113,68,.65) rgba(242,226,211,.78)}.recipe-card .card-body::-webkit-scrollbar{width:8px}.recipe-card .card-body::-webkit-scrollbar-track{background:linear-gradient(180deg,#f1e2d3b8,#fbefe4c7);border-radius:999px;margin:12px 0;box-shadow:inset 0 1px 2px #663f2212,inset 0 0 0 1px #ffffff75}.recipe-card .card-body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#d88446c7,#b1632ec7);border-radius:999px;border:2px solid rgba(249,235,222,.86);box-shadow:inset 0 1px #ffffff70,0 1px 3px #68381621}.recipe-card .card-body::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#e28e4ee6,#bc5b1de6)}.recipe-card .ingredient-list{list-style:none;margin:0;padding:0}.recipe-card .ingredient-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px dashed rgba(96,58,31,.12);font-size:14px;line-height:1.35}.recipe-card .ingredient-item:last-child{border-bottom:0;padding-bottom:0}.recipe-card .ingredient-name{color:#4a3628;font-weight:650;min-width:0;padding-right:8px}.recipe-card .ingredient-qty{color:#4d3729;font-weight:900;white-space:nowrap;justify-self:end;text-align:right;background:#ffffffc2;padding:5px 9px;border-radius:999px;border:1px solid rgba(96,58,31,.08);box-shadow:inset 0 1px #ffffffd1}.recipe-card .scroll-hint{position:absolute;right:14px;bottom:10px;display:none;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:900;color:#834916e0;background:#fff8f1d1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(215,106,31,.14);box-shadow:0 8px 16px #4a2a141a;pointer-events:none;letter-spacing:.02em;z-index:2}.recipe-card .scroll-hint .arrow{display:inline-block;animation:recipeFloatDown 1.2s ease-in-out infinite}.recipe-card .scroll-fade{position:absolute;left:0;right:0;bottom:0;height:54px;display:none;pointer-events:none;background:linear-gradient(180deg,#fff9f300,#fff2e5f5 78%);z-index:1}.recipe-card .card-body-wrap.is-scrollable .scroll-hint,.recipe-card .card-body-wrap.is-scrollable .scroll-fade{display:flex}.recipe-card .card-body-wrap.at-end .scroll-hint,.recipe-card .card-body-wrap.at-end .scroll-fade{display:none}@keyframes recipeFloatDown{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}@media (max-width: 700px){.recipe-card{height:340px}}
