/* Chuanmen staff workstation UI v1. Shared by grill, service, prep and kitchen. */
html[data-cm-ui="staff-v1"]{
  --ws-canvas:#f3eee5;--ws-surface:#fffdf8;--ws-surface-2:#eee7dc;--ws-line:#d5cabc;
  --ws-ink:#211d19;--ws-muted:#665e55;--ws-accent:#b5372a;--ws-success:#356a43;
  --ws-warning:#8a5b12;--ws-danger:#a72f25;--ws-critical:#721b17;--ws-info:#315f70;
  --ws-task:#fffdf8;--ws-task-ink:#211d19;--ws-task-muted:#665e55;--ws-task-line:#ded5c9;
  --ws-radius-sm:8px;--ws-radius:12px;--ws-shadow:0 4px 14px rgba(48,39,31,.08);
  --ws-header-z:40;--ws-menu-z:200;--ws-feedback-z:220;
  --paper:var(--ws-canvas);--bg:var(--ws-canvas);--panel:var(--ws-surface);--card:var(--ws-surface);
  --ink:var(--ws-ink);--ink2:var(--ws-muted);--ink3:var(--ws-muted);--txt:var(--ws-ink);--text:var(--ws-ink);
  --soft:var(--ws-muted);--muted:var(--ws-muted);--line:var(--ws-line);--red:var(--ws-accent);
  --gold:var(--ws-warning);--yl:var(--ws-warning);--green:var(--ws-success);--ok:var(--ws-success);color-scheme:light;
}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"]{
  --ws-canvas:#181512;--ws-surface:#24201c;--ws-surface-2:#302a24;--ws-line:#544a41;
  --ws-ink:#f7f0e5;--ws-muted:#c5b9aa;--ws-accent:#c4483c;--ws-success:#8fc49a;
  --ws-warning:#efc166;--ws-danger:#ff9287;--ws-critical:#ffb2aa;--ws-info:#9bd0df;
  --ws-task:#2a2520;--ws-task-ink:#f7f0e5;--ws-task-muted:#c5b9aa;--ws-task-line:#7a6d60;
  --ws-shadow:0 6px 18px rgba(0,0,0,.2);color-scheme:dark;
}
html[data-cm-ui="staff-v1"] *,html[data-cm-ui="staff-v1"] *::before,html[data-cm-ui="staff-v1"] *::after{box-sizing:border-box}
html[data-cm-ui="staff-v1"] body{width:100%;max-width:none!important;margin:0!important;padding-bottom:max(32px,env(safe-area-inset-bottom));background:var(--ws-canvas)!important;color:var(--ws-ink)!important;font-family:"Microsoft YaHei","PingFang SC","Noto Sans SC",system-ui,sans-serif!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
html[data-cm-ui="staff-v1"] :is(button,a,summary){touch-action:manipulation}
html[data-cm-ui="staff-v1"] button:disabled{cursor:not-allowed;opacity:.52}
html[data-cm-ui="staff-v1"] :is(button,a,summary,input,select):focus-visible{outline:3px solid var(--ws-accent)!important;outline-offset:2px!important}

/* Shared header and controls. */
html[data-cm-ui="staff-v1"] .top{position:sticky;top:0;z-index:var(--ws-header-z);min-height:62px;width:100%;display:flex;align-items:center;gap:12px;padding:8px max(14px,env(safe-area-inset-left))!important;border:0!important;border-bottom:1px solid var(--ws-line)!important;background:var(--ws-surface)!important;color:var(--ws-ink)!important;box-shadow:none!important;backdrop-filter:none}
html[data-cm-ui="staff-v1"] .top>b,html[data-cm-ui="staff-v1"] .top #pageTitle{min-width:0;margin:0;color:var(--ws-ink)!important;font-family:inherit!important;font-size:18px!important;font-weight:900!important;letter-spacing:0!important;line-height:1.2!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-cm-ui="staff-v1"] .top :is(.stats,.r,.tools){margin-inline-start:auto;align-items:center;gap:8px}
html[data-cm-ui="staff-v1"] .top :is(.refresh-button,.btn,button.out){min-height:48px!important;padding:0 14px!important;border:1px solid var(--ws-line)!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface)!important;color:var(--ws-ink)!important;font-size:12.5px!important;font-weight:800!important;box-shadow:none!important}
html[data-cm-ui="staff-v1"] .top :is(.refresh-button,.btn,button.out):hover{border-color:var(--ws-accent)!important}
html[data-cm-ui="staff-v1"] .top :is(.lang,#logoutButton,#t-logout,.cm-theme-toggle){display:none!important}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .top :is(#toKds,#wakeState){display:none!important}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .prep-primary-nav{display:flex;align-items:center;justify-content:flex-end;min-height:58px;padding:7px max(14px,env(safe-area-inset-left));border-bottom:1px solid var(--ws-line);background:var(--ws-surface)}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .prep-primary-nav #toKds{display:inline-flex;align-items:center;justify-content:center;min-width:112px;min-height:48px;padding:0 16px;border:1px solid var(--ws-accent);border-radius:var(--ws-radius-sm);background:var(--ws-accent);color:#fff;font-size:13px;font-weight:900;text-decoration:none;box-shadow:none}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .prep-primary-nav #toKds:hover{filter:brightness(.96)}
@media(max-width:760px){html[data-cm-ui="staff-v1"][data-cm-page="prep"] .prep-primary-nav{justify-content:stretch;padding:7px 10px}html[data-cm-ui="staff-v1"][data-cm-page="prep"] .prep-primary-nav #toKds{width:100%}}
html[data-cm-ui="staff-v1"] :is(.kds-metrics,.stats){gap:7px!important}
html[data-cm-ui="staff-v1"] .top .kds-metrics>.kds-metric,html[data-cm-ui="staff-v1"][data-cm-page="floor"] .stat{min-width:68px!important;min-height:46px!important;padding:5px 9px!important;border:1px solid var(--ws-line)!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface-2)!important;color:var(--ws-ink)!important;box-shadow:none!important}
html[data-cm-ui="staff-v1"] :is(.kds-metric,.stat) .k{color:var(--ws-muted)!important;font-size:10px!important;font-weight:700}
html[data-cm-ui="staff-v1"] :is(.kds-metric,.stat) .v{color:var(--ws-ink)!important;font-size:20px!important;font-weight:900}
html[data-cm-ui="staff-v1"] .kds-metric.awake{color:var(--ws-muted)!important;font-size:10px!important;font-weight:800}
html[data-cm-ui="staff-v1"] .kds-metric.awake.ok{color:var(--ws-success)!important}

/* Shared phone header. */
html[data-cm-ui="staff-v1"] .cm-mobile-console-header{min-height:56px!important;padding:6px 10px!important;border-bottom:1px solid var(--ws-line)!important;background:var(--ws-surface)!important;color:var(--ws-ink)!important;box-shadow:none!important}
html[data-cm-ui="staff-v1"] .cm-mobile-console-title{color:var(--ws-ink)!important;font-size:16px!important;font-weight:900!important}
html[data-cm-ui="staff-v1"] :is(.cm-mobile-console-refresh,.cm-mobile-console-more){width:48px!important;min-width:48px!important;height:48px!important;border:1px solid var(--ws-line)!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface)!important;color:var(--ws-ink)!important;font-size:18px!important;box-shadow:none!important}
@media(max-width:359px){html[data-cm-ui="staff-v1"] :is(.cm-mobile-console-refresh,.cm-mobile-console-more){width:44px!important;min-width:44px!important}}

html[data-cm-ui="staff-v1"] :is(.cm-mobile-console-header,.cm-desktop-gear,.cm-mobile-console-menu)[hidden]{display:none!important}

/* One drawer on phone, tablet and desktop. */
html[data-cm-ui="staff-v1"] .cm-desktop-gear{display:none!important;z-index:calc(var(--ws-header-z) + 1)!important;width:48px!important;height:48px!important;appearance:none!important;border:1px solid var(--ws-line)!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface)!important;color:var(--ws-ink)!important;-webkit-text-fill-color:currentColor!important;box-shadow:none!important}
html[data-cm-ui="staff-v1"] :is(.cm-mobile-console-more,.cm-desktop-gear){border-color:var(--ws-accent)!important;background:var(--ws-accent)!important;color:#fff!important;-webkit-text-fill-color:currentColor!important}
html[data-cm-ui="staff-v1"] body.cm-console-menu-open .cm-desktop-gear{z-index:calc(var(--ws-menu-z) + 2)!important;visibility:visible!important;pointer-events:auto!important;border-color:var(--ws-accent)!important;background:var(--ws-accent)!important;color:#fff!important}
html[data-cm-ui="staff-v1"] .cm-mobile-console-menu{z-index:var(--ws-menu-z)!important;background:rgba(20,17,14,.58)!important;backdrop-filter:none}
/* 第十七次修1：员工屏设置面板跟随共享层的「☰ 正下方锚定弹层」；不再满高侧贴，改为四边圆角浮层（左右侧由 JS 按 ☰ 实际位置定，RTL 自动换边） */
html[data-cm-ui="staff-v1"] .cm-mobile-console-sheet{width:var(--cm-menu-width,min(348px,calc(100vw - 20px)))!important;max-width:calc(100vw - 20px);gap:16px!important;padding:0 16px calc(24px + env(safe-area-inset-bottom))!important;background:var(--ws-surface)!important;color:var(--ws-ink)!important;border:1px solid var(--ws-line)!important;border-radius:var(--ws-radius)!important;box-shadow:0 18px 40px rgba(0,0,0,.28)!important}
html[data-cm-ui="staff-v1"] .cm-mobile-console-sheet-head{position:sticky;top:0;z-index:1;min-height:64px;margin:0 -2px;padding:10px 0;border-bottom:1px solid var(--ws-line);background:var(--ws-surface)}
html[data-cm-ui="staff-v1"] .cm-mobile-console-sheet-head h2{font-size:18px!important;font-weight:900!important}
html[data-cm-ui="staff-v1"] .cm-mobile-console-close{width:48px!important;min-width:48px!important;height:48px!important;border:1px solid var(--ws-line)!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface)!important;color:var(--ws-ink)!important;font-size:24px!important;line-height:1!important}
html[data-cm-ui="staff-v1"] .cm-mobile-console-identity{display:grid;gap:3px;margin:0!important;padding:12px 14px;border:1px solid var(--ws-line);border-radius:var(--ws-radius);background:var(--ws-surface-2);color:var(--ws-ink)!important}
html[data-cm-ui="staff-v1"] .cm-mobile-console-identity small{color:var(--ws-muted);font-size:11px;font-weight:700}
html[data-cm-ui="staff-v1"] .cm-mobile-console-identity strong{font-size:14px;font-weight:900}
html[data-cm-ui="staff-v1"] .cm-mobile-console-sheet h3{position:relative;z-index:1;display:block;flex:0 0 auto;min-height:20px;margin:10px 0 6px!important;padding-top:2px;color:var(--ws-muted)!important;font-size:11px!important;font-weight:900!important;line-height:1.45!important;letter-spacing:.04em;text-transform:uppercase;overflow:visible}
html[data-cm-ui="staff-v1"] :is(.cm-mobile-console-actions,.cm-mobile-console-routes){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
html[data-cm-ui="staff-v1"] .cm-mobile-console-languages{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
html[data-cm-ui="staff-v1"] :is(.cm-mobile-console-actions button,.cm-mobile-console-languages button,.cm-mobile-console-routes a){min-width:0!important;min-height:48px!important;padding:9px 10px!important;border:1px solid var(--ws-line)!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface)!important;color:var(--ws-ink)!important;font-size:12.5px!important;font-weight:800!important;line-height:1.25!important;text-align:center!important;display:flex!important;align-items:center!important;justify-content:center!important;text-decoration:none!important}
html[data-cm-ui="staff-v1"] :is(.cm-mobile-console-actions button,.cm-mobile-console-languages button,.cm-mobile-console-routes a):hover{border-color:var(--ws-accent)!important}
html[data-cm-ui="staff-v1"] .cm-mobile-console-languages button.cm-active{border-color:var(--ws-accent)!important;background:var(--ws-accent)!important;color:#fff!important}

/* Login always owns the screen. */
html[data-cm-ui="staff-v1"] #login{z-index:calc(var(--ws-menu-z) + 20)!important;background:var(--ws-canvas)!important}
html[data-cm-ui="staff-v1"] #login .box{width:min(304px,calc(100vw - 40px))!important;padding:16px!important;border:1px solid var(--ws-line)!important;border-radius:var(--ws-radius)!important;background:var(--ws-surface)!important;color:var(--ws-ink)!important;box-shadow:var(--ws-shadow)!important}
html[data-cm-ui="staff-v1"] #login h2{margin:0 0 12px!important;font-family:inherit!important;font-size:18px!important;font-weight:900!important;letter-spacing:0!important}
html[data-cm-ui="staff-v1"] #login :is(input,select){width:100%!important;height:48px!important;min-height:48px!important;margin-bottom:12px!important;padding:0 12px!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-surface)!important;color:var(--ws-ink)!important;font-size:16px!important;box-sizing:border-box!important}
html[data-cm-ui="staff-v1"] #login :is(#loginButton,#t-enter){min-height:48px!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-accent)!important;color:#fff!important;font-weight:900!important}
html[data-cm-ui="staff-v1"] #login :is(.lang,.login-lang){display:none!important}

/* Grill station. */
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .tabs{gap:6px;padding:8px 12px!important;border-bottom:1px solid var(--ws-line)!important;background:var(--ws-surface)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .tabs :is(button,a){min-height:48px;min-width:0;padding:8px 12px;border:1px solid var(--ws-line);border-radius:var(--ws-radius-sm);background:var(--ws-surface);color:var(--ws-muted);font-size:12.5px;font-weight:900}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .tabs button.on{border-color:var(--ws-accent)!important;background:var(--ws-accent)!important;color:#fff!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .hintline{color:var(--ws-muted)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .grid{gap:10px!important;padding:12px!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc{border:1px solid var(--ws-task-line)!important;border-radius:var(--ws-radius)!important;background:var(--ws-task)!important;color:var(--ws-task-ink)!important;box-shadow:var(--ws-shadow)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc.lv-warn{border:2px solid #c98316!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc.lv-danger{border:2px solid #c63d31!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc.lv-crit{border:3px solid #7d1713!important;box-shadow:0 0 0 2px rgba(125,23,19,.15)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-tap{padding:12px!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-top{display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;align-items:start!important;gap:8px!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-table{min-width:0!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-wait{display:flex!important;align-items:center!important;justify-self:end!important;min-width:max-content!important;max-width:none!important;white-space:nowrap!important;text-align:end!important;overflow:visible!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-wait .js-wait{white-space:nowrap!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-zh{font-size:21px!important;line-height:1.18!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-fr,html[data-cm-ui="staff-v1"][data-cm-page="kds"] :is(.gc-total,.gc-queue,.gc-row .w,.rc .nm span,.rc .why){color:var(--ws-task-muted)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-more{background:#f4f0e9!important;color:var(--ws-task-ink)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-detail{background:#faf7f1!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .rc{border:1px solid var(--ws-task-line);background:var(--ws-task)!important;color:var(--ws-task-ink)!important;box-shadow:none}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .grid.recent{grid-template-columns:minmax(0,1fr)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .rc>*{min-width:0}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .rc .t{max-width:132px;overflow-wrap:break-word}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .rc .nm :is(b,span){word-break:normal!important;overflow-wrap:break-word!important}
html[data-cm-ui="staff-v1"][data-cm-page="kds"] .stock{border:1px solid var(--ws-line)!important;border-radius:var(--ws-radius)!important;background:var(--ws-surface)!important}

/* Service station. */
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .cmw-workspace{width:min(1280px,100%)!important;margin:12px auto!important;padding:0 12px 24px!important;gap:12px!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .cmw-card{border:1px solid var(--ws-line);border-radius:var(--ws-radius)!important;background:var(--ws-surface)!important;box-shadow:none!important;overflow:hidden}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .cmw-toolbar{min-height:38px;padding:6px 10px;border-bottom:1px solid var(--ws-line);background:var(--ws-surface-2)!important;color:var(--ws-ink)!important;font-size:11.5px}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] :is(.focus-wrap,.sec,.stats){background:transparent!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .focus-wrap{position:static!important;padding:12px!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .sec{padding:12px!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .sec h3{margin:0 0 10px;font-size:14px;font-weight:900;color:var(--ws-ink)}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .sec h3::before{display:none!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] :is(.focus-card,.package-card,.task,.wash,.all-task,.ord,.stat,.focus-empty,.scope-note){border:1px solid var(--ws-task-line)!important;border-radius:var(--ws-radius)!important;background:var(--ws-task)!important;color:var(--ws-task-ink)!important;box-shadow:none!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] :is(.focus-card,.package-card){padding:14px!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .focus-card{border-width:2px!important;border-color:var(--ws-accent)!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .focus-card.warn{border-color:#c98316!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] :is(.focus-card.urgent,.package-card.urgent){border-color:#a72f25!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] :is(.focus-card.warn,.focus-card.urgent,.nudgebar button){animation:none!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] :is(.focus-card p,.task small,.all-task small,.ord small,.package-meta,.scope-note){color:var(--ws-task-muted)!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .package-card{container-type:inline-size}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .package-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .package-head{min-width:0}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .package-head>div{min-width:0;flex:1 1 auto}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .package-table{max-width:100%;font-size:clamp(32px,5vw,54px)!important;font-size:clamp(32px,10cqi,54px)!important;line-height:1.08!important;overflow-wrap:anywhere;word-break:break-word}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .batch-code{flex:0 1 auto;min-width:0;max-width:42%;overflow-wrap:anywhere;word-break:break-word;text-align:end}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .package-meta{flex-wrap:wrap}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .package-meta>span{min-width:0;overflow-wrap:anywhere}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] :is(.focus-card button,.package-card .handoff-complete,.bigbtn){min-height:54px!important;border-radius:var(--ws-radius-sm)!important;background:var(--ws-accent)!important;color:#fff!important;font-weight:900!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .wash button{min-height:50px;border-radius:var(--ws-radius-sm)!important}
html[data-cm-ui="staff-v1"][data-cm-page="floor"] .scope-note{width:min(1256px,calc(100% - 24px));margin:12px auto!important;padding:11px 13px!important}

/* Read-only prep list. */
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .readonly{padding:10px max(14px,calc((100% - 1280px)/2 + 14px))!important;border-bottom:1px solid var(--ws-line)!important;background:var(--ws-surface-2)!important;color:var(--ws-muted)!important;font-size:12px!important}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .sec{width:min(1280px,100%);margin:0 auto;padding:16px 14px!important}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .sec h2{font-size:17px!important;font-weight:900!important;color:var(--ws-ink)!important}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .sec .hint{color:var(--ws-muted)!important;font-size:12px!important}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .rows{gap:10px!important}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .row{min-width:0;padding:12px!important;border:1px solid var(--ws-task-line);border-radius:var(--ws-radius)!important;background:var(--ws-task)!important;color:var(--ws-task-ink)!important;box-shadow:none}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .row .nm b{font-size:17px!important;line-height:1.25}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .row .nm span{color:var(--ws-task-muted)!important}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .row .meta{border-color:var(--ws-task-line)!important}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .tag{border-radius:6px!important}
html[data-cm-ui="staff-v1"][data-cm-page="prep"] .empty{border:1px dashed var(--ws-line)!important;background:var(--ws-surface)!important;color:var(--ws-muted)!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] :is(.gc .gc-tap,.gc .gc-zh,.gc .gc-qty,.gc .gc-total b,.rc .nm b){color:var(--ws-task-ink)!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] :is(.gc .gc-fr,.gc .gc-total,.gc .gc-queue,.gc .gc-row .w,.gc .gc-wait,.rc .nm span,.rc .why,.rc-assign .lbl,.rc-assign .who){color:var(--ws-task-muted)!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] :is(.gc .gc-total,.gc .gc-row,.rc-assign){border-color:var(--ws-task-line)!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc .gc-detail{background:#211d19!important;border-color:var(--ws-task-line)!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc .gc-more{background:#352f29!important;color:var(--ws-task-ink)!important;border-color:var(--ws-task-line)!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc .gc-row.now{background:#3a301e!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] :is(.gc .gc-table,.gc .gc-row .t,.rc .t){background:#253a53!important;color:#c9e2ff!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc .gc-sku{background:#443719!important;color:#f4d17d!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc .gc-spice{background:#4a2d17!important;color:#ffd0a0!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc .gc-pork{background:#4a2522!important;color:#ffc5bd!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] :is(.gc .gc-rush-tag,.gc .gc-slot){background:#352b4f!important;color:#ded1ff!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc .gc-queue span{background:#38322c!important;color:#e5dbcf!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc-pre-note{background:#22363d!important;color:#c5e6f0!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .rc .act{color:#ffb2aa!important;border-color:#ff9287!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .rc .act:disabled{color:#9f9488!important;border-color:#62574e!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .rc-assign select{background:var(--ws-surface-2)!important;color:var(--ws-task-ink)!important;border-color:var(--ws-task-line)!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .rc-assign .who b{color:var(--ws-warning)!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc-pick{color:var(--ws-task-muted)!important;border-color:var(--ws-task-line)!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc.lv-warn{border-color:#efc166!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc.lv-danger{border-color:#ff9287!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc.lv-crit{border-color:#ffb2aa!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc.lv-warn .gc-wait{color:#efc166!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc.lv-danger .gc-wait{color:#ff9287!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kds"] .gc.lv-crit .gc-wait{color:#ffb2aa!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="prep"] .sku{background:#443719!important;color:#f4d17d!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="prep"] .tag{border:1px solid #5b5148;background:#38322c!important;color:#e5dbcf!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="prep"] .tag.spice{background:#4a2d17!important;color:#ffd0a0!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="prep"] .tag.tbl{background:#20364f!important;color:#c8dfff!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="prep"] .tag.slot{background:#352b4f!important;color:#ded1ff!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="prep"] .tag.rush{background:#4a2522!important;color:#ffc5bd!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="prep"] .tag.st{background:#213a28!important;color:#c6e8cb!important}

/* Kitchen cards use the same task-card language, not a separate legacy skin. */
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .grid{width:min(1280px,100%);margin:0 auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important;padding:12px!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .tk{border:1px solid var(--ws-task-line)!important;border-radius:var(--ws-radius)!important;border-inline-start:1px solid var(--ws-task-line)!important;background:var(--ws-task)!important;color:var(--ws-task-ink)!important;box-shadow:none!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .tk.cook{border-color:var(--ws-accent)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .tk.wait{border-color:#6f93a1!important;opacity:1!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .tk.warning{border:2px solid #c98316!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .tk.urgent{border:3px solid #a72f25!important;box-shadow:none!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] :is(.tk.warning,.tk.urgent,.nudgebar button.spice-nudge){animation:none!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] :is(.tk-h,.taskitem){border-color:var(--ws-task-line)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] :is(.tk-h .tbl small,.tk-h .st,.taskitem small,.b-cancel){color:var(--ws-task-muted)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .tk-b{max-height:none!important;overflow:visible!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .taskitem>div>b{font-size:18px!important;color:var(--ws-task-ink)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .item-actions .start{background:var(--ws-accent)!important;color:#fff!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .item-actions .finish{background:var(--ws-warning)!important;color:#211d19!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .item-actions .done{color:var(--ws-success)!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .wait-note{background:#edf4f6!important;color:#315f70!important;border-color:#7ca8b7!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .service-alert{background:#fff3d7!important;color:#6a4910!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .service-alert.urgent{background:#fbe9e5!important;color:#6d2a21!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .nudgebar{width:min(1280px,100%);margin:0 auto;padding:0 12px!important}
html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .nudgebar button{border-radius:var(--ws-radius-sm)!important;background:#fbe9e5!important;color:#6d2a21!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kitchen"] .wait-note{background:#22363d!important;color:#c5e6f0!important;border-color:#79aabd!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kitchen"] .service-alert{background:#3b3020!important;color:#f6d988!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kitchen"] .service-alert.urgent{background:#472722!important;color:#ffd7d2!important}
html[data-cm-ui="staff-v1"][data-cm-theme="dark"][data-cm-page="kitchen"] .nudgebar button{background:#472722!important;color:#ffd7d2!important;border-color:#ff9287!important}
/* Shared task-owner control; class-scoped so ops does not inherit the staff shell. */
.cmw-assignment{flex:1 1 100%;min-width:0;width:100%;display:grid;gap:8px;margin-top:8px;padding:10px;border:1px solid var(--ws-task-line,var(--line,#d5cabc));border-radius:var(--ws-radius,12px);background:var(--ws-surface-2,var(--panel,var(--card,#eee7dc)));color:var(--ws-task-ink,var(--text,var(--ink,#211d19)))}
.ops-group-item>.cmw-assignment,.ops-clean-card>.cmw-assignment{grid-column:1/-1}
.cmw-assignment__head{min-width:0;display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.cmw-assignment__label{font-size:12px;font-weight:900}.cmw-assignment__current{min-width:0;color:var(--ws-task-muted,var(--muted,#665e55));font-size:11.5px;font-weight:700;overflow-wrap:anywhere}.cmw-assignment__current b{color:var(--ws-task-ink,var(--text,var(--ink,#211d19)))}
.cmw-assignment__controls{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.cmw-assignment :is(select,button){min-width:0;min-height:48px!important;border-radius:var(--ws-radius-sm,8px);font:inherit;font-size:13px;font-weight:800}.cmw-assignment select{width:100%;padding:0 12px;border:1px solid var(--ws-task-line,var(--line,#d5cabc))!important;background:var(--ws-task,var(--panel,var(--card,#fffdf8)))!important;color:var(--ws-task-ink,var(--text,var(--ink,#211d19)))!important}.cmw-assignment button{min-width:96px;padding:0 16px;border:1px solid var(--ws-accent,var(--red,#b5372a));background:var(--ws-accent,var(--red,#b5372a));color:#fff;font-weight:900;cursor:pointer}.cmw-assignment button.cmw-assignment__retry{border-color:var(--ws-task-line,var(--line,#d5cabc));background:transparent;color:var(--ws-task-ink,var(--text,var(--ink,#211d19)))}
.cmw-assignment :is(select,button):disabled{cursor:not-allowed;opacity:.55}.cmw-assignment__message{margin:0;color:var(--ws-task-muted,var(--muted,#665e55));font-size:11.5px;line-height:1.45;overflow-wrap:anywhere}.cmw-assignment__message.ok{color:var(--ws-success,var(--green,#356a43))}.cmw-assignment__message.bad{color:var(--ws-danger,var(--red,#a72f25))}.cmw-assignment--locked{background:transparent}.cmw-assignment--locked .cmw-assignment__message{color:var(--ws-warning,var(--gold,#8a5b12));font-weight:800}html[data-cm-ui="staff-v1"] .rc-assign.cmw-assignment select{min-height:48px!important}
html[data-cm-theme][data-cm-page="ops"] .cmw-assignment .cmw-assignment__controls :is(select,button){min-height:48px!important}
@media(max-width:520px){.cmw-assignment__controls{grid-template-columns:1fr}.cmw-assignment button{width:100%}}
html[data-cm-ui="staff-v1"] :is(.toast,.undobar,.cmw-status){z-index:var(--ws-feedback-z)!important}

@media(min-width:761px){
  html[data-cm-ui="staff-v1"] .top{padding-right:calc(88px + env(safe-area-inset-right,0px))!important}
  html[data-cm-ui="staff-v1"] .cm-desktop-gear:not([hidden]){display:grid!important;place-items:center}
}
@media(max-width:760px){
  html[data-cm-ui="staff-v1"] body{padding-bottom:max(24px,env(safe-area-inset-bottom))}
  html[data-cm-ui="staff-v1"] .cm-mobile-console-sheet{width:var(--cm-menu-width,min(348px,calc(100vw - 20px)))!important}
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .grid:not(.recent){grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;padding:8px!important}
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-tap{padding:10px!important}
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-top{gap:6px!important}
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-table{padding:4px 7px!important;font-size:13.5px!important;line-height:1.15!important}
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-wait{display:grid!important;justify-items:end!important;gap:2px!important;font-size:13.5px!important}
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-crit-tag{margin-inline-start:0!important}
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .gc-zh{font-size:20px!important}
  html[data-cm-ui="staff-v1"][data-cm-page="floor"] .cmw-workspace{grid-template-columns:1fr!important;padding:8px!important;margin:0!important}
  html[data-cm-ui="staff-v1"][data-cm-page="floor"] .cmw-card{grid-column:1/-1!important}
  html[data-cm-ui="staff-v1"][data-cm-page="floor"] .stats{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:10px!important}
  html[data-cm-ui="staff-v1"][data-cm-page="prep"] .rows,html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .grid{grid-template-columns:1fr!important}
  html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .grid{padding:8px!important}
}
@media(max-width:359px){
  html[data-cm-ui="staff-v1"] :is(.cm-mobile-console-actions,.cm-mobile-console-routes){grid-template-columns:1fr!important}
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .grid:not(.recent){grid-template-columns:1fr!important}
}
@media(min-width:900px){
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .grid:not(.recent){grid-template-columns:repeat(4,minmax(0,1fr))!important}
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .grid.recent{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html[data-cm-ui="staff-v1"][data-cm-page="prep"] .rows{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(min-width:1280px){
  html[data-cm-ui="staff-v1"][data-cm-page="kds"] .grid.recent{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(min-width:1180px){
  html[data-cm-ui="staff-v1"][data-cm-page="prep"] .rows,html[data-cm-ui="staff-v1"][data-cm-page="kitchen"] .grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(prefers-reduced-motion:reduce){html[data-cm-ui="staff-v1"] *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}}

/* Operations dispatch board: one information architecture across phone, tablet and desktop. */
/* 第十九次 D：派单卡交还完整的卡片控制（原来藏掉 −/＋ 与右下角手柄、宽度钉死通栏——
   店主要求「每张卡都是同一套设置方式」；默认尺寸仍是通栏，走 OPS_DEFAULT_SIZES）。 */
html[data-cm-page="ops"] .ops-dispatch-panel{min-width:0;container:opsDispatch / inline-size}
/* 第十九次 A：日间不能再出现黑块——派单盒的局部变量全部改挂主题令牌，
   夜间取回深色（回退值即旧观感），日间自动浅色；文字/边线随主题对比达标。 */
html[data-cm-page="ops"] .ops-dispatch-shell{--dispatch-surface:var(--cm-surface-1,var(--panel,#29231e));--dispatch-card:var(--cm-surface-2,#211c18);--dispatch-line:var(--line,#5a4e43);--dispatch-text:var(--cm-text,var(--text,#f7f0e3));--dispatch-muted:var(--cm-text-2,var(--muted,#b6aa9a));--dispatch-accent:var(--red,#e3483e);--dispatch-warn:var(--gold,#e6c36a);display:grid;gap:14px;min-width:0;color:var(--dispatch-text)}
html[data-cm-page="ops"] .ops-dispatch-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--dispatch-line)}
html[data-cm-page="ops"] .ops-dispatch-intro h3{margin:0;font-size:18px;line-height:1.3}
html[data-cm-page="ops"] .ops-dispatch-intro p{max-width:760px;margin:5px 0 0;color:var(--dispatch-muted);font-size:12px;line-height:1.55}
html[data-cm-page="ops"] .ops-dispatch-intro>small{flex:0 0 auto;color:var(--dispatch-muted);font-size:10px}
html[data-cm-page="ops"] .ops-dispatch-layout{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(280px,.9fr);gap:14px;align-items:start;min-width:0}
html[data-cm-page="ops"] .ops-dispatch-list{display:grid;gap:14px;min-width:0}
html[data-cm-page="ops"] .ops-dispatch-section{display:grid;gap:9px;min-width:0}
html[data-cm-page="ops"] .ops-dispatch-section>header{display:flex;align-items:center;justify-content:space-between;gap:12px}
html[data-cm-page="ops"] .ops-dispatch-section>header>div{display:flex;align-items:baseline;gap:9px;min-width:0}
html[data-cm-page="ops"] .ops-dispatch-section h4{margin:0;font-size:15px}
html[data-cm-page="ops"] .ops-dispatch-section>header span{color:var(--dispatch-muted);font-size:11px}
html[data-cm-theme][data-cm-page="ops"] .ops-dispatch-section button,
html[data-cm-theme][data-cm-page="ops"] .ops-dispatch-action button,
html[data-cm-theme][data-cm-page="ops"] .ops-dispatch-empty button{min-height:48px!important;padding:8px 14px;border:1px solid var(--dispatch-line);border-radius:9px;background:transparent;color:var(--dispatch-text);font:inherit;font-size:12px;font-weight:800;cursor:pointer}
html[data-cm-page="ops"] .ops-dispatch-section button:hover,
html[data-cm-page="ops"] .ops-dispatch-section button:focus-visible,
html[data-cm-page="ops"] .ops-dispatch-action button:hover,
html[data-cm-page="ops"] .ops-dispatch-action button:focus-visible{border-color:var(--dispatch-warn);outline:2px solid transparent}
html[data-cm-page="ops"] .ops-dispatch-section button:disabled,
html[data-cm-page="ops"] .ops-dispatch-action button:disabled{cursor:not-allowed;opacity:.48}
html[data-cm-page="ops"] .ops-dispatch-group{min-width:0;overflow:hidden;border:1px solid var(--dispatch-line);border-radius:12px;background:var(--dispatch-card)}
html[data-cm-page="ops"] .ops-dispatch-group.is-selected{border-color:var(--dispatch-warn);box-shadow:inset 4px 0 0 var(--dispatch-warn)}
html[data-cm-page="ops"] .ops-dispatch-group.is-partial{border-style:dashed}
html[data-cm-page="ops"] .ops-dispatch-group.is-mixed .ops-dispatch-owner b{color:var(--dispatch-warn)}
html[data-cm-page="ops"] .ops-dispatch-group.is-locked{opacity:.72}
html[data-cm-page="ops"] .ops-dispatch-group-head{display:grid;grid-template-columns:48px minmax(0,1.15fr) minmax(0,.8fr) minmax(0,1fr) minmax(96px,auto);gap:10px;align-items:center;min-width:0;padding:11px}
html[data-cm-page="ops"] .ops-dispatch-check{display:grid;width:48px;height:48px;place-items:center;cursor:pointer}
html[data-cm-page="ops"] .ops-dispatch-check input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
html[data-cm-page="ops"] .ops-dispatch-check span{display:grid;width:26px;height:26px;place-items:center;border:2px solid var(--dispatch-muted);border-radius:7px;background:transparent}
html[data-cm-page="ops"] .ops-dispatch-check input:checked+span{border-color:var(--dispatch-warn);background:var(--dispatch-warn)}
html[data-cm-page="ops"] .ops-dispatch-check input:checked+span::after{content:'✓';color:#211c18;font-size:17px;font-weight:900}
html[data-cm-page="ops"] .ops-dispatch-check input:indeterminate+span{border-color:var(--dispatch-warn);background:var(--dispatch-warn)}
html[data-cm-page="ops"] .ops-dispatch-check input:indeterminate+span::after{content:'—';color:#211c18;font-size:17px;font-weight:900}
html[data-cm-page="ops"] .ops-dispatch-check input:focus-visible+span{outline:3px solid rgba(230,195,106,.32);outline-offset:3px}
html[data-cm-page="ops"] .ops-dispatch-check input:disabled+span{cursor:not-allowed;opacity:.45}
html[data-cm-page="ops"] :is(.ops-dispatch-table,.ops-dispatch-owner,.ops-dispatch-wait){min-width:0}
html[data-cm-page="ops"] :is(.ops-dispatch-table,.ops-dispatch-owner,.ops-dispatch-wait)>b{display:block;overflow-wrap:anywhere}
html[data-cm-page="ops"] .ops-dispatch-table>b{font-size:15px}
html[data-cm-page="ops"] :is(.ops-dispatch-table,.ops-dispatch-owner,.ops-dispatch-wait)>small{display:block;margin-top:3px;color:var(--dispatch-muted);font-size:10.5px;line-height:1.45;overflow-wrap:anywhere}
html[data-cm-page="ops"] .ops-dispatch-wait>b{color:var(--dispatch-warn);font-size:13px}
html[data-cm-page="ops"] .ops-dispatch-expand{min-width:96px;white-space:nowrap}
html[data-cm-page="ops"] .ops-dispatch-lock-note{margin:0;padding:0 12px 10px 69px;color:var(--dispatch-warn);font-size:10.5px}
html[data-cm-page="ops"] .ops-dispatch-tasks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 11px 11px 69px}
html[data-cm-page="ops"] .ops-dispatch-tasks[hidden]{display:none}
html[data-cm-page="ops"] .ops-dispatch-task{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;align-items:center;min-width:0;min-height:64px;padding:7px 9px;border:1px solid var(--dispatch-line);border-radius:9px;background:rgba(255,255,255,.025);cursor:pointer}
html[data-cm-page="ops"] .ops-dispatch-task.is-selected{border-color:var(--dispatch-warn);background:rgba(230,195,106,.08)}
html[data-cm-page="ops"] .ops-dispatch-task.is-conflict{border-color:var(--dispatch-accent);box-shadow:inset 4px 0 0 var(--dispatch-accent)}
html[data-cm-page="ops"] .ops-dispatch-task.is-locked{cursor:not-allowed;opacity:.62}
html[data-cm-page="ops"] .ops-dispatch-task input{width:24px;height:24px;margin:auto;accent-color:var(--dispatch-warn)}
html[data-cm-page="ops"] .ops-dispatch-task span{min-width:0}
html[data-cm-page="ops"] .ops-dispatch-task b{display:block;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
html[data-cm-page="ops"] .ops-dispatch-task small{display:block;margin-top:3px;color:var(--dispatch-muted);font-size:10px;line-height:1.45;overflow-wrap:anywhere}
html[data-cm-page="ops"] .ops-dispatch-task em{grid-column:2;color:var(--dispatch-warn);font-size:9.5px;font-style:normal}
html[data-cm-page="ops"] .ops-dispatch-action{position:sticky;top:78px;display:grid;gap:11px;min-width:0;padding:13px;border:1px solid var(--dispatch-line);border-radius:12px;background:var(--dispatch-card);box-shadow:0 12px 30px rgba(0,0,0,.14)}
html[data-cm-page="ops"] .ops-dispatch-action.is-error{border-color:var(--dispatch-accent)}
html[data-cm-page="ops"] .ops-dispatch-action.is-success{border-color:var(--green,#75a66f)}
html[data-cm-page="ops"] .ops-dispatch-action-head{display:flex;align-items:center;justify-content:space-between;gap:10px}
html[data-cm-page="ops"] .ops-dispatch-action-head small{display:block;color:var(--dispatch-muted);font-size:10px}
html[data-cm-page="ops"] .ops-dispatch-action-head b{display:block;margin-top:2px;font-size:16px}
html[data-cm-page="ops"] .ops-dispatch-action-head button{min-width:72px}
html[data-cm-page="ops"] .ops-dispatch-recommendation{display:grid;gap:4px;margin:0;padding:10px;border:1px solid var(--dispatch-line);border-radius:9px;background:rgba(230,195,106,.06)}
html[data-cm-page="ops"] .ops-dispatch-recommendation b{color:var(--dispatch-warn);font-size:12px}
html[data-cm-page="ops"] .ops-dispatch-recommendation span{color:var(--dispatch-muted);font-size:10.5px;line-height:1.5}
html[data-cm-page="ops"] .ops-dispatch-recommendation ul{display:grid;gap:5px;margin:2px 0;padding:0;list-style:none}
html[data-cm-page="ops"] .ops-dispatch-recommendation li{display:grid;grid-template-columns:minmax(90px,.8fr) minmax(0,1.2fr);gap:8px;align-items:baseline}
html[data-cm-page="ops"] .ops-dispatch-recommendation li b{color:var(--dispatch-text);font-size:10.5px;overflow-wrap:anywhere}
html[data-cm-page="ops"] .ops-dispatch-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px}
html[data-cm-page="ops"] .ops-dispatch-mode button.is-active{border-color:var(--dispatch-warn);background:rgba(230,195,106,.14);color:var(--dispatch-warn)}
html[data-cm-page="ops"] .ops-dispatch-recommendation.is-warning{border-color:var(--dispatch-warn)}
html[data-cm-page="ops"] .ops-dispatch-target{display:grid;gap:6px}
html[data-cm-page="ops"] .ops-dispatch-target>span{font-size:11px;font-weight:800}
html[data-cm-page="ops"] .ops-dispatch-target select{width:100%;min-width:0;min-height:48px;padding:8px 11px;border:1px solid var(--dispatch-line);border-radius:9px;background:var(--dispatch-surface);color:var(--dispatch-text);font:inherit;font-size:13px}
html[data-cm-page="ops"] .ops-dispatch-target.is-muted{opacity:.58}
html[data-cm-page="ops"] .ops-dispatch-actions{display:grid;grid-template-columns:1fr 1.35fr;gap:8px}
html[data-cm-page="ops"] .ops-dispatch-actions .is-primary{border-color:var(--dispatch-accent);background:var(--dispatch-accent);color:#fff}
html[data-cm-page="ops"] .ops-dispatch-status{min-height:18px;margin:0;color:var(--dispatch-muted);font-size:10.5px;line-height:1.5}
html[data-cm-page="ops"] .ops-dispatch-action.is-error .ops-dispatch-status{color:#ffb4ac}
html[data-cm-page="ops"] .ops-dispatch-action.is-success .ops-dispatch-status{color:#bce4bf}
html[data-cm-page="ops"] .ops-dispatch-refresh{width:100%}
html[data-cm-page="ops"] .ops-dispatch-sync-error{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--dispatch-accent);border-radius:9px;background:rgba(227,72,62,.1);color:#ffb4ac;font-size:11px;line-height:1.5}
html[data-cm-theme][data-cm-page="ops"] .ops-dispatch-sync-error button{flex:0 0 auto;min-height:48px!important;border:1px solid currentColor;border-radius:8px;background:transparent;color:inherit}
html[data-cm-page="ops"] .ops-dispatch-empty{display:grid;gap:6px;min-height:92px;place-content:center;padding:16px;border:1px dashed var(--dispatch-line);border-radius:10px;color:var(--dispatch-muted);text-align:center}
html[data-cm-page="ops"] .ops-dispatch-empty b{color:var(--dispatch-text)}
html[data-cm-page="ops"] .ops-dispatch-empty.is-error{border-color:var(--dispatch-accent);color:#ffb4ac}
/* 第十九次 A：三处错误文字的浅粉字色只适合深底，日间换成深红（背景仍是浅色警示面）。 */
html[data-cm-theme="light"][data-cm-page="ops"] :is(.ops-dispatch-action.is-error .ops-dispatch-status,.ops-dispatch-sync-error,.ops-dispatch-empty.is-error){color:#8E1015}
html[data-cm-theme="light"][data-cm-page="ops"] .ops-dispatch-action.is-success .ops-dispatch-status{color:#2D5C36}

/* 中等桌面宽度下，派单列表还要给右侧确认栏留空间；查看按钮独占下一行，避免被卡片裁掉。 */
@media(min-width:1081px) and (max-width:1399px){
 html[data-cm-page="ops"] .ops-dispatch-group-head{grid-template-columns:48px minmax(0,1.15fr) minmax(0,.8fr) minmax(0,1fr)}
 html[data-cm-page="ops"] .ops-dispatch-expand{grid-column:2/-1;width:100%}
}

@media(max-width:1080px){
 html[data-cm-page="ops"] .ops-dispatch-layout{grid-template-columns:minmax(0,1.7fr) minmax(260px,.85fr);gap:10px}
 html[data-cm-page="ops"] .ops-dispatch-group-head{grid-template-columns:48px minmax(140px,1fr) minmax(120px,.8fr) minmax(140px,1fr)}
 html[data-cm-page="ops"] .ops-dispatch-expand{grid-column:2/-1;width:100%}
 html[data-cm-page="ops"] .ops-dispatch-tasks{grid-template-columns:1fr;padding-left:69px}
}
@container opsDispatch (max-width:860px){
 html[data-cm-page="ops"] .ops-dispatch-layout{grid-template-columns:1fr}
 html[data-cm-page="ops"] .ops-dispatch-action{position:static}
 html[data-cm-page="ops"] .ops-dispatch-group-head{grid-template-columns:48px minmax(140px,1fr) minmax(120px,.8fr) minmax(140px,1fr)}
 html[data-cm-page="ops"] .ops-dispatch-expand{grid-column:2/-1;width:100%}
 html[data-cm-page="ops"] .ops-dispatch-tasks{grid-template-columns:1fr;padding-left:69px}
}
@container opsDispatch (max-width:560px){
 html[data-cm-page="ops"] .ops-dispatch-intro{align-items:flex-start;flex-direction:column}
 html[data-cm-page="ops"] .ops-dispatch-group-head{grid-template-columns:48px minmax(0,1fr) auto;gap:7px;padding:9px}
 html[data-cm-page="ops"] .ops-dispatch-owner{grid-column:2/3}
 html[data-cm-page="ops"] .ops-dispatch-wait{grid-column:3/4;grid-row:1/3;max-width:132px;text-align:end}
 html[data-cm-page="ops"] .ops-dispatch-lock-note{padding-left:64px}
 html[data-cm-page="ops"] .ops-dispatch-tasks{padding:0 9px 9px 64px}
}
@media(max-width:760px){
 html[data-cm-page="ops"] .ops-dispatch-panel{padding-inline:10px!important}
 html[data-cm-page="ops"] .ops-dispatch-intro{align-items:flex-start;flex-direction:column}
 html[data-cm-page="ops"] .ops-dispatch-layout{grid-template-columns:1fr}
 html[data-cm-page="ops"] .ops-dispatch-group-head{grid-template-columns:48px minmax(0,1fr) auto;gap:7px;padding:9px}
 html[data-cm-page="ops"] .ops-dispatch-owner{grid-column:2/3}
 html[data-cm-page="ops"] .ops-dispatch-wait{grid-column:3/4;grid-row:1/3;max-width:132px;text-align:end}
 html[data-cm-page="ops"] .ops-dispatch-expand{grid-column:2/-1}
 html[data-cm-page="ops"] .ops-dispatch-lock-note{padding-left:64px}
 html[data-cm-page="ops"] .ops-dispatch-tasks{grid-template-columns:1fr;padding:0 9px 9px 64px}
 html[data-cm-page="ops"] .ops-dispatch-action{top:auto;bottom:max(8px,env(safe-area-inset-bottom));z-index:8;box-shadow:0 -10px 30px rgba(0,0,0,.28)}
 html[data-cm-page="ops"] .ops-dispatch-sync-error{align-items:flex-start;flex-direction:column}
 html[data-cm-page="ops"] .ops-dispatch-sync-error button{width:100%}
}
@media(max-width:430px){
 html[data-cm-page="ops"] .ops-dispatch-panel{padding-inline:8px!important}
 html[data-cm-page="ops"] .ops-dispatch-section>header{align-items:flex-start}
 html[data-cm-page="ops"] .ops-dispatch-section>header>div{align-items:flex-start;flex-direction:column;gap:2px}
 html[data-cm-page="ops"] .ops-dispatch-section>header>button{max-width:150px}
 html[data-cm-page="ops"] .ops-dispatch-group-head{grid-template-columns:48px minmax(0,1fr)}
 html[data-cm-page="ops"] .ops-dispatch-owner,
 html[data-cm-page="ops"] .ops-dispatch-wait{grid-column:2;grid-row:auto;max-width:none;text-align:start}
 html[data-cm-page="ops"] .ops-dispatch-expand{grid-column:1/-1}
 html[data-cm-page="ops"] .ops-dispatch-lock-note{padding-inline:10px}
 html[data-cm-page="ops"] .ops-dispatch-tasks{padding-inline:9px}
 html[data-cm-page="ops"] .ops-dispatch-actions{grid-template-columns:1fr}
 html[data-cm-page="ops"] .ops-dispatch-mode{grid-template-columns:1fr}
}
