@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{--color-bg: #eff6ff;--color-surface: #ffffff;--color-surface-muted: #dbeafe;--color-text: #0f172a;--color-text-muted: #475569;--color-border: #bfdbfe;--color-primary: #1e3a8a;--color-primary-hover: #1e40af;--color-accent: #f97316;--color-success: #2f7d55;--color-warning: #b7791f;--color-danger: #b42318;--color-info: #2563a8;--shadow-panel: 0 1px 2px rgba(15, 23, 42, .06);font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--color-text);background:var(--color-bg)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}button,input{font:inherit}button,a,input[type=checkbox]{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid rgba(59,130,246,.28);outline-offset:2px}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(180deg,#ffffffbd,#eff6fff5),var(--color-bg)}.login-panel{width:min(100%,456px);background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:26px;box-shadow:var(--shadow-panel)}.login-brand{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--color-primary)}.login-brand p,.login-heading p,.login-footnote{color:var(--color-text-muted)}.login-brand p{margin:6px 0 0;font-size:13px;font-weight:700}.login-heading{margin:34px 0 22px}.login-heading h1{margin:0;font-size:28px;line-height:1.15;letter-spacing:0}.login-heading p{margin:10px 0 0;line-height:1.55}.login-form{display:grid;gap:10px}.login-form label{font-size:13px;font-weight:800;color:var(--color-text)}.login-form input{width:100%;min-height:44px;border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;color:var(--color-text);background:#fff}.form-error{border:1px solid rgba(180,35,24,.34);border-radius:8px;background:#fff1f0;color:var(--color-danger);padding:10px 12px;font-size:13px;font-weight:700}.login-footnote{margin:16px 0 0;font-size:12px;line-height:1.45}.app-shell{min-height:100vh;display:flex;background:var(--color-bg)}.side-nav{width:248px;min-height:100vh;padding:22px 14px;background:#fff;border-right:1px solid var(--color-border);position:sticky;top:0;z-index:20}.brand-block{min-height:72px;display:flex;align-items:center;padding:0 12px 18px}.brand-title{font-weight:800;font-size:24px;line-height:1;color:var(--color-primary)}.brand-subtitle{margin-top:6px;color:var(--color-text-muted);font-size:13px}.nav-item{width:100%;min-height:40px;display:flex;gap:10px;align-items:center;border:0;background:transparent;color:var(--color-text);padding:10px 12px;border-radius:8px;font-weight:600;transition:background .18s ease,color .18s ease}.nav-item:hover,.nav-item.active{background:#dbeafe;color:var(--color-primary)}.main-frame{min-width:0;flex:1}.top-bar{min-height:76px;display:flex;align-items:center;gap:16px;justify-content:space-between;padding:14px 24px;background:#eff6ffeb;border-bottom:1px solid var(--color-border);position:sticky;top:0;z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.page-heading{min-width:0}.page-heading h1{margin:0;font-size:28px;line-height:1.1;letter-spacing:0}.page-heading p{margin:6px 0 0;color:var(--color-text-muted);font-size:13px}.top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.account-chip{min-height:36px;max-width:280px;display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);font-size:13px;font-weight:700}.account-chip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-chip strong{color:var(--color-primary);font-size:11px;text-transform:uppercase}.content-wrap{width:100%;max-width:1280px;margin:0 auto;padding:24px}.warning-banner{display:flex;gap:10px;align-items:center;min-height:42px;padding:10px 24px;color:#6d4b08;background:#fff8e6;border-bottom:1px solid #ead7a1}.page-grid,.detail-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(320px,.85fr);gap:16px}.booking-detail-layout{grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);align-items:start}.two-column,.split-view{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.55fr);gap:16px}.wide-panel,.summary-row{grid-column:1 / -1}.panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:18px;box-shadow:var(--shadow-panel);min-width:0}.attention-panel{border-color:#b7791f6b;background:#fffaf0}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.panel-header h2,.timeline h3,.blocker-list h3{margin:0;font-size:18px;line-height:1.2}.panel-kicker{margin:6px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.35}.count-pill{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;background:#eef7f3;color:var(--color-primary);font-size:12px;font-weight:800;white-space:nowrap}.summary-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric{min-height:92px;padding:16px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px}.metric span{display:block;font-size:13px;color:var(--color-text-muted)}.metric strong{display:block;margin-top:10px;font-size:28px;letter-spacing:0}.metric.success strong{color:var(--color-success)}.metric.warning strong{color:var(--color-warning)}.metric.info strong{color:var(--color-info)}.metric.danger strong{color:var(--color-danger)}.status-badge{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.status-badge.success{color:var(--color-success);background:#e8f4ee}.status-badge.warning{color:var(--color-warning);background:#fff7e6}.status-badge.danger{color:var(--color-danger);background:#fff0ef}.status-badge.info{color:var(--color-info);background:#edf5ff}.status-badge.muted{color:var(--color-text-muted);background:var(--color-surface-muted)}.primary-button,.secondary-button,.danger-button,.link-button,.icon-button,.icon-link{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;border:1px solid transparent;padding:8px 12px;text-decoration:none;font-weight:700;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.primary-button{color:#fff;background:var(--color-primary)}.primary-button:hover:not(:disabled){background:var(--color-primary-hover)}.secondary-button,.icon-button,.icon-link{color:var(--color-primary);background:#f7faf8;border-color:#cad8d3}.secondary-button:hover:not(:disabled),.icon-button:hover,.icon-link:hover{background:#e5eee9}.danger-button{color:#fff;background:var(--color-danger)}.danger-button:hover:not(:disabled){background:#8f1d14}.link-button{color:var(--color-primary);background:transparent;padding-inline:4px}.small{min-height:30px;padding:6px 10px;font-size:13px}button:disabled{opacity:.56;cursor:not-allowed}.full-width{width:100%}.button-row,.row-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.button-row.right{justify-content:flex-end}.button-column{display:grid;gap:10px}.task-detail-panel{grid-column:1 / -1}.task-detail-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:16px;align-items:start}.task-detail-main,.task-detail-actions{min-width:0;display:grid;gap:14px}.task-meta-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}.task-meta-list div{grid-template-columns:74px minmax(0,1fr);padding:10px;border:1px solid rgba(30,58,138,.12);border-radius:8px;background:#f8fbff}.task-match-card,.task-action-card{min-width:0;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:#fff}.task-match-card.matched{border-color:#2f7d5547;background:#f3fbf7}.task-match-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.task-match-heading>span,.task-match-grid span,.task-match-empty{color:var(--color-text-muted);font-size:12px;font-weight:800}.task-match-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px}.task-match-grid div{min-width:0;display:grid;gap:4px;padding:10px;border:1px solid rgba(30,58,138,.12);border-radius:8px;background:#ffffffc7}.task-match-grid strong{min-width:0;overflow-wrap:anywhere;font-size:14px}.task-match-empty{margin:0;min-height:42px;display:flex;align-items:center}.task-action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px;align-items:end}.task-action-grid>button{width:100%;min-height:42px}.task-cancel-reason{min-width:0}.task-detail-timeline{grid-column:1 / -1;min-width:0}label{display:grid;gap:6px;color:var(--color-text);font-size:13px;font-weight:700}.form-field{display:grid;gap:8px;color:var(--color-text);font-size:13px;font-weight:700}input{width:100%;min-height:38px;border:1px solid var(--color-border);border-radius:8px;padding:8px 10px;background:#fff;color:var(--color-text)}.compact-field{display:grid;grid-template-columns:auto minmax(58px,max-content);align-items:center;gap:6px;color:var(--color-text-muted)}.compact-field input{min-height:32px;padding:4px 7px}.inline-toggle{display:inline-flex;gap:4px}.inline-toggle button{min-height:32px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text-muted);font-size:12px;font-weight:800;padding:4px 8px}.inline-toggle button.selected{border-color:var(--color-primary);color:var(--color-primary);background:#eef7f3}.form-grid,.search-form{display:grid;gap:14px}.search-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}.admin-form{grid-template-columns:repeat(2,minmax(0,1fr))}.field-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.field-help,.muted-text{color:var(--color-text-muted);font-size:12px;font-weight:400}.check-field{display:flex;align-items:center;gap:8px;min-height:38px}.check-field input,.course-item input{width:auto;min-height:0}.filter-strip{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.filter-strip span{padding:6px 9px;background:var(--color-surface-muted);border-radius:999px;color:var(--color-text-muted);font-size:12px}.row-list,.slot-list,.event-list{display:grid;gap:8px}.slot-list{margin-top:14px}.list-row,.slot-row{min-height:58px;display:flex;gap:12px;align-items:center;justify-content:space-between;padding:10px 12px;border:1px solid var(--color-border);border-radius:8px;background:#fff;text-align:left;color:var(--color-text)}.clickable-row:hover,.task-row:hover{background:#f7faf8}.list-row>div:first-child,.slot-row>div:first-child{min-width:0;display:grid;gap:4px}.list-row span,.slot-row span{color:var(--color-text-muted);font-size:13px}.task-table,.activity-table,.rate-table{display:grid;gap:6px;overflow-x:auto}.table-head,.table-row{display:grid;grid-template-columns:1.1fr .45fr 1.7fr .8fr .85fr;gap:10px;align-items:center;min-width:720px;padding:10px 12px;border-radius:8px;text-align:left}.activity-table .table-head,.activity-table .table-row{grid-template-columns:1.1fr .7fr 1fr .7fr 1.5fr}.rate-table .table-head,.rate-table .table-row{grid-template-columns:1fr 160px 160px;min-width:480px}.table-head{color:var(--color-text-muted);background:var(--color-surface-muted);font-size:12px;font-weight:700}.table-row{border:1px solid var(--color-border);background:#fff;color:var(--color-text)}.task-row{width:100%;border:1px solid var(--color-border)}.task-row>span{min-width:0}.preference-cell{min-width:0;display:grid;gap:7px}.preference-cell.muted,.preference-muted{color:var(--color-text-muted);font-size:12px}.preference-line{min-width:0;display:flex;align-items:center;gap:7px}.preference-line>svg{flex:0 0 auto;color:var(--color-primary)}.date-chip-list{min-width:0;display:flex;flex-wrap:wrap;gap:5px}.date-chip{display:inline-flex;align-items:center;gap:5px;min-height:24px;padding:3px 7px;border:1px solid rgba(30,58,138,.16);border-radius:6px;background:#eef6ff;color:var(--color-text);font-size:12px;font-weight:700;line-height:1.2;white-space:nowrap}.date-chip strong{color:var(--color-primary);font-size:11px}.date-chip.more{background:#fff7ed;border-color:#f9731633;color:#9a3412}.preference-secondary{color:var(--color-text-muted);font-size:12px;font-weight:600}.preference-dot{width:4px;height:4px;flex:0 0 auto;border-radius:999px;background:#94a3b8}.course-preview{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preference-review{display:grid;gap:12px;margin:0 0 14px;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:#f8fbff}.preference-review-header,.preference-review-title{display:flex;align-items:center;justify-content:space-between;gap:10px}.preference-review-header strong{font-size:14px}.preference-review-header span,.preference-empty{color:var(--color-text-muted);font-size:12px;font-weight:700}.preference-review-section{display:grid;gap:8px}.preference-review-title{justify-content:flex-start;color:var(--color-primary);font-size:12px;font-weight:800}.preference-date-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(142px,1fr));gap:8px}.preference-date-item{min-width:0;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;padding:8px;border:1px solid rgba(30,58,138,.14);border-radius:8px;background:#fff}.preference-date-item div{min-width:0;display:grid;gap:2px}.preference-date-item strong{font-size:13px;overflow-wrap:anywhere}.preference-date-item span:not(.priority-rank){color:var(--color-text-muted);font-size:11px;font-weight:700}.preference-review-meta{display:grid;gap:8px}.preference-review-meta>div{min-width:0;display:grid;grid-template-columns:18px 68px minmax(0,1fr);align-items:start;gap:8px;padding-top:10px;border-top:1px solid rgba(30,58,138,.12)}.preference-review-meta svg{color:var(--color-primary)}.preference-review-meta span{color:var(--color-text-muted);font-size:12px;font-weight:800}.preference-review-meta strong{min-width:0;overflow-wrap:anywhere;font-size:13px}.preference-course-list{min-width:0;display:flex;flex-wrap:wrap;gap:6px}.preference-course-list span{max-width:100%;padding:4px 7px;border:1px solid rgba(249,115,22,.18);border-radius:6px;background:#fff7ed;color:#9a3412;overflow-wrap:anywhere;line-height:1.3}.table-row.selected,.slot-row.selected{border-color:var(--color-primary);background:#f0f7f4}.session-card{display:flex;gap:14px;align-items:flex-start;padding:16px;background:var(--color-surface-muted);border-radius:8px;margin-bottom:14px}.session-card div{display:grid;gap:5px}.session-card span{color:var(--color-text-muted);font-size:13px}.notice-list{display:grid;gap:8px;margin-top:14px;color:var(--color-text-muted);font-size:13px}.notice-list p{margin:0}.restaurant-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.restaurant-title{margin:0;font-family:Playfair Display SC,serif;font-size:30px;color:var(--color-primary);letter-spacing:0}.restaurant-hero p{margin:8px 0 0;color:var(--color-text-muted);overflow-wrap:anywhere}.course-list{display:grid;gap:8px}.course-item{display:flex;gap:10px;padding:10px;border:1px solid var(--color-border);border-radius:8px;background:#fff;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.course-focus-panel .course-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.course-focus-panel .course-item{min-height:116px;padding:14px}.course-item:has(input:checked){border-color:var(--color-primary);background:#f0f7f4;box-shadow:inset 0 0 0 1px #315c541f}.course-item span{display:grid;gap:3px}.course-item small{color:var(--color-text-muted)}.booking-main-panel{min-width:0}.booking-side-panel{position:sticky;top:100px}.rules-summary-panel{background:#fcfbf8}.date-priority-picker{display:grid;gap:10px}.date-range-field{position:relative;display:grid;gap:6px;color:var(--color-text);font-size:13px;font-weight:700}.date-range-trigger{width:100%;min-height:42px;display:flex;align-items:center;gap:8px;justify-content:flex-start;padding:8px 10px;border:1px solid var(--color-border);border-radius:8px;background:#fff;color:var(--color-text);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.date-range-trigger:hover,.date-range-trigger[aria-expanded=true]{border-color:#315c546b;background:#fbfdfc;box-shadow:0 6px 16px #1f293314}.date-range-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:20;width:min(360px,100%);display:grid;gap:10px;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:#fff;box-shadow:0 18px 38px #1f29332e}.calendar-header,.calendar-footer{display:flex;justify-content:space-between;align-items:center;gap:10px}.calendar-footer{color:var(--color-text-muted);font-size:12px}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekday,.calendar-day{min-height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;font-size:12px}.calendar-weekday{color:var(--color-text-muted);font-weight:800}.calendar-day{border:1px solid transparent;background:#fff;color:var(--color-text);font-weight:800;transition:border-color .16s ease,background .16s ease,color .16s ease}.calendar-day:hover{border-color:#315c5452;background:#f5faf8}.calendar-day.muted{color:#a8b1ad}.calendar-day.in-range{background:#eef7f3;color:var(--color-primary)}.calendar-day.selected{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.date-priority-list{display:grid;gap:8px}.date-priority-row{min-height:54px;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 10px;border:1px solid var(--color-border);border-radius:8px;background:#fff;cursor:grab;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}.date-priority-row:hover{border-color:#315c546b;background:#fbfdfc}.date-priority-row.dragging{border-color:var(--color-primary);background:#eef7f3;box-shadow:0 8px 18px #1f29331f;cursor:grabbing;transform:scale(1.01)}.date-priority-row>div:nth-child(2){display:grid;gap:2px}.date-priority-row span{color:var(--color-text-muted);font-size:12px}.priority-rank{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--color-surface-muted);color:var(--color-primary)!important;font-weight:800}.drag-handle{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:var(--color-text-muted);cursor:grab}.sticky-action-bar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:#fcfbf8}.sticky-action-bar>div{min-width:0;display:grid;gap:3px}.sticky-action-bar span{color:var(--color-text-muted);font-size:13px}.review-action-group{display:flex;justify-content:flex-end;gap:10px;align-items:center;flex-wrap:wrap}.booking-action-bar{position:static;z-index:auto}.segmented-field{display:grid;grid-template-columns:1fr 1fr;gap:8px;border:0;padding:0;margin:0}.segmented-field legend{grid-column:1 / -1;margin-bottom:6px;font-size:13px;font-weight:700}.segmented-field button{min-height:42px;border:1px solid var(--color-border);background:#fff;border-radius:8px;color:var(--color-text);font-weight:700}.segmented-field button.selected{color:var(--color-primary);border-color:var(--color-primary);background:#eef7f3}.segmented-field button.accent{color:var(--color-accent);border-color:var(--color-accent);background:#fff4ec}.detail-list{display:grid;gap:8px;margin:0 0 14px}.detail-list div{display:grid;grid-template-columns:80px minmax(0,1fr);gap:10px}.detail-list dt{color:var(--color-text-muted);font-size:13px}.detail-list dd{margin:0;overflow-wrap:anywhere}.timeline{display:grid;gap:10px;margin-top:18px}.timeline-item{display:grid;grid-template-columns:14px minmax(0,1fr);gap:10px;align-items:start}.timeline-item>span{width:9px;height:9px;margin-top:5px;background:var(--color-primary);border-radius:999px}.timeline-item div{display:grid;gap:2px}.timeline-item small,.event-list span{color:var(--color-text-muted)}.event-list p{display:flex;gap:10px;margin:0;padding:8px 0;border-bottom:1px solid var(--color-border)}.review-page{display:grid;gap:16px}.review-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;background:#fff}.review-hero h2{margin:2px 0 8px;font-size:24px;line-height:1.15}.review-hero p{margin:0;color:var(--color-text-muted);line-height:1.55}.review-confirm-layout{display:grid;grid-template-columns:minmax(360px,.92fr) minmax(0,1.08fr);gap:16px;align-items:start}.review-column{min-height:100%}.review-column .panel-header svg{color:var(--color-primary);flex:0 0 auto}.preference-review,.preference-meta-grid{display:grid;gap:12px}.preference-date-card span,.preference-metric span,.matched-slot-card span{display:inline-flex;align-items:center;gap:7px;color:var(--color-text-muted);font-size:12px;font-weight:800}.preference-date-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:10px}.preference-date-card,.preference-metric,.matched-slot-card{border:1px solid var(--color-border);border-radius:8px;background:#fff}.preference-date-card{display:grid;gap:5px;min-height:76px;padding:12px}.preference-date-card span{color:var(--color-primary)}.preference-metric{display:grid;gap:7px;padding:13px 14px}.preference-metric span{display:inline-flex;align-items:center;gap:7px}.preference-metric svg{color:var(--color-primary)}.preference-metric strong,.matched-slot-card strong{overflow-wrap:anywhere}.matched-slot-card{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:14px;background:#fffaf0;border-color:#b7791f57}.matched-slot-card div{display:grid;gap:4px}.matched-slot-card small,.muted-line{color:var(--color-text-muted)}.omakase-confirm-list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.review-loading{display:flex;gap:8px;align-items:center;min-height:76px;color:var(--color-text-muted)}.review-footer-bar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,max-content);gap:14px}.review-footer-status strong{display:block;margin-bottom:3px}.review-primary-action{display:flex;gap:10px;align-items:center;justify-content:flex-end}.omakase-card-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border)}.review-primary-action .primary-button{min-width:132px}.blocker-list{margin-top:16px}.success-line,.warning-line{display:flex;gap:8px;align-items:center}.success-line{color:var(--color-success)}.warning-line{color:var(--color-warning)}.sticky-action-bar{position:sticky;bottom:0;z-index:10;display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:16px;padding:14px;background:#fcfbf8f5;border:1px solid var(--color-border);border-radius:8px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.filter-input{margin-bottom:14px}.health-bar{display:grid;gap:8px;margin-bottom:14px}.health-bar div{display:flex;justify-content:space-between;gap:12px}meter{width:100%;height:12px}.empty-state{min-height:120px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;color:var(--color-text-muted);border:1px dashed var(--color-border);border-radius:8px;background:#fffdf9;padding:20px}.empty-state strong{color:var(--color-text)}.skeleton-page,.skeleton-rows{display:grid;gap:12px}.skeleton-page div,.skeleton-rows span{height:110px;border-radius:8px;background:linear-gradient(90deg,#eeeae1,#f8f7f3,#eeeae1);background-size:200% 100%;animation:shimmer 1.2s infinite linear}.skeleton-rows span{height:58px}.toast-stack{position:fixed;right:18px;bottom:18px;z-index:50;display:grid;gap:10px;width:min(420px,calc(100vw - 36px))}.toast{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:12px;border:1px solid var(--color-border);border-radius:8px;background:#fff;box-shadow:0 12px 32px #1f293329}.toast span{grid-column:1 / 2;color:var(--color-text-muted);font-size:13px}.toast button{grid-row:1 / 3;grid-column:2;border:0;background:transparent}.toast.success{border-left:4px solid var(--color-success)}.toast.warning{border-left:4px solid var(--color-warning)}.toast.error{border-left:4px solid var(--color-danger)}.modal-backdrop,.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#1f293347}.modal-panel{width:min(460px,calc(100vw - 32px));margin:14vh auto 0;padding:20px;background:#fff;border-radius:8px;box-shadow:0 24px 60px #1f29333d}.modal-panel h2{margin:0 0 10px}.modal-panel p{color:var(--color-text-muted)}.drawer-panel{width:min(440px,100vw);height:100%;margin-left:auto;padding:18px;background:#fff;overflow-y:auto}.spin{animation:spin .9s linear infinite}.mobile-menu,.nav-scrim{display:none}@keyframes shimmer{to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}@media (max-width: 1023px){.side-nav{position:fixed;left:0;top:0;transform:translate(-100%);transition:transform .18s ease;box-shadow:0 18px 48px #1f293329}.side-nav.is-open{transform:translate(0)}.mobile-menu,.nav-scrim{display:inline-flex}.nav-scrim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;border:0;background:#1f293338}.page-grid,.detail-layout,.two-column,.split-view{grid-template-columns:1fr}.summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-side{order:-1}.task-detail-panel{order:0}.task-detail-grid{grid-template-columns:1fr}.booking-side-panel{position:static}}@media (max-width: 767px){.top-bar{align-items:flex-start;padding:12px 16px}.top-actions{gap:6px}.account-chip{max-width:100%;width:100%}.content-wrap{padding:16px}.page-heading h1{font-size:23px}.summary-row,.review-confirm-layout,.admin-form,.search-form,.field-row,.sticky-action-bar{grid-template-columns:1fr}.restaurant-hero,.review-hero,.panel-header,.list-row,.slot-row,.sticky-action-bar{align-items:flex-start;flex-direction:column}.review-footer-bar{grid-template-columns:1fr}.review-secondary-actions,.review-primary-action,.review-primary-action .primary-button{width:100%}.review-secondary-actions{justify-content:flex-start}.review-primary-action{justify-content:stretch}.row-actions,.primary-button,.secondary-button,.danger-button{width:100%}.compact-field{grid-template-columns:1fr}.table-head,.table-row{min-width:640px}}
