*{box-sizing:border-box}:root{--bg-app: #f8f9fa;--bg-card: #ffffff;--bg-muted: #f1f3f5;--border: #e5e7eb;--border-light: #f3f4f6;--text-primary: #1a1d21;--text-secondary: #6b7280;--text-muted: #9ca3af;--accent: #2563eb;--accent-hover: #1d4ed8;--success: #16a34a;--danger: #dc2626;--warning: #d97706;--radius: 10px;--radius-sm: 6px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow: 0 2px 8px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .12)}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased}button{border:0;border-radius:var(--radius-sm);padding:9px 16px;background:var(--accent);color:#fff;cursor:pointer;font-size:14px;font-weight:500;transition:background .15s,opacity .15s}button:hover{background:var(--accent-hover)}button:disabled{opacity:.5;cursor:not-allowed}.link-btn{background:transparent!important;padding:0!important;font-size:14px;font-weight:500}.link-btn:hover{text-decoration:underline}input,select,textarea{font:inherit;padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;background:var(--bg-card);color:var(--text-primary);transition:border-color .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb1a}hr{border:0;border-top:1px solid var(--border-light);margin:12px 0}.flex{display:flex}.flex-1{flex:1}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:4px}.gap-2{gap:8px}.gap-4{gap:16px}.w-full{width:100%}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.mt-4{margin-top:16px}.my-4{margin:16px 0}.p-4{padding:16px}.text-xs{font-size:12px}.text-sm{font-size:14px}.text-lg{font-size:18px}.text-2xl{font-size:24px}.font-bold{font-weight:700}.font-semibold{font-weight:600}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.text-center{text-align:center}.text-gray-400{color:var(--text-muted)}.text-gray-500{color:var(--text-secondary)}.text-gray-700{color:#374151}.text-blue-600{color:var(--accent)}.text-red-600{color:var(--danger)}.text-green-600{color:var(--success)}.text-yellow-600{color:var(--warning)}.text-green-700{color:#15803d}.bg-white{background:var(--bg-card)}.bg-gray-300{background:#d1d5db;color:#374151}.bg-gray-800{background:#1f2937}.bg-blue-600{background:var(--accent)}.bg-green-600{background:var(--success)}.bg-red-600{background:var(--danger)}.bg-yellow-500{background:#eab308;color:#422006}.bg-gray-100{background:var(--bg-muted)}.bg-green-100{background:#dcfce7;color:#166534}.bg-red-100{background:#fee2e2;color:#991b1b}.bg-blue-100{background:#dbeafe;color:#1e40af}.bg-yellow-100{background:#fef9c3;color:#854d0e}.rounded{border-radius:var(--radius-sm)}.border-b{border-bottom:1px solid var(--border-light)}.animate-pulse{animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:600;text-transform:capitalize;letter-spacing:.02em}.app-shell{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-app)}.app-header{background:var(--bg-card);color:var(--text-primary);padding:14px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);box-shadow:var(--shadow-sm)}.app-header h1{font-size:18px;font-weight:700;display:flex;align-items:center;gap:16px;margin:0}.app-header a{padding:6px 14px;font-size:13px;border-radius:var(--radius-sm);color:var(--accent);text-decoration:none;font-weight:500;border:1px solid var(--border);transition:all .15s}.app-header a:hover{background:var(--bg-muted)}.app-header button{background:transparent;color:var(--danger);border:1px solid var(--border);padding:6px 14px;font-size:13px}.app-header button:hover{background:#fef2f2;border-color:#fecaca}.kds-main{flex:1;padding:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;overflow:hidden;background:var(--bg-app)}.kds-col{background:var(--bg-muted);padding:14px;border-radius:var(--radius);display:flex;flex-direction:column;height:100%;overflow:hidden;border:1px solid var(--border)}.kds-col h2{font-weight:700;font-size:15px;margin:0 0 12px;display:flex;justify-content:space-between;align-items:center;color:var(--text-primary)}.kds-count{background:var(--bg-card);color:var(--text-secondary);padding:2px 10px;border-radius:999px;font-size:13px;font-weight:600;border:1px solid var(--border)}.kds-list{flex:1;overflow-y:auto;padding-right:4px}.order-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);display:flex;flex-direction:column;justify-content:space-between;margin-bottom:14px;box-shadow:var(--shadow-sm);overflow:hidden;transition:box-shadow .15s}.order-card:hover{box-shadow:var(--shadow)}.order-head{padding:14px;border-bottom:1px solid var(--border-light);font-size:14px;background:var(--bg-card)}.order-head .row{display:flex;justify-content:space-between;align-items:center}.order-head .row.bold{font-weight:700;font-size:15px}.order-head .row.dim{color:var(--text-secondary);font-size:13px;margin-top:2px}.order-items{padding:14px;font-size:14px;flex:1}.order-item{border-bottom:1px solid var(--border-light);padding-bottom:8px;margin-bottom:8px}.order-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.order-item .name{font-weight:600}.order-item .custom{font-size:12px;color:var(--text-secondary);padding-left:8px;margin-top:2px}.order-item .notes{font-size:12px;font-style:italic;color:var(--text-muted);padding-left:8px;margin-top:2px}.order-actions{padding:12px 14px;border-top:1px solid var(--border-light);background:var(--bg-muted);display:flex;flex-direction:column;gap:8px}.order-actions .row{display:flex;gap:6px}.order-actions button.small{padding:7px 12px;font-size:12px;border-radius:var(--radius-sm)}.order-actions button.big{padding:10px;font-weight:600;border-radius:var(--radius-sm)}.inline-slip{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;padding:8px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-muted)}.slip-btn{border:none;border-radius:4px;width:48px;height:32px;font-size:16px;cursor:pointer;padding:0;font-weight:700;transition:opacity .15s}.slip-btn:hover{opacity:.85}.slip-btn-reject{background:var(--danger);color:#fff}.slip-btn-approve{background:var(--success);color:#fff}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-app);padding:20px}.login{background:var(--bg-card);padding:36px 32px;border-radius:var(--radius);box-shadow:var(--shadow-lg);border:1px solid var(--border);width:100%;max-width:400px}.login h1{text-align:center;margin-top:0;margin-bottom:24px;font-size:22px;font-weight:700}.login input{margin-bottom:12px;padding:11px 14px}.login button{width:100%;padding:12px;font-size:15px;font-weight:600;margin-top:4px}.login-error{background:#fef2f2;color:#b91c1c;padding:10px 14px;border-radius:var(--radius-sm);font-size:14px;margin-bottom:16px;border:1px solid #fecaca}.admin-shell{min-height:100vh;display:flex;background:var(--bg-app)}.admin-side{width:260px;background:var(--bg-card);color:var(--text-primary);padding:20px 16px;display:flex;flex-direction:column;gap:4px;border-right:1px solid var(--border)}.admin-side h2{font-size:17px;font-weight:700;margin:0 0 20px;padding:0 8px;color:var(--text-primary)}.admin-side a{padding:9px 12px;border-radius:var(--radius-sm);display:block;color:var(--text-secondary);text-decoration:none;font-size:14px;font-weight:500;transition:all .15s}.admin-side a:hover{background:var(--bg-muted);color:var(--text-primary)}.admin-side a.active{background:#eff6ff;color:var(--accent)}.admin-side hr{margin:12px 0}.admin-main{flex:1;padding:28px 32px;overflow-y:auto}.admin-card{background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.admin-table{width:100%;border-collapse:collapse;text-align:left;background:var(--bg-card);border-radius:var(--radius);overflow:hidden}.admin-table th{background:var(--bg-muted);padding:11px 14px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);border-bottom:1px solid var(--border)}.admin-table td{padding:12px 14px;border-bottom:1px solid var(--border-light);font-size:14px;vertical-align:middle}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:#fafbfc}.admin-row{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid var(--border-light)}.admin-row:last-child{border-bottom:none}.admin-modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#11182766;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.admin-modal{background:var(--bg-card);border-radius:var(--radius);padding:28px;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);border:1px solid var(--border)}.admin-modal-lg{max-width:720px}.admin-modal h2{font-size:20px;font-weight:700;margin-top:0;margin-bottom:20px;color:var(--text-primary)}.admin-modal label{display:block;margin-top:14px;margin-bottom:6px;color:var(--text-secondary);font-size:13px;font-weight:600}.admin-modal input,.admin-modal select,.admin-modal textarea{margin-bottom:4px}.img-thumb,.img-preview{width:40px;height:40px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--border)}.ingredient-links{display:flex;flex-direction:column;gap:6px;max-height:300px;overflow-y:auto;padding:10px;background:var(--bg-muted);border:1px solid var(--border);border-radius:var(--radius-sm)}.ing-link{padding:10px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);transition:all .15s}.ing-link.active{border-color:var(--accent);background:#eff6ff}.ing-opts{display:flex;gap:16px;margin-top:8px;padding-left:26px;flex-wrap:wrap}.ing-opts label{display:flex;align-items:center;gap:4px;cursor:pointer;color:var(--text-secondary);margin:0}@media(max-width:900px){.kds-main{grid-template-columns:1fr}.admin-shell{flex-direction:column}.admin-side{width:100%;flex-direction:row;overflow-x:auto;padding:12px;border-right:none;border-bottom:1px solid var(--border);gap:8px}.admin-side h2,.admin-side hr{display:none}.admin-side a{white-space:nowrap}.admin-main{padding:20px 16px}}
