:root{--cds-background:#fff;--cds-layer-01:#f4f4f4;--cds-layer-02:#e0e0e0;--cds-layer-hover:#e8e8e8;--cds-text-primary:#161616;--cds-text-secondary:#525252;--cds-text-helper:#6f6f6f;--cds-text-disabled:#8d8d8d;--cds-border-subtle:#c6c6c6;--cds-border-muted:#e0e0e0;--cds-button-primary:#0f62fe;--cds-button-primary-hover:#0353e9;--cds-button-primary-active:#002d9c;--cds-support-error:#da1e28;--cds-support-error-hover:#b81921;--cds-support-success:#24a148;--cds-support-warning:#f1c21b;--cds-focus:#0f62fe;--cds-blue-10:#edf5ff;--cds-green-10:#defbe6;--cds-red-10:#fff1f1;--cds-yellow-10:#fcf4d6;--cds-gray-80:#393939;--cds-gray-90:#262626;--cds-gray-100:#161616;color:var(--cds-text-primary);background:var(--cds-background);letter-spacing:.16px;font-family:IBM Plex Sans,Segoe UI,Microsoft YaHei,Arial,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:14px}*{box-sizing:border-box}html{background:var(--cds-background)}body{background:var(--cds-background);margin:0;padding-bottom:36px}.site-icp-footer{z-index:1000;border-top:1px solid var(--cds-border-muted);min-height:36px;color:var(--cds-text-secondary);background:#fffffff5;justify-content:center;align-items:center;padding:8px 16px;font-size:12px;line-height:1.33;display:flex;position:fixed;bottom:0;left:0;right:0}.site-icp-footer a{color:inherit;text-decoration:none}.site-icp-footer a:hover{color:var(--cds-button-primary);text-decoration:underline}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--cds-focus);outline-offset:-2px}.page-center,.login-screen{background:var(--cds-layer-01);place-items:center;min-height:100vh;display:grid}.login-panel{background:var(--cds-background);border:1px solid var(--cds-border-muted);border-radius:0;gap:16px;width:min(432px,100vw - 32px);padding:32px;display:grid}.login-panel h1,.topbar h1{color:inherit;letter-spacing:0;margin:0;font-size:20px;font-weight:400;line-height:1.4}.login-panel h1{font-size:28px;font-weight:300;line-height:1.25}.login-subtitle{color:var(--cds-text-secondary);margin:-6px 0 4px;font-size:15px}.employee-login-screen{background:#f4f4f4;padding:24px}.admin-login-screen{background:#eef2f7;padding:24px}.login-panel.admin-login-panel,.login-panel.employee-login-panel{border-color:#d0d7de;border-radius:8px;gap:18px;width:min(420px,100vw - 32px);padding:32px;position:relative;overflow:hidden;box-shadow:0 18px 50px #1616161f}.login-panel.admin-login-panel{border-color:#cbd5e1;box-shadow:0 18px 50px #101f3d2e}.login-panel.admin-login-panel:before,.login-panel.employee-login-panel:before{content:"";background:var(--cds-button-primary);height:4px;position:absolute;inset:0 0 auto}.login-panel.admin-login-panel:before{background:#101f3d}.login-form-heading{align-items:center;gap:14px;margin-bottom:4px;display:flex}.login-form-mark{background:var(--cds-button-primary);color:#fff;border-radius:6px;flex:none;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.admin-login-panel .login-form-mark{background:#101f3d}.login-form-heading h1{font-size:26px;font-weight:600}.login-form-heading p{margin:4px 0 0}.employee-login-panel input{background:#f4f4f4;min-height:46px}.admin-login-panel input{background:#f8fafc;min-height:46px}.admin-login-panel .primary{background:#2563eb;border-color:#2563eb;min-height:46px;margin-top:4px;font-weight:600}.admin-login-panel .primary:hover{background:#1d4ed8;border-color:#1d4ed8}.employee-login-submit{min-height:46px;margin-top:4px;font-weight:600}.tabs button{background:var(--cds-background);color:var(--cds-text-secondary);border:0;min-height:40px;padding:12px 16px}.tabs .active{background:var(--cds-button-primary);color:#fff}label{color:var(--cds-text-secondary);letter-spacing:.32px;gap:8px;font-size:12px;line-height:1.33;display:grid}input,select,textarea{background:var(--cds-layer-01);width:100%;color:var(--cds-text-primary);border:0;border-bottom:2px solid #0000;border-radius:0;min-height:40px;padding:0 16px}input:hover,select:hover,textarea:hover{background:var(--cds-layer-hover)}input:focus,select:focus,textarea:focus{border-bottom-color:var(--cds-focus)}input::placeholder,textarea::placeholder{color:var(--cds-text-helper)}textarea{resize:vertical;min-height:80px;padding-top:12px;padding-bottom:12px}.app-shell{background:var(--cds-layer-01);min-height:100vh}.topbar{background:var(--cds-gray-100);border-bottom:1px solid var(--cds-gray-80);color:#fff;justify-content:space-between;align-items:center;min-height:56px;padding:0 32px;display:flex}.topbar span{color:var(--cds-border-subtle);letter-spacing:.32px;font-size:12px;line-height:1.33}.topbar-actions,.row-actions,.toolbar-actions,.filters,.toolbar,.section-header,.settings-actions{align-items:center;gap:8px;display:flex}.workspace{padding:24px 32px 40px}.tabs{border-bottom:1px solid var(--cds-border-subtle);background:var(--cds-background);gap:0;margin-bottom:24px;display:flex}.tabs button{border-right:1px solid var(--cds-border-muted);border-bottom:3px solid #0000;border-radius:0;align-items:center;gap:8px;min-height:48px;display:inline-flex}.tabs button:not(.active):hover{background:var(--cds-layer-hover);color:var(--cds-text-primary)}.tabs .active{border-bottom-color:var(--cds-gray-100)}.section,.summary-panel,.day-panel{background:var(--cds-background);border:1px solid var(--cds-border-muted);border-radius:0}.section{padding:24px}.section-header{border-bottom:1px solid var(--cds-border-muted);justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.section h2,.day-panel h2,.summary-panel h2{color:var(--cds-text-primary);letter-spacing:0;margin:0;font-size:20px;font-weight:400;line-height:1.4}.title-with-badge{align-items:center;gap:8px;display:flex}.ai-title-badge{background:var(--cds-blue-10);min-height:24px;color:var(--cds-button-primary);border:1px solid #78a9ff;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:600;line-height:1.33;display:inline-flex}.section p{color:var(--cds-text-secondary);margin:8px 0 0;line-height:1.5}.primary,.secondary,.danger,.ghost,.upload-button,.icon-button{background:var(--cds-background);min-height:40px;color:var(--cds-text-primary);border:1px solid #0000;border-radius:0;justify-content:center;align-items:center;gap:8px;padding:10px 16px;line-height:1.29;text-decoration:none;transition:background .12s,border-color .12s,color .12s;display:inline-flex}.primary{background:var(--cds-button-primary);border-color:var(--cds-button-primary);color:#fff}.primary:hover,.upload-button:hover{background:var(--cds-button-primary-hover);border-color:var(--cds-button-primary-hover);color:#fff}.primary:active{background:var(--cds-button-primary-active);border-color:var(--cds-button-primary-active)}.secondary{background:var(--cds-gray-80);border-color:var(--cds-gray-80);color:#fff}.secondary:hover{background:#4c4c4c;border-color:#4c4c4c}.danger{background:var(--cds-support-error);border-color:var(--cds-support-error);color:#fff}.danger:hover{background:var(--cds-support-error-hover);border-color:var(--cds-support-error-hover)}.ghost{color:var(--cds-button-primary);background:0 0;border-color:#0000}.ghost:hover{background:var(--cds-layer-hover);color:var(--cds-button-primary-hover)}.icon-button{border-color:var(--cds-border-subtle);width:40px;padding:0}.spin-icon{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.topbar .icon-button{border-color:var(--cds-gray-80);background:var(--cds-gray-100);color:#fff}.topbar .icon-button:hover{background:var(--cds-gray-80)}.upload-button{background:var(--cds-button-primary);border-color:var(--cds-button-primary);color:#fff;position:relative;overflow:hidden}.upload-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.error{color:var(--cds-support-error);font-size:12px;line-height:1.33}.notice{background:var(--cds-blue-10);border:1px solid #78a9ff;border-left:4px solid var(--cds-button-primary);color:var(--cds-text-primary);border-radius:0;padding:12px 16px;line-height:1.5}.pending-order-warning{color:var(--cds-support-error)}.table-scroll{border:1px solid var(--cds-border-muted);background:var(--cds-background);overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:900px}.data-table th,.data-table td{border-bottom:1px solid var(--cds-border-muted);text-align:left;vertical-align:top;padding:12px 16px}.data-table th{background:var(--cds-layer-01);color:var(--cds-text-secondary);letter-spacing:.32px;font-size:12px;font-weight:600;line-height:1.33}.data-table tbody tr:hover{background:var(--cds-blue-10)}.data-table td input,.data-table td select{min-width:120px}.board-table select,.board-order-cell{min-width:136px}.board-order-cell .pending-select{border-color:var(--cds-support-warning);background:var(--cds-yellow-10)}.board-stock-summary{color:var(--cds-text-secondary);gap:3px;margin-top:6px;font-size:11px;line-height:1.25;display:grid}.board-stock-summary button{background:var(--cds-green-10);color:#0e6027;cursor:pointer;width:fit-content;font:inherit;white-space:nowrap;border:1px solid #42be65;border-radius:999px;padding:1px 6px;font-weight:600}.board-stock-summary button:hover{background:#defbe6;border-color:#24a148}.payment-board-row td:first-child{box-shadow:inset 4px 0 #0000}.payment-board-row.reconciled td{background:#f0fdf4}.payment-board-row.reconciled td:first-child{box-shadow:inset 4px 0 #24a148}.payment-board-row.pending td,.payment-board-row.underpaid td{background:#fffbeb}.payment-board-row.pending td:first-child,.payment-board-row.underpaid td:first-child{box-shadow:inset 4px 0 #f1c21b}.payment-board-row.unpaid td{background:#fff7ed}.payment-board-row.unpaid td:first-child{box-shadow:inset 4px 0 #f97316}.payment-board-row.overpaid td,.payment-board-row.duplicate_transaction td{background:#fff1f1}.payment-board-row.overpaid td:first-child,.payment-board-row.duplicate_transaction td:first-child{box-shadow:inset 4px 0 #da1e28}.toolbar{background:var(--cds-background);border:1px solid var(--cds-border-muted);margin-bottom:16px;padding:8px}.toolbar-title{min-width:176px;color:var(--cds-text-primary);align-items:center;gap:8px;display:flex}.employee-grid{grid-template-columns:minmax(0,1fr) 336px;align-items:start;gap:16px;display:grid}.menu-days{gap:16px;display:grid}.week-cutoff-bar{border:1px solid var(--cds-border-muted);border-left:4px solid var(--cds-button-primary);background:var(--cds-blue-10);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.week-cutoff-main,.week-cutoff-meta{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.week-cutoff-main span,.week-cutoff-meta{color:var(--cds-text-secondary);font-size:13px;line-height:1.38}.week-cutoff-main strong{color:var(--cds-text-primary);font-size:15px;line-height:1.33}.day-panel{padding:16px}.day-panel header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;display:flex}.collapsible-day-header{cursor:pointer}.collapsible-day-header:hover .collapse-button{background:var(--cds-layer-hover);color:var(--cds-text-primary)}.day-title-row,.day-title-main,.day-actions{align-items:center;gap:8px;display:flex}.day-title-row{flex:auto;justify-content:space-between;min-width:0}.day-title-main{flex-wrap:wrap;min-width:0}.day-panel h2 span{color:var(--cds-text-secondary);letter-spacing:.16px;font-size:14px;font-weight:400;line-height:1.29}.day-panel em{color:#8e6a00;letter-spacing:.32px;font-size:12px;font-style:normal;line-height:1.33;display:inline-block}.day-actions{flex-wrap:nowrap;flex:none;justify-content:flex-end;gap:4px}.compact-action{min-height:28px;padding:4px 8px}.collapse-button{width:24px;min-height:24px;color:var(--cds-text-secondary);background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.collapse-button:hover{background:var(--cds-layer-hover);color:var(--cds-text-primary)}.collapse-button svg{transition:transform .16s}.collapse-button svg.collapsed{transform:rotate(-90deg)}.package-list{gap:8px;display:grid}.package-row{border:1px solid var(--cds-border-muted);background:var(--cds-layer-01);border-left:4px solid #0000;border-radius:0;grid-template-columns:20px 1fr;align-items:start;gap:12px;padding:16px}.package-row:hover{background:var(--cds-layer-hover)}.package-row.sold-out{color:var(--cds-text-disabled);background:var(--cds-layer-01)}.package-row.sold-out .package-info{opacity:.72}.package-row:has(input:checked){background:var(--cds-blue-10);border-left-color:var(--cds-button-primary)}.package-row input{width:auto;min-height:auto;margin-top:4px}.package-info{width:100%;min-width:0;max-width:760px}.package-head,.summary-line,.total-line{justify-content:space-between;gap:16px;display:flex}.summary-order{text-align:right;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.summary-date{white-space:nowrap;align-items:baseline;gap:6px;display:flex}.summary-date span{color:var(--cds-text-secondary);letter-spacing:.32px;font-size:12px;line-height:1.33}.summary-meal{text-align:right;justify-self:end;min-width:0}.package-head{flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:6px 14px}.package-head strong,.summary-line strong{font-weight:600}.package-head .package-price,.total-line strong,.menu-package-preview .package-price{color:var(--cds-button-primary)}.package-head .package-price{font-weight:700}.package-stock{background:var(--cds-green-10);color:#0e6027;border:1px solid #42be65;border-radius:999px;align-items:center;min-height:22px;padding:2px 8px;font-size:12px;font-weight:600;line-height:1.33;display:inline-flex}.package-stock.sold-out,.board-stock-summary .sold-out{background:var(--cds-red-10);color:var(--cds-support-error);border-color:#ffb3b8}.dish-list{gap:8px;width:fit-content;min-width:min(420px,100%);max-width:100%;margin-top:10px;display:grid}.dish-priority,.dish-secondary{flex-wrap:wrap;gap:8px;display:flex}.dish-priority{border:1px solid var(--cds-border-muted);background:#fff;gap:6px;padding:10px 12px;display:grid}.dish-priority .dish-item{background:0 0;border:0;padding:0}.dish-secondary .dish-item{flex:calc(50% - 4px)}.dish-item{background:var(--cds-background);min-width:0;color:var(--cds-text-secondary);border:1px solid #0000;align-items:flex-start;gap:8px;padding:8px 10px;font-size:13px;line-height:1.45;display:flex}.dish-label{min-width:42px;color:var(--cds-text-primary);text-align:center;border:1px solid #0000;flex:none;padding:2px 6px;font-size:12px;font-weight:600;line-height:1.33}.dish-value{overflow-wrap:anywhere;min-width:0;color:var(--cds-text-primary);padding-top:1px}.dish-main .dish-label{background:var(--cds-red-10);color:#a2191f;border-color:#0000}.dish-side .dish-label{background:var(--cds-yellow-10);color:#8e6a00;border-color:#0000}.dish-vegetable .dish-label{background:var(--cds-green-10);color:#0e6027}.dish-staple .dish-label{background:var(--cds-blue-10);color:var(--cds-button-primary-active)}.dish-soup .dish-label{color:#7c5bb8;background:#f2eaff}.summary-panel{gap:16px;padding:16px;display:grid;position:sticky;top:72px}.summary-line{color:var(--cds-text-secondary);grid-template-columns:auto 58px minmax(0,1fr);align-items:center;gap:8px;display:grid}.summary-line .status-badge{justify-self:start}.total-line{border-top:1px solid var(--cds-border-muted);padding-top:16px;font-size:16px}.profile-box{border-top:1px solid var(--cds-border-muted);gap:12px;padding-top:16px;display:grid}.profile-box h3{margin:0;font-size:16px;font-weight:600;line-height:1.5}.reminder-disabled-notice{background:var(--cds-red-10);border-color:#ffb3b8;border-left-color:var(--cds-support-error);color:var(--cds-support-error);font-weight:600}.payment-box{border-top:1px solid var(--cds-border-muted);gap:12px;padding-top:16px;display:grid}.payment-head,.payment-amounts,.payment-submit{align-items:center;gap:8px;display:flex}.payment-head,.payment-amounts{justify-content:space-between}.payment-head h3{margin:0;font-size:16px;font-weight:600}.payment-amounts{color:var(--cds-text-secondary);font-size:13px}.payment-amounts strong{color:var(--cds-button-primary)}.payment-qr{aspect-ratio:1;object-fit:contain;border:1px solid var(--cds-border-muted);background:#fff;width:100%;max-width:100%}.payment-qr-button{cursor:zoom-in;background:0 0;border:0;width:100%;min-height:auto;padding:0}.payment-qr-button:hover .payment-qr{border-color:var(--cds-button-primary)}.payment-submit{align-items:stretch;gap:8px;display:grid}.payment-submit input{width:100%;min-width:0}.payment-submit-button{background:#198038;border-color:#198038;justify-content:center;width:100%}.payment-submit-button:hover{background:#0e6027;border-color:#0e6027}.payment-help-link{min-height:auto;color:var(--cds-button-primary);background:0 0;border:0;justify-self:start;padding:0;font-size:13px;line-height:1.38}.payment-help-link:hover{color:var(--cds-button-primary-hover);background:0 0;text-decoration:underline}.payment-status,.payment-transaction{border:1px solid var(--cds-border-subtle);border-radius:999px;align-items:center;width:fit-content;padding:4px 8px;font-size:12px;line-height:1.33;display:inline-flex}.payment-status.reconciled,.payment-transaction.matched{background:var(--cds-green-10);color:#0e6027;border-color:#42be65}.payment-status.pending,.payment-status.underpaid,.payment-transaction.unmatched,.payment-transaction.submitted{background:var(--cds-yellow-10);color:#684e00;border-color:var(--cds-support-warning)}.payment-status.overpaid,.payment-status.duplicate_transaction,.payment-transaction.duplicate,.payment-transaction.invalid{color:var(--cds-support-error);background:#fff1f1;border-color:#ffb3b8}.payment-status.unpaid,.payment-status.not_required{background:var(--cds-layer-01);color:var(--cds-text-secondary)}.payment-transactions{flex-wrap:wrap;gap:6px;display:flex}.payment-qr-preview{color:var(--cds-text-secondary);gap:8px;font-size:13px;display:grid}.payment-qr-preview img{aspect-ratio:1;object-fit:contain;border:1px solid var(--cds-border-muted);background:#fff;width:144px}.payment-qr-preview-button{cursor:zoom-in;background:0 0;border:0;width:fit-content;min-height:auto;padding:0}.payment-qr-preview-button:hover img{border-color:var(--cds-button-primary)}.payment-qr-upload{justify-self:start}.payment-qr-modal-overlay{z-index:1000;background:#1616169e;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.payment-qr-modal{background:var(--cds-background);border:1px solid var(--cds-border-muted);gap:16px;width:min(440px,100%);padding:16px;display:grid}.payment-qr-modal-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.payment-qr-modal-head h3{margin:0;font-size:18px;font-weight:600}.payment-qr-large{aspect-ratio:1;object-fit:contain;border:1px solid var(--cds-border-muted);background:#fff;width:100%}.payment-download-link{justify-content:center;text-decoration:none}.payment-help-modal{max-height:calc(100vh - 40px);overflow:auto}.payment-help-image{border:1px solid var(--cds-border-muted);background:#fff;width:100%;height:auto;display:block}.muted-text{color:var(--cds-text-secondary);font-size:13px}.checkbox{align-items:center;gap:8px;display:flex}.checkbox input,input[type=checkbox],input[type=radio]{width:auto;min-height:auto;accent-color:var(--cds-button-primary)}.search-box{background:var(--cds-layer-01);width:min(360px,100%);min-height:40px;color:var(--cds-text-secondary);border:0;border-bottom:2px solid #0000;border-radius:0;grid-template-columns:18px 1fr;align-items:center;padding:0 12px;display:grid}.search-box:focus-within{border-bottom-color:var(--cds-focus)}.search-box input{background:0 0;border:0;height:38px;min-height:0;padding:0 4px}.settings-grid{grid-template-columns:repeat(3,minmax(260px,1fr));align-items:stretch;gap:24px;display:grid}.settings-card{background:var(--cds-layer-01);border:1px solid var(--cds-border-muted);align-content:start;gap:12px;padding:16px;display:grid}.settings-grid>.settings-actions{background:0 0;border:0;padding:0}.settings-subtitle{border-top:1px solid var(--cds-border-muted);margin-top:12px;padding-top:16px}.exception-editor{grid-template-columns:1fr;align-items:end;gap:12px;display:grid}.settings-exception-scroll{border-radius:8px}.exception-table{min-width:440px}.payment-table{min-width:1220px}.payment-import-preview{gap:12px;display:grid}.payment-import-header{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.payment-import-header h3{margin:0;font-size:16px;font-weight:600;line-height:1.4}.payment-import-table{min-width:980px}.payment-import-result,.payment-direction{border:1px solid var(--cds-border-subtle);border-radius:999px;align-items:center;width:fit-content;padding:4px 8px;font-size:12px;line-height:1.33;display:inline-flex}.payment-direction.income{background:var(--cds-green-10);color:#0e6027;border-color:#42be65}.payment-direction.expense{color:var(--cds-support-error);background:#fff1f1;border-color:#ffb3b8}.payment-import-result.imported{background:var(--cds-green-10);color:#0e6027;border-color:#42be65}.payment-import-result.skipped{background:var(--cds-layer-01);color:var(--cds-text-secondary)}.payment-import-transaction{gap:8px;display:grid}.payment-admin-actions{flex-wrap:nowrap;align-items:center;gap:6px;display:flex}.payment-counterparty{color:var(--cds-text-secondary);font-size:12px;line-height:1.33}.payment-transaction-entry{flex:auto;grid-template-columns:minmax(180px,1fr) auto;align-items:center;gap:6px;min-width:260px;display:grid}.payment-transaction-entry input{min-width:180px}.payment-admin-actions .compact-action{white-space:nowrap}.payment-inline-action{color:var(--cds-button-primary);background:0 0;border:0;min-height:auto;padding:0 0 0 4px;font-size:12px;line-height:1.33}.payment-inline-action:hover{color:var(--cds-button-primary-hover);text-decoration:underline}.payment-cash-modal{width:min(420px,100%)}.payment-cash-modal-body{grid-template-columns:1fr 1fr;gap:12px;display:grid}.payment-cash-modal-body div{background:var(--cds-layer-01);border:1px solid var(--cds-border-muted);gap:4px;padding:12px;display:grid}.payment-cash-modal-body span{color:var(--cds-text-secondary);font-size:12px}.payment-cash-modal-actions{justify-content:flex-end;gap:8px;display:flex}.admin-payment-transactions{max-width:420px}.settings-actions{grid-column:1/-1;justify-content:flex-end}.settings-actions .notice{margin-right:8px}.menu-preview-list{gap:16px;display:grid}.preview-toolbar,.preview-day header,.status-actions,.preview-meta{align-items:center;gap:8px;display:flex}.preview-toolbar,.preview-day header{justify-content:space-between}.preview-toolbar{background:var(--cds-layer-01);border:1px solid var(--cds-border-muted);padding:12px 16px}.preview-day{border:1px solid var(--cds-border-muted);background:var(--cds-background);border-radius:0;padding:16px}.preview-day header{margin-bottom:16px}.preview-day header span{color:var(--cds-text-secondary);letter-spacing:.32px;margin-top:4px;font-size:12px;line-height:1.33;display:block}.preview-meta{align-items:end;margin-bottom:16px}.preview-meta label{max-width:192px}.inline-checkbox{min-height:32px;color:var(--cds-text-primary);letter-spacing:0;white-space:nowrap;grid-template-columns:none;align-items:center;gap:6px;font-size:13px;display:inline-flex}.quantity-limit-toggle input{margin:0}.data-table th.quantity-limit-heading,.data-table td.quantity-limit-cell{text-align:center;min-width:168px}.quantity-limit-controls{justify-content:center;align-items:center;gap:8px;min-width:144px;display:flex}.quantity-limit-editor{gap:4px;min-width:96px;display:grid}.quantity-limit-editor input{width:96px;min-width:96px}.quantity-limit-editor span{color:var(--cds-text-secondary);font-size:12px}.status-badge{letter-spacing:.32px;white-space:nowrap;border:1px solid #0000;border-radius:24px;padding:4px 8px;font-size:12px;font-weight:400;line-height:1.33}.status-badge.draft{background:var(--cds-blue-10);color:var(--cds-button-primary);border-color:#78a9ff}.status-badge.saved{background:var(--cds-layer-01);color:var(--cds-text-secondary);border-color:var(--cds-border-subtle)}.status-badge.published{background:var(--cds-green-10);color:#0e6027;border-color:#42be65}.status-badge.modified{background:var(--cds-yellow-10);color:#684e00;border-color:var(--cds-support-warning)}.status-badge.ordered{background:var(--cds-green-10);color:#0e6027;border-color:#42be65}.status-badge.pending{background:var(--cds-yellow-10);color:#684e00;border-color:var(--cds-support-warning)}.status-badge.unordered{background:var(--cds-layer-01);color:var(--cds-text-secondary);border-color:var(--cds-border-subtle)}.published-menu-list{gap:8px;margin-top:24px;display:grid}.list-title,.menu-list-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.list-title{border-top:1px solid var(--cds-border-muted);padding-top:24px}.list-title h3{margin:0;font-size:20px;font-weight:400;line-height:1.4}.list-title p{margin:4px 0 0}.menu-list-row{border:1px solid var(--cds-border-muted);border-left:4px solid var(--cds-border-subtle);background:var(--cds-background);border-radius:0;grid-template-columns:192px minmax(360px,1fr) auto;align-items:start;padding:16px;display:grid}.menu-list-row:hover{background:var(--cds-layer-01)}.menu-list-date{gap:4px;min-width:0;display:grid}.menu-list-date span,.menu-package-preview p{color:var(--cds-text-secondary);font-size:13px}.menu-list-packages,.history-menu-block,.history-menu-list{gap:8px;display:grid}.history-toggle{justify-self:start;margin-top:4px;padding-left:0}.history-menu-list{margin-top:4px}.history-menu-list h4{color:var(--cds-text-secondary);margin:0;font-size:14px;font-weight:600;line-height:1.43}.menu-package-preview{border-left:3px solid var(--cds-button-primary);padding-left:12px}.menu-package-preview strong{align-items:center;gap:8px;font-weight:600;display:flex}.menu-package-preview .package-limit-text{color:var(--cds-support-error);font-size:13px;font-weight:700}.menu-package-preview p{margin:4px 0 0;line-height:1.55}.menu-list-right{justify-items:end;gap:12px;display:grid}.popover-wrap{position:relative}.popover{background:var(--cds-background);border:1px solid var(--cds-border-muted);z-index:5;border-radius:0;gap:12px;width:280px;padding:16px;display:grid;position:absolute;top:48px;right:0;box-shadow:0 2px 6px #0000004d}.empty{color:var(--cds-text-secondary);padding:12px 0;line-height:1.5}.admin-workspace{--admin-bg:#eef2f7;--admin-card:#fff;--admin-card-muted:#f8fafc;--admin-border:#d8e0ea;--admin-border-strong:#cbd5e1;--admin-nav:#101f3d;--admin-nav-hover:#1b315f;--admin-primary:#2563eb;--admin-primary-hover:#1d4ed8;--admin-text:#172033;--admin-muted:#64748b;background:var(--admin-bg);grid-template-columns:220px minmax(0,1fr);align-items:start;gap:20px;min-height:calc(100vh - 56px);padding:20px 24px 36px;display:grid}.admin-workspace .tabs{background:var(--admin-nav);border:0;border-radius:8px;gap:6px;margin:0;padding:12px;display:grid;position:sticky;top:72px;box-shadow:0 12px 28px #101f3d2e}.admin-nav-title{color:#93a4bd;letter-spacing:.32px;padding:8px 10px 12px;font-size:12px;font-weight:600;line-height:1.33}.admin-workspace .tabs button{color:#cbd5e1;background:0 0;border:0;border-radius:6px;justify-content:flex-start;width:100%;min-height:42px;padding:10px 12px;font-weight:600}.admin-workspace .tabs button:not(.active):hover{background:var(--admin-nav-hover);color:#fff}.admin-workspace .tabs .active{background:var(--admin-primary);color:#fff;border:0;box-shadow:0 8px 18px #2563eb47}.admin-workspace>.section{border:1px solid var(--admin-border);background:var(--admin-card);border-radius:8px;min-width:0;padding:0 0 20px;overflow:hidden;box-shadow:0 10px 26px #0f172a0f}.admin-workspace .section-header{border-bottom:1px solid var(--admin-border);background:var(--admin-card);align-items:flex-start;margin:0;padding:18px 20px}.admin-workspace .section-header h2{color:var(--admin-text);font-size:18px;font-weight:600;line-height:1.45}.admin-workspace .section-header p{max-width:760px;color:var(--admin-muted);margin-top:4px;font-size:13px;line-height:1.55}.admin-workspace .section>.filters,.admin-workspace .section>.notice,.admin-workspace .section>.empty,.admin-workspace .section>.table-scroll,.admin-workspace .section>.menu-preview-list,.admin-workspace .section>.published-menu-list,.admin-workspace .section>.order-preview-panel{margin-left:20px;margin-right:20px}.admin-workspace .section>.filters,.admin-workspace .section>.notice,.admin-workspace .section>.empty,.admin-workspace .section>.menu-preview-list,.admin-workspace .section>.order-preview-panel,.admin-workspace .section>.table-scroll{margin-top:16px}.admin-workspace .published-menu-list{margin-top:20px}.admin-workspace .filters,.admin-workspace .preview-toolbar{border:1px solid var(--admin-border);background:var(--admin-card-muted);border-radius:8px;padding:12px}.order-preview-panel{border:1px solid var(--admin-border);background:#fff;border-radius:8px;overflow:hidden}.order-preview-panel .preview-toolbar{border:0;border-bottom:1px solid var(--admin-border);border-radius:0}.order-preview-panel img{object-fit:contain;object-position:top left;background:#fff;width:100%;max-height:520px;display:block}.admin-workspace .primary,.admin-workspace .upload-button{background:var(--admin-primary);border-color:var(--admin-primary);color:#fff;white-space:nowrap;border-radius:6px;min-height:36px;padding:8px 14px;font-weight:600}.admin-workspace .primary:hover,.admin-workspace .upload-button:hover{background:var(--admin-primary-hover);border-color:var(--admin-primary-hover)}.admin-workspace .secondary{border-color:var(--admin-border-strong);color:#334155;white-space:nowrap;background:#fff;border-radius:6px;min-height:36px;padding:8px 12px;font-weight:600}.admin-workspace .secondary:hover{color:#172033;background:#f1f5f9;border-color:#94a3b8}.admin-workspace .danger{color:#b91c1c;white-space:nowrap;background:#fff5f5;border-color:#fecaca;border-radius:6px;min-height:36px;padding:8px 12px;font-weight:600}.admin-workspace .danger:hover{color:#991b1b;background:#fee2e2;border-color:#fca5a5}.admin-workspace .ghost{min-height:34px;color:var(--admin-primary);white-space:nowrap;border-radius:6px;padding:7px 10px}.admin-workspace .ghost:hover{color:var(--admin-primary-hover);background:#eff6ff}.admin-workspace input:not([type=checkbox]):not([type=radio]),.admin-workspace select,.admin-workspace textarea{border:1px solid var(--admin-border-strong);background:#fff;border-radius:6px;min-height:36px;padding:0 10px}.admin-workspace input:not([type=checkbox]):not([type=radio]):hover,.admin-workspace select:hover,.admin-workspace textarea:hover{background:#fff;border-color:#94a3b8}.admin-workspace input:not([type=checkbox]):not([type=radio]):focus,.admin-workspace select:focus,.admin-workspace textarea:focus{border-color:var(--admin-primary);box-shadow:0 0 0 3px #2563eb1f}.admin-workspace textarea{padding-top:8px;padding-bottom:8px}.admin-workspace label{color:#475569;font-weight:600}.admin-workspace .search-box{border:1px solid var(--admin-border-strong);background:#fff;border-radius:6px;min-height:36px}.admin-workspace .search-box:focus-within{border-color:var(--admin-primary);box-shadow:0 0 0 3px #2563eb1f}.admin-workspace .search-box input{height:34px;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0 0 0 4px}.admin-workspace .filters>input[type=date],.admin-workspace .filters>select,.admin-workspace .filters>.department-search{flex:0 0 176px;width:176px}.admin-workspace .filters>.order-search{flex:0 260px;width:260px}.admin-workspace .notice{border:1px solid #bfdbfe;border-left:4px solid var(--admin-primary);color:#1e3a8a;background:#eff6ff;border-radius:8px}.admin-workspace .table-scroll{border:1px solid var(--admin-border);background:#fff;border-radius:8px;overflow:auto}.admin-workspace .data-table th,.admin-workspace .data-table td{white-space:nowrap;border-bottom:1px solid #e5e7eb;padding:10px 12px}.admin-workspace .data-table th{z-index:1;color:#475569;background:#f8fafc;font-weight:700;position:sticky;top:0}.admin-workspace .data-table tbody tr:hover{background:#f8fbff}.admin-workspace .data-table td{color:#243044}.admin-workspace .employee-table th:nth-child(6),.admin-workspace .employee-table th:nth-child(7),.admin-workspace .employee-table .checkbox-cell{text-align:center}.admin-workspace .employee-bulk-checkbox{color:inherit;font:inherit;letter-spacing:inherit;grid-template-columns:none;justify-content:center;align-items:center;gap:6px;display:inline-flex}.admin-workspace .employee-bulk-checkbox input{width:16px;min-height:16px;margin:0}.admin-workspace .employee-table .checkbox-cell{vertical-align:middle}.admin-workspace .employee-table .checkbox-cell input{margin:0 auto;display:block}.admin-workspace .data-table .table-actions{flex-wrap:nowrap}.admin-workspace .row-actions{gap:6px}.admin-workspace .row-actions .secondary,.admin-workspace .row-actions .danger{white-space:nowrap;min-height:32px;padding:6px 10px}.admin-workspace .employee-table{min-width:1120px}.admin-workspace .employee-new-row td{background:#f8fbff}.admin-workspace .board-table{min-width:1160px}.admin-workspace .preview-toolbar{margin-bottom:16px}.admin-workspace .preview-day,.admin-workspace .menu-list-row{border:1px solid var(--admin-border);background:#fff;border-radius:8px}.admin-workspace .preview-day{padding:16px;box-shadow:0 1px 2px #0f172a0a}.admin-workspace .preview-day header{border-bottom:1px solid #e5e7eb;padding-bottom:12px}.admin-workspace .preview-meta{background:var(--admin-card-muted);border-radius:8px;padding:12px}.admin-workspace .menu-list-row{border-left:0;grid-template-columns:180px minmax(320px,1fr) auto;padding:14px;box-shadow:0 1px 2px #0f172a0a}.admin-workspace .menu-list-row:hover{background:#f8fbff;border-color:#bfdbfe}.admin-workspace .menu-package-preview{border-left-color:var(--admin-primary)}.admin-workspace .menu-list-date strong{color:var(--admin-text)}.admin-workspace .menu-list-right{gap:10px}.admin-workspace .status-badge{border-radius:999px;font-weight:600}.admin-workspace .settings-grid{grid-template-columns:repeat(3,minmax(240px,1fr));gap:16px;padding:20px}.admin-workspace .settings-card{border:1px solid var(--admin-border);background:var(--admin-card-muted);border-radius:8px}.admin-workspace .settings-grid h2{font-size:16px;font-weight:700}.admin-workspace .settings-grid>.settings-actions{border:1px dashed var(--admin-border-strong);background:#fff;border-radius:8px;padding:16px}.admin-workspace .popover{border-color:var(--admin-border);border-radius:8px}@media (width<=900px){.login-panel.admin-login-panel,.login-panel.employee-login-panel{padding:28px}.employee-grid,.settings-grid{grid-template-columns:1fr}.admin-workspace{grid-template-columns:1fr;padding:16px}.admin-workspace .tabs{display:flex;position:static;overflow-x:auto}.admin-workspace .tabs button{white-space:nowrap;width:auto}.admin-nav-title{display:none}.admin-workspace .settings-grid,.exception-editor{grid-template-columns:1fr}.summary-panel{position:static}.admin-workspace .filters{flex-flow:wrap;align-items:center;gap:8px;padding:8px}.admin-workspace .filters>input[type=date],.admin-workspace .filters>select,.admin-workspace .filters>.search-box,.admin-workspace .filters>.order-search{flex:calc(50% - 4px);width:auto;min-width:136px}.admin-workspace .filters>.icon-button{flex:0 0 36px;width:36px;min-height:36px}.topbar,.workspace{padding-left:16px;padding-right:16px}.section-header,.list-title,.preview-toolbar{flex-direction:column;align-items:stretch}.menu-list-row,.admin-workspace .menu-list-row{grid-template-columns:1fr}.menu-list-right{justify-items:start}}@media (width<=560px){.admin-login-screen,.employee-login-screen{padding:16px}.login-panel.admin-login-panel,.login-panel.employee-login-panel{width:100%;padding:24px 18px}.login-form-mark{width:44px;height:44px}.login-form-heading h1{font-size:24px}.topbar{flex-direction:column;align-items:flex-start;gap:12px;padding-top:12px;padding-bottom:12px}.employee-topbar,.admin-topbar{flex-direction:row;align-items:center;gap:10px;min-height:56px;padding-top:8px;padding-bottom:8px}.employee-topbar>div:first-child,.admin-topbar>div:first-child{min-width:0}.employee-topbar h1,.admin-topbar h1{white-space:nowrap;font-size:18px;line-height:1.25}.employee-topbar span,.admin-topbar span{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.topbar-actions,.row-actions,.toolbar-actions,.toolbar,.settings-actions{flex-wrap:wrap}.employee-topbar .topbar-actions,.admin-topbar .topbar-actions{flex-wrap:nowrap;flex:none;margin-left:auto}.admin-workspace .filters{margin-top:12px}.admin-workspace .filters>input[type=date],.admin-workspace .filters>select,.admin-workspace .filters>.search-box,.admin-workspace .filters>.order-search{flex-basis:calc(50% - 4px);min-width:128px}.workspace,.section,.login-panel{padding:16px}.admin-workspace{padding:12px}.admin-workspace>.section{padding:0 0 16px}.admin-workspace>.settings-grid{padding:12px}.admin-workspace .section-header{padding:16px}.admin-workspace .section>.filters,.admin-workspace .section>.notice,.admin-workspace .section>.empty,.admin-workspace .section>.table-scroll,.admin-workspace .section>.menu-preview-list,.admin-workspace .section>.published-menu-list{margin-left:12px;margin-right:12px}.toolbar-title{flex:150px;min-width:0}.day-panel,.summary-panel{padding:12px}.week-cutoff-bar{flex-direction:column;align-items:flex-start;padding:12px}.day-panel header{flex-direction:column;align-items:stretch;gap:8px}.payment-amounts{flex-direction:column;align-items:stretch}.package-row{grid-template-columns:18px 1fr;gap:10px;padding:12px}.dish-priority,.dish-secondary{gap:6px}.dish-secondary .dish-item{flex-basis:100%}.dish-item{padding:8px}.tabs{overflow-x:auto}.tabs button{white-space:nowrap}.preview-meta{flex-direction:column;align-items:stretch}.preview-meta label{max-width:none}}
