@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.sidebar-collapse-btn[data-v-daacd8f2]{margin-left:auto;width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid var(--border);border-radius:7px;color:var(--text-3);font-size:15px;line-height:1;cursor:pointer;transition:var(--t-fast);flex-shrink:0}.sidebar-collapse-btn[data-v-daacd8f2]:hover{background:#ffffff1f;color:var(--text-1)}@media(max-width:1024px){.sidebar-collapse-btn[data-v-daacd8f2]{display:none}}.restaurant-picker[data-v-daacd8f2]{position:relative}.picker-menu[data-v-daacd8f2]{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#1b3350;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-md);padding:6px;z-index:200;box-shadow:0 12px 32px #0006;animation:fadeInDown .16s ease;max-height:320px;overflow-y:auto}.picker-label[data-v-daacd8f2]{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-4);padding:6px 8px 4px}.picker-item[data-v-daacd8f2]{display:flex;align-items:center;gap:9px;width:100%;background:none;border:none;cursor:pointer;font-family:inherit;color:var(--text-2);font-size:13px;text-align:left;padding:8px;border-radius:7px;transition:var(--t-fast)}.picker-item[data-v-daacd8f2]:hover{background:#ffffff14;color:var(--text-1)}.picker-item.active[data-v-daacd8f2]{color:var(--text-1);font-weight:600}.picker-name[data-v-daacd8f2]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-add[data-v-daacd8f2]{border-top:1px solid rgba(255,255,255,.1);margin-top:4px;padding-top:10px}.picker-add-icon[data-v-daacd8f2]{width:26px;height:26px;flex-shrink:0;border-radius:50%;background:#ffffff1a;display:inline-flex;align-items:center;justify-content:center}.devis-card[data-v-daacd8f2]{position:relative;background:#1e3a5f14;border:1px solid rgba(30,58,95,.2);border-radius:var(--r-md);padding:12px 14px;margin-bottom:10px}.devis-title[data-v-daacd8f2]{font-size:12.5px;font-weight:600;color:var(--text-2);line-height:1.45;margin-bottom:6px;padding-right:16px}.devis-link[data-v-daacd8f2]{font-size:12.5px;font-weight:700;color:var(--primary-light)}.devis-link[data-v-daacd8f2]:hover{color:var(--primary)}.devis-close[data-v-daacd8f2]{position:absolute;top:6px;right:6px;width:22px;height:22px;background:none;border:none;color:var(--text-4);font-size:11px;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center}.devis-close[data-v-daacd8f2]:hover{background:#ffffff14;color:var(--text-1)}.topbar-avatar[data-v-e1e97936]{display:none}.sidebar-reopen[data-v-e1e97936]{display:none;width:34px;height:34px;border-radius:8px;align-items:center;justify-content:center;background:#ffffff0d;border:1px solid var(--border);color:var(--text-2);font-size:16px;line-height:1;cursor:pointer}.sidebar-reopen[data-v-e1e97936]:hover{background:#ffffff1f;color:var(--text-1)}@media(min-width:1025px){.sidebar-reopen[data-v-e1e97936]{display:flex}}.tutorial-btn[data-v-e1e97936]{display:inline-flex;align-items:center;gap:6px}.tutorial-icon[data-v-e1e97936]{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1.5px solid currentColor;font-size:11px;font-weight:700;line-height:1}@media(max-width:640px){.tutorial-label[data-v-e1e97936]{display:none}}.hint-bubble[data-v-6f7735a6]{position:relative;background:var(--bg-card);border:1px solid var(--primary-border);border-radius:var(--r-lg);padding:14px 16px;max-width:280px;box-shadow:var(--shadow-lg);animation:scaleIn .25s cubic-bezier(.34,1.56,.64,1)}.hint-bubble[data-v-6f7735a6]:before{content:"";position:absolute;width:12px;height:12px;background:var(--bg-card);transform:rotate(45deg)}.arrow-left[data-v-6f7735a6]:before{left:-7px;top:22px;border-left:1px solid var(--primary-border);border-bottom:1px solid var(--primary-border)}.arrow-top[data-v-6f7735a6]:before{top:-7px;left:24px;border-left:1px solid var(--primary-border);border-top:1px solid var(--primary-border)}.hint-text[data-v-6f7735a6]{font-size:13.5px;color:var(--text-2);line-height:1.55;margin-bottom:12px}.hint-actions[data-v-6f7735a6]{display:flex;gap:8px;flex-wrap:wrap}.hint-backdrop[data-v-f0a91226]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999}.hint-anchor[data-v-f0a91226]{position:fixed;left:calc(var(--sidebar-w) + 10px)}@media(max-width:1024px){.hint-anchor[data-v-f0a91226]{left:16px;right:16px}}.staff-layout[data-v-2e679b64]{min-height:100vh;background:var(--bg-body, #0b1220);color:var(--text-1, #F1F3F6);display:flex;flex-direction:column}.staff-topbar[data-v-2e679b64]{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-top,0px));background:var(--bg-sidebar, #0f172a);border-bottom:1px solid var(--border, rgba(255,255,255,.08))}.staff-brand[data-v-2e679b64]{display:flex;align-items:center;gap:10px;min-width:0}.staff-logo[data-v-2e679b64]{width:34px;height:34px;flex-shrink:0;border-radius:9px;background:var(--primary, #1E3A5F);color:#fff;display:inline-flex;align-items:center;justify-content:center}.staff-restaurant[data-v-2e679b64]{font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40vw}.staff-sub[data-v-2e679b64]{font-size:12px;color:var(--text-4, #98A1AC)}.staff-actions[data-v-2e679b64]{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.staff-switch[data-v-2e679b64]{display:flex;gap:4px;background:#ffffff0d;border-radius:999px;padding:3px}.staff-switch-link[data-v-2e679b64]{font-size:13px;font-weight:600;color:var(--text-3, #cbd5e1);padding:6px 12px;border-radius:999px;text-decoration:none;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.staff-switch-link.active[data-v-2e679b64]{background:var(--primary, #1E3A5F);color:#fff}.staff-logout[data-v-2e679b64]{background:none;border:1px solid var(--border, rgba(255,255,255,.12));color:var(--text-3, #cbd5e1);font-size:13px;font-weight:600;padding:7px 14px;border-radius:9px;cursor:pointer;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.staff-logout[data-v-2e679b64]:hover{background:#ffffff0f}.staff-main[data-v-2e679b64]{flex:1;min-height:0}@media(max-width:640px){.staff-switch-link[data-v-2e679b64]{padding:6px 9px}.staff-restaurant[data-v-2e679b64]{max-width:30vw}}.app-icon[data-v-20f3f472]{flex-shrink:0;vertical-align:middle}.toast-container[data-v-1a6d3ce7]{position:fixed;top:20px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:10px}.toast[data-v-1a6d3ce7]{display:flex;align-items:flex-start;gap:10px;padding:13px 14px 13px 16px;background:var(--bg-card, #fff);border:1px solid var(--border, #E4E7EC);border-radius:10px;color:var(--text-1, #1E2733);font-size:14px;box-shadow:var(--shadow-lg);animation:toastIn .25s ease;max-width:360px;word-break:break-word}.toast.leaving[data-v-1a6d3ce7]{animation:toastOut .25s ease forwards}.toast-icon[data-v-1a6d3ce7]{display:inline-flex;margin-top:1px;flex-shrink:0}.toast-msg[data-v-1a6d3ce7]{line-height:1.45}.toast-close[data-v-1a6d3ce7]{margin-left:auto;background:none;border:none;color:var(--text-4, #98A1AC);cursor:pointer;padding:2px;display:inline-flex;align-items:center;border-radius:6px;flex-shrink:0}.toast-close[data-v-1a6d3ce7]:hover{color:var(--text-1);background:var(--overlay, rgba(30,39,51,.04))}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--primary: #1E3A5F;--primary-hover: #17304E;--primary-active: #122741;--primary-light: #2F5E93;--primary-soft: #E9EFF6;--primary-soft-2: #DCE7F2;--primary-strong: #142C49;--primary-glow: rgba(30,58,95,.13);--primary-border: #C7D6E6;--secondary: #B0752E;--secondary-hover: #96621F;--secondary-soft: #F6EEE1;--secondary-border: #E4D2B4;--success: #2E7D57;--success-soft: #E7F2EC;--success-border: #BFDCCD;--success-strong: #226646;--warning: #B4770E;--warning-soft: #F9F0DE;--warning-border: #E8D3A8;--warning-strong: #8A5A0B;--danger: #C0392B;--danger-hover: #A63023;--danger-soft: #FAEAE8;--danger-border: #EBC4BF;--danger-strong: #A02E22;--info: #3F6FB5;--info-soft: #EAF0F8;--info-border: #C4D4EA;--info-strong: #34568A;--violet: #6D5A8C;--bg-base: #F7F8FA;--bg-body: #F7F8FA;--bg-card: #FFFFFF;--bg-card-2: #F1F3F6;--bg-input: #FFFFFF;--bg-sidebar: #14273D;--bg-inverse: #0F1B2D;--border: #E4E7EC;--border-strong: #D5DAE1;--border-hover: #C4CBD4;--border-focus: rgba(30,58,95,.55);--text-1: #17202B;--text-2: #3D4754;--text-3: #64707E;--text-4: #98A1AC;--overlay: rgba(30,39,51,.04);--overlay-hover: rgba(30,39,51,.07);--gradient-brand: linear-gradient(135deg, #1E3A5F 0%, #3E8A63 100%);--gradient-dark: linear-gradient(135deg, #14273D 0%, #0E1D30 100%);--gradient-glow: linear-gradient(135deg, #EDF2F8 0%, #F7F8FA 100%);--shadow-xs: 0 1px 2px rgba(16,24,40,.04);--shadow-sm: 0 1px 2px rgba(16,24,40,.05), 0 1px 3px rgba(16,24,40,.06);--shadow-md: 0 2px 4px -2px rgba(16,24,40,.06), 0 6px 16px -4px rgba(16,24,40,.1);--shadow-lg: 0 10px 22px -6px rgba(16,24,40,.14), 0 24px 48px -12px rgba(16,24,40,.16);--shadow-glow: var(--shadow-md);--ring: 0 0 0 3px var(--primary-glow);--ring-danger: 0 0 0 3px rgba(192,57,43,.15);--r-sm: 5px;--r-md: 8px;--r-lg: 12px;--r-xl: 18px;--r-full: 9999px;--fs-xs: 11px;--fs-sm: 12px;--fs-base:13px;--fs-md: 14px;--fs-lg: 15px;--fs-xl: 17px;--fs-2xl: 20px;--fs-3xl: 24px;--fs-4xl: 30px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-7: 32px;--sp-8: 40px;--sp-9: 48px;--ctl-sm: 32px;--ctl-md: 38px;--ctl-lg: 46px;--t-fast: .15s ease;--t-base: .22s cubic-bezier(.4,0,.2,1);--t-spring: .25s cubic-bezier(.34,1.3,.64,1);--sidebar-w: 260px}.auth-right{--text-1: #F2F5F9;--text-2: #C7D0DC;--text-3: #A9B6C6;--text-4: #8494A5}.sidebar{--text-1: #F2F5F9;--text-2: #C7D0DC;--text-3: #8E9BAB;--text-4: #6B7A8C;--border: rgba(255,255,255,.08);--border-strong: rgba(255,255,255,.12);--border-hover: rgba(255,255,255,.16);--overlay: rgba(255,255,255,.05);--overlay-hover: rgba(255,255,255,.09)}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,sans-serif;background:var(--bg-base);color:var(--text-1);font-size:var(--fs-md);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}::selection{background:#1e3a5f29;color:var(--text-1)}.btn-primary::selection,.btn-primary *::selection,.btn-lg.cta-btn::selection,.sidebar ::selection,.cta-section ::selection,.auth-right ::selection,.staff-topbar ::selection{background:#ffffff52;color:#fff}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px;border-radius:2px}.btn:focus-visible,.form-input:focus-visible,.form-select:focus-visible,.form-textarea:focus-visible,.tab-btn:focus-visible{outline:none;box-shadow:var(--ring)}h1,h2,h3,h4,h5{font-family:Inter,-apple-system,sans-serif;font-weight:700;line-height:1.25;letter-spacing:-.02em;color:var(--text-1)}a{color:var(--primary-light);text-decoration:none;transition:color var(--t-fast)}a:hover{color:var(--primary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:var(--ctl-md);padding:0 18px;border-radius:var(--r-md);font-size:var(--fs-md);font-weight:600;font-family:inherit;line-height:1;border:1px solid transparent;cursor:pointer;transition:background var(--t-fast),border-color var(--t-fast),color var(--t-fast),box-shadow var(--t-fast),transform var(--t-fast);white-space:nowrap;position:relative;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--primary);border-color:var(--primary-strong);color:#fff;box-shadow:inset 0 1px #ffffff14,var(--shadow-xs)}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-strong);box-shadow:inset 0 1px #ffffff0f,var(--shadow-sm)}.btn-primary:active{background:var(--primary-active)}.btn-secondary{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border)}.btn-secondary:hover{background:var(--primary-soft-2);border-color:var(--primary-light)}.btn-danger{background:var(--danger-soft);color:var(--danger-strong);border-color:var(--danger-border)}.btn-danger:hover{background:#f5ddd9;border-color:var(--danger)}.btn-danger:focus-visible{box-shadow:var(--ring-danger)}.btn-danger-solid{background:var(--danger);color:#fff;border-color:var(--danger-hover)}.btn-danger-solid:hover{background:var(--danger-hover)}.btn-danger-solid:focus-visible{box-shadow:var(--ring-danger)}.btn-ghost{background:var(--bg-card);color:var(--text-2);border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.btn-ghost:hover{background:var(--bg-card);border-color:var(--border-hover);color:var(--text-1);box-shadow:var(--shadow-sm)}.btn-plain{background:transparent;color:var(--text-3);border-color:transparent;box-shadow:none}.btn-plain:hover{background:var(--overlay-hover);color:var(--text-1)}.btn-sm{height:var(--ctl-sm);padding:0 12px;font-size:var(--fs-base);gap:6px;border-radius:7px}.btn-lg{height:var(--ctl-lg);padding:0 26px;font-size:var(--fs-lg);border-radius:10px}.btn-icon{width:var(--ctl-md);padding:0;flex-shrink:0}.btn-sm.btn-icon{width:var(--ctl-sm)}.btn-loading:before{content:"";width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.btn-secondary.btn-loading:before,.btn-ghost.btn-loading:before{border-color:#1e3a5f40;border-top-color:var(--primary)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-6);box-shadow:var(--shadow-xs);transition:border-color var(--t-base),box-shadow var(--t-base),transform var(--t-base)}.card:hover{border-color:var(--border-hover)}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-5)}.card-head h3,.card-title{font-size:var(--fs-lg);font-weight:650}.card-head p,.card-sub{font-size:var(--fs-base);color:var(--text-3);margin-top:2px}.card-gradient{background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-card-2) 100%);border:1px solid var(--border)}.card-glow{box-shadow:var(--shadow-md);border-color:var(--primary-border)}.icon-chip{width:34px;height:34px;border-radius:var(--r-md);background:var(--primary-soft);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.icon-chip.chip-success{background:var(--success-soft);color:var(--success-strong)}.icon-chip.chip-warning{background:var(--warning-soft);color:var(--warning-strong)}.icon-chip.chip-danger{background:var(--danger-soft);color:var(--danger-strong)}.icon-chip.chip-info{background:var(--info-soft);color:var(--info-strong)}.icon-chip.chip-neutral{background:var(--bg-card-2);color:var(--text-3)}.icon-chip.chip-amber{background:var(--secondary-soft);color:var(--secondary)}.form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--sp-4)}.form-label{font-size:var(--fs-base);font-weight:600;color:var(--text-2);letter-spacing:0;text-transform:none}.form-label .label-hint{font-weight:400;color:var(--text-4)}.form-help{font-size:var(--fs-sm);color:var(--text-4);line-height:1.5}.form-input,.form-select,.form-textarea{background:var(--bg-input);border:1px solid var(--border-strong);border-radius:var(--r-md);color:var(--text-1);font-family:inherit;font-size:var(--fs-md);min-height:var(--ctl-md);padding:8px 12px;transition:border-color var(--t-fast),box-shadow var(--t-fast),background var(--t-fast);width:100%;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;box-shadow:var(--shadow-xs)}.form-input:hover,.form-select:hover,.form-textarea:hover{border-color:var(--border-hover)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--primary-light);box-shadow:var(--ring)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-4)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--bg-card-2);color:var(--text-3);cursor:not-allowed;box-shadow:none}.form-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%2364707E' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}.form-textarea{resize:vertical;min-height:100px;line-height:1.55}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}.input-group{position:relative}.input-group .form-input{padding-left:38px}.input-group .input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-4);pointer-events:none;display:flex;align-items:center}input[type=checkbox],input[type=radio]{accent-color:var(--primary)}.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.switch input{position:absolute;opacity:0;width:0;height:0}.switch .track{width:36px;height:21px;border-radius:var(--r-full);background:var(--border-strong);border:1px solid transparent;position:relative;flex-shrink:0;transition:background var(--t-base)}.switch .track:after{content:"";position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #10182833;transition:transform var(--t-base)}.switch input:checked+.track{background:var(--primary)}.switch input:checked+.track:after{transform:translate(15px)}.switch input:focus-visible+.track{box-shadow:var(--ring)}.switch input:disabled+.track{opacity:.45;cursor:not-allowed}.switch .switch-label{font-size:var(--fs-md);color:var(--text-2);font-weight:500;line-height:1.4}.switch.sw-sm .track{width:30px;height:18px}.switch.sw-sm .track:after{width:12px;height:12px}.switch.sw-sm input:checked+.track:after{transform:translate(12px)}.toggle{position:relative;display:inline-block;width:36px;height:21px;flex-shrink:0;cursor:pointer}.toggle input{opacity:0;width:0;height:0;position:absolute}.toggle-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background:var(--border-strong);border-radius:var(--r-full);transition:background var(--t-base)}.toggle-slider:before{content:"";position:absolute;width:15px;height:15px;left:3px;top:3px;background:#fff;border-radius:50%;box-shadow:0 1px 2px #10182833;transition:transform var(--t-base)}.toggle input:checked+.toggle-slider{background:var(--primary)}.toggle input:checked+.toggle-slider:before{transform:translate(15px)}.toggle input:focus-visible+.toggle-slider{box-shadow:var(--ring)}.swatch-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.swatch{width:26px;height:26px;border-radius:50%;border:2px solid transparent;outline:1px solid rgba(16,24,40,.1);outline-offset:-1px;cursor:pointer;padding:0;transition:transform var(--t-fast),box-shadow var(--t-fast);position:relative}.swatch:hover{transform:scale(1.12)}.swatch.selected{border-color:var(--bg-card);box-shadow:0 0 0 2px var(--primary);transform:scale(1.08)}.swatch-custom{width:26px;height:26px;border-radius:50%;overflow:hidden;position:relative;border:1px dashed var(--border-hover);background:var(--bg-card);color:var(--text-3);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color var(--t-fast),color var(--t-fast)}.swatch-custom:hover{border-color:var(--primary-light);color:var(--primary)}.swatch-custom input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%;height:100%}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--r-full);font-size:var(--fs-sm);font-weight:600;letter-spacing:.01em;line-height:1.5;border:1px solid transparent;white-space:nowrap}.badge-success{background:var(--success-soft);color:var(--success-strong);border-color:var(--success-border)}.badge-warning{background:var(--warning-soft);color:var(--warning-strong);border-color:var(--warning-border)}.badge-danger{background:var(--danger-soft);color:var(--danger-strong);border-color:var(--danger-border)}.badge-info{background:var(--info-soft);color:var(--info-strong);border-color:var(--info-border)}.badge-primary{background:var(--primary-soft);color:var(--primary);border-color:var(--primary-border)}.badge-neutral{background:var(--bg-card-2);color:var(--text-3);border-color:var(--border)}.badge .badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.tag{display:inline-block;padding:3px 10px;border-radius:var(--r-full);font-size:var(--fs-sm);font-weight:500;background:var(--bg-card-2);color:var(--text-3)}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:var(--fs-xs);font-weight:650;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase;padding:10px 16px;background:var(--bg-card-2);border-bottom:1px solid var(--border);white-space:nowrap}.data-table th:first-child{border-top-left-radius:var(--r-md)}.data-table th:last-child{border-top-right-radius:var(--r-md)}.data-table td{padding:13px 16px;font-size:var(--fs-md);color:var(--text-2);border-bottom:1px solid var(--border);vertical-align:middle}.data-table tbody tr{transition:background var(--t-fast)}.data-table tbody tr:hover{background:var(--overlay)}.data-table tbody tr:last-child td{border-bottom:none}.modal{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:#0d141f80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);align-items:center;justify-content:center;padding:20px}.modal.active{display:flex}.modal-content{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-xl);width:100%;max-width:520px;max-height:90vh;overflow-y:auto;animation:modalIn .22s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-lg)}.modal-content.modal-lg{max-width:720px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-5) var(--sp-6);border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--bg-card);z-index:2}.modal-header h3{font-size:var(--fs-xl)}.modal-close{width:32px;height:32px;border-radius:var(--r-md);background:transparent;border:none;color:var(--text-3);cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:background var(--t-fast),color var(--t-fast);flex-shrink:0}.modal-close:hover{background:var(--overlay-hover);color:var(--text-1)}.modal-body{padding:var(--sp-6)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--sp-3);padding:var(--sp-4) var(--sp-6);border-top:1px solid var(--border);background:var(--bg-card)}.divider{display:flex;align-items:center;gap:var(--sp-3);color:var(--text-4);font-size:var(--fs-base);margin:var(--sp-5) 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#64707e40;border-radius:var(--r-full);border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background-color:#64707e73}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-5) var(--sp-6);position:relative;overflow:hidden;box-shadow:var(--shadow-xs);transition:border-color var(--t-base),box-shadow var(--t-base)}.stat-card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.stat-icon{width:36px;height:36px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--sp-3);background:var(--primary-soft);color:var(--primary)}.stat-icon svg{width:18px;height:18px}.stat-value{font-size:26px;font-weight:700;letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text-1);line-height:1.15;margin-bottom:2px}.stat-label{font-size:var(--fs-base);color:var(--text-3);font-weight:500}.stat-change{font-size:var(--fs-sm);margin-top:8px;font-weight:600;display:inline-flex;align-items:center;gap:4px}.stat-change.up{color:var(--success)}.stat-change.down{color:var(--danger)}.avatar{border-radius:var(--r-full);background:var(--primary);color:#fff;font-weight:600;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;letter-spacing:.02em}.avatar-sm{width:32px;height:32px;font-size:var(--fs-sm)}.avatar-md{width:40px;height:40px;font-size:var(--fs-md)}.avatar-lg{width:56px;height:56px;font-size:var(--fs-2xl)}.dropdown{position:relative;display:inline-block}.dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-md);min-width:190px;padding:5px;box-shadow:var(--shadow-lg);z-index:200;overflow:hidden;animation:fadeInDown .16s ease}.dropdown-item{display:flex;align-items:center;gap:10px;padding:9px 10px;font-size:var(--fs-md);color:var(--text-2);cursor:pointer;transition:background var(--t-fast),color var(--t-fast);border:none;border-radius:var(--r-sm);background:none;width:100%;text-align:left;font-family:inherit}.dropdown-item:hover{background:var(--overlay-hover);color:var(--text-1)}.dropdown-item.danger{color:var(--danger-strong)}.dropdown-item.danger:hover{background:var(--danger-soft)}.dropdown-sep{height:1px;background:var(--border);margin:5px 4px}.alert{display:flex;align-items:flex-start;gap:var(--sp-3);padding:12px 14px;border-radius:var(--r-md);font-size:var(--fs-md);line-height:1.5;margin-bottom:var(--sp-4)}.alert-warning{background:var(--warning-soft);border:1px solid var(--warning-border);color:var(--warning-strong)}.alert-danger{background:var(--danger-soft);border:1px solid var(--danger-border);color:var(--danger-strong)}.alert-info{background:var(--info-soft);border:1px solid var(--info-border);color:var(--info-strong)}.alert-success{background:var(--success-soft);border:1px solid var(--success-border);color:var(--success-strong)}.progress{background:var(--bg-card-2);border-radius:var(--r-full);height:6px;overflow:hidden}.progress-bar{height:100%;background:var(--primary);border-radius:var(--r-full);animation:progressFill 1s ease both}.empty-state{text-align:center;padding:var(--sp-9) var(--sp-5);color:var(--text-3)}.empty-state .empty-icon{width:52px;height:52px;margin:0 auto var(--sp-4);border-radius:var(--r-lg);background:var(--bg-card-2);border:1px solid var(--border);color:var(--text-4);display:flex;align-items:center;justify-content:center}.empty-state .empty-icon svg{width:24px;height:24px}.empty-state h3{color:var(--text-1);margin-bottom:6px;font-size:var(--fs-lg);font-weight:650}.empty-state p{font-size:var(--fs-md);margin-bottom:var(--sp-5);max-width:380px;margin-left:auto;margin-right:auto;color:var(--text-3)}.tabs{display:flex;gap:3px;background:var(--bg-card-2);border:1px solid var(--border);border-radius:var(--r-md);padding:3px}.tab-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:32px;padding:5px 14px;border:none;background:transparent;color:var(--text-3);border-radius:6px;font-size:var(--fs-base);font-weight:550;cursor:pointer;transition:background var(--t-fast),color var(--t-fast),box-shadow var(--t-fast);font-family:inherit;white-space:nowrap}.tab-btn.active{background:var(--bg-card);color:var(--text-1);font-weight:600;box-shadow:var(--shadow-sm)}.tab-btn:hover:not(.active){color:var(--text-1)}.tab-panel{display:none}.tab-panel.active{display:block;animation:fadeIn .25s ease}.tabs-underline{display:flex;gap:2px;border-bottom:1px solid var(--border);overflow-x:auto;scrollbar-width:none}.tabs-underline::-webkit-scrollbar{display:none}.tab-u{display:inline-flex;align-items:center;gap:7px;padding:10px 14px;margin-bottom:-1px;border:none;background:none;color:var(--text-3);font-size:var(--fs-md);font-weight:550;font-family:inherit;cursor:pointer;border-bottom:2px solid transparent;transition:color var(--t-fast),border-color var(--t-fast);white-space:nowrap}.tab-u:hover{color:var(--text-1)}.tab-u.active{color:var(--primary);border-bottom-color:var(--primary);font-weight:600}.segmented{display:inline-flex;gap:2px;background:var(--bg-card-2);border:1px solid var(--border);border-radius:var(--r-md);padding:3px}.segmented button,.segmented .seg-item{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:28px;padding:3px 12px;border:none;background:transparent;color:var(--text-3);border-radius:6px;font-size:var(--fs-base);font-weight:550;font-family:inherit;cursor:pointer;transition:background var(--t-fast),color var(--t-fast),box-shadow var(--t-fast);white-space:nowrap}.segmented button:hover:not(.active),.segmented .seg-item:hover:not(.active){color:var(--text-1)}.segmented button.active,.segmented .seg-item.active{background:var(--bg-card);color:var(--text-1);font-weight:600;box-shadow:var(--shadow-sm)}.code-block{position:relative;background:var(--bg-inverse);border:1px solid rgba(255,255,255,.06);border-radius:var(--r-md);overflow:hidden}.code-block pre{margin:0;padding:14px 16px;overflow-x:auto;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:var(--fs-sm);line-height:1.65;color:#d5deea;white-space:pre;-moz-tab-size:2;tab-size:2}.code-block .code-lang{position:absolute;top:8px;right:44px;font-size:10px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;color:#d5deea66;pointer-events:none}.code-copy{position:absolute;top:6px;right:6px;width:30px;height:30px;border-radius:7px;border:1px solid rgba(255,255,255,.1);background:#ffffff0f;color:#afbccb;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background var(--t-fast),color var(--t-fast)}.code-copy:hover{background:#ffffff24;color:#fff}.code-inline{font-family:SFMono-Regular,Consolas,Menlo,monospace;font-size:.86em;background:var(--bg-card-2);border:1px solid var(--border);border-radius:5px;padding:1px 6px;color:var(--primary-light);white-space:nowrap}.skeleton-line{height:12px;border-radius:6px;background:linear-gradient(90deg,#e8ebef 25%,#f1f3f6,#e8ebef 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}.skeleton-block{border-radius:var(--r-lg);background:linear-gradient(90deg,#e8ebef 25%,#f1f3f6,#e8ebef 75%);background-size:200% 100%;animation:shimmer 1.4s infinite}@media(max-width:768px){.form-row{grid-template-columns:1fr}.btn{min-height:44px}.btn-sm{min-height:44px;padding:0 14px}.btn-icon{min-width:44px;min-height:44px}.modal-close{width:40px;height:40px}.form-input,.form-select{min-height:44px;font-size:16px}.form-textarea{font-size:16px}.switch .track{transform:scale(1.1);transform-origin:left center}.modal{padding:0;align-items:stretch}.modal-content,.modal-content.modal-lg{max-width:none;width:100%;height:100%;max-height:100vh;max-height:100dvh;border-radius:0;border-left:none;border-right:none;display:flex;flex-direction:column}.modal-header{padding:14px 20px;flex-shrink:0}.modal-body{padding:20px;flex:1;overflow-y:auto}.modal-footer{padding:12px 20px;flex-shrink:0;position:sticky;bottom:0;background:var(--bg-card)}.modal-footer .btn{flex:1}.tabs{overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tabs::-webkit-scrollbar{display:none}.tab-btn{flex:0 0 auto;min-height:44px}.tab-u{min-height:44px}.stat-card{padding:14px 16px}.stat-icon{width:34px;height:34px;margin-bottom:8px}.stat-value{font-size:22px}.stat-label{font-size:var(--fs-sm)}.empty-state{padding:var(--sp-8) var(--sp-4)}}@media(max-width:480px){.card{padding:var(--sp-4)}.stat-card{padding:12px 14px}.stat-value{font-size:20px}.stat-icon{width:32px;height:32px}.badge{font-size:var(--fs-xs);padding:2px 8px}}.print-view{display:none}@media print{body{background:#fff!important}body *{visibility:hidden}.print-view,.print-view *{visibility:visible}.print-view{display:block!important;position:absolute;left:0;top:0;width:100%;background:#fff;color:#000;padding:24px;font-size:12px}.print-view h1{font-size:20px;color:#000;margin-bottom:4px}.print-view p{color:#333;margin-bottom:16px;font-size:12px}.print-view table{width:100%;border-collapse:collapse;margin-bottom:12px}.print-view th,.print-view td{border:1px solid #999;padding:6px 8px;text-align:left;color:#000}.print-view th{background:#eee;font-weight:700}.sidebar,.topbar,.sidebar-overlay,.no-print{display:none!important}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes toastIn{0%{opacity:0;transform:translate(120%) scale(.9)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toastOut{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(120%) scale(.9)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.96)}}@keyframes pulseDot{0%,to{transform:none;opacity:1}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes glow{0%,to{box-shadow:var(--shadow-sm)}}@keyframes ripple{0%{transform:scale(0);opacity:.6}to{transform:scale(4);opacity:0}}@keyframes tableAvailable{0%,to{box-shadow:0 0 #10b98166}50%{box-shadow:0 0 0 8px #10b98100}}@keyframes tableBlink{0%,to{opacity:1}50%{opacity:.7}}@keyframes countUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes modalIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes bgPan{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes bounce{0%,to{transform:translateY(0);animation-timing-function:ease-in}50%{transform:translateY(-16px);animation-timing-function:ease-out}}@keyframes wave{0%{transform:rotate(0)}20%{transform:rotate(14deg)}40%{transform:rotate(-8deg)}60%{transform:rotate(14deg)}80%{transform:rotate(-4deg)}to{transform:rotate(0)}}@keyframes progressFill{0%{width:0%}to{width:var(--target-width, 100%)}}.anim-fade-in{animation:fadeIn .4s ease both}.anim-fade-in-up{animation:fadeInUp .4s ease both}.anim-fade-in-down{animation:fadeInDown .4s ease both}.anim-fade-in-left{animation:fadeInLeft .4s ease both}.anim-fade-in-right{animation:fadeInRight .4s ease both}.anim-scale-in{animation:scaleIn .3s ease both}.anim-float,.anim-pulse{animation:none}.anim-spin{animation:spin 1s linear infinite}.anim-glow{animation:none}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}.delay-700{animation-delay:.7s}.delay-800{animation-delay:.8s}.hover-lift{transition:transform .2s ease,box-shadow .2s ease}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.hover-scale{transition:transform .15s ease}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow .2s ease}.hover-glow:hover{box-shadow:var(--shadow-md)}.btn-ripple{position:relative;overflow:hidden}.btn-ripple:after{content:none}.btn-ripple:active:after{animation:none}.page-enter{animation:fadeInUp .35s ease both}.table-card.available,.table-card.reserved{animation:none}.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s cubic-bezier(.34,1.56,.64,1)}.reveal.visible{opacity:1;transform:translateY(0)}.hero-gradient{background:linear-gradient(135deg,#1e3a5f,#142c49)}.fade-enter-active{transition:opacity .28s ease,transform .28s cubic-bezier(.22,1,.36,1)}.fade-leave-active{transition:opacity .16s ease}.fade-enter-from{opacity:0;transform:translateY(8px)}.fade-leave-to{opacity:0}.skeleton{background:linear-gradient(90deg,#e8ebef 25%,#f1f3f6,#e8ebef 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:8px}.stats-grid>.stat-card{animation:fadeInUp .45s cubic-bezier(.22,1,.36,1) both}.stats-grid>.stat-card:nth-child(2){animation-delay:.06s}.stats-grid>.stat-card:nth-child(3){animation-delay:.12s}.stats-grid>.stat-card:nth-child(4){animation-delay:.18s}.stats-grid>.stat-card:nth-child(5){animation-delay:.24s}.stats-grid>.stat-card:nth-child(6){animation-delay:.3s}.card,.menu-item-card,.reservation-row,.feature-card,.service-card{transition:border-color var(--t-base),box-shadow var(--t-base),transform var(--t-base)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-w);background:var(--bg-sidebar);border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:transform var(--t-base);overflow-y:auto;overflow-x:hidden}.sidebar-header{padding:var(--sp-5) var(--sp-4);border-bottom:1px solid var(--border)}.sidebar-logo{display:flex;align-items:center;gap:10px;margin-bottom:var(--sp-4)}.sidebar-logo-icon{width:32px;height:32px;background:linear-gradient(160deg,#2f5e93,#1e3a5f);border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:inset 0 1px #ffffff24}.sidebar-logo-text{font-size:var(--fs-xl);font-weight:700;color:#f2f5f9;letter-spacing:-.02em}.restaurant-selector{background:#ffffff0a;border:1px solid var(--border-strong);border-radius:var(--r-md);padding:8px 10px;display:flex;align-items:center;gap:10px;cursor:pointer;transition:border-color var(--t-fast),background var(--t-fast)}.restaurant-selector:hover{border-color:var(--border-hover);background:#ffffff12}.restaurant-selector .restaurant-name{font-size:var(--fs-base);font-weight:600;color:var(--text-1);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.restaurant-selector .selector-chevron{color:var(--text-4);display:inline-flex;align-items:center}.sidebar-nav{padding:var(--sp-4) var(--sp-3);flex:1}.nav-section-label{font-size:10px;font-weight:700;color:var(--text-4);letter-spacing:.09em;text-transform:uppercase;padding:4px 10px;margin:var(--sp-4) 0 4px}.nav-section-label:first-child{margin-top:0}.sidebar-link{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-md);color:var(--text-3);font-size:var(--fs-md);font-weight:500;transition:background var(--t-fast),color var(--t-fast);cursor:pointer;text-decoration:none;margin-bottom:1px;position:relative}.sidebar-link:hover{background:var(--overlay);color:var(--text-1)}.sidebar-link.active{background:#5f8dc029;color:#edf3fa;font-weight:600}.sidebar-link.active:before{content:"";position:absolute;left:-12px;top:7px;bottom:7px;width:3px;border-radius:0 3px 3px 0;background:#5b8bc4}.sidebar-link .link-icon{width:20px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.8}.sidebar-link.active .link-icon{opacity:1;color:#8fb4dc}.sidebar-link .link-badge{margin-left:auto;background:#5b8bc4;color:#0e1d30;font-size:10px;font-weight:700;padding:2px 7px;border-radius:var(--r-full);min-width:18px;text-align:center}.sidebar-link[data-pro-feature]{opacity:.55;cursor:pointer}.sidebar-link[data-pro-feature]:hover{opacity:.8}.sidebar-link[data-pro-feature].pro-unlocked{opacity:1}.pro-lock{margin-left:auto;display:inline-flex;align-items:center;opacity:.7}.sidebar-link.pro-unlocked .pro-lock{display:none}@keyframes scaleInPop{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.sidebar-footer{padding:var(--sp-4) var(--sp-3);border-top:1px solid var(--border)}.sidebar-user{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--r-md);cursor:pointer;transition:background var(--t-fast)}.sidebar-user:hover{background:var(--overlay)}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{font-size:var(--fs-base);font-weight:600;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-email{font-size:var(--fs-xs);color:var(--text-4);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-content{margin-left:var(--sidebar-w);flex:1;min-height:100vh;display:flex;flex-direction:column;transition:margin-left var(--t-base)}.app-layout.sidebar-collapsed .sidebar{transform:translate(-100%)}.app-layout.sidebar-collapsed .main-content{margin-left:0}.topbar{position:sticky;top:0;z-index:50;background:#f7f8fad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);padding:0 var(--sp-7);height:60px;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-5)}.topbar-left{display:flex;align-items:center;gap:var(--sp-4)}.topbar-title{font-size:var(--fs-lg);font-weight:650;letter-spacing:-.01em}.topbar-right{display:flex;align-items:center;gap:10px}.topbar-search{display:flex;align-items:center;gap:10px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-full);padding:7px 16px;font-size:var(--fs-md);color:var(--text-3);cursor:pointer;transition:border-color var(--t-fast)}.topbar-search:hover{border-color:var(--border-hover)}.page-content{padding:var(--sp-7);flex:1}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--sp-6);gap:var(--sp-4)}.page-header-left h1{font-size:var(--fs-2xl);margin-bottom:3px}.page-header-left p{font-size:var(--fs-base);color:var(--text-3);max-width:560px}.page-header-actions{display:flex;gap:10px;flex-shrink:0;flex-wrap:wrap}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:var(--sp-4);margin-bottom:var(--sp-6)}.reservation-row{display:flex;align-items:center;gap:var(--sp-3);padding:13px var(--sp-4);border-radius:var(--r-md);background:var(--bg-card);border:1px solid var(--border);margin-bottom:var(--sp-2);box-shadow:var(--shadow-xs);transition:border-color var(--t-fast),box-shadow var(--t-fast)}.reservation-row:hover{border-color:var(--border-hover);box-shadow:var(--shadow-sm)}.reservation-time{font-size:var(--fs-xl);font-weight:700;color:var(--text-1);font-variant-numeric:tabular-nums;min-width:52px;letter-spacing:-.01em}.reservation-info{flex:1;min-width:0}.reservation-name{font-size:var(--fs-md);font-weight:600;color:var(--text-1)}.reservation-meta{font-size:var(--fs-sm);color:var(--text-3)}.menu-item-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-xs);transition:border-color var(--t-base),box-shadow var(--t-base),transform var(--t-base)}.menu-item-card:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.menu-item-img{width:100%;height:150px;object-fit:cover;background:var(--bg-card-2);display:block}.menu-item-img-placeholder{width:100%;height:150px;background:var(--bg-card-2);display:flex;align-items:center;justify-content:center;font-size:34px;color:var(--text-4)}.menu-item-body{padding:var(--sp-4)}.menu-item-name{font-size:var(--fs-lg);font-weight:600;margin-bottom:3px}.menu-item-desc{font-size:var(--fs-sm);color:var(--text-3);margin-bottom:10px;line-height:1.5}.menu-item-footer{display:flex;align-items:center;justify-content:space-between}.menu-item-price{font-size:var(--fs-lg);font-weight:700;color:var(--primary);font-variant-numeric:tabular-nums}.menu-item-actions{display:flex;gap:6px}.notif-btn{position:relative;width:36px;height:36px;border-radius:var(--r-md);background:var(--bg-card);border:1px solid var(--border-strong);color:var(--text-3);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color var(--t-fast),color var(--t-fast),box-shadow var(--t-fast);box-shadow:var(--shadow-xs)}.notif-btn:hover{border-color:var(--border-hover);color:var(--text-1);box-shadow:var(--shadow-sm)}.notif-count{position:absolute;top:-4px;right:-4px;background:var(--danger);color:#fff;font-size:9px;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg-base)}.menu-toggle{display:none;width:36px;height:36px;border-radius:var(--r-md);background:var(--bg-card);border:1px solid var(--border-strong);color:var(--text-1);cursor:pointer;align-items:center;justify-content:center}.chart-container{position:relative;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-6);box-shadow:var(--shadow-xs)}.chart-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);margin-bottom:var(--sp-5)}.chart-title{font-size:var(--fs-lg);font-weight:650}.sub-banner{background:var(--warning-soft);border:1px solid var(--warning-border);border-radius:var(--r-lg);padding:var(--sp-4) var(--sp-6);display:flex;align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-6)}@media(max-width:1024px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:var(--shadow-lg)}.main-content{margin-left:0}.menu-toggle{display:flex;min-width:44px;min-height:44px}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:#0d141f8c;z-index:99;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sidebar-overlay.active{display:block}.sidebar-link{padding:12px 10px;min-height:44px}}@media(max-width:768px){.page-content{padding:var(--sp-4) var(--sp-3)}.page-header{flex-direction:column}.page-header-actions{width:100%}.page-header-actions .btn{flex:1 1 auto}.stats-grid{grid-template-columns:1fr 1fr;gap:var(--sp-3);margin-bottom:var(--sp-5)}.topbar{padding:0 10px;gap:var(--sp-2)}.topbar-title{position:absolute;left:50%;transform:translate(-50%);max-width:44%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:center;font-size:var(--fs-lg)}.topbar-right{margin-left:auto;max-width:62%;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.topbar-right::-webkit-scrollbar{display:none}.topbar-avatar{display:inline-flex!important}.reservation-row{flex-wrap:wrap;align-items:flex-start;row-gap:10px;padding:14px}.reservation-time{font-size:var(--fs-lg);min-width:auto}.reservation-info{flex:1 1 60%;min-width:0}.reservation-meta{line-height:1.5}.reservation-row>.btn{flex:1 1 auto;min-height:44px}.menu-grid{grid-template-columns:1fr!important}.menu-item-img,.menu-item-img-placeholder{height:170px}.orders-grid,.members-grid,.ev-grid,.qr-grid{grid-template-columns:1fr!important}.toast-container{left:12px!important;right:12px!important;top:12px!important;align-items:center}.sub-banner{flex-wrap:wrap;padding:14px 16px}.chart-container{padding:var(--sp-4)}}@media(max-width:480px){.page-content{padding:var(--sp-3) 10px}.stats-grid{gap:10px}.topbar-title{max-width:38%;font-size:var(--fs-md)}.sub-badge{display:none}.reservation-info{flex:1 1 100%}}
