/* Shared portal language. Layouts, colour-coded states and machine inputs stay local. */
:root{
  --navy:var(--ui-ink);--navy2:var(--ui-secondary);--bg:#f7f0df;--card:var(--ui-surface);
  --text:var(--ui-ink);--muted:var(--ui-muted);--line:var(--ui-line);
  --green:var(--ui-success);--orange:var(--ui-danger);--danger:#a94e35;
  --milk-line:var(--ui-line);
  --milk-shadow:3px 3px 0 #e7d7bb;
  --ui-corner:5px;
}
body.milk-app{font-variant-numeric:tabular-nums;line-height:1.45}
body.milk-app :is(button,input,select,textarea){font-family:inherit}
body.milk-app :is(h1,h2,h3){text-wrap:balance}
body.milk-app :is(.muted,.hint,.text-muted){color:var(--ui-muted)}

/* The common navigation is available even on older worker and customer pages. */
body.milk-app .site-navigation{background:#f6eddb;border-bottom-color:var(--ui-line)}
body.milk-app .site-navigation a{border-radius:var(--ui-corner)}
body.milk-app :is(.management-shell,.workplace-header,.master-console-header,.warm-header,
  .milk-header,.control-v2-header,.section-home-header){
  border-radius:7px;background:var(--ui-surface);box-shadow:var(--milk-shadow);backdrop-filter:none;
}
body.milk-app :is(.workplace-nav,.management-nav,.management-primary,.master-console-nav,.warm-nav,.milk-nav){border-radius:var(--ui-corner)}
body.milk-app :is(.workplace-nav,.management-nav,.management-primary,.master-console-nav,.warm-nav,.milk-nav) a{border-radius:3px}
body.milk-app .management-primary-item.is-active{box-shadow:2px 2px 0 #cfaf78}
body.milk-app .management-search{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;border-radius:var(--ui-corner)}
body.milk-app .management-search input{border:0;border-radius:0;background:transparent;box-shadow:none}
body.milk-app .management-search button{white-space:nowrap}
body.milk-app .management-tools-menu{flex:1;min-width:0}
body.milk-app .management-tools-menu>summary{display:none}
body.milk-app .workplace-shell .workplace-nav a[aria-current=page]{box-shadow:2px 2px 0 #cfaf78}
body.milk-app :is(.workplace-mark,.module-mark,.pixel-avatar){font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
body.milk-app :is(.management-location h1,.workplace-identity h1){letter-spacing:-.5px}

/* Compact squared cards match the factory stations, without changing their grid. */
body.milk-app :is(.card,.milk-panel,.warm-panel,.control-v2-panel,.control-section,
  .management-shell,.workplace-header,.worker-task,.modern-task-card,.master-task,
  .order-card,.customer-order-card,.customer-order-tile,.customer-order-form,
  .customer-orders-section,.smoke-card,.smoke-process-card,.smoke-queue-card,
  .warehouse-stock-card,.transfer-row,.shift-start-card,.login-card,.master-login-card,
  .customer-login-card,.friendly-error-card,.service-panel,.performance-panel,
  .assistant-panel,.employee-history-panel,.error-detail-panel,.error-resolution-panel,
  .error-trace-panel,.guide-role-card,.filter-card,.global-search-form,.warm-side-menu){
  border-radius:7px;border-color:var(--milk-line);box-shadow:var(--milk-shadow);
}
body.milk-app :is(.card,.worker-task,.master-task,.order-card,.customer-order-card,
  .customer-order-form,.smoke-card,.event,.transfer-row,.filter-card){background:var(--milk-paper);color:var(--milk-brown)}
body.milk-app :is(.kpi,.control-kpi,.summary-strip article,.milk-kpis article,
  .summary-cards>div,.stat,.warehouse-summary article,.flow-report-kpis article,
  .area-output-kpis article,.performance-kpis article,.assistant-kpis article,
  .backup-summary article,.service-health-grid article,.error-summary-grid article,
  .employee-activity-kpis article){
  min-width:0;border-radius:var(--ui-corner);border-color:var(--milk-line);box-shadow:var(--milk-shadow);
}
body.milk-app :is(.kpi,.control-kpi,.summary-cards>div,.stat){background:var(--milk-paper);color:var(--milk-brown)}
body.milk-app :is(.kpi,.control-kpi,.stat,.summary-cards)>:is(span,small){color:var(--ui-muted)}
body.milk-app :is(.module-card,.admin-quick-links a,.control-card,.pipeline-stage,.task-numbers>div,
  .trace-weights>div,.trace-people>div,.metrics>div,.mini-stats article,.batch-composition,
  .search-result,.system-error-row,.service-log-list article,.backup-list>article,
  .service-actions-grid form,.employee-card,.notification-card,.operation-form){border-radius:var(--ui-corner)}
body.milk-app :is(.module-card,.module-card:hover,.customer-order-tile:hover){transform:none;transition:none}
body.milk-app .module-card{border-color:var(--milk-line);background:var(--milk-paper);color:var(--milk-brown)}
body.milk-app .module-card p{color:var(--ui-muted)}
body.milk-app :is(.module-card strong,.text-link,.back){color:var(--milk-brown)}

/* Preserve touch sizes and input payloads; only visible controls get styling. */
body.milk-app :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea){
  border-color:var(--ui-line);border-radius:var(--ui-corner);background:var(--ui-field);color:var(--milk-brown);
  box-shadow:inset 1px 1px 0 #f0e6d3;max-width:100%;
}
body.milk-app :is(input,textarea)::placeholder{color:var(--ui-muted);opacity:1}
body.milk-app :is(input[type=checkbox],input[type=radio]){accent-color:#698449}
body.milk-app :is(.btn,.workplace-shell button,.workplace-shell .butter-button,.keypad button){
  border-radius:var(--ui-corner);box-shadow:2px 2px 0 #d8c39f;
}
body.milk-app :is(.btn,.workplace-shell button,.workplace-shell .butter-button):not(:disabled){touch-action:manipulation}
body.milk-app :is(.btn,.workplace-shell button,.workplace-shell .butter-button):disabled{box-shadow:none;cursor:not-allowed}
body.milk-app :is(.milk-notice,.alert,.success-card,.work-status,.shift-duration-line,.muted-note,
  .warm-pill,.status-chip,.live-pill,.butter-status,.milk-subnav a,.milk-pages a){border-radius:var(--ui-corner)}
body.milk-app .progress{border-radius:2px;background:#e8dcc7}
body.milk-app .progress i{border-radius:1px;background:var(--milk-green)}
body.milk-app .muted-note{background:#f3ead9;color:var(--ui-muted)}
body.milk-app :is(.workplace-shell,.unified-page,.master-console,.mobile-shell,.customer-app)
  :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #b77c25;outline-offset:3px}

/* Table wrappers own horizontal scrolling; long numbers are not split in half. */
body.milk-app :is(.milk-table-wrap,.report-table-wrap,.table-wrap,.service-table-wrap,.perf-table){
  border-radius:var(--ui-corner);scrollbar-width:thin;scrollbar-color:#cdb58c #fff4df;
}
body.milk-app :is(.report-table,.service-table-wrap table,.perf-table table){font-variant-numeric:tabular-nums}
body.milk-app :is(.report-table,.service-table-wrap table,.perf-table table) th{background:var(--ui-soft);color:var(--ui-muted)}
body.milk-app :is(.report-table,.service-table-wrap table,.perf-table table) :is(th,td){border-bottom-color:var(--milk-line)}
body.milk-app :is(.report-table,.service-table-wrap table,.perf-table table) tbody tr:nth-child(even){background:#fbf5e9}
body.milk-app .formatted-number{white-space:nowrap;font-variant-numeric:tabular-nums}

@media(max-width:600px){
  body.milk-app .management-tools-menu{width:100%}
  body.milk-app .management-tools-menu>summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;padding:10px 12px;border:1px solid var(--milk-line);border-radius:var(--ui-corner);background:var(--ui-surface);cursor:pointer;font-size:var(--ui-type-meta);font-weight:800;list-style:none}
  body.milk-app .management-tools-menu>summary::-webkit-details-marker{display:none}
  body.milk-app .management-tools-menu>summary i{font-style:normal;font-size:16px;color:var(--milk-brown-2)}
  body.milk-app .management-tools-menu[open]>summary{margin-bottom:8px}
  body.milk-app .management-tools-menu[open]>summary i{transform:rotate(45deg)}
  body.milk-app .management-tools a{border-radius:var(--ui-corner)}
  body.milk-app .unified-page .management-primary{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.milk-app .management-primary-item{gap:6px;padding:8px;min-height:48px}
  body.milk-app .management-primary-item b{font-size:var(--ui-type-meta)}
  body.milk-app .management-primary-item small{display:none}
  body.milk-app .management-primary-item>i{width:23px;height:23px;flex-basis:23px;font-size:var(--ui-type-meta)}
  body.milk-app .workplace-shell .milk-panel{padding:14px}
  body.milk-app :is(.workplace-shell,.mobile-shell,.master-console) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){font-size:16px}
  body.milk-app :is(.kpi,.milk-kpis article,.summary-strip article){overflow-wrap:anywhere}
}
@media(prefers-reduced-motion:reduce){html,body.milk-app{scroll-behavior:auto}}
@media print{
  body.milk-app{background:white;color:#000}
  body.milk-app .site-navigation{display:none}
  body.milk-app :is(.card,.milk-panel,.warm-panel,.workplace-header,.management-shell){box-shadow:none}
}
