:root{--slate-0:#ffffff;--slate-25:#f7f9f9;--slate-50:#eff3f3;--slate-100:#e2e8e8;--slate-200:#cfd7d7;--slate-300:#c0c7d1;--slate-400:#8b9898;--slate-500:#64707d;--slate-600:#4e5a5a;--slate-700:#384242;--slate-800:#1c2323;--slate-850:#1a2127;--slate-900:#141919;--slate-ink:#232b2b;--green-50:#eaf2f0;--green-100:#cfe2de;--green-200:#a3c8c0;--green-300:#6ea79c;--green-400:#3d8477;--green-500:#245b50;--green-600:#1e4d44;--green-700:#173c35;--warm-50:#fdf2e8;--warm-100:#f9dfc6;--warm-200:#f2bd8c;--warm-300:#e79a55;--warm-400:#d86f1f;--warm-500:#b85a15;--warm-600:#90460f;--pass:#1f7a52;--pass-bg:#e7f2ec;--pass-br:#b9dccb;--pass-fg:#155f3f;--attn:#d86f1f;--attn-bg:#fdf2e8;--attn-br:#f2bd8c;--attn-fg:#90460f;--stop:#b3261e;--stop-bg:#fbeae8;--stop-br:#e9b6b2;--stop-fg:#8c1e17;--run:#2c5f8a;--run-bg:#e9eff5;--run-br:#b7ccdd;--run-fg:#22496a;--hold:#6b7878;--hold-bg:#eff3f3;--hold-br:#cfd7d7;--hold-fg:#4e5a5a;--tag-hold:#6a1b9a;--tag-hold-bg:#f3e9f7;--tag-hold-br:#d9bde5;--tag-hold-fg:#5a1682;--bg:var(--slate-25);--bg-raised:var(--slate-0);--surface:var(--slate-0);--surface-alt:var(--slate-50);--border:var(--slate-200);--border-strong:var(--slate-300);--border-subtle:var(--slate-100);--text:var(--slate-ink);--text-muted:var(--slate-500);--text-faint:var(--slate-400);--text-inverse:#f7faf8;--app-chrome:var(--green-700);--accent-ink:var(--text-inverse);--accent:var(--green-500);--accent-hover:var(--green-600);--accent-active:var(--green-700);--accent-tint:var(--green-50);--accent-text:var(--green-500);--attn-tint:var(--warm-50);--focus-ring:0 0 0 3px rgba(36,91,80,.16);--font-sans:"IBM Plex Sans","IBM Plex Sans Variable",system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"IBM Plex Mono","SF Mono",ui-monospace,Consolas,monospace;--font-display:var(--font-sans);--fs-display:32px;--fs-h1:24px;--fs-h2:19px;--fs-h3:15px;--fs-body:14px;--fs-small:13px;--fs-label:11px;--fs-data:13px;--lh-tight:1.2;--lh-body:1.5;--tracking-tight:-.02em;--weight-body:400;--weight-ui:500;--weight-strong:600;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--page-pad-x:clamp(16px, 2.2vw, 40px);--radius-tight:4px;--radius-sm:6px;--radius:8px;--radius-lg:8px;--radius-pill:999px;--elev-1:0 1px 2px rgba(17,24,39,.05);--elev-2:0 8px 24px rgba(17,24,39,.08);--touch-min:44px;--control-h-dense:32px;--control-h:40px;--control-h-lg:44px;--topnav-h:48px;--editor-chrome-h:32px;--editor-chrome-h-max:40px;--sidebar-w:220px;--sidebar-w-rail:64px;--content-max:none;--content-max-read:72ch;--motion:.12s cubic-bezier(.2,0,.3,1)}[data-ds-theme=institutional]{--bg:var(--slate-50);--surface:var(--slate-0);--border:var(--slate-300);--topnav-h:52px}[data-ds-theme=floor]{--bg:var(--slate-900);--bg-raised:var(--slate-800);--surface:var(--slate-850);--surface-alt:var(--slate-800);--border:var(--slate-700);--border-strong:var(--slate-600);--border-subtle:#2a333b;--text:#ffffff;--text-muted:var(--slate-300);--text-faint:var(--slate-400);--accent:var(--green-400);--accent-hover:#4f9b8c;--accent-active:var(--green-300);--accent-tint:rgba(61,132,119,.16);--accent-text:var(--green-300);--accent-ink:#000000;--attn-tint:rgba(216,111,31,.14);--focus-ring:0 0 0 3px rgba(124,181,169,.35);--pass-bg:rgba(31,122,82,.18);--pass-br:#2f8f60;--pass-fg:#5fc48e;--attn-bg:rgba(216,111,31,.14);--attn-br:#90460f;--attn-fg:#e79a55;--stop-bg:rgba(180,35,24,.16);--stop-br:#8c1e17;--stop-fg:#e98b84;--run-bg:rgba(44,95,138,.18);--run-br:#22496a;--run-fg:#7fb0d8;--hold-bg:var(--slate-800);--hold-br:var(--slate-700);--hold-fg:var(--slate-300);--tag-hold-bg:rgba(122,42,168,.2);--tag-hold-br:#7a2aa8;--tag-hold-fg:#c99ade;--fs-h1:40px;--fs-h2:26px;--fs-h3:20px;--fs-body:18px;--fs-small:16px;--fs-label:15px;--fs-data:30px;--control-h-dense:56px;--control-h:64px;--control-h-lg:72px;--touch-min:64px;--radius-tight:8px;--radius-sm:8px;--radius:8px;--elev-1:none;--elev-2:none}:root{--chart-1:#245b50;--chart-2:#d86f1f;--chart-3:#2c5f8a;--chart-4:#6ea79c;--chart-5:#90460f;--chart-6:#6b7878;--chart-grid:var(--border-subtle);--chart-axis:var(--text-faint)}[data-ds-theme=floor]{--chart-1:#5fc48e;--chart-2:#e79a55;--chart-3:#7fb0d8;--chart-4:#a3c8c0;--chart-5:#f2bd8c;--chart-6:#8b9898}:root{--wi-frame:var(--slate-ink);--wi-frame-soft:var(--accent-tint);--wi-panel:var(--surface-alt);--wi-header-h:64px;--wi-label-bg:var(--surface-alt)}@media print{:root{--bg:#ffffff;--surface:#ffffff;--surface-alt:#ffffff;--text:#000000;--text-muted:#333333;--text-faint:#555555;--border:#000000;--border-subtle:#999999;--elev-1:none;--elev-2:none;--pass-bg:transparent;--attn-bg:transparent;--stop-bg:transparent;--run-bg:transparent;--hold-bg:transparent;--tag-hold-bg:transparent;--pass-fg:#000000;--attn-fg:#000000;--stop-fg:#000000;--run-fg:#000000;--hold-fg:#000000;--tag-hold-fg:#000000}}:root{--card:var(--surface);--muted:var(--text-muted);--accent-warm:var(--attn);--danger:var(--stop);--shadow:var(--elev-1);--shadow-raised:var(--elev-2);--control-height:var(--control-h);--control-height-lg:var(--control-h-lg);--page-max:var(--content-max);--shopfloor-sidebar-w:var(--sidebar-w);--shell-sidebar-w:var(--sidebar-w);--rail-width:var(--sidebar-w-rail);--status-ok:var(--pass);--status-warn:var(--attn);--status-fail:var(--stop);--status-setup:var(--run);--status-idle:var(--hold);--status-hold:var(--tag-hold);--process:var(--pass);--kpi-ok:var(--pass);--kpi-warn:var(--attn);--kpi-danger:var(--stop);--kpi-neutral:var(--hold);--login-page-bg:var(--surface-alt);--login-card-border:var(--border)}*,*:before,*:after{box-sizing:border-box}html:has([data-ds-theme=floor]){color-scheme:dark}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);font-weight:var(--weight-body);line-height:var(--lh-body);font-synthesis:none;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-weight:var(--weight-strong);letter-spacing:var(--tracking-tight);line-height:var(--lh-tight);color:var(--text);margin:0 0 var(--space-2)}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}a{color:var(--accent-text);text-decoration:none}a:hover{color:var(--attn);text-decoration:underline}code,.mono{font-family:var(--font-mono);font-size:.9em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}[disabled],.is-disabled{background:var(--surface-alt);border-color:var(--border-subtle);color:var(--text-faint);cursor:not-allowed}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-ext-wght-normal-d45eAU9y.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-cyrillic-wght-normal-BAAhND-U.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-greek-wght-normal-CmyJS8uq.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-vietnamese-wght-normal-Dg1JeJN0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-ext-wght-normal-CIII54If.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(/assets/ibm-plex-sans-latin-wght-normal-IvpUvPa2.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #f6f7f8;--surface: #eef1f4;--border: #d6dbe2;--text: #1d252c;--accent: #245b50;--accent2: #0f7b63;--accent-warm: #d86f1f;--radius: 8px;--font-sans: "Inter Variable", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-weight-body: 400;--font-weight-ui: 500;--font-weight-strong: 600;--page-pad-x: clamp(16px, 2.2vw, 40px);--page-max: none;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-6: 24px;--space-8: 32px;--touch-min: 44px;--login-page-bg: #eceff2;--login-card-border: #d0d5dc;--control-height-lg: 44px}*{box-sizing:border-box}html{color-scheme:light}body{margin:0;font-family:var(--font-sans);font-weight:var(--font-weight-body);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;background:var(--bg);color:var(--text);line-height:1.55;min-height:100vh;min-height:100dvh}button,input,select,textarea{font-family:inherit;font-weight:inherit}h1,h2,h3{font-weight:var(--font-weight-strong);letter-spacing:-.02em}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.layout{min-height:100vh;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 20px;background:#fffffff5;border-bottom:1px solid var(--border);box-shadow:var(--shadow);position:sticky;top:0;z-index:1200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topbar nav{display:flex;gap:6px;flex-wrap:wrap;align-items:center;justify-content:center;flex:1 1 auto}.topbar .brand{display:inline-flex;align-items:center;gap:10px;font-weight:500;letter-spacing:0;white-space:nowrap;text-transform:none}.topbar .brand span{text-transform:none}.topbar-logo{width:66px;height:auto;display:block}.topbar nav a{color:#2f3b46;padding:7px 10px;border-radius:6px;font-size:.88rem;font-weight:500;text-transform:none;letter-spacing:0}.topbar nav a:hover{background:var(--surface);text-decoration:none}.topbar nav a.active{background:#e1eee9;color:var(--accent)}.user-chip{color:#43505c;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:5px 10px;font-size:.84rem;white-space:nowrap}.layout main{flex:1;padding:var(--space-4) var(--page-pad-x) var(--space-6);max-width:none;width:100%;margin:0;min-width:0}.layout main.app-shell-main{flex:1 1 0%;width:auto;max-width:100%;min-width:0}.layout main:has(.shopfloor-page),.layout main:has(.editor-shell:not(.editor-shopfloor-embed)),.layout main:has(.task-print-sheets-page){max-width:none}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-5);box-shadow:none;margin-bottom:var(--space-4)}h1{font-size:1.42rem;margin:0 0 12px;letter-spacing:0}h2{font-size:1.1rem;margin:0 0 10px;letter-spacing:0}.muted{color:var(--muted)}.page{max-width:none;width:100%}.page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:14px;border:1px solid rgba(36,91,80,.1);background:#fff;box-shadow:0 1px #1118270a,0 10px 28px #0f172a0a}.page-header-nav-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:0}.page-header-nav-row .page-header-title{margin:0}.page-header-main{min-width:0}.page-header-eyebrow{margin:0 0 2px;font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent2)}.page-header-title{margin:0;font-size:1.4rem;line-height:1.15;letter-spacing:-.02em}.page-header-lead{max-width:46rem;line-height:1.4;margin:2px 0 0;font-size:.88rem}.page-header-back,.page-header-back a{display:none}.page-header-aside{display:flex;flex-flow:row wrap;align-items:center;justify-content:flex-end;gap:var(--space-2) var(--space-3)}.page-header-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.page .card{border-radius:var(--radius);box-shadow:none}.task-detail-wi-card{padding:0;overflow:hidden}.task-detail-wi-stack{padding:0;gap:0}.task-detail-wi-stack .shopfloor-wi-block+.shopfloor-wi-block{border-top:1px solid var(--border)}.task-detail-card-heading{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 14px;margin-bottom:4px}.task-detail-card-heading h2{margin-bottom:0}.dashboard-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;flex-wrap:wrap;padding-bottom:4px}.dashboard-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}.dashboard-metric{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:13px 14px;box-shadow:var(--shadow);border-top:3px solid var(--accent)}.dashboard-metric span{display:block;color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:0}.dashboard-metric strong{display:block;margin-top:6px;font-size:1.45rem;line-height:1.1}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:16px}.dashboard-grid--single{grid-template-columns:1fr}.dashboard-grid--single>.card+.card{display:block}.dash-analytics .dash-head-actions{display:flex;gap:8px;flex-wrap:wrap}.dash-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin:16px 0}.dash-kpi{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px 14px;text-align:left;box-shadow:var(--shadow);cursor:default;transition:border-color .15s,transform .15s;font:inherit;color:inherit}.dash-kpi:not(:disabled){cursor:pointer}.dash-kpi:not(:disabled):hover{border-color:#b8d4cc;transform:translateY(-1px)}.dash-kpi--active{border-color:var(--accent);background:#f3faf7}.dash-kpi span{display:block;color:var(--muted);font-size:.75rem;font-weight:700;text-transform:uppercase}.dash-kpi strong{display:block;margin-top:4px;font-size:1.35rem}.dash-kpi small{display:block;margin-top:2px;color:var(--muted);font-size:.78rem}.dash-line-filter{margin-bottom:14px}.dash-filter-label{display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;color:var(--muted);margin-bottom:8px}.dash-line-chips{display:flex;flex-wrap:wrap;gap:8px}.dash-line-chip{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:6px 14px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s;font:inherit}.dash-line-chip:hover{border-color:#b8d4cc}.dash-line-chip.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.dash-analytics-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.7fr);gap:14px;align-items:start}.dash-charts-main{display:flex;flex-direction:column;gap:14px}.dash-charts-side{display:flex;flex-direction:column;gap:14px;position:sticky;top:12px}.dash-chart-tabs{display:flex;flex-wrap:wrap;gap:6px}.dash-chart-tab{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:8px 12px;font-size:.85rem;font-weight:600;cursor:pointer;font:inherit}.dash-chart-tab.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.dash-chart-card h2{margin:0 0 4px;font-size:1rem}.dash-chart-desc{margin:0 0 12px;font-size:.85rem}.dash-chart-empty{padding:40px 0;text-align:center}.dash-chart-tooltip{background:#fff;border:1px solid var(--border);border-radius:8px;padding:8px 12px;box-shadow:var(--shadow-raised);font-size:.85rem}.dash-line-detail-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.dash-line-detail-head h2{margin:0}.dash-line-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dash-line-detail-grid span{display:block;font-size:.78rem;color:var(--muted);text-transform:uppercase;font-weight:700}.dash-line-detail-grid strong{display:block;margin-top:4px;font-size:1.2rem}@media (max-width: 960px){.dash-analytics-grid{grid-template-columns:1fr}.dash-charts-side{position:static}}@media (max-width: 560px){.dash-line-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-bars{display:flex;flex-direction:column;gap:12px}.dashboard-bar-label{display:flex;justify-content:space-between;gap:12px;margin-bottom:5px;font-size:.92rem}.dashboard-bar-label small{color:var(--muted);white-space:nowrap}.dashboard-line-risk{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 7px}.dashboard-line-risk span{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border:1px solid var(--border);border-radius:999px;background:#f7faf9;color:var(--muted);font-size:.78rem;font-weight:700}.dashboard-bar-track{height:10px;border-radius:999px;overflow:hidden;background:#e8ecef;border:1px solid #d4dae4}.dashboard-bar-track span{display:block;height:100%;min-width:2px;background:var(--accent2)}.section-title{margin-top:22px;padding-top:4px}.dashboard-product-line-card{display:flex;align-items:center;justify-content:space-between;gap:18px}.dashboard-product-line-main{min-width:0}.dashboard-product-line-time{min-width:150px;text-align:right;padding:10px 0 10px 18px;border-left:1px solid var(--border)}.dashboard-product-line-time span{display:block;color:var(--muted);font-size:.78rem;font-weight:700;text-transform:uppercase}.dashboard-product-line-time strong{display:block;margin-top:5px;font-size:1.25rem;line-height:1.1}.audit-mini-list{display:flex;flex-direction:column;gap:10px}.audit-mini-row{display:flex;flex-direction:column;gap:2px;padding-bottom:10px;border-bottom:1px solid var(--border);font-size:.9rem}.audit-mini-row:last-child{border-bottom:0;padding-bottom:0}.table-wrap{overflow-x:auto;background:var(--card);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow)}.data-table{width:100%;border-collapse:collapse;font-size:.9rem}.data-table th,.data-table td{padding:9px 10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.data-table th{background:#eef2f1;color:#1a1d23;font-weight:700}.data-table tbody tr:hover{background:#fafbfb}@media (max-width: 760px){.topbar:not(.topbar--modern){align-items:flex-start;flex-direction:column}.topbar:not(.topbar--modern) nav{justify-content:flex-start;width:100%}.topbar:not(.topbar--modern) .row{width:100%;justify-content:space-between}.dashboard-grid{grid-template-columns:1fr}.dashboard-product-line-card{align-items:flex-start;flex-direction:column}.dashboard-product-line-time{width:100%;text-align:left;padding:10px 0 0;border-left:0;border-top:1px solid var(--border)}}.task-print-sheets-page{max-width:none;width:100%}.task-print-controls-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.task-print-title{margin:0;font-size:1.15rem;flex:1 1 240px;min-width:0}.task-print-hint{font-size:.82rem;margin:.5rem 0 0;max-width:52rem}.task-print-document{display:flex;flex-direction:column;gap:28px;margin-top:8px;border:2px solid #111;padding:16px;background:#e8eaef;box-sizing:border-box}.task-print-sheet{background:#fff;box-shadow:0 1px 4px #00000014;break-inside:avoid}.task-print-sheet .editor-shell.page{max-width:none}.task-print-document .editor-shopfloor-embed{flex:0 0 auto;min-height:0}.task-print-document .editor-shopfloor-embed .canvas-wrap{flex:0 0 auto!important;min-height:0!important}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.row>label.field{flex:1 1 14rem;min-width:min(100%,14rem)}.stack{display:flex;flex-direction:column;gap:10px}.stack>.card{margin-bottom:0}.layout--with-sidebar,.shopfloor-page{--shopfloor-ink: #1a2330;--shopfloor-panel: #f7faf8;--shopfloor-panel-border: rgba(26, 35, 48, .12);--shopfloor-glow: rgba(36, 91, 80, .1);--shopfloor-sidebar-w: 220px;--shell-sidebar-w: var(--shopfloor-sidebar-w)}.shopfloor-page{position:relative;isolation:isolate}.app-shell,.shopfloor-shell{display:flex;flex-direction:row;align-items:stretch;gap:0;width:100%;min-width:0;box-sizing:border-box}.app-shell{flex:1 1 auto;min-height:0;padding:0;margin:0;overflow:hidden}.app-shell-main.main-content--modern{flex:1 1 0%;width:auto;max-width:100%;padding:var(--space-4) var(--page-pad-x) var(--space-6);min-width:0;box-sizing:border-box;overflow-x:hidden;overflow-y:auto}.shopfloor-shell{margin:0;flex:1 1 auto;height:100%;min-height:0;max-height:100%;overflow:hidden}.shopfloor-page:before{content:none}.app-sidebar,.shopfloor-sidebar{display:flex;flex-direction:column;flex:0 0 var(--shell-sidebar-w);gap:var(--space-3);width:var(--shell-sidebar-w);min-width:var(--shell-sidebar-w);max-width:var(--shell-sidebar-w);box-sizing:border-box;padding:var(--space-3) var(--space-3) var(--space-4);background:var(--surface-alt);border:none;border-right:1px solid var(--border);border-radius:0;box-shadow:none;align-self:stretch;position:relative;min-height:0;height:auto;max-height:none;overflow-x:hidden;overflow-y:auto;z-index:2;transition:width .2s ease,min-width .2s ease,max-width .2s ease,flex-basis .2s ease,padding .2s ease}.app-sidebar-panel{display:flex;flex-direction:column;gap:var(--space-3);flex:1 1 auto;min-height:0;min-width:0;width:100%}.app-sidebar-collapse-btn{display:inline-flex;align-items:center;justify-content:center;align-self:flex-end;flex-shrink:0;width:var(--control-h-dense);height:var(--control-h-dense);margin:0;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);cursor:pointer;transition:var(--motion)}.app-sidebar-collapse-btn:hover{background:var(--accent-tint);border-color:var(--border-strong);color:var(--accent)}.app-sidebar-collapse-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-sidebar-topbar{display:flex;align-items:center;gap:var(--space-2);width:100%;min-width:0}.app-sidebar-topbar-nav{flex:1 1 auto;min-width:0}.app-sidebar-topbar .shopfloor-sidebar-nav{flex-direction:row;flex-wrap:wrap;align-items:center;gap:var(--space-1)}.app-sidebar-topbar .shopfloor-sidebar-link{flex:0 1 auto;width:auto;max-width:100%;min-height:var(--control-h-dense);padding:var(--space-1) var(--space-2)}.app-sidebar-topbar .app-sidebar-collapse-btn{align-self:center;margin-left:auto}.app-sidebar.is-collapsed.app-sidebar--nav-top{align-items:center}.app-sidebar.is-collapsed .app-sidebar-topbar{flex-direction:column;align-items:center}.app-sidebar.is-collapsed .app-sidebar-topbar-nav{width:100%}.app-sidebar.is-collapsed .app-sidebar-topbar .shopfloor-sidebar-nav{flex-direction:column;align-items:center;width:100%}.app-sidebar.is-collapsed .app-sidebar-topbar .app-sidebar-collapse-btn{margin-left:0}.app-sidebar .shopfloor-sidebar-link{gap:10px}.app-sidebar-link-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;color:inherit}.app-sidebar-link-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-sidebar.is-collapsed{padding:var(--space-2) 6px var(--space-3);gap:var(--space-2);align-items:center}.app-sidebar.is-collapsed .app-sidebar-collapse-btn{align-self:center;width:40px;height:40px}.app-sidebar.is-collapsed .app-sidebar-panel{align-items:center;gap:var(--space-2)}.app-sidebar.is-collapsed .shopfloor-sidebar-nav{align-items:center;width:100%}.app-sidebar.is-collapsed .shopfloor-sidebar-link{justify-content:center;width:44px;max-width:44px;min-height:44px;padding:10px 0;gap:0}.app-sidebar.is-collapsed .app-sidebar-link-label,.app-sidebar.is-collapsed .shopfloor-sidebar-filters,.app-sidebar.is-collapsed .shopfloor-sidebar-section-lbl{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-sidebar.is-collapsed .shopfloor-sidebar-link.is-active{box-shadow:none;border-color:var(--border-strong)}.shopfloor-shell>.app-sidebar,.shopfloor-shell>.shopfloor-sidebar{align-self:stretch;position:relative;top:auto;min-height:0;height:auto;max-height:none;overflow-x:hidden;overflow-y:auto}.shopfloor-sidebar-nav{display:flex;flex-direction:column;align-items:stretch;gap:2px;width:100%}.app-sidebar-nav--grouped{gap:0}.app-sidebar-group{display:flex;flex-direction:column;gap:2px;padding-top:var(--space-4)}.app-sidebar-group:first-child{padding-top:0}.app-sidebar-group-label{margin:0;padding:0 var(--space-3) var(--space-1);font:var(--weight-strong) 10px/1.2 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint)}.app-sidebar-group-links{display:flex;flex-direction:column;gap:2px}.app-sidebar-group-divider{height:1px;margin:var(--space-2) var(--space-2);background:var(--border-subtle)}.app-sidebar.is-collapsed .app-sidebar-group{align-items:center;padding-top:var(--space-2)}.shopfloor-sidebar-link{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2);width:100%;max-width:100%;padding:var(--space-2) var(--space-3);border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text);font:inherit;font-size:var(--fs-body);font-weight:var(--weight-ui);line-height:1.25;text-decoration:none;text-align:left;white-space:nowrap;writing-mode:horizontal-tb;overflow:hidden;text-overflow:ellipsis;cursor:pointer;min-height:var(--touch-min);box-sizing:border-box;transition:var(--motion)}.shopfloor-sidebar-link:hover{background:var(--surface-alt);color:var(--text);text-decoration:none}.shopfloor-sidebar-link:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.shopfloor-sidebar-link.is-active{background:var(--accent-tint);color:var(--accent);border-color:var(--border-strong);font-weight:var(--font-weight-strong);box-shadow:inset 3px 0 0 var(--accent)}.shopfloor-sidebar-more{position:relative}.shopfloor-sidebar-more-btn .topbar-more-caret{flex-shrink:0}.shopfloor-sidebar-more-menu{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:40;padding:6px;background:var(--card);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-raised);max-height:min(50vh,360px);overflow:auto}.shopfloor-sidebar-more-menu a{display:block;padding:9px 12px;border-radius:7px;color:var(--text);font-size:.86rem;font-weight:500;text-decoration:none}.shopfloor-sidebar-more-menu a:hover{background:var(--surface);text-decoration:none}.shopfloor-sidebar-more-menu a.active{background:#e1eee9;color:var(--accent)}.shopfloor-sidebar-filters{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-3);margin-top:0;border-top:1px solid var(--border)}.shopfloor-sidebar-filters--priority{padding-top:var(--space-3);padding-bottom:0;border-top:1px solid var(--border);border-bottom:none}.shopfloor-sidebar-section-lbl,.shopfloor-inline--sidebar .shopfloor-inline-lbl{margin:0;font:var(--weight-ui) var(--fs-label) var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.shopfloor-sidebar-section-lbl{margin-bottom:var(--space-1)}.shopfloor-inline--sidebar{width:100%;gap:var(--space-1)}.shopfloor-select--sidebar{width:100%;max-width:none;min-height:var(--control-h);border-radius:var(--radius-sm);font-size:var(--fs-body);background:var(--surface);border:1px solid var(--border);color:var(--text);box-shadow:none}.shopfloor-select--sidebar:disabled{background:var(--surface-alt);color:var(--text-muted);border-color:var(--border)}.shopfloor-load-btn--sidebar{align-self:stretch;width:100%;min-height:var(--touch-min)}.shopfloor-sidebar-scan{display:flex;flex-direction:column;gap:8px;margin-top:4px}.shopfloor-sidebar-scan-actions{display:flex;flex-wrap:wrap;gap:8px}.shopfloor-main{flex:1 1 auto;min-width:0;min-height:0;display:flex;flex-direction:column;gap:0;padding:0;overflow:hidden}.shopfloor-main-scroll{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;gap:0;scrollbar-gutter:auto}.shopfloor-page-title{margin:0 0 .15em;font-size:calc(1.32rem * var(--shopfloor-display-scale, 1))}.shopfloor-page-sub{margin:0 0 .75rem;font-size:calc(.86rem * var(--shopfloor-display-scale, 1))}.shopfloor-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.shopfloor-display-controls{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:flex-end;gap:8px 10px;padding:8px 10px;background:var(--shopfloor-panel);border:1px solid var(--shopfloor-panel-border);border-radius:12px;box-shadow:0 4px 14px #1a23300d}.shopfloor-display-controls--topbar{flex-wrap:nowrap;align-items:center;justify-content:flex-start;padding:4px 8px;background:linear-gradient(135deg,#f3faf7,#eef1f4);border-color:#d4e4de;box-shadow:none;max-width:100%}.shopfloor-display-controls--topbar .shopfloor-inline{flex-direction:row;align-items:center;gap:8px}.shopfloor-display-controls--topbar .shopfloor-inline-lbl{font-size:.68rem;margin:0;white-space:nowrap}.shopfloor-display-controls--topbar .shopfloor-select{min-height:36px;padding:6px 10px;font-size:.86rem;border-radius:8px}.shopfloor-display-controls--topbar .shopfloor-scale-field{width:min(140px,18vw)}.shopfloor-display-controls--topbar .btn{min-height:36px;padding:6px 12px;font-size:.82rem;flex-shrink:0}.shopfloor-topbar-slot{display:flex;align-items:center;min-width:0;max-width:100%}.shopfloor-topbar-slot:empty{display:none}.shopfloor-scale-field{width:min(190px,42vw)}.shopfloor-scale-field input{width:100%;accent-color:var(--accent)}.shopfloor-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 14px;margin-bottom:14px;padding:14px 16px;background:var(--shopfloor-panel);border:1px solid var(--shopfloor-panel-border);border-radius:14px;box-shadow:0 10px 28px #1a233012;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.shopfloor-controls--primary{background:linear-gradient(135deg,#fffffffa,#f4f8f5f5);border-color:#2e7d322e}.shopfloor-controls--inline{align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-2) var(--space-3);margin-bottom:var(--space-3)}.shopfloor-controls--inline .shopfloor-inline{flex-direction:row;align-items:center;gap:var(--space-2)}.shopfloor-controls--inline .shopfloor-inline-lbl{font-size:.72rem;white-space:nowrap;color:var(--muted)}.shopfloor-inline{display:flex;flex-direction:column;gap:5px;min-width:0}.shopfloor-inline--line,.shopfloor-inline--station,.shopfloor-inline--scan{flex:1 1 200px}.shopfloor-inline-lbl{font-size:calc(.85rem * var(--shopfloor-display-scale, 1));font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:#3d4a58;line-height:1.1}.shopfloor-select{min-width:0;min-height:var(--touch-min);padding:var(--space-2) var(--space-3);font:inherit;font-size:var(--fs-body);border-radius:var(--radius-sm);border:1px solid var(--border);box-sizing:border-box;background:var(--surface);color:var(--text);box-shadow:none;transition:var(--motion)}.shopfloor-select:focus-visible{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring)}.shopfloor-select:disabled{background:var(--surface-alt);color:var(--text-muted)}.shopfloor-select--grow{width:100%;max-width:360px}.shopfloor-load-btn{padding:10px 18px;font-size:calc(.92rem * var(--shopfloor-display-scale, 1));font-weight:700;align-self:flex-end;border-radius:10px;min-width:5.5rem;box-shadow:0 6px 16px #2e7d3238}.shopfloor-work-area{border:none;border-radius:0;overflow:visible;display:flex;flex-direction:column;flex:1 1 auto;min-height:0;background:#fff;box-shadow:none}.shopfloor-work-area:has(.shopfloor-view-placeholder){min-height:min(42vh,320px);justify-content:center;padding:var(--space-3) var(--space-4);box-sizing:border-box;background:var(--bg)}.shopfloor-wi-stack{flex:0 0 auto;min-height:0;overflow:visible;display:flex;flex-direction:column;gap:0;padding:0;box-sizing:border-box}.shopfloor-wi-block{flex:0 0 auto;border:none;border-radius:0;overflow:visible;background:#fff;box-shadow:none}.shopfloor-wi-skeleton{min-height:360px;background:linear-gradient(110deg,#eef1f5 20%,#f7f9fb,#eef1f5 60%);background-size:200% 100%;animation:shopfloor-skeleton 1.2s ease-in-out infinite;display:flex;align-items:center;justify-content:center;font-size:.82rem;color:#6b7280}@keyframes shopfloor-skeleton{0%{background-position:100% 0}to{background-position:-100% 0}}.shopfloor-view-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:min(42vh,320px);margin:8px 0 0;padding:32px 24px;text-align:center;font-size:calc(.95rem * var(--shopfloor-display-scale, 1));color:#5b6775;background:#fbfcfd;border:1px solid var(--border);border-radius:12px;box-shadow:none}.shopfloor-view-placeholder .empty-state-icon{color:var(--accent);opacity:.55}.shopfloor-view-placeholder .empty-state-title{font-size:calc(1.08rem * var(--shopfloor-display-scale, 1));letter-spacing:-.01em}.shopfloor-view-placeholder .empty-state-desc{max-width:36rem;font-size:calc(.92rem * var(--shopfloor-display-scale, 1))}.shopfloor-view-placeholder .empty-state-action{min-height:var(--touch-min);padding-left:18px;padding-right:18px}.shopfloor-display-tv .shopfloor-work-area:has(.shopfloor-view-placeholder){min-height:min(56vh,480px)}.shopfloor-display-tv .shopfloor-controls{gap:12px 14px}.shopfloor-scan-result{margin:var(--space-3) var(--space-3) var(--space-2);border-radius:12px}.shopfloor-scan-miss{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin:var(--space-3)}.shopfloor-main-scroll>.error,.shopfloor-main-scroll>.error-banner,.shopfloor-main-scroll>.shopfloor-labels{margin-left:var(--space-3);margin-right:var(--space-3)}.shopfloor-main-scroll>.error-banner{margin-top:var(--space-3)}.shopfloor-scan-miss p{margin:0;flex:1 1 12rem}.shopfloor-scan-wi-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.shopfloor-btn-secondary{background:var(--surface, #f4f6f8);color:var(--muted, #5a6a75);border-color:var(--border, #d5dde3);font-weight:500}.shopfloor-btn-secondary:hover{background:var(--card, #fff);color:var(--text, #24313a)}.shopfloor-open-wi.primary{font-weight:var(--font-weight-ui, 600);min-width:max(var(--touch-min),7.5rem);box-shadow:0 1px #245b502e}.shopfloor-main-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:var(--space-2) var(--space-3) var(--space-2);flex-shrink:0;border-bottom:1px solid var(--border);background:var(--surface)}@media (max-width: 900px){.app-shell,.shopfloor-shell{flex-direction:column;min-height:0}.layout.layout--shopfloor .shopfloor-shell{height:100%;max-height:100%;overflow:hidden}.app-sidebar,.shopfloor-sidebar,.shopfloor-shell>.app-sidebar,.shopfloor-shell>.shopfloor-sidebar{flex:0 0 auto;position:relative;max-height:none;min-height:0;width:100%;min-width:0;max-width:none;border-right:none;border-bottom:1px solid var(--shopfloor-panel-border)}.layout--with-sidebar.layout--sidebar-collapsed{--shell-sidebar-w: 100%}.app-sidebar.is-collapsed{align-items:stretch;padding:var(--space-3)}.app-sidebar.is-collapsed .app-sidebar-panel,.app-sidebar.is-collapsed .shopfloor-sidebar-nav{align-items:stretch}.app-sidebar.is-collapsed .shopfloor-sidebar-link{justify-content:flex-start;width:100%;max-width:none;padding:10px 12px;gap:10px}.app-sidebar.is-collapsed .app-sidebar-link-label{position:static;width:auto;height:auto;margin:0;overflow:hidden;clip:auto;white-space:nowrap}.shopfloor-main{flex:1 1 auto;min-height:0;overflow:hidden}.shopfloor-main-scroll{overflow:auto}.shopfloor-sidebar-nav{flex-direction:row;flex-wrap:wrap}.shopfloor-sidebar-link{flex:1 1 auto;width:auto}}.shopfloor-main-tab,.module-tab{border:1px solid var(--border);background:var(--card);border-radius:10px;padding:10px 18px;min-height:var(--touch-min);font:inherit;font-size:.9rem;font-weight:var(--font-weight-ui);color:var(--muted);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.shopfloor-main-tab{padding:12px 18px;min-height:var(--touch-min);min-width:var(--touch-min);font-size:.9rem;line-height:1.2;letter-spacing:.01em}.shopfloor-main-tab:focus-visible,.module-tab:focus-visible,.coating-main-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shopfloor-main-tab:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-alt)}.shopfloor-main-tab.is-active{background:var(--accent);border-color:var(--accent);color:var(--text-inverse);font-weight:var(--font-weight-strong);box-shadow:none}.shopfloor-tools-intro{margin:0 0 16px;max-width:52rem;line-height:1.45}.shopfloor-tools-flash{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:var(--accent-tint);color:var(--text);font-size:.9rem}.shopfloor-tools-flash.is-error{background:#fff5f5;color:var(--danger)}.shopfloor-tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.shopfloor-tool-card{padding:16px 18px;display:flex;flex-direction:column;gap:12px;min-height:100%}.shopfloor-tool-card h2{margin:0;font-size:1.05rem}.shopfloor-tool-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.shopfloor-tool-status{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:4px 10px}.shopfloor-tool-status.is-on{color:#1b5e20;border-color:#a5d6a7;background:#e8f5e9}.shopfloor-tools-fields{display:grid;gap:10px}.shopfloor-tools-fields label{display:flex;flex-direction:column;gap:5px;font-size:.78rem;font-weight:700;color:var(--muted)}.shopfloor-tools-fields input,.shopfloor-tools-fields select{width:100%;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font:inherit;font-size:.9rem;font-weight:400;color:var(--text);background:#fff;box-sizing:border-box}.shopfloor-tools-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.shopfloor-tools-actions>.btn{flex:0 0 auto;margin:0;width:auto}.shopfloor-iot-list h3{margin:4px 0 8px;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.shopfloor-iot-list ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.shopfloor-iot-list li{display:grid;gap:2px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:#fafbfc;font-size:.86rem}.shopfloor-tools-roadmap{margin:0;padding-left:1.1rem;color:var(--muted);line-height:1.55}.shopfloor-tool-card--soon{opacity:.92}.config-scope-bar{align-items:flex-end}.config-scope-chip{align-self:center;font-size:.86rem;padding:8px 0}.config-labels-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:16px}@media (max-width: 960px){.config-labels-layout{grid-template-columns:1fr}}.config-size-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.config-fields-title{margin:8px 0 0;font-size:.82rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.config-fields-list{display:grid;gap:8px}.config-field-row{display:grid;grid-template-columns:1.2fr 1fr 1fr auto;gap:8px;align-items:center}.config-field-row input{width:100%;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font:inherit;font-size:.88rem;box-sizing:border-box}@media (max-width: 720px){.config-field-row{grid-template-columns:1fr}}.config-label-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.config-label-list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#fafbfc}.config-label-list li.is-selected{border-color:#2e7d3273;background:#f3faf7}.config-label-list li>div{display:grid;gap:2px;min-width:0}.config-label-pick{display:grid;gap:2px;width:100%;text-align:left;border:0;background:transparent;padding:0;font:inherit;color:inherit;cursor:pointer}.shopfloor-labels-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;margin-bottom:14px}.coating-danger-zone{margin:0 0 12px;padding:8px 12px;border:1px dashed #f5c2c0;border-radius:10px;background:#fff8f8}.coating-danger-zone summary{cursor:pointer;font-size:.82rem;font-weight:700;color:var(--danger)}.shopfloor-loading-hint{align-self:center;font-size:.86rem}.editor-shopfloor-embed{max-width:none;width:100%;margin:0;padding:0;box-sizing:border-box;display:flex;flex-direction:column;flex:0 0 auto;min-height:0}.editor-shell.editor-shopfloor-embed{padding:0;border-radius:0;box-shadow:none;background:transparent}.editor-shopfloor-embed .wi-header-shopfloor-band,.editor-shopfloor-embed .wi-sheet-ref--compact,.editor-shopfloor-embed .wi-shopfloor-page-label{flex-shrink:0;position:relative;z-index:1}.editor-shopfloor-embed .wi-sf-rev-badge{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:3.25rem;padding:4px 10px;min-height:var(--wi-sf-header-h, 5.75rem);max-height:var(--wi-sf-header-h, 5.75rem);height:var(--wi-sf-header-h, 5.75rem);box-sizing:border-box;border:2px solid #1a2330;background:linear-gradient(180deg,#1e4d44,#245b50 55%,#1a3f38);color:#fff;text-align:center;line-height:1.05}.editor-shopfloor-embed .wi-sf-rev-badge-lbl{font-size:.62rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.92}.editor-shopfloor-embed .wi-sf-rev-badge-val{font-size:1.15rem;font-weight:800;letter-spacing:.02em;font-variant-numeric:tabular-nums}.editor-shopfloor-embed .wi-sf-operator-chrome{display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:3px 10px;min-height:0;font-size:.75rem}.editor-shopfloor-embed .wi-sf-page-progress{flex-shrink:0;display:inline-flex;align-items:center;padding:1px 7px;border-radius:3px;border:1px solid var(--border-strong);background:var(--surface);color:var(--accent-text);font-size:.7rem;font-weight:800;letter-spacing:.02em;font-variant-numeric:tabular-nums}.editor-shopfloor-embed .wi-sf-operator-chrome .wi-shopfloor-page-label-text{font-weight:700;color:var(--accent, #245b50)}.editor-shopfloor-embed .canvas-wrap{flex:0 0 auto;min-height:0;max-width:100%;overflow:hidden;border:2px solid #1a2330;border-top:0;border-radius:0}.editor-read-only .canvas-wrap{pointer-events:none;-webkit-user-select:none;user-select:none;cursor:default}label.field{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--muted)}label.field input,label.field select,label.field textarea{width:100%;box-sizing:border-box;padding:8px 10px;border-radius:6px;border:1px solid var(--border);font:inherit;min-width:0;max-width:100%;background:#fff}label.field input[type=checkbox],label.field input[type=radio]{min-width:0;width:1rem;height:1rem;padding:0;margin:0;flex-shrink:0;accent-color:var(--accent)}label.field.field--row{flex-direction:row;align-items:center;gap:8px;color:var(--text);cursor:pointer}label.field.field--row span{line-height:1.35}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;border-radius:8px;border:1px solid var(--border);background:var(--card);cursor:pointer;font:inherit;font-weight:600;color:#24313a;min-height:36px;box-shadow:0 1px #11182708;transition:background .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease,transform .12s ease}.btn:hover{background:var(--surface);border-color:color-mix(in srgb,var(--accent) 22%,var(--border));text-decoration:none;box-shadow:0 2px 6px #0f172a0f}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.primary:hover{background:#1e4d44;border-color:#1e4d44;box-shadow:0 4px 12px #245b5038}.btn.danger{background:#fff5f5;color:var(--danger);border-color:#f5c2c0}.btn:disabled{opacity:1;cursor:not-allowed}.btn.ghost{background:transparent;border-color:transparent;color:var(--muted)}.btn.ghost:hover{background:var(--surface);color:var(--text)}.btn.lg,.shopfloor-touch-btn--lg{min-height:var(--touch-min);padding:12px 20px;font-weight:var(--font-weight-ui)}.routing-order-btns{display:inline-flex;flex-direction:column;gap:2px;vertical-align:middle;position:relative;z-index:2}.btn-routing-move{padding:2px 8px;font-size:.75rem;line-height:1.2;min-height:0}.icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 8px;min-width:36px;min-height:36px;border-radius:6px;border:1px solid var(--border);background:var(--card);cursor:pointer;font:inherit;color:inherit;box-sizing:border-box}.icon-btn.danger{background:#fff5f5;color:var(--danger);border-color:#f5c2c0}.icon-btn:disabled{opacity:.55;cursor:not-allowed}.icon-btn svg{display:block}.station-card-head{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;gap:10px}.station-card-title-wrap{flex:1 1 auto;min-width:0}.station-name-heading{margin:0;font-size:1.35rem;line-height:1.25;word-break:break-word}.station-name-heading--editable{cursor:pointer}.station-name-input{display:block;width:100%;max-width:28rem;font:inherit;font-size:1.35rem;font-weight:600;line-height:1.25;padding:4px 8px;border:1px solid var(--border);border-radius:6px;box-sizing:border-box}.station-edit-name-btn{flex-shrink:0;margin-top:2px}.task-list-rows{list-style:none;padding:0;margin:0}.task-list-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.task-list-row:last-child{border-bottom:none}.task-list-row-title{flex:1 1 200px;min-width:0;line-height:1.4;overflow-wrap:anywhere;word-break:break-word;display:flex;align-items:center;flex-wrap:wrap;gap:.2em .35em}.task-list-row-title .seq-prefix{margin-right:.15em}.task-list-row-actions{flex:0 0 auto;margin-left:auto;position:relative;z-index:2;display:inline-flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:8px}.pfmea-tasklist-select{min-width:0;max-width:none;width:100%;font:inherit;font-size:.88rem;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background:#fff;box-sizing:border-box}.pfmea-tasklist-readonly{display:block;font-size:.88rem;padding:2px 0;color:#1a1d23;overflow-wrap:anywhere}.pfmea-failure-wrap{display:flex;flex-direction:column;gap:6px;min-width:0;max-width:none;width:100%}.pfmea-failure-select{width:100%;font:inherit;font-size:.88rem;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background:#fff;box-sizing:border-box}.pfmea-failure-other{width:100%;font:inherit;font-size:.88rem;padding:4px 8px;border:1px solid var(--border);border-radius:4px;box-sizing:border-box}.pfmea-sod-input{width:100%;max-width:4.5rem;margin:0 auto;display:block;box-sizing:border-box;text-align:center;font:inherit;padding:4px 6px;border:1px solid var(--border);border-radius:4px}.pfmea-rpn-cell{font-weight:600;white-space:nowrap;vertical-align:middle;text-align:center}.task-grid-scroll{overflow-x:auto;width:100%}table.grid.pfmea-grid,table.grid.time-elements-grid{table-layout:fixed;width:100%;min-width:40rem}.pfmea-col-tasklist{width:22%}.pfmea-col-failure{width:28%}.pfmea-col-sod{width:9%;text-align:center;vertical-align:middle}.pfmea-col-rpn{width:9%;text-align:center}.pfmea-col-action{width:14%}.pfmea-grid th.pfmea-col-sod,.pfmea-grid th.pfmea-col-rpn,.pfmea-grid td.pfmea-col-sod,.pfmea-grid td.pfmea-rpn-cell{text-align:center;vertical-align:middle}.time-el-col-name{width:34%}.time-el-col-num{width:16%;text-align:center;vertical-align:middle}.time-el-col-notes{width:34%}.time-elements-grid th.time-el-col-num,.time-elements-grid td.time-el-col-num{text-align:center;vertical-align:middle}.time-el-input{width:100%;box-sizing:border-box;font:inherit;font-size:.88rem;padding:4px 8px;border:1px solid var(--border);border-radius:4px}.time-el-input-num{max-width:7rem;margin:0 auto;display:block;text-align:center}table.grid{width:100%;border-collapse:collapse;font-size:.9rem}table.grid th,table.grid td{border:1px solid var(--border);padding:6px 8px;vertical-align:top}table.grid th{background:#eef1f6;text-align:left}.error{color:var(--danger);font-size:.9rem}.success-banner{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46;padding:10px 12px;border-radius:var(--radius);margin-bottom:12px;font-size:.9rem}.editor-shell{--wi-frame: #1a2330;--wi-frame-soft: rgba(36, 91, 80, .18);--wi-panel: #f7faf8;--wi-label-bg: linear-gradient(180deg, #f3f7f5 0%, #e6efe9 100%);max-width:none;width:100%;margin:0;padding:0 clamp(8px,1.6vw,14px);box-sizing:border-box}.editor-shell:not(.editor-shopfloor-embed){display:flex;flex-direction:column;gap:0}.layout--with-sidebar .app-shell-main:has(.editor-shell:not(.editor-shopfloor-embed)){display:flex;flex-direction:column;overflow:hidden;overflow-y:hidden;padding:var(--space-1);padding-bottom:var(--space-1)}.layout--with-sidebar .app-shell-main:has(.editor-shell:not(.editor-shopfloor-embed)) .page-transition{flex:1 1 0%;min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden}.editor-shell.editor-page-compact:not(.editor-shopfloor-embed){--editor-chrome-header-max: 52px;display:flex;flex-direction:column;flex:1 1 0%;min-height:0;height:100%;max-height:100%;max-width:none;width:100%;padding:0;gap:0;overflow:hidden}.editor-shell.editor-page-compact:not(.editor-shopfloor-embed)>.editor-title-bar,.editor-shell.editor-page-compact:not(.editor-shopfloor-embed)>.error,.editor-shell.editor-page-compact:not(.editor-shopfloor-embed)>.success-banner,.editor-shell.editor-page-compact:not(.editor-shopfloor-embed)>p{flex-shrink:0}.editor-shell.editor-page-compact:not(.editor-shopfloor-embed)>.editor-stage{flex:1 1 0%;min-height:0}.editor-stage{display:flex;flex-direction:row;flex:1 1 0%;min-height:0;width:100%;align-items:stretch;margin-top:0;overflow:hidden;font-family:var(--font-sans);color:var(--text)}.editor-stage-main{display:flex;flex-direction:column;flex:1 1 0%;min-width:0;min-height:0;overflow:hidden;isolation:isolate}.editor-stage-main>.wi-page-bar{flex-shrink:0;position:relative;z-index:3;border-bottom:1px solid color-mix(in srgb,var(--accent, #245b50) 22%,#c5d0cb)}.editor-stage-main>.canvas-toolbar{flex-shrink:0;position:relative;z-index:2;width:100%;box-sizing:border-box;border-left:2px solid var(--wi-frame, #1a2330);border-right:2px solid var(--wi-frame, #1a2330);border-bottom:1px solid color-mix(in srgb,var(--accent, #245b50) 18%,#b4b8c0);background:linear-gradient(180deg,#f9fbfa,#edf2f0);box-shadow:none}.editor-stage-main>.canvas-toolbar .mpp-ribbon{position:static;box-shadow:none;border-bottom:0;background:transparent}.editor-stage-main .wi-sheet{flex:1 1 0%;min-height:0;min-width:0;display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);overflow:hidden}.editor-stage-main .wi-sheet>.canvas-wrap{flex:1 1 0%;min-height:0;display:block;position:relative;z-index:1}.editor-shell:not(.editor-shopfloor-embed) .editor-stage-main .wi-sheet>.canvas-wrap{overflow:hidden;display:flex;align-items:flex-start;justify-content:flex-start}.editor-shell:not(.editor-shopfloor-embed) .editor-stage-main .wi-sheet>.canvas-wrap .canvas-container{flex:0 0 auto;max-width:100%}.editor-shopfloor-embed .editor-stage-main>.canvas-wrap,.editor-shopfloor-embed .canvas-wrap{overflow:hidden}.editor-kits-drawer-body .wi-sheet-ref{border:0;padding:0;background:transparent;min-height:0;height:auto}.editor-kits-drawer-body .wi-sheet-ref-grid,.editor-kits-drawer-body .wi-sheet-ref-grid--with-kits{grid-template-columns:1fr;gap:14px}.editor-kits-drawer-body .wi-sheet-ref-title{color:var(--accent, #245b50)}@media (max-width: 1100px){.editor-shell.editor-page-compact:not(.editor-shopfloor-embed)>.editor-stage{min-height:0}.editor-stage-main .wi-sheet>.canvas-wrap{min-height:0}}.editor-title-bar{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--space-3);flex-wrap:nowrap;margin:0;padding-block:0;min-height:0;overflow:hidden}.editor-title-bar .editor-back-link{margin:0;padding:0;line-height:1;font-size:var(--fs-small);white-space:nowrap;flex:0 0 auto;display:flex;align-items:center}.editor-title-bar-heading{margin:0;font-size:var(--fs-small);line-height:1.2;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;flex:0 1 auto;min-width:0;max-width:14rem;overflow:hidden;text-overflow:ellipsis}.editor-title-bar-tools{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-2);flex:1 1 auto;min-width:0;overflow:hidden}.editor-title-bar-tools .wi-page-tabs{flex:1 1 auto;flex-wrap:nowrap;flex-shrink:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.editor-title-bar-tools .wi-page-tabs::-webkit-scrollbar{height:4px}.editor-title-bar-tools .wi-page-tabs::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 35%,#c5d0cb);border-radius:2px}.editor-title-bar-tools .wi-page-actions{flex:0 0 auto;flex-wrap:nowrap;flex-shrink:0;position:relative;z-index:1;background:var(--surface);padding-left:var(--space-1);box-shadow:-8px 0 8px -6px color-mix(in srgb,var(--slate-900, #141919) 18%,transparent)}.editor-title-bar .editor-doc-actions-top{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:4px;margin-left:auto;flex-shrink:0}.editor-title-bar .editor-doc-actions-top .btn-toolbar{flex:0 0 7.5rem;width:7.5rem;min-width:7.5rem;max-width:7.5rem;height:24px;min-height:24px;max-height:24px;padding:0 8px;box-sizing:border-box;justify-content:center;align-items:center;white-space:nowrap;font-size:.74rem;line-height:1;box-shadow:none}.editor-title-bar .btn-toolbar{padding:2px 8px;font-size:.74rem;line-height:1.15;min-height:24px;box-shadow:none}.editor-missing{max-width:28rem;margin:2.5rem auto;padding:1.5rem 1.25rem;text-align:center;border:1px solid var(--border);border-radius:12px;background:var(--card);box-shadow:var(--shadow)}.editor-missing h1{margin:0 0 .75rem;font-size:1.25rem;line-height:1.3}.editor-missing .error{text-align:left;margin-bottom:.75rem}.editor-missing-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:1.1rem 0 0}.editor-loading{max-width:22rem;margin:3rem auto;padding:2rem 1.25rem;text-align:center;border:1px dashed var(--border);border-radius:12px;background:var(--surface)}.editor-loading-title{margin:0 0 .4rem;font-size:1.05rem;font-weight:700;color:var(--text)}.editor-loading-desc{margin:0;font-size:.9rem;line-height:1.45}.wi-sheet .wi-header{display:grid;grid-template-columns:80px minmax(0,1fr) minmax(260px,36%);gap:0;flex:0 0 auto;min-height:0;height:auto;max-height:none;width:100%;max-width:100%;box-sizing:border-box;background:var(--surface);border:0;border-bottom:1.5px solid var(--text);text-transform:uppercase;align-items:stretch}.wi-sheet .wi-header .logo-cell{width:auto;min-width:0;border-right:1px solid var(--border-strong);display:flex;align-items:center;justify-content:center;padding:var(--space-1);background:var(--surface)}.wi-sheet .wi-header .mjc-logo-img{display:block;width:100%;max-width:72px;height:auto;max-height:40px;object-fit:contain}.wi-sheet .wi-header .mid{display:grid;grid-template-rows:1fr 1fr;min-width:0;min-height:0;border-right:1px solid var(--border)}.wi-sheet .wi-header .mid-row{display:grid;grid-template-columns:5.5rem minmax(0,1fr);align-items:stretch;min-height:0;height:100%;min-width:0;border-bottom:1px solid var(--border)}.wi-sheet .wi-header .mid-row:last-child{border-bottom:0}.wi-sheet .wi-header .lbl,.wi-sheet .wi-header .ml{display:flex;align-items:center;margin:0;padding:0 var(--space-2);background:var(--surface-alt);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-label);font-weight:600;letter-spacing:.06em;text-transform:uppercase;border:0;border-right:1px solid var(--border);min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;box-sizing:border-box}.wi-sheet .wi-header .val,.wi-sheet .wi-header .mv{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 var(--space-2);border:0;background:transparent;color:var(--text);font-family:var(--font-mono);font-size:var(--fs-small);font-weight:400;text-transform:uppercase;letter-spacing:.02em;display:flex;align-items:center;box-sizing:border-box}.wi-sheet .wi-header textarea.val{display:block;width:100%;height:100%;min-height:0;max-height:none;resize:none;line-height:1.25;field-sizing:fixed;overflow:hidden;text-transform:uppercase;padding:var(--space-1) var(--space-2);box-sizing:border-box}.wi-sheet .wi-header .mv.num,.wi-sheet .wi-header input[type=date].mv{font-variant-numeric:tabular-nums}.wi-sheet .wi-header input.mv{display:block;width:100%;height:100%;min-height:0;margin:0;padding:0 var(--space-2);border:0;border-radius:0;background:transparent;box-shadow:none;outline:none;text-transform:uppercase;font-family:var(--font-mono);font-size:var(--fs-small);font-weight:400;letter-spacing:.02em;line-height:1.25;color:inherit;text-align:left;box-sizing:border-box}.wi-sheet .wi-header input[type=date].mv{-moz-appearance:none;appearance:none;-webkit-appearance:none;line-height:1.2;text-align:left;justify-self:start}.wi-sheet .wi-header input[type=date].mv::-webkit-calendar-picker-indicator{width:14px;height:14px;margin:0 0 0 var(--space-1);padding:0;cursor:pointer;opacity:.55}.wi-sheet .wi-header input.mv:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.wi-sheet .wi-header .meta{width:auto;max-width:100%;min-width:0;display:grid;grid-template-columns:max-content minmax(0,1fr) max-content minmax(0,1fr);grid-auto-rows:1fr;align-content:stretch;align-self:stretch}.wi-sheet .wi-header .meta-cell{display:contents}.wi-sheet .wi-header .meta input.mv{min-height:0;width:100%}.mjc-logo-img{display:block;max-width:72px;width:100%;height:auto;max-height:36px;object-fit:contain}.wi-editor-details{flex:0 0 200px;width:200px;min-width:180px;max-width:220px;min-height:0;display:flex;flex-direction:column;background:var(--surface);border-left:1px solid var(--border)}.wi-editor-details-tabs{display:flex;flex-shrink:0;min-height:var(--control-h-dense);border-bottom:1px solid var(--border)}.wi-editor-details-tab{display:flex;align-items:center;padding:0 var(--space-3);font-family:var(--font-mono);font-size:var(--fs-label);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.wi-editor-details-tab.is-active{color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}.wi-editor-details-body{flex:1 1 0%;min-height:0;overflow:auto;padding:var(--space-2) var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.wi-editor-details-section+.wi-editor-details-section{padding-top:var(--space-2);border-top:1px solid var(--border-subtle)}.wi-editor-details-h{margin:0 0 var(--space-1);font-family:var(--font-mono);font-size:var(--fs-label);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted)}.wi-editor-details-dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-1) var(--space-2);margin:0;font-family:var(--font-mono);font-size:var(--fs-small)}.wi-editor-details-dl dt{color:var(--text-muted);font-weight:600;letter-spacing:.06em;white-space:nowrap}.wi-editor-details-dl dd{margin:0;min-width:0;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wi-editor-details-state{display:inline-flex;align-items:center;min-height:24px;padding:0 var(--space-2);border-radius:var(--radius-tight);border:1px solid var(--hold-br);background:var(--hold-bg);color:var(--hold-fg);font-family:var(--font-mono);font-size:var(--fs-label);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.editor-shell:not(.editor-shopfloor-embed) .wi-editor-details{display:none}.editor-details-drawer-body .wi-editor-details-body{padding:0;overflow:visible;flex:none}.editor-details-drawer-body .wi-editor-details-dl dd,.editor-details-drawer-body .wi-editor-details-state{text-transform:uppercase}.wi-header-shopfloor-band{--wi-sf-header-h: 5.75rem;display:flex;flex-direction:column;align-items:stretch;width:100%;max-width:100%;box-sizing:border-box;background:#fff;min-height:var(--wi-sf-header-h)}.wi-header-shopfloor-main{display:flex;align-items:stretch;width:100%;min-width:0;min-height:var(--wi-sf-header-h)}.wi-header-shopfloor-band .wi-header-table-shopfloor{flex:1 1 auto;min-width:0;height:var(--wi-sf-header-h)}.wi-header-shopfloor-band:has(.wi-header-shopfloor-ppe) .wi-header-table-shopfloor{border-right:0}.editor-shopfloor-embed .wi-header-shopfloor-band .wi-header-table-shopfloor,.editor-shopfloor-embed .wi-header-shopfloor-ppe{border-right:0}.wi-header-shopfloor-ppe{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-1);padding:var(--space-1) var(--space-2);width:100%;max-width:100%;min-height:0;height:auto;max-height:none;overflow:visible;border:2px solid #1a2330;border-top:0;background:#f1f4f2;box-sizing:border-box}.wi-header-shopfloor-ppe-tile{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex:0 0 auto;gap:var(--space-1);width:auto;max-width:100%;min-height:0;max-height:none;padding:2px var(--space-2);border:1px solid var(--border);border-radius:var(--radius-tight);background:#fff;box-sizing:border-box;text-align:left}.wi-header-shopfloor-ppe-img{display:block;width:16px;height:16px;flex-shrink:0;object-fit:contain}.wi-header-shopfloor-ppe-label{display:block;overflow:visible;width:auto;max-width:none;margin:0;padding:0;font-size:var(--fs-label);font-weight:700;line-height:1.2;letter-spacing:0;text-transform:none;color:#1a2330;white-space:nowrap}.wi-header-table-shopfloor{width:100%;max-width:100%;border-collapse:collapse;border:2px solid #1a2330;background:#fff;box-sizing:border-box;table-layout:fixed;text-transform:none;letter-spacing:normal;border-radius:0;box-shadow:none;height:var(--wi-sf-header-h, 6.25rem)}.wi-header-table-shopfloor td,.wi-header-table-shopfloor th{border:2px solid #1a2330;box-sizing:border-box;margin:0;padding:0;font:inherit;text-align:left;font-weight:400}.wi-header-table-shopfloor tbody tr{height:50%}.wi-header-table-shopfloor-logo{width:96px;min-width:80px;max-width:96px;vertical-align:middle;text-align:center;padding:6px 8px;overflow:hidden;background:linear-gradient(165deg,#f7faf8,#e8f0ec 55%,#e2ebe6)}.wi-header-table-shopfloor-logo .mjc-logo-img,.mjc-logo-img--shopfloor-header{margin:0 auto;display:block;width:auto;max-width:78px;max-height:36px;height:auto;object-fit:contain;object-position:center}.wi-header-table-shopfloor th.wi-header-table-shopfloor-lbl{width:88px;min-width:76px;max-width:96px;height:50%;font-weight:800;font-size:.68rem;padding:0 6px;background:linear-gradient(180deg,#f3f7f5,#e6efe9);text-transform:uppercase;letter-spacing:.07em;vertical-align:middle;text-align:center;white-space:nowrap;color:var(--accent, #245b50)}.wi-header-table-shopfloor td.wi-header-table-shopfloor-val{height:50%;padding:5px 14px;width:auto;min-width:0;vertical-align:middle;line-height:1.3;overflow:hidden;overflow-wrap:anywhere;word-break:break-word;white-space:normal;color:#0f172a;background:#fff;font-size:.92rem;font-weight:600;text-align:left}.wi-header-table-shopfloor td.wi-header-table-shopfloor-val.wi-header-shopfloor-tasklist{vertical-align:middle;white-space:pre-wrap;min-height:0;font-weight:500}.wi-sheet-ref{border:2px solid #111;border-top:0;background:#fafafa;padding:8px 10px;margin-bottom:0}.wi-sheet-ref--compact{padding:3px 8px;font-size:.82rem;border-color:#1a2330}.wi-sheet-ref--compact .wi-sheet-ref-block--kits-compact{margin:0}.editor-shopfloor-embed .wi-sheet-ref--compact{border-top:0}.wi-kits-compact{display:flex;align-items:center;gap:6px 10px;flex-wrap:wrap;min-width:0;max-height:4.5rem;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.wi-kits-compact-heading{flex-shrink:0;margin:0;font-size:.66rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;line-height:1.35;color:var(--accent, #245b50)}.wi-kits-compact-list{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.wi-kits-compact-row{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;border-left:3px solid #c62828;padding:1px 0 1px 8px;min-width:0}.wi-kits-compact-meta{display:inline-flex;align-items:baseline;gap:6px;font-size:.8rem;line-height:1.35;white-space:nowrap}.wi-kits-compact-meta strong{font-weight:700}.wi-kits-compact-num{color:#444;font-weight:600;font-size:.78rem}.wi-kits-compact-parts{display:inline-flex;flex-wrap:wrap;align-items:center;gap:4px;min-width:0}.wi-kits-compact-chip{display:inline-block;padding:1px 7px;border:1px solid;font-size:.74rem;font-weight:600;line-height:1.35;white-space:nowrap}.wi-kits-compact-empty{margin:0;font-size:.8rem}.wi-official-legend{display:flex;flex-wrap:wrap;gap:10px 18px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid #ccc}.wi-official-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;text-transform:none;letter-spacing:.01em}.wi-official-legend-swatch{width:14px;height:14px;border:1px solid #111;display:inline-block;flex-shrink:0}.wi-official-legend-swatch--triangle{clip-path:polygon(50% 0,100% 100%,0 100%)}.wi-official-legend-swatch--square{border-radius:1px}.wi-official-legend-swatch--circle{border-radius:50%}.wi-official-legend-swatch--diamond{width:11px;height:11px;transform:rotate(45deg)}.wi-sheet-ref-grid{display:grid;grid-template-columns:1fr;gap:10px 14px}.wi-sheet-ref-grid--with-kits{grid-template-columns:minmax(200px,.9fr) minmax(280px,1.4fr)}.wi-sheet-ref--compact .wi-sheet-ref-grid,.wi-sheet-ref--compact .wi-sheet-ref-grid--with-kits{grid-template-columns:1fr;gap:4px}.wi-sheet-ref-title{margin:0 0 6px;font-size:.72rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.wi-sheet-ref-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.wi-sheet-ref-title-row .wi-sheet-ref-title{margin:0}.wi-sheet-ref-ppe-icons{display:flex;flex-wrap:wrap;gap:8px}.wi-ppe-tile{display:flex;flex-direction:column;align-items:center;gap:4px;width:76px;padding:6px 4px;border:2px solid #c5cdd8;border-radius:8px;background:#fff;cursor:pointer;font:inherit;color:inherit;opacity:.42;transition:opacity .12s ease,border-color .12s ease,box-shadow .12s ease}.wi-ppe-tile.is-on{opacity:1;border-color:var(--accent, #245b50);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 28%,transparent);background:color-mix(in srgb,var(--accent) 8%,#fff)}button.wi-ppe-tile:hover{opacity:.85}button.wi-ppe-tile.is-on:hover{opacity:1}.wi-ppe-tile-img{display:block;width:40px;height:40px;object-fit:contain}.wi-ppe-tile-label{font-size:.62rem;font-weight:600;text-align:center;line-height:1.2;text-transform:none;letter-spacing:0;max-width:100%}.wi-sheet-ref--compact .wi-ppe-tile{width:64px;padding:4px 2px}.wi-sheet-ref--compact .wi-ppe-tile-img{width:32px;height:32px}.wi-sheet-ref-ppe-read{margin:0;font-size:.8rem;text-transform:none;letter-spacing:0}.wi-sheet-ref-ppe-list{display:flex;flex-direction:column;gap:4px}.wi-sheet-ref-ppe-item{display:flex;align-items:center;gap:6px;font-size:.8rem;text-transform:none;letter-spacing:0;font-weight:500;cursor:pointer}.wi-sheet-ref-table{width:100%;border-collapse:collapse;font-size:.75rem;text-transform:none;letter-spacing:0;margin-bottom:6px}.wi-sheet-ref-table th,.wi-sheet-ref-table td{border:1px solid #bbb;padding:3px 5px;text-align:left;vertical-align:middle}.wi-sheet-ref-table th{background:#eee;font-weight:700}.wi-sheet-ref-table input[type=text],.wi-sheet-ref-table input:not([type]){width:100%;border:0;padding:2px 4px;font:inherit;background:transparent}.wi-sheet-ref-table input[type=color]{width:2rem;height:1.4rem;padding:0;border:1px solid #999;background:transparent;cursor:pointer}.wi-sheet-ref-block .btn-toolbar{margin-top:2px}.wi-kit-msg{margin:0 0 8px;font-size:.78rem;color:var(--accent, #245b50);text-transform:none;letter-spacing:0}.wi-kit-block{border:0;border-left:3px solid #c62828;border-radius:0;background:transparent;padding:0 0 10px 10px;margin:0 0 10px;box-shadow:none}.wi-kit-block+.wi-kit-block{padding-top:8px;border-top:1px solid #ccc}.wi-kit-block.is-saved{background:transparent}.wi-kit-block-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin-bottom:8px}.wi-kit-field{min-width:7rem;flex:1 1 7rem;margin:0}.wi-kit-field input[type=text],.wi-kit-field input:not([type]){min-width:0;width:100%;max-width:100%;padding:6px 8px;border-radius:6px;border:1px solid var(--border, #c5cdd8);font:inherit;font-weight:500;background:#fff}.wi-kit-field--color{flex:0 0 auto;min-width:0}.wi-kit-field--color input[type=color]{width:2.4rem;height:2rem;min-width:0;padding:2px;border:1px solid var(--border, #c5cdd8);border-radius:6px;background:#fff;cursor:pointer}.wi-kit-saved-badge{margin-left:auto;align-self:center;font-size:.68rem;font-weight:800;color:#2e7d32;text-transform:uppercase;letter-spacing:.04em}.wi-kit-parts-table{margin-bottom:8px}.wi-kit-parts-table input{background:transparent}.wi-kit-block-actions{display:flex;flex-wrap:wrap;gap:6px}.wi-kit-block-actions .btn-toolbar{margin-top:0}.wi-kit-card{border:0;border-left:3px solid #c62828;border-radius:0;background:transparent;padding:0 0 10px 10px;margin:0 0 10px}.wi-kit-card-head{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin-bottom:8px}.wi-kit-card-actions{display:flex;flex-wrap:wrap;gap:6px}.wi-kit-card-actions .btn-toolbar{margin-top:0}@media (max-width: 900px){.wi-sheet-ref-grid,.wi-sheet-ref-grid--with-kits{grid-template-columns:1fr}}.canvas-wrap{border:2px solid #111;border-top:0;background:#fff;position:relative;width:100%;box-sizing:border-box}.canvas-wrap .canvas-container{max-width:100%;position:relative;z-index:1}.canvas-toolbar{display:flex;flex-direction:column;gap:0;width:100%;box-sizing:border-box;padding:0;border-bottom:1px solid color-mix(in srgb,var(--accent) 18%,#b4b8c0);background:linear-gradient(180deg,#f4f7f5,#e8eeeb);position:relative;z-index:10}.canvas-toolbar .toolbar-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:6px 8px;padding:6px 8px}.canvas-toolbar .toolbar-actions-spacer{flex:1 1 12px;min-width:0}.canvas-toolbar .toolbar-sep{align-self:center;-webkit-user-select:none;user-select:none;line-height:1}.canvas-toolbar .toolbar-inline-label{font-size:.78rem;white-space:nowrap}.canvas-toolbar .toolbar-align-group{display:inline-flex;align-items:center;gap:2px}.canvas-toolbar .toolbar-align-btn{min-width:28px;height:26px;padding:0 4px;font-weight:700;font-size:.72rem}.canvas-toolbar .toolbar-align-btn.is-active,.canvas-toolbar .toolbar-underline-btn.is-active,.canvas-toolbar .ribbon-toggle-btn.is-active{background:#c6d4ea;color:#1a1d23;border-color:#7a8aa8;box-shadow:inset 0 1px 2px #00000014}.canvas-toolbar .toolbar-underline-btn{font-family:Georgia,Times New Roman,Times,serif;min-width:28px;height:26px;padding:0 4px}.canvas-toolbar .toolbar-underline-glyph{font-weight:700;font-size:.85rem;line-height:1;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1.5px}.canvas-toolbar .toolbar-underline-btn.is-active .toolbar-underline-glyph{text-decoration-color:currentColor}.canvas-toolbar .btn-toolbar{padding:5px 10px;font-size:.82rem}.canvas-toolbar .icon-btn{min-width:36px;height:36px;padding:0 8px;font-size:1.2rem;line-height:1;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--border);background:#fff;cursor:pointer;box-shadow:0 1px 2px #0000000d}.canvas-toolbar .icon-btn:hover{background:#e8ecf4;border-color:#9aa3b2}.canvas-toolbar .icon-btn.danger:hover{background:#fff0f0;border-color:#e8a0a0}.canvas-toolbar .icon-btn svg{display:block;color:#1a1d23}.editor-ribbon{display:flex;flex-direction:column;gap:0;font-family:var(--font-sans);font-size:.8rem}.editor-ribbon--one-row{flex-direction:column}.ribbon-strip{display:flex;flex-direction:row;align-items:stretch;flex-wrap:wrap;gap:0;padding:2px 6px 1px;border-bottom:1px solid #d8dce3;background:linear-gradient(180deg,#f7f8fa,#eef0f4)}.ribbon-strip:last-child{border-bottom:0}.ribbon-strip-one{align-items:stretch;overflow:visible;flex-wrap:wrap}.ribbon-one-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:8px;align-items:center;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:visible;padding-bottom:2px}.ribbon-one-row>.ribbon-tools-grid{grid-column:1;width:100%;max-width:100%;min-width:0;justify-content:flex-start;align-items:center;gap:6px 8px}.ribbon-one-row>.ribbon-format-compact{grid-column:2}.ribbon-one-row .ribbon-tools-grid>.ribbon-tools-col{display:contents}.ribbon-format-compact{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 8px;min-width:0;width:100%;max-width:100%;justify-content:flex-end;overflow:visible}.ribbon-one-row .ribbon-group--tight{min-height:0;padding:0 2px}.ribbon-format-compact .ribbon-font-family,.ribbon-format-compact .ribbon-font-family--compact{height:26px;min-height:26px}.ribbon-format-compact .ribbon-font-size-input--solo{height:26px;width:44px;flex-shrink:0;box-sizing:border-box}.ribbon-format-compact .ribbon-color-btn{width:26px;height:26px;flex-shrink:0}.ribbon-format-compact .ribbon-color-font-a{font-size:.82rem}.ribbon-format-compact .ribbon-color-font-bar{width:.85rem;height:3px;margin-top:0}.ribbon-format-compact .ribbon-fill-swatch{width:16px;height:16px}.ribbon-line-height--compact{flex-direction:row;align-items:center;gap:4px;margin:0}.ribbon-line-height--compact .ribbon-line-height-caption{white-space:nowrap}.ribbon-align-inline{display:flex;flex-direction:row;align-items:center;gap:2px}.ribbon-align-icon{display:block;color:#1a1d23}.canvas-toolbar .toolbar-align-btn--icon{display:inline-flex;align-items:center;justify-content:center;min-width:30px;width:30px;padding:0;font-weight:400}.canvas-toolbar .toolbar-align-btn--icon svg{flex-shrink:0}.ribbon-format-compact .ribbon-dd-label{min-width:0;flex:1 1 4.5rem;max-width:7rem}.ribbon-tools-grid{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:10px 14px;width:100%;max-width:100%;min-width:0;box-sizing:border-box;justify-content:flex-start}.ribbon-tools-col{display:flex;flex-direction:column;justify-content:flex-end}.ribbon-tools-col--draw{flex:0 0 auto}.ribbon-tools-col--menus{flex:0 1 auto;min-width:0;max-width:none}.ribbon-tools-col--arrange{flex:0 0 auto;margin-left:0}.ribbon-group--tight{padding:0 4px 4px;min-height:44px}.ribbon-tool-btn--sm{min-width:40px;max-width:48px;padding:2px 3px 3px}.ribbon-tool-btn--sm .ribbon-tool-btn-glyph{min-height:24px;font-size:1.05rem}.ribbon-tool-btn--sm .ribbon-tool-btn-glyph svg{width:19px;height:19px}.ribbon-insert-menus--inline{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 8px;margin-left:0;width:auto;max-width:100%}.ribbon-insert-menus--inline .ribbon-field-inline{flex:0 1 auto;min-width:0}.ribbon-picker-pair{gap:6px}.ribbon-picker-pair .ribbon-field-inline{flex-direction:row;align-items:center;gap:4px 6px;flex:0 0 var(--ribbon-pair-w, 118px);width:var(--ribbon-pair-w, 118px);min-width:var(--ribbon-pair-w, 118px);max-width:var(--ribbon-pair-w, 118px)}.ribbon-picker-pair .ribbon-field-caption{flex-shrink:0;white-space:nowrap}.ribbon-picker-pair .ribbon-legend-trigger,.ribbon-picker-pair .ribbon-select.ribbon-select--narrow{flex:1 1 0;width:auto;min-width:0;height:26px;min-height:26px;max-height:26px;box-sizing:border-box;font-size:.74rem;line-height:1.2;border:1px solid #b4b8c0;border-radius:3px;padding:2px 8px}.ribbon-picker-pair .ribbon-legend-trigger-chevron{font-size:.55rem;opacity:.85}.ribbon-insert-menus--inline .ribbon-select--narrow{max-width:100%}.ribbon-select--narrow{min-width:0;width:100%;max-width:100%}.editor-revisions-toggle{gap:4px;text-align:left}.editor-revisions-toggle.is-open{border-color:var(--accent, #245b50);color:#145046;background:color-mix(in srgb,var(--accent, #245b50) 8%,#fff)}.editor-revisions-toggle-chevron{flex:0 0 auto;width:.4em;height:.4em;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);transition:transform .15s ease;opacity:.85}.editor-revisions-toggle.is-open .editor-revisions-toggle-chevron{transform:rotate(45deg)}.editor-revisions-count{margin-left:2px;font-size:.68rem;font-weight:600}.editor-revisions-body[hidden],.editor-revisions-body.is-collapsed[hidden]{display:none!important}.editor-stage-main>.editor-revisions-body{flex:0 0 auto;flex-shrink:0;margin:0;padding:6px 8px;border-left:2px solid var(--wi-frame, #1a2330);border-right:2px solid var(--wi-frame, #1a2330);border-bottom:1px solid color-mix(in srgb,var(--accent, #245b50) 18%,#c5d0cb);background:linear-gradient(180deg,#fafcfb,#f3f7f5);box-sizing:border-box;z-index:3}.wi-page-bar{display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;gap:2px 6px;margin:0;padding:0 5px;border:2px solid var(--wi-frame, #1a2330);border-bottom:0;background:linear-gradient(180deg,#f6f9f7,#eef3f0);box-sizing:border-box;font-family:var(--font-sans);min-height:28px;max-height:32px;overflow:hidden}.wi-page-bar--shopfloor{border-color:#1a2330;background:#eef2f0;padding:4px 10px}.wi-shopfloor-page-label,.wi-extra-page-label{display:flex;align-items:center;gap:8px;padding:5px 12px;font-size:.8rem;font-weight:700;letter-spacing:.02em;color:var(--accent, #245b50);background:var(--surface-alt);border:2px solid #1a2330;border-bottom:0;box-sizing:border-box;box-shadow:inset 3px 0 0 var(--accent, #245b50)}.wi-extra-page-label{border-bottom:1px solid #cfd5de;border-top:0}.wi-shopfloor-page-label-text{font-family:var(--font-sans)}.wi-page-tabs{display:flex;flex-wrap:wrap;gap:4px;align-items:center;min-width:0}.wi-page-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;flex:0 0 auto;flex-direction:row;align-items:center;justify-content:center;gap:3px;border:1px solid color-mix(in srgb,var(--accent) 22%,#b4b8c0);background:#fff;color:#1a2330;font:inherit;font-size:.7rem;font-weight:600;min-width:0;min-height:22px;padding:1px 6px;border-radius:4px;cursor:pointer;line-height:1.1;transition:background .12s ease,border-color .12s ease,color .12s ease,box-shadow .12s ease}.wi-page-tab-num{font-size:.78rem;font-weight:700;letter-spacing:.01em;line-height:1.1}.wi-page-tab-caption{font-size:.55rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);line-height:1}.wi-page-tab:hover{background:color-mix(in srgb,var(--accent) 6%,#fff);border-color:color-mix(in srgb,var(--accent) 40%,#8a93a3)}.wi-page-tab:hover .wi-page-tab-caption{color:var(--accent)}.wi-page-tab.is-active{background:color-mix(in srgb,var(--accent) 10%,#fff);border-color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent);color:#145046}.wi-page-tab.is-active .wi-page-tab-caption{color:var(--accent)}.wi-page-actions{display:flex;flex-wrap:wrap;gap:4px;align-items:center;position:relative;z-index:4}.wi-page-action-btn.is-on{border-color:var(--accent);color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,#fff)}.wi-page-count-label{font-size:.8rem;font-weight:600}.wi-extra-page{border:2px solid #1a2330;border-top:0;background:#fff;box-sizing:border-box}.wi-extra-page-img{display:block;width:100%;height:auto;vertical-align:top}.editor-revisions-heading{margin:0;font-size:inherit;font-weight:inherit;line-height:inherit}.editor-revisions-scroll{max-height:min(32vh,220px);overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:4px 8px;border:1px solid color-mix(in srgb,var(--accent, #245b50) 12%,#e2e6ee);border-radius:4px;background:#fafbfd}.ribbon-arrange-tile{min-width:52px;max-width:64px}.editor-revisions-list{list-style:none;margin:0;padding:0}.editor-revisions-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 10px;padding:6px 0;border-bottom:1px solid #e6e9ef;font-size:.78rem}.editor-revisions-row:last-child{border-bottom:0}.editor-revisions-meta{flex:1 1 200px;min-width:0}.editor-revisions-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.ribbon-strip-format{padding-top:6px;padding-bottom:4px;background:#f3f5f9;flex-wrap:nowrap;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}.ribbon-group{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding:0 8px 4px;min-height:48px}.ribbon-group--font{min-width:0}.ribbon-group--revision .ribbon-group-body{justify-content:flex-end}.ribbon-group-body{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px;flex:1;width:100%}.ribbon-group-body.ribbon-draw-row{flex-direction:row;flex-wrap:nowrap;align-items:flex-end;justify-content:center;gap:3px 4px;width:100%}.ribbon-group-body.ribbon-arrange-row{flex-direction:row;flex-wrap:nowrap;align-items:flex-end;justify-content:center;gap:4px}.ribbon-group-label{width:100%;text-align:center;font-size:.68rem;font-weight:600;color:#3d4553;padding:3px 2px 0;margin-top:2px;border-top:1px solid #c5cad4;letter-spacing:.02em}.ribbon-divider-vertical{width:1px;align-self:stretch;min-height:36px;margin:2px 2px 10px;background:#c5cad4;flex-shrink:0}.ribbon-spacer{flex:1 1 24px;min-width:8px}.ribbon-insert-row{flex-direction:row;flex-wrap:wrap;align-items:flex-end;justify-content:center;gap:4px 6px;width:100%}.ribbon-tool-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px;min-width:52px;max-width:72px;padding:4px 6px 5px;border:1px solid transparent;border-radius:4px;background:transparent;cursor:pointer;color:#1a1d23;font:inherit;box-sizing:border-box}.ribbon-tool-btn:hover{background:#ffffffbf;border-color:#c5cad4}.ribbon-tool-btn--danger:hover{background:#fff0f0;border-color:#e8b4b4}.ribbon-tool-btn-glyph{display:flex;align-items:center;justify-content:center;min-height:28px;font-size:1.15rem;line-height:1}.ribbon-tool-btn-glyph svg{width:22px;height:22px}.ribbon-tool-btn-label{font-size:.65rem;text-align:center;line-height:1.15;max-width:100%;word-break:break-word}.ribbon-insert-menus{display:flex;flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:8px 12px;margin-left:4px}.ribbon-field-inline{display:flex;flex-direction:column;gap:2px;font-size:.72rem;min-width:0}.ribbon-field-caption{color:#4a5160;font-weight:600;font-size:.65rem}.ribbon-select{min-width:0;max-width:100%;min-height:26px;height:26px;font:inherit;font-size:.74rem;border:1px solid #b4b8c0;border-radius:3px;background:#fff;padding:2px 6px;box-sizing:border-box}.ribbon-legend-picker-wrap{position:relative;min-width:0}.ribbon-legend-trigger{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:4px;width:100%;min-height:26px;padding:2px 8px;font:inherit;font-size:.74rem;border:1px solid #b4b8c0;border-radius:3px;background:#fff;cursor:pointer;color:#1a1d23;text-align:left;box-sizing:border-box}.ribbon-legend-trigger:hover{border-color:#7a8699;background:#fafbfd}.ribbon-legend-trigger-chevron{font-size:.65rem;opacity:.75;line-height:1}.ribbon-legend-menu{position:absolute;left:0;right:0;top:calc(100% + 2px);z-index:50;margin:0;padding:4px 0;list-style:none;background:#fff;border:1px solid #b4b8c0;border-radius:4px;box-shadow:0 4px 14px #0000001f;min-width:160px}.ribbon-legend-menu--portal{position:fixed;left:auto;right:auto;top:auto;box-shadow:0 6px 20px #0000002e}.ribbon-legend-option{display:flex;flex-direction:row;align-items:center;gap:10px;width:100%;padding:8px 12px;margin:0;border:0;background:transparent;cursor:pointer;font:inherit;font-size:.82rem;color:#1a1d23;text-align:left}.ribbon-legend-option:hover{background:#e8eef8}.ribbon-legend-option-label{font-weight:500}.ribbon-legend-swatch{flex-shrink:0;display:inline-block}.ribbon-legend-swatch--process{width:18px;height:18px;background:#2e7d32;border-radius:1px}.ribbon-legend-swatch--tqc{width:0;height:0;border-style:solid;border-width:0 10px 17px 10px;border-color:transparent transparent #1565c0 transparent;margin-top:-2px}.ribbon-legend-swatch--verify{width:18px;height:18px;border-radius:50%;background:#ffeb3b;border:1px solid #111;box-sizing:border-box}.ribbon-legend-swatch--quality{width:18px;height:18px;background:#00838f;border-radius:1px}.ribbon-legend-swatch--skills{width:18px;height:18px;border-radius:50%;background:#212121;border:1px solid #111;box-sizing:border-box}.ribbon-legend-swatch--critical{width:14px;height:14px;background:#ef6c00;border:1px solid #111;transform:rotate(45deg);margin:2px 3px 0;box-sizing:border-box}.ribbon-legend-swatch--safety-wrap{position:relative;width:22px;height:18px;display:inline-flex;align-items:flex-end;justify-content:center}.ribbon-legend-swatch-safety-tri{width:0;height:0;border-style:solid;border-width:0 10px 17px 10px;border-color:transparent transparent #c62828 transparent}.ribbon-legend-swatch-safety-bang{position:absolute;left:50%;bottom:3px;transform:translate(-50%);font-size:9px;font-weight:800;color:#fff;line-height:1;pointer-events:none}.ribbon-arrange-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:36px;padding:0;border:1px solid #b4b8c0;border-radius:4px;background:#fff;cursor:pointer;color:#1a1d23;box-shadow:0 1px 2px #0000000f}.ribbon-arrange-icon-btn:hover{background:#eef2f8;border-color:#7a8699}.ribbon-arrange-svg{display:block}.ribbon-stack-btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:2px;padding:4px 8px 5px;min-width:72px;border:1px solid transparent;border-radius:4px;background:transparent;cursor:pointer;font:inherit;color:#1a1d23}.ribbon-stack-btn:hover{background:#fffc;border-color:#c5cad4}.ribbon-stack-btn-glyph{font-size:1rem;line-height:1;min-height:22px}.ribbon-stack-btn-label{font-size:.62rem;text-align:center;line-height:1.15;max-width:88px}.ribbon-revision-row{flex-direction:row;flex-wrap:wrap;gap:6px;justify-content:flex-end;align-items:center}.ribbon-font-top{display:flex;flex-direction:row;align-items:flex-end;gap:8px;flex-wrap:wrap;justify-content:center}.ribbon-dd-label{margin:0}.ribbon-font-family{min-width:160px;max-width:220px;height:28px;font:inherit;border:1px solid #b4b8c0;border-radius:3px;background:#fff;padding:2px 6px}.ribbon-font-family.ribbon-font-family--compact{min-width:0;width:100%;max-width:7.5rem}.ribbon-font-size-block{display:flex;flex-direction:row;align-items:flex-end;gap:2px}.ribbon-font-size-input{width:44px;height:28px;text-align:center;font:inherit;border:1px solid #b4b8c0;border-radius:3px;background:#fff}.ribbon-font-size-steppers{display:flex;flex-direction:column;gap:0;border:1px solid #b4b8c0;border-radius:3px;overflow:hidden;background:#fff}.ribbon-font-size-steppers button{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:1px;width:34px;height:14px;padding:0;margin:0;border:0;border-bottom:1px solid #d8dce3;background:#fafbfc;cursor:pointer;font-size:.55rem;line-height:1}.ribbon-font-size-steppers button:last-child{border-bottom:0}.ribbon-font-size-steppers button:hover{background:#e4e9f1}.ribbon-fs-a{font-weight:700;font-size:.62rem;font-family:Georgia,serif}.ribbon-fs-caret{font-size:.45rem;opacity:.85}.ribbon-font-toggles{display:flex;flex-direction:row;align-items:center;gap:2px;flex-wrap:wrap;justify-content:center}.ribbon-toggle-btn{min-width:28px;height:26px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #b4b8c0;border-radius:3px;background:#fff;cursor:pointer;font-size:.8rem;line-height:1;color:#1a1d23;box-shadow:0 1px #fffc inset}.ribbon-toggle-btn:hover{background:#f0f3f8;border-color:#9aa3b2}.ribbon-toggle-btn--italic{font-family:Georgia,Times New Roman,serif}.ribbon-align-wrap{display:flex;flex-direction:column;align-items:center;gap:3px}.ribbon-align-caption{font-size:.62rem;font-weight:600;color:#4a5160}.ribbon-align-group{gap:2px}.ribbon-line-height{display:flex;flex-direction:column;gap:2px;align-items:center}.ribbon-line-height-caption{font-size:.62rem;font-weight:600;color:#4a5160}.ribbon-line-height input{width:52px;height:26px;text-align:center;font:inherit;border:1px solid #b4b8c0;border-radius:3px;background:#fff}.ribbon-group--paragraph .ribbon-group-body{flex-direction:row;flex-wrap:wrap;align-items:flex-end;gap:12px 16px;justify-content:center}.ribbon-clipboard-body{flex-direction:row;align-items:flex-end;gap:10px;justify-content:center}.ribbon-color-btn{position:relative;display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-end;width:34px;height:52px;cursor:pointer;border-radius:3px;border:1px solid transparent}.ribbon-color-btn:hover{background:#fff9;border-color:#c5cad4}.ribbon-color-btn input[type=color]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer;border:0;padding:0}.ribbon-color-btn-face{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:0;pointer-events:none;height:100%;padding-bottom:2px}.ribbon-color-font-a{font-weight:700;font-size:1.1rem;line-height:1;color:#2a3040;font-family:Georgia,serif}.ribbon-color-font-bar{display:block;width:1.1rem;height:4px;margin-top:2px;border-radius:1px;border:1px solid rgba(0,0,0,.15)}.ribbon-color-btn-face--fill{justify-content:center;padding-bottom:0}.ribbon-fill-swatch{width:22px;height:22px;border-radius:2px;border:1px solid rgba(0,0,0,.2);box-shadow:inset 0 0 0 1px #ffffff59}.canvas-toolbar label.field.compact{min-width:0;font-size:.8rem}.canvas-toolbar label.field.compact input[type=color]{width:40px;height:32px;padding:2px;cursor:pointer;border-radius:6px;border:1px solid var(--border)}.canvas-toolbar label.field.compact select,.canvas-toolbar label.field.compact input[type=number]{min-height:32px;min-width:0}.canvas-wrap:focus-within{outline:2px solid rgba(30,90,150,.35);outline-offset:2px}.editor-read-only .canvas-wrap:focus-within{outline:none}.legend-preview{display:inline-flex;align-items:center;gap:8px;margin-right:8px;font-size:.85rem}@media (max-width: 900px){.wi-sheet .wi-header{grid-template-columns:64px minmax(0,1fr) minmax(200px,40%)}.wi-sheet .wi-header .meta{width:auto;max-width:100%}}@media (max-width: 640px){.wi-sheet .wi-header{grid-template-columns:1fr}.wi-sheet .wi-header .logo-cell,.wi-sheet .wi-header .mid{border-right:0}.wi-sheet .wi-header .meta{width:100%}}@media (max-width: 1024px){.ribbon-one-row{grid-template-columns:1fr;row-gap:10px;align-items:stretch}.ribbon-one-row>.ribbon-tools-grid,.ribbon-one-row>.ribbon-format-compact{grid-column:1;width:100%;max-width:100%}.ribbon-one-row>.ribbon-format-compact{justify-content:flex-start}}.image-crop-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;background:#00000080;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.image-crop-modal{background:#fff;border-radius:8px;box-shadow:0 8px 32px #00000040;max-width:min(960px,100%);max-height:min(92vh,100%);overflow:auto;padding:16px 18px 14px;box-sizing:border-box}.image-crop-modal-title{margin:0 0 6px;font-size:1.1rem;font-weight:700}.image-crop-modal-hint{margin:0 0 12px;font-size:.85rem;color:#444}.image-crop-modal-stage{position:relative;display:inline-block;max-width:100%;cursor:crosshair;touch-action:none;vertical-align:top}.image-crop-modal-img{display:block;max-width:100%;max-height:min(70vh,640px);width:auto;height:auto;-webkit-user-select:none;user-select:none}.image-crop-modal-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:14px}.image-crop-modal-actions-spacer{flex:1;min-width:8px}.seq-prefix{font-weight:800;color:#374151;margin-right:.25rem;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none}.btn-task-edit{border:2px solid #e65100;color:#bf360c;background:#fff8f5;font-weight:600}.btn-task-edit:hover{background:#ffe8d8;border-color:#d84315;color:#8d2f0a}.task-edit-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10040;background:#00000073;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}.task-edit-modal{background:#fff;border-radius:8px;box-shadow:0 8px 28px #00000038;max-width:min(480px,100%);width:100%;padding:18px 20px 16px;box-sizing:border-box;border:1px solid #e0e4ea}.task-edit-modal-title{margin:0 0 4px;font-size:1.1rem;font-weight:700}.task-edit-modal-sub{margin:0 0 14px;font-size:.9rem}.task-edit-modal-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}@media (max-width: 560px){.wi-sheet .wi-header .meta{grid-template-columns:92px minmax(0,1fr)}.ribbon-group-body.ribbon-draw-row,.ribbon-group-body.ribbon-arrange-row{flex-wrap:wrap;justify-content:flex-start}.ribbon-picker-pair .ribbon-field-inline{flex:1 1 100%;min-width:0;max-width:none;width:100%}}.catalog-admin-page{max-width:none;width:100%;margin:0}.catalog-admin-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:18px;align-items:start;margin-top:0}.catalog-admin-grid--lines-only{grid-template-columns:minmax(0,1fr);max-width:720px}.catalog-stations-linebar--drawer{margin-bottom:16px}.catalog-drawer-context-label{font-size:.82rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent2)}.catalog-station-order-hint{margin:0 0 10px;font-size:.84rem;line-height:1.4}.catalog-admin-card{border-radius:12px;box-shadow:0 4px 18px #0f172a0a}.catalog-admin-card-title{margin:0 0 14px;font-size:.82rem;font-weight:700;color:#4a5c55}.catalog-stations-card-head{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.catalog-admin-card-title--stations{margin:0;line-height:1.3}.catalog-caps-heading{letter-spacing:.06em;font-size:.98rem}.catalog-line-label{font-weight:600}.catalog-admin-card--stations{border-left:3px solid rgba(15,123,99,.35)}.catalog-stations-linebar{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;font-size:.88rem;line-height:1.4;padding:10px 12px;border-radius:10px;background:linear-gradient(135deg,#0f7b6314,#0f7b6305);border:1px solid rgba(15,123,99,.14)}.catalog-dept-badge{display:flex;flex-direction:column;gap:2px}.catalog-dept-badge__label{font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--accent2)}.catalog-dept-badge strong{font-size:1rem;letter-spacing:.02em}.catalog-station-add-form{display:flex;flex-direction:column;gap:12px;margin-bottom:18px;padding:14px;border-radius:12px;border:1px solid rgba(36,91,80,.1);background:linear-gradient(180deg,#fafdfc,#f4f8f6)}.catalog-station-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.catalog-station-list-empty{margin-top:12px;padding:14px;border:1px dashed rgba(36,91,80,.22);border-radius:10px;background:#00000005;text-align:center}.catalog-station-card{display:flex;flex-direction:row;align-items:stretch;gap:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.catalog-station-card:hover{border-color:#0f7b6347;box-shadow:0 4px 14px #0f172a0f}.catalog-station-card.is-selected{border-color:#0f7b6373;box-shadow:0 0 0 1px #0f7b631f}.catalog-station-card-main{flex:1 1 auto;min-width:0;padding:12px 14px;border-right:1px solid var(--border)}.catalog-station-card.is-selected .catalog-station-card-main{background:linear-gradient(90deg,rgba(15,123,99,.06) 0%,transparent 100%)}.catalog-station-card-actions{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;padding:10px 12px;flex-shrink:0;background:#fafcfb}.catalog-station-tasks-btn{display:inline-flex;align-items:center;justify-content:center;padding:7px 14px;border-radius:999px;font-size:.82rem;font-weight:700;color:#fff;text-decoration:none;background:linear-gradient(135deg,var(--accent) 0%,var(--accent2) 100%);box-shadow:0 2px 8px #0f7b6340;transition:transform .12s ease,box-shadow .12s ease}.catalog-station-tasks-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f7b6352;color:#fff}.catalog-clear-selection{margin-left:0;font-size:.82rem;padding:5px 12px;border-radius:999px}.catalog-admin-form{flex-wrap:wrap;margin-bottom:14px}.catalog-admin-form .field{flex:1 1 160px;min-width:0}.catalog-admin-form .field input{min-width:0;width:100%}.catalog-station-add-form-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;align-items:end}.catalog-station-add-field.field input{min-width:0;width:100%;box-sizing:border-box}.catalog-station-add-form-actions{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:8px}.catalog-pl-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.catalog-pl-empty{padding:14px;border:1px dashed var(--border);border-radius:10px;background:#00000005;text-align:center}.catalog-pl-row{display:flex;flex-direction:row;align-items:stretch;gap:0;border:1px solid var(--border);border-radius:12px;overflow:hidden;background:#fff;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.catalog-pl-row:hover{border-color:#245b5047;box-shadow:0 6px 20px #0f172a0f}.catalog-pl-row.is-selected{border-color:var(--accent2);box-shadow:0 0 0 1px #0f7b6333,0 8px 24px #0f7b631a}.catalog-pl-select{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;padding:12px 14px;margin:0;border:0;border-left:4px solid transparent;background:transparent;font:inherit;text-align:left;cursor:pointer;color:inherit;transition:background .14s ease,border-color .14s ease}.catalog-pl-select:hover{background:#0f7b630d}.catalog-pl-row.is-selected .catalog-pl-select{background:linear-gradient(90deg,#0f7b631a,#0f7b6305);border-left-color:var(--accent2)}.catalog-pl-name{font-weight:800;font-size:1rem;letter-spacing:.02em}.catalog-pl-desc{font-size:.8rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.catalog-pl-active-pill{display:inline-flex;align-items:center;margin-top:2px;padding:2px 8px;border-radius:999px;font-size:.65rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#0d5c4a;background:#0f7b6324;border:1px solid rgba(15,123,99,.22)}.catalog-pl-actions{flex:0 0 auto;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:8px;padding:10px;min-width:148px;border-left:1px solid var(--border);background:linear-gradient(180deg,#fafcfb,#f3f7f5)}.catalog-pl-show-btn{white-space:nowrap;font-size:.8rem;padding:6px 12px;background:#fff;border-color:#245b5040;color:var(--accent);font-weight:600}.catalog-pl-show-btn:hover{background:#0f7b6314;border-color:var(--accent2)}.catalog-pl-open-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:7px;width:100%;padding:8px 12px;border-radius:10px;border:none;text-decoration:none;font-size:.8rem;font-weight:700;letter-spacing:.02em;color:#fff;background:linear-gradient(135deg,#163d35,#1f6b58 42%,#2a9d7a);box-shadow:0 1px #ffffff2e inset,0 4px 14px #0f7b6359;overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.catalog-pl-open-btn__glow{position:absolute;inset:-40% auto auto -30%;width:70%;height:140%;background:radial-gradient(circle,rgba(255,255,255,.35) 0%,transparent 68%);pointer-events:none;opacity:.7;transition:opacity .16s ease}.catalog-pl-open-btn__icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.95}.catalog-pl-open-btn__label{flex:1 1 auto;text-align:left}.catalog-pl-open-btn__chev{display:flex;align-items:center;opacity:.85;transition:transform .18s ease}.catalog-pl-open-btn:hover{transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 1px #ffffff38 inset,0 8px 22px #0f7b636b;color:#fff}.catalog-pl-open-btn:hover .catalog-pl-open-btn__chev{transform:translate(3px)}.catalog-pl-open-btn:active{transform:translateY(0);filter:brightness(.98)}.catalog-pl-open-btn:focus-visible{outline:2px solid #7dd3b0;outline-offset:2px}.catalog-pl-actions .btn:not(.catalog-pl-show-btn){white-space:nowrap;font-size:.82rem;padding:5px 10px}.catalog-stations-empty{padding:28px 20px;border:1px dashed rgba(36,91,80,.22);border-radius:12px;background:linear-gradient(180deg,#0f7b6308,#00000003);line-height:1.5;text-align:center}.catalog-stations-empty-icon{font-size:1.6rem;color:var(--accent2);opacity:.45;margin-bottom:8px}.catalog-clear-selection{margin-left:10px;font-size:.82rem;padding:4px 10px}.catalog-table-wrap{margin-top:2px;overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}.catalog-stations-table{width:100%;min-width:0;max-width:100%;font-size:.88rem;table-layout:fixed;border-collapse:collapse;border-spacing:0}.catalog-stations-table td{vertical-align:top;background:#fff}.catalog-stations-table th{vertical-align:bottom;line-height:1.25;white-space:normal}.catalog-th-caps{padding:10px 10px 8px}.catalog-th-stack{display:flex;flex-direction:column;align-items:flex-start;gap:4px;max-width:100%}.catalog-th-main{font-weight:700;font-size:.78rem;line-height:1.2}.catalog-th-sub{font-weight:600;font-size:.66rem;letter-spacing:.02em;color:#5c6474;line-height:1.25;white-space:normal}.catalog-st-col-station{min-width:0;width:calc(100% - 9.75rem)}.catalog-station-name-cell{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;max-width:100%}.catalog-station-name-text{font-weight:700;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;word-break:break-word;min-width:0}.catalog-station-name-text:hover{color:#1e4a8c}.catalog-station-edit-btn{align-self:flex-start;min-width:32px;min-height:32px;padding:4px;flex-shrink:0}.catalog-station-name-input{flex:1 1 140px;min-width:120px;max-width:20rem;font:inherit;font-weight:600;padding:4px 8px;border:1px solid var(--border);border-radius:4px}.catalog-station-edit-fields{display:grid;gap:8px;grid-column:1 / -1;max-width:28rem}.catalog-station-desc-input{width:100%;min-width:120px;font:inherit;padding:4px 8px;border:1px solid var(--border);border-radius:4px}.catalog-station-edit-actions{display:flex;flex-wrap:wrap;gap:8px}.catalog-station-sub{width:100%;font-size:.78rem;margin-top:4px}.catalog-stations-actions-col{width:9.75rem;white-space:normal}.catalog-stations-actions{white-space:nowrap;vertical-align:middle;padding:0}.catalog-stations-actions-inner{min-height:50px;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:nowrap;padding:7px 10px}.catalog-stations-tasks-link{font-size:.82rem;padding:5px 12px}.catalog-subheading{margin:0 0 8px;font-size:.92rem;font-weight:600}.catalog-deleted-list{list-style:none;margin:0;padding:0}.catalog-deleted-list li{margin-bottom:8px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}@media (max-width: 900px){.catalog-admin-grid{grid-template-columns:1fr}.catalog-pl-actions{flex-direction:row;border-left:0;border-top:1px solid var(--border);justify-content:flex-end}.catalog-station-add-form-fields{grid-template-columns:1fr}}.admin-user-password-cell{max-width:18rem;vertical-align:middle}.admin-user-password-row{display:flex;align-items:flex-start;gap:6px}.admin-user-password-text{flex:1;min-width:0;font-size:.85rem;line-height:1.35}.admin-user-password-text--masked{color:var(--muted);letter-spacing:.08em;-webkit-user-select:none;user-select:none}.admin-user-password-text--revealed{color:var(--text);letter-spacing:normal}.admin-notification-card{border-top:4px solid var(--accent)}.admin-notification-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.admin-notification-toggle{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:999px;background:#f7faf9;font-weight:700;white-space:nowrap}.admin-notification-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;align-items:start}.admin-notification-grid>label.field,.admin-notification-grid>.ff-field{margin:0;min-width:0}.admin-notification-grid .form-grid-actions,.admin-notification-grid>.btn-row{grid-column:1 / -1}.admin-notification-check{flex-direction:row;align-items:center;gap:8px;padding-top:0;margin:0}.admin-page-access-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 12px}.admin-page-access-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:8px}.admin-notification-subheading{margin:8px 0 10px}.admin-assignment-grid{display:grid;gap:8px}.admin-assignment-row{display:grid;grid-template-columns:minmax(140px,220px) minmax(0,1fr);gap:12px;align-items:start;padding:10px;border:1px solid var(--border);border-radius:8px;background:#fbfcfd}.admin-assignment-users{display:flex;flex-wrap:wrap;gap:8px}.admin-assignment-user{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--border);border-radius:999px;background:#fff}.admin-page-access-block{display:flex;flex-direction:column;gap:12px;margin-top:4px}.admin-access-mode{margin:0;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:#fafafa}.admin-access-mode legend{padding:0 6px;font-size:.85rem;font-weight:600}.admin-access-mode-option{display:flex;align-items:flex-start;gap:8px;margin-top:8px;font-size:.88rem;line-height:1.4;cursor:pointer}.admin-access-mode-option:first-of-type{margin-top:4px}.admin-access-mode-option input{margin-top:3px;flex-shrink:0}.admin-page-access-hint{margin:0 0 4px;font-size:.85rem}.admin-page-access-editor{max-width:420px}.admin-page-access-item{display:flex;align-items:center;gap:6px;min-height:36px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:#fff;font-size:.85rem;cursor:pointer}.admin-page-access-item>input{flex:0 0 auto;margin:0}.admin-page-access-item>span{min-width:0;line-height:1.3}.admin-user-form{max-width:42rem}.admin-user-form .form-grid,.admin-notification-card .form-grid{gap:22px 16px}.admin-directory-table{min-width:64rem;table-layout:fixed}.admin-directory-table th,.admin-directory-table td{vertical-align:middle;padding:12px}.admin-directory-table th:nth-child(1),.admin-directory-table td:nth-child(1){width:14%}.admin-directory-table th:nth-child(2),.admin-directory-table td:nth-child(2){width:12%}.admin-directory-table th:nth-child(3),.admin-directory-table td:nth-child(3){width:16%}.admin-directory-table th:nth-child(4),.admin-directory-table td:nth-child(4){width:10%}.admin-directory-table th:nth-child(5),.admin-directory-table td:nth-child(5){width:10%}.admin-directory-table th:nth-child(6),.admin-directory-table td:nth-child(6){width:8%}.admin-directory-table th:nth-child(7),.admin-directory-table td:nth-child(7){width:16%}.admin-directory-table th:nth-child(8),.admin-directory-table td:nth-child(8){width:14%}.admin-directory-row--inactive{opacity:.65}.admin-directory-username{font-weight:600}.admin-directory-email{word-break:break-word}.admin-directory-select{display:block;width:100%;max-width:9.5rem;box-sizing:border-box;min-height:36px;padding:6px 28px 6px 10px;border:1px solid var(--border);border-radius:8px;background:#fff;font:inherit;font-size:.88rem;line-height:1.3;color:var(--text)}.admin-directory-select:disabled{background:#f3f5f6;color:var(--muted)}.admin-directory-access-btn{white-space:nowrap}.admin-directory-password{display:flex;align-items:center;gap:8px;min-width:0;max-width:14rem}.admin-directory-password-input{flex:1 1 auto;min-width:0;width:100%;box-sizing:border-box;min-height:36px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:#fff;font:inherit;font-size:.88rem;line-height:1.3}.admin-directory-password-input:disabled{background:#f3f5f6;color:var(--muted)}.admin-directory-password>.btn{flex:0 0 auto}.admin-directory-actions{flex-wrap:nowrap;gap:8px}.admin-directory-actions>.btn{flex:0 0 auto}.admin-directory-table .btn-sm{min-height:36px;padding:6px 12px}.page:has(.admin-directory-table){padding-bottom:5.5rem}@media (max-width: 640px){.admin-notification-grid{grid-template-columns:1fr}}@media (max-width: 720px){.admin-notification-head{flex-direction:column}.admin-assignment-row{grid-template-columns:1fr}}@media print{@page{size:landscape;margin:8mm}body{background:#fff!important}.layout .topbar{display:none!important}.layout main{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}.wi-header--print-hide,.mpp-no-print,.editor-title-bar,.editor-doc-actions-top,.editor-revisions-body,.editor-revisions-toggle,.canvas-toolbar,.wi-page-bar,.wi-editor-details,.wi-shopfloor-page-label,.page>p,.page>.error,.page>.success-banner{display:none!important}.task-print-no-print{display:none!important}.task-print-sheets-page{max-width:none!important}.task-print-document{border:0!important;padding:0!important;margin:0!important;gap:0!important;background:transparent!important;box-shadow:none!important}.task-print-sheet{box-shadow:none!important;border:2px solid #111!important;box-sizing:border-box;background:#fff!important;page-break-after:always}.task-print-sheet:last-child{page-break-after:auto}.editor-shopfloor-embed .canvas-wrap{overflow:visible!important}.wi-extra-page{border:2px solid #111!important;border-top:2px solid #111!important;margin-top:0;page-break-before:always;break-before:page}.wi-extra-page-label{display:none!important}.task-print-document,.task-print-document .wi-header-table-shopfloor,.task-print-document .wi-sf-rev-badge,.task-print-document .canvas-wrap,.task-print-document canvas,.wi-extra-page-img,.editor-shell .wi-header{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}.editor-shell:not(.editor-shopfloor-embed){padding:0!important;height:auto!important;max-height:none!important;overflow:visible!important}.editor-shell:not(.editor-shopfloor-embed) .editor-stage{display:flex!important;flex-direction:column!important;grid-template-rows:none!important;min-height:0!important;overflow:visible!important;height:auto!important}.editor-shell:not(.editor-shopfloor-embed) .editor-stage-main{display:contents!important;overflow:visible!important}.editor-shell:not(.editor-shopfloor-embed) .canvas-wrap{border:2px solid #111!important;border-top:0!important;overflow:visible!important;flex:none!important;min-height:0!important}.editor-shell:not(.editor-shopfloor-embed) .wi-header{display:grid!important}}.login-page{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:48px 16px;font-family:var(--font-sans);background:radial-gradient(120% 80% at 50% -10%,rgba(36,91,80,.07),transparent 55%),linear-gradient(180deg,#f4f6f8 0%,var(--login-page-bg) 100%)}.login-shell{width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:0}.login-brand-outside{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:24px;text-align:center}.login-brand-eyebrow{margin:0;max-width:22rem;font-size:.78rem;font-weight:600;letter-spacing:.08em;line-height:1.35;text-align:center;text-transform:uppercase;color:#4a5560}.login-logo{display:block;width:min(220px,72vw);height:auto;margin:0}.login-card{position:relative;width:100%;overflow:hidden;border-radius:8px;border:1px solid var(--login-card-border);background:#fff;box-shadow:0 1px 2px #1118270a,0 10px 28px #1118270f;text-align:left;padding:28px 28px 30px}.login-card:before{content:"";display:block;height:4px;margin:-28px -28px 22px;background:var(--accent)}.login-card-title{margin:0 0 22px;font-size:1.08rem;font-weight:700;letter-spacing:-.015em;line-height:1.35;color:var(--accent);text-align:center;text-wrap:balance}.login-mode-wrap{padding:0 0 16px}.login-mode-segment{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:8px;background:#eef1f4;border:1px solid var(--login-card-border)}.login-mode-segment__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0;border:none;background:transparent;border-radius:6px;padding:10px 14px;font:inherit;font-size:.88rem;font-weight:600;letter-spacing:.01em;color:#4a5560;cursor:pointer;transition:background .14s ease,color .14s ease,box-shadow .14s ease}.login-mode-segment__btn:hover:not(.is-active){color:var(--accent);background:#ffffff8c}.login-mode-segment__btn.is-active{background:#fff;color:var(--accent);box-shadow:0 1px 2px #1118270f,0 0 0 1px #245b501f}.login-mode-segment__btn:focus-visible{outline:2px solid var(--accent2);outline-offset:1px}.login-hint{margin:0;font-size:.82rem;line-height:1.45;padding:10px 12px;border-radius:6px;color:#3d4a55;background:#eef1f4;border:1px solid var(--login-card-border)}.login-form{padding:0;text-align:left;gap:14px}.login-form .field{text-align:left;margin-bottom:0;font-size:.82rem;font-weight:600;color:#3d4a55;gap:6px}.login-form .field.field--row{font-weight:500;color:var(--text);margin-top:2px;margin-bottom:0}.login-submit{width:100%;margin-top:4px;min-height:var(--control-height-lg);padding:12px 16px;font-size:.98rem;font-weight:700;letter-spacing:.01em}.login-card .field input[type=text],.login-card .field input[type=password],.login-card .field input:not([type=checkbox]){min-height:var(--control-height);padding:10px 12px;border-radius:4px;border-color:var(--login-card-border);font-size:.95rem;line-height:1.3}.login-card .field input:focus{outline:2px solid var(--accent2);outline-offset:1px;border-color:var(--accent2);box-shadow:0 0 0 3px #0f7b631f}.login-card .error{margin-bottom:0}@media (max-width: 480px){.login-page{padding:28px 14px 36px;align-items:flex-start}.login-brand-outside{margin-bottom:18px;gap:8px}.login-logo{width:min(180px,68vw)}.login-card{padding:22px 18px 24px}.login-card:before{margin:-22px -18px 18px}.login-card-title{font-size:1rem;margin-bottom:18px}}.side-drawer-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1400;display:flex;justify-content:flex-end;align-items:stretch;background:#1d252c47;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);padding:0}.side-drawer{position:relative;width:clamp(300px,38vw,520px);max-width:100%;height:100%;min-height:100dvh;max-height:100dvh;background:#fff;color:var(--text);border-left:1px solid var(--border);box-shadow:-18px 0 42px #11182729;display:flex;flex-direction:column;animation:side-drawer-in .15s ease-out;overflow:hidden}.side-drawer-accent{height:4px;flex:0 0 auto;background:linear-gradient(90deg,var(--accent) 0%,var(--accent2) 64%,var(--accent-warm) 100%)}.side-drawer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:clamp(16px,2.5vw,22px) clamp(16px,3vw,24px) clamp(14px,2vw,18px);border-bottom:1px solid var(--border);flex-shrink:0}.side-drawer-head h2{margin:3px 0 0;font-size:1.25rem;line-height:1.25;letter-spacing:0;text-transform:uppercase}.side-drawer-eyebrow{font-size:.74rem;font-weight:800;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}.side-drawer-close{width:34px;height:34px;border:1px solid var(--border);border-radius:8px;background:#f8fafb;color:var(--muted);font:inherit;font-weight:800;cursor:pointer}.side-drawer-close:hover{background:var(--surface);color:var(--text)}.side-drawer-body{flex:1 1 auto;overflow:auto;padding:20px clamp(16px,3vw,24px);-webkit-overflow-scrolling:touch}.side-drawer-actions{display:flex;flex-wrap:wrap;gap:10px;padding:16px clamp(16px,3vw,24px) clamp(18px,3vw,22px);border-top:1px solid var(--border);background:#fbfcfd;flex-shrink:0}.drawer-detail-stack{display:flex;flex-direction:column;gap:14px}.drawer-lead{margin:0;color:var(--muted);line-height:1.5}.drawer-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,148px),1fr));gap:10px}.drawer-kpi-grid>div,.drawer-info-card{border:1px solid var(--border);border-radius:8px;background:#fbfcfd;padding:12px 13px}.drawer-kpi-grid span,.drawer-info-card span{display:block;color:var(--muted);font-size:.72rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.drawer-kpi-grid strong,.drawer-info-card strong{display:block;margin-top:5px;font-size:1.12rem;line-height:1.25;overflow-wrap:anywhere}.dashboard-product-line-button{width:100%;text-align:left;font:inherit;color:inherit;cursor:pointer}.dashboard-product-line-button:hover{border-color:#245b5061;box-shadow:var(--shadow-raised)}.dashboard-product-line-button.is-selected{border-color:var(--accent);box-shadow:0 0 0 2px #245b501f,var(--shadow)}.dashboard-open-hint{display:inline-flex;margin-top:8px;color:var(--accent);font-size:.84rem;font-weight:800}.catalog-station-row{cursor:pointer}.catalog-station-row:hover td{background:#f8fbfa}.catalog-station-row.is-selected td{background:#eef8f5}@keyframes side-drawer-in{0%{transform:translate(22px);opacity:.82}to{transform:translate(0);opacity:1}}@media (max-width: 640px){.side-drawer-layer{align-items:flex-end}.side-drawer{width:100%;min-height:min(92dvh,100dvh);max-height:92dvh;border-left:none;border-top:1px solid var(--border);border-radius:16px 16px 0 0;box-shadow:0 -12px 40px #1118272e;animation:side-drawer-up .18s ease-out}.drawer-kpi-grid{grid-template-columns:1fr}}@keyframes side-drawer-up{0%{transform:translateY(24px);opacity:.85}to{transform:translateY(0);opacity:1}}.home-page{max-width:none;width:100%}.home-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;flex-wrap:wrap;margin-bottom:8px}.home-eyebrow{margin:0 0 4px;font-size:.82rem;font-weight:400;color:var(--accent);letter-spacing:.02em}.home-hero h1{margin-bottom:8px;font-size:clamp(1.5rem,3vw,1.85rem)}.home-lead{margin:0;max-width:52ch;font-weight:400}.home-search-wrap{flex:1 1 280px;max-width:min(480px,100%);min-width:200px}.home-search-label{display:block;font-size:.78rem;font-weight:700;text-transform:uppercase;color:var(--muted);margin-bottom:6px}.home-search{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--card);transition:border-color .15s ease,box-shadow .15s ease}.home-search:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #245b5026}.home-search-wrap--hero{flex:1 1 300px;max-width:min(420px,100%)}.home-search-field{position:relative;display:flex;align-items:center}.home-search-icon{position:absolute;left:12px;color:var(--muted);pointer-events:none}.home-search-field .home-search{padding:11px 14px 11px 38px;border-radius:999px;background:#fff;box-shadow:0 2px 8px #0f172a0a}.home-search-field .home-search:focus{box-shadow:0 0 0 3px #245b5024,0 2px 8px #0f172a0a}.home-search-field .home-search::-webkit-search-cancel-button{cursor:pointer}.home-empty-note{margin:0 0 14px;font-size:.92rem}.home-search-results{margin:0 0 18px}.home-search-results-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:10px}.home-search-results-head h2,.home-search-results-head--inline h2{margin:0;font-size:.95rem;font-weight:700;letter-spacing:-.01em}.home-search-results-head--inline{margin-bottom:12px}.home-search-results-list{display:flex;flex-direction:column;gap:8px}.home-search-result{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid color-mix(in srgb,#1f6b58 16%,var(--border));background:linear-gradient(135deg,#fff,#f3faf7);text-decoration:none;color:inherit;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.home-search-result:hover{transform:translateY(-1px);box-shadow:0 8px 20px #0f172a12;border-color:#b8d4cc}.home-search-result-icon{flex:0 0 auto;width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#fff;box-shadow:0 2px 8px #0f172a0d}.home-search-result-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.home-search-result-body strong{font-size:.95rem}.home-search-result-body .muted{font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-stats{margin:20px 0 24px}.home-stats-note{margin:0 0 10px;font-size:.9rem}.home-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.home-stat{background:var(--card);border:1px solid var(--border);border-radius:8px;padding:12px 14px;box-shadow:var(--shadow)}.home-stat span{display:block;color:var(--muted);font-size:.76rem;font-weight:700;text-transform:uppercase}.home-stat strong{display:block;margin-top:6px;font-size:1.35rem;line-height:1.1}.home-cards-section{margin-top:8px}.home-cards-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:14px}.home-cards-head h2{margin:0}.home-cards-count{font-size:.88rem}.home-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:clamp(10px,1.2vw,16px)}.home-card{display:flex;align-items:center;gap:14px;padding:14px 16px 14px 14px;min-height:var(--touch-min);background:#fff;border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);color:inherit;text-decoration:none;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease;cursor:pointer}.home-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));box-shadow:0 6px 20px #0f172a14;background:color-mix(in srgb,var(--accent) 3%,#fff);text-decoration:none}.home-card:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #245b502e}.home-card--primary{border-color:#b8d4cc;background:#f6faf8;box-shadow:inset 3px 0 0 var(--accent),var(--shadow)}.home-card--warm.home-card--primary{border-color:#e8c4a4;background:#fff9f4;box-shadow:inset 3px 0 0 var(--accent-warm),var(--shadow)}.home-card--blue.home-card--primary{border-color:#b8cce8;background:#f4f8fc;box-shadow:inset 3px 0 #2f6fad,var(--shadow)}.home-cards-section-lbl{margin:0 0 10px;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.home-cards-section--more{margin-top:22px}.home-cards--daily,.home-cards--autofit{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr))}.home-card--lead{border-color:#9fc9bb;box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 18%,transparent),var(--shadow)}.home-card--lead.home-card--warm{border-color:#e8b48a;background:linear-gradient(135deg,#fff,#fff4eb)}.home-card--lead .home-card-body h3{font-weight:700}.home-page--floor .home-cards--daily,.home-page--floor .home-cards--modern.home-cards--autofit{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),280px));justify-content:start;gap:var(--space-4)}.home-card--muted{opacity:.78}.home-card--muted:hover,.home-card--muted:focus-visible{opacity:1}.topbar--role-shopfloor .user-chip-role{letter-spacing:.02em}.home-card-icon{flex:0 0 auto;width:48px;height:48px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;background:#fff;color:#3d4a56;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);box-shadow:none;transition:transform .18s ease,border-color .18s ease,background .18s ease}.home-card:hover .home-card-icon{transform:none;border-color:#b8d4cc;background:#f8fcfa;box-shadow:none}.home-card-icon svg{width:26px;height:26px;display:block}.home-card-icon-img{width:32px;height:32px;object-fit:contain;display:block;pointer-events:none}.home-card-icon-img--wide{width:40px;height:24px}.home-card-icon--illustrated,.home-card-icon--green,.home-card-icon--warm,.home-card-icon--blue,.home-card-icon--neutral{background:#f7f9fb;color:#334155;box-shadow:none}.home-card-body{flex:1 1 auto;min-width:0}.home-card-body h3{margin:0;font-size:1rem;font-weight:600;letter-spacing:-.01em;line-height:1.25}.home-card-body p{margin:0;font-size:.9rem;color:var(--muted);line-height:1.4}.home-card-arrow{flex:0 0 auto;align-self:center;font-size:1.05rem;color:#9aa3ad;opacity:.65;transition:transform .16s ease,color .16s ease,opacity .16s ease}.home-card:hover .home-card-arrow{transform:translate(3px);color:var(--accent);opacity:1}.home-empty{margin-bottom:0}.home-link-btn{background:none;border:none;padding:0;font:inherit;color:var(--accent);font-weight:600;cursor:pointer;text-decoration:underline}.home-link-btn:hover{color:var(--accent2)}.layout--modern{background:var(--bg)}.main-content--modern{max-width:none;width:100%;padding:var(--space-6) var(--page-pad-x) var(--space-8);background:transparent}.layout--with-sidebar .main-content--modern.app-shell-main{flex:1 1 0%;width:auto;min-width:0;max-width:100%}.topbar--modern{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(140px,200px) auto;align-items:center;gap:10px 16px;padding:10px 22px;overflow:visible;background:#ffffffeb;border-bottom:1px solid var(--border);box-shadow:0 1px #1118270a,0 8px 24px #1118270a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar--modern .topbar-brand,.topbar--modern .brand{color:inherit;text-decoration:none;flex-shrink:0;transition:opacity .15s ease;grid-column:1}.topbar--modern .brand:hover,.topbar--modern .topbar-brand:hover{opacity:.85;text-decoration:none}.topbar--modern nav.topbar-nav{display:flex;align-items:center;justify-content:flex-start;gap:4px;flex:1 1 auto;flex-wrap:nowrap;min-width:0;grid-column:2;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.topbar-nav{display:flex;align-items:center;justify-content:flex-start;gap:4px;flex:1 1 auto;flex-wrap:nowrap;min-width:0}.topbar-nav a{color:#2f3b46;padding:8px 12px;border-radius:999px;font-size:.86rem;font-weight:var(--font-weight-ui);text-decoration:none;white-space:nowrap;transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}.topbar-nav a:hover{background:var(--surface);transform:translateY(-1px)}.topbar-nav a.active{background:color-mix(in srgb,var(--accent) 12%,#fff);color:var(--accent);font-weight:600;box-shadow:inset 0 -2px 0 var(--accent)}.topbar-more{position:relative;flex-shrink:0}.topbar-more-backdrop{position:fixed;left:0;right:0;bottom:0;z-index:1090;border:0;padding:0;margin:0;background:transparent;cursor:default}.topbar-more-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid transparent;border-radius:8px;background:transparent;color:#2f3b46;font:inherit;font-size:.86rem;font-weight:500;cursor:pointer;transition:background .18s ease,border-color .18s ease}.topbar-more-btn:hover,.topbar-more-btn.is-open,.topbar-more-btn.is-active{background:var(--surface);border-color:var(--border)}.topbar-more-btn.is-active{color:var(--text);font-weight:600}.topbar-more-caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;transition:transform .2s ease}.topbar-more-btn.is-open .topbar-more-caret{transform:rotate(180deg)}.topbar-more-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:200px;padding:6px;background:var(--card);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-raised);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-6px) scale(.98);transition:opacity .2s ease,transform .2s ease,visibility .2s;z-index:1100}.topbar-more-menu--portal{position:fixed;top:0;left:0;right:auto;z-index:1100;opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);animation:topbar-menu-in .18s cubic-bezier(.22,1,.36,1)}@keyframes topbar-menu-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.topbar-more-menu.is-open{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.topbar-more-menu a{display:block;padding:9px 12px;border-radius:7px;color:var(--text);font-size:.86rem;font-weight:500;text-decoration:none;transition:background .15s ease}.topbar-more-menu a:hover{background:var(--surface)}.topbar-more-menu a.active{background:#e1eee9;color:var(--accent)}.topbar-meta{display:flex;align-items:center;gap:12px;flex-shrink:0;margin-left:0;grid-column:4}.topbar-user{display:flex;align-items:center;gap:8px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.global-search{position:relative;min-width:0}.topbar--modern>.global-search--topbar{grid-column:3;width:100%;max-width:200px;justify-self:end}.global-search--hero{flex:1 1 300px;max-width:min(420px,100%)}.global-search-field{position:relative;display:flex;align-items:center}.global-search-icon{position:absolute;left:11px;color:var(--muted);pointer-events:none}.global-search-input{width:100%;padding:8px 64px 8px 34px;border:1px solid var(--border);border-radius:999px;font:inherit;font-size:.88rem;background:#fff;color:var(--text);transition:border-color .15s ease,box-shadow .15s ease}.global-search--topbar .global-search-input{padding:6px 52px 6px 30px;font-size:.8rem;min-height:34px;border-radius:8px}.global-search--topbar .global-search-icon{left:9px;width:14px;height:14px}.global-search--topbar .global-search-kbd{right:6px;font-size:.62rem;padding:1px 5px}.global-search--hero .global-search-input{padding:11px 14px 11px 38px;font-size:.95rem;box-shadow:0 2px 8px #0f172a0a}.global-search-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #245b5024}.global-search-kbd{position:absolute;right:8px;font-family:inherit;font-size:.68rem;font-weight:600;color:var(--muted);background:#f3f5f7;border:1px solid var(--border);border-radius:6px;padding:2px 6px;pointer-events:none;line-height:1.2}.global-search-panel{position:fixed;z-index:1200;max-height:min(420px,calc(100vh - 80px));overflow:auto;padding:6px;border-radius:12px;border:1px solid var(--border);background:#fff;box-shadow:0 16px 40px #0f172a24}.global-search-status{margin:0;padding:12px 10px;font-size:.88rem}.global-search-item{width:100%;display:flex;align-items:center;gap:10px;padding:9px 10px;border:none;border-radius:8px;background:transparent;text-align:left;font:inherit;color:inherit;cursor:pointer}.global-search-item:hover,.global-search-item.is-active{background:#f3faf7}.global-search-item-icon{flex:0 0 auto;width:32px;height:32px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#fff;box-shadow:0 1px 3px #0f172a0f}.global-search-item-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.global-search-item-body strong{font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search-item-body .muted{font-size:.76rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search-item-type{flex:0 0 auto;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}@media (max-width: 1320px){.topbar--modern:not(.topbar--sidebar-shell){grid-template-columns:auto minmax(0,1fr) minmax(120px,180px) auto}.topbar--modern:not(.topbar--sidebar-shell)>.global-search--topbar{grid-column:3;max-width:180px}.topbar--modern:not(.topbar--sidebar-shell) .topbar-meta{grid-column:4}}@media (max-width: 720px){.global-search-kbd{display:none}.global-search-input{padding-right:12px}}.btn-sm{padding:6px 12px;font-size:.82rem}.live-clock{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:6px 12px;border-radius:10px;background:linear-gradient(135deg,#f3faf7,#eef1f4);border:1px solid #d4e4de}.live-clock--compact{flex-direction:row;align-items:center;gap:10px;padding:6px 12px}.live-clock-date--short{font-size:.72rem;color:var(--muted);white-space:nowrap;padding-left:10px;border-left:1px solid #d4e4de}.live-clock-time{font-size:.92rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:var(--accent)}.live-clock-date{font-size:.72rem;color:var(--muted);white-space:nowrap}.user-chip-role{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:999px;background:#e1eee9;color:var(--accent);font-size:.75rem;font-weight:600;text-transform:capitalize}.btn-ghost{background:transparent;border-color:var(--border);transition:background .18s ease,border-color .18s ease,transform .15s ease}.btn-ghost:hover{background:var(--surface);transform:translateY(-1px)}.main-content{flex:1 1 auto;min-width:0}.page-transition{min-height:100%;will-change:opacity,transform}.page-transition--enter{animation:page-enter .32s cubic-bezier(.22,1,.36,1) forwards}.page-transition--exit{animation:page-exit .12s ease forwards}@keyframes page-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes page-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-4px)}}.home-page--modern{max-width:none;width:100%;min-width:0;box-sizing:border-box}.home-hero-panel{display:flex;align-items:center;justify-content:space-between;gap:10px 14px;flex-wrap:wrap;padding:8px 12px;margin:0 0 12px;border-radius:8px;border:1px solid rgba(36,91,80,.1);background:color-mix(in srgb,var(--accent) 4%,#f8faf9);box-shadow:none;width:100%;max-width:100%;min-width:0;box-sizing:border-box;overflow:hidden}.home-hero-main{min-width:0;flex:1 1 auto;max-width:100%}.home-hero-main h1{margin:0 0 2px;font-size:clamp(.98rem,1.6vw,1.15rem);font-weight:600;letter-spacing:.02em;line-height:1.25;overflow-wrap:anywhere;word-break:break-word}.home-page--modern .home-eyebrow,.home-page--modern .home-welcome-title{text-transform:uppercase}.home-page--modern .home-eyebrow{margin:0 0 2px;font-size:.68rem;font-weight:700;letter-spacing:.1em;color:var(--accent2)}.home-page--modern .home-welcome-title{letter-spacing:.04em;margin:0 0 2px;font-size:clamp(.98rem,1.6vw,1.15rem);font-weight:600;line-height:1.25}.home-page--modern .home-lead{margin:0;font-size:.78rem;color:var(--muted);line-height:1.35}.home-main-tabs{margin:0 0 16px}.home-floor-panel{display:grid;gap:16px}.home-floor-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:12px 20px;flex-wrap:wrap}.home-floor-lead{margin:6px 0 0;max-width:46rem;line-height:1.45}.home-floor-card{margin:0}.home-floor-card-title{margin:0 0 12px;font-size:.95rem}.home-floor-hint{grid-column:1 / -1;margin:0}.home-floor-table-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.home-floor-table-head .home-floor-card-title{margin:0}.home-pareto-bars{list-style:none;margin:0;padding:0;display:grid;gap:8px}.home-pareto-row{display:grid;grid-template-columns:minmax(8rem,1.6fr) minmax(0,2fr) 2.5rem;gap:10px;align-items:center}.home-pareto-label{font-size:.82rem;line-height:1.3}.home-pareto-track{height:10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--card));overflow:hidden}.home-pareto-fill{height:100%;border-radius:inherit;background:var(--accent);min-width:0}.home-pareto-count{font-weight:700;font-variant-numeric:tabular-nums;text-align:right}@media (max-width: 720px){.home-pareto-row{grid-template-columns:1fr auto}.home-pareto-track{grid-column:1 / -1}}.home-floor-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:16px}.home-floor-multiline{white-space:pre-wrap;margin-top:4px}.pareto-workspace{display:grid;grid-template-columns:minmax(14rem,17rem) minmax(0,1fr);gap:16px;align-items:start}.pareto-filter-rail{display:grid;gap:14px;align-content:start;position:sticky;top:12px}.pareto-filter-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.pareto-filter-head .home-floor-card-title{margin:0}.pareto-filter-count{font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:999px;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--card));white-space:nowrap}.pareto-filter-count.is-idle{color:var(--muted);background:color-mix(in srgb,var(--muted) 12%,var(--card))}.pareto-filter-dates{display:grid;grid-template-columns:1fr 1fr;gap:8px}.pareto-filter-dates input{width:100%;min-width:0}.pareto-chart-card{margin:0;min-width:0}.pareto-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.pareto-chart-head .home-floor-card-title{margin:0 0 4px}.pareto-chart-total{font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.pareto-vital-few{margin-top:10px}.pareto-list-pane{display:grid;gap:12px;margin-top:16px}@media (max-width: 1024px){.pareto-workspace{grid-template-columns:1fr}.pareto-filter-rail{position:static}}@media (max-width: 640px){.pareto-filter-dates{grid-template-columns:1fr}}.ff-form{display:grid;gap:18px;max-width:34rem}.ff-form.admin-user-form{max-width:42rem}.ff-field{display:grid;gap:8px;min-width:0}.ff-field>select,.ff-field>input:not([type=checkbox]):not([type=radio]),.ff-field>textarea{width:100%;box-sizing:border-box;min-width:0;max-width:100%;min-height:var(--control-height);padding:10px 12px;border:1px solid var(--border);border-radius:6px;background:#fff;font:inherit;font-size:.95rem;line-height:1.35;color:var(--text)}.ff-field>select{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto;cursor:pointer}.ff-field>input::placeholder,.ff-field>textarea::placeholder{color:var(--muted);opacity:1}.ff-field>select:focus,.ff-field>input:not([type=checkbox]):not([type=radio]):focus,.ff-field>textarea:focus{outline:2px solid var(--accent2, #0f7b63);outline-offset:1px;border-color:var(--accent2, #0f7b63)}.ff-label{font-size:.85rem;font-weight:600}.ff-required{color:var(--danger, #c0392b);margin-left:2px}.ff-error{display:flex;align-items:center;gap:6px;font-size:.8rem;color:var(--danger, #c0392b)}.ff-invalid{border-color:var(--danger, #c0392b)!important}.ff-actions{display:flex;align-items:center;gap:12px}.ff-note{margin:0;font-size:.8rem;line-height:1.4}.home-hero-clock{flex-shrink:0}.home-toolbar{display:flex;flex-direction:column;gap:12px;margin-bottom:18px}.home-toolbar .home-search-wrap{max-width:none;flex:1 1 auto}.home-category-tabs{display:flex;flex-wrap:wrap;gap:8px}.home-category-tab{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:7px 14px;font:inherit;font-size:.84rem;font-weight:500;color:var(--muted);cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .15s ease,box-shadow .2s ease}.home-category-tab:hover{border-color:#b8d4cc;color:var(--text);transform:translateY(-1px)}.home-category-tab.is-active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 4px 12px #245b5038}.home-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:22px}.home-metric{padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:var(--card);transition:transform .2s ease,box-shadow .2s ease}.home-metric:hover{transform:translateY(-2px);box-shadow:var(--shadow-raised)}.home-metric span{display:block;font-size:.72rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.home-metric strong{display:block;margin-top:4px;font-size:1.4rem;font-variant-numeric:tabular-nums}.home-metric.is-loading strong{opacity:.4}.home-cards--modern{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:clamp(8px,1vw,12px)}@media (min-width: 1100px){.home-cards--modern.home-cards--autofit{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (min-width: 1400px){.home-cards--modern{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media (min-width: 1800px){.home-cards--modern{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}}.home-cards--modern .home-card{border-radius:10px;padding:12px 14px;min-height:56px;animation:home-card-in .4s cubic-bezier(.22,1,.36,1) backwards;animation-delay:calc(var(--card-i, 0) * 35ms);transition:transform .18s cubic-bezier(.22,1,.36,1),box-shadow .18s ease,border-color .18s ease,background .18s ease}.home-cards--modern .home-card:active{transform:scale(.985)}@keyframes home-card-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.page-transition--enter,.page-transition--exit,.home-cards--modern .home-card,.topbar-nav a,.home-category-tab,.home-metric,.btn-ghost,.topbar-more-menu--portal{animation:none!important;transition:none!important}}@media (max-width: 900px){.topbar--modern{grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:10px 16px}.topbar--modern .topbar-brand,.topbar--modern .brand{grid-column:1;grid-row:1}.topbar-meta{grid-column:2;grid-row:1;justify-self:end;margin-left:0}.topbar-nav{grid-column:1 / -1;grid-row:2;width:100%;justify-content:flex-start;order:unset}.topbar-user .btn-sm{padding:6px 10px;font-size:.78rem}.topbar--modern.topbar--sidebar-shell:not(.topbar--shopfloor){grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto}.topbar--modern.topbar--sidebar-shell:not(.topbar--shopfloor)>.global-search--topbar{grid-column:1 / -1;grid-row:2;max-width:none;width:100%;justify-self:stretch}.topbar--modern.topbar--sidebar-shell:not(.topbar--shopfloor) .topbar-meta{grid-column:3;grid-row:1}.home-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.home-hero-panel{flex-direction:column;padding:var(--space-4)}.home-hero-clock{width:100%;align-items:flex-start}.live-clock{align-items:flex-start;width:100%}.home-search-wrap{max-width:none;width:100%}.home-cards{grid-template-columns:1fr}.topbar-meta .live-clock-date--short,.topbar-user .user-chip-role{display:none}}.page-back-link{display:inline-flex;margin-bottom:8px;font-size:.9rem;font-weight:700;color:var(--accent);text-decoration:none}.page-back-link:hover{text-decoration:underline}.action-items-page{max-width:none;width:100%}.action-items-hint{margin-top:10px;font-size:.88rem}.ai-list-id{font-weight:700;font-size:.84rem;color:#3d4a56}.ai-list-priority,.ai-priority{display:inline-flex;align-items:center;padding:3px 9px;border-radius:4px;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.ai-sev--down,.ai-list-priority.ai-sev--down{background:#fde8e8;color:#b42318}.ai-sev--major,.ai-list-priority.ai-sev--major{background:#fff0e4;color:#c45a12}.ai-sev--minor,.ai-list-priority.ai-sev--minor{background:#fff8e1;color:#9a6b00}.ai-sev--fyi,.ai-list-priority.ai-sev--fyi{background:#e8eefc;color:#2f4db8}.ai-pulse{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:8px 0 16px}.ai-pulse-meter{position:relative;padding:12px 14px 14px;background:var(--card);border:1px solid var(--border);border-radius:6px;overflow:hidden}.ai-pulse-label{display:block;font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.ai-pulse-value{display:block;margin-top:2px;font-size:1.55rem;font-weight:600;line-height:1.1;letter-spacing:-.02em}.ai-pulse-bar{position:absolute;left:0;bottom:0;height:3px;max-width:100%;background:var(--accent)}.ai-pulse-meter--down .ai-pulse-bar{background:#c11f1f}.ai-pulse-meter--down .ai-pulse-value{color:#c11f1f}.ai-pulse-meter--major .ai-pulse-bar{background:#c45a12}.ai-pulse-meter--major .ai-pulse-value{color:#c45a12}.ai-pulse-meter--minor .ai-pulse-bar{background:#b8960a}.ai-pulse-meter--minor .ai-pulse-value{color:#7a6500}.ai-pulse-meter--open .ai-pulse-bar{background:var(--accent2)}.ai-rack-toolbar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:14px;padding:12px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.ai-filter-pills{display:flex;flex-wrap:wrap;gap:6px}.ai-level{border:1px solid var(--border);border-radius:4px;background:transparent;color:var(--muted);padding:7px 12px;min-height:36px;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}.ai-level.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.ai-level--down.is-active{background:#c11f1f;border-color:#c11f1f}.ai-level--major.is-active{background:#c45a12;border-color:#c45a12}.ai-level--minor.is-active{background:#9a6b00;border-color:#9a6b00}.ai-level--fyi.is-active{background:#2f4db8;border-color:#2f4db8}.ai-rack-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ai-filter-search{width:min(220px,100%);padding:8px 12px;border:1px solid var(--border);border-radius:6px;font:inherit;background:var(--card)}.ai-filter-select{padding:8px 10px;border:1px solid var(--border);border-radius:6px;font:inherit;background:var(--card)}.ai-filter-check{display:inline-flex;align-items:center;gap:6px;font-size:.88rem;color:var(--muted)}.ai-new-ticket{margin-bottom:16px;padding:16px 18px;background:var(--card);border:1px dashed var(--border);border-radius:8px}.ai-new-ticket-title{margin:0 0 12px;font-size:1rem}.ai-new-ticket-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:12px}.ai-new-ticket-span{grid-column:1 / -1}.ai-workbench{display:grid;grid-template-columns:minmax(280px,1fr) minmax(320px,1.15fr);gap:0;min-height:min(70vh,820px);border:1px solid var(--border);border-radius:10px;overflow:hidden;background:repeating-linear-gradient(-12deg,transparent,transparent 10px,rgba(26,35,48,.018) 10px,rgba(26,35,48,.018) 11px),#eef1f4}.ai-rack{display:flex;flex-direction:column;min-width:0;border-right:1px solid var(--border);background:color-mix(in srgb,var(--card) 88%,transparent)}.ai-rack-meta{display:flex;justify-content:space-between;gap:8px;padding:10px 14px;font-size:.8rem;font-weight:600;border-bottom:1px solid var(--border);background:var(--card)}.ai-ticket-list{flex:1;overflow:auto;padding:10px;display:flex;flex-direction:column;gap:8px}.ai-ticket{display:grid;grid-template-columns:6px 1fr;width:100%;text-align:left;border:1px solid var(--border);border-radius:6px;background:var(--card);padding:0;cursor:pointer;font:inherit;color:inherit;overflow:hidden;transition:border-color .15s ease,transform .15s ease}.ai-ticket:hover{border-color:#b8d4cc;transform:translate(2px)}.ai-ticket.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.ai-ticket-spine{background:#b8960a}.ai-ticket.ai-sev--down .ai-ticket-spine{background:#c11f1f}.ai-ticket.ai-sev--major .ai-ticket-spine{background:#c45a12}.ai-ticket.ai-sev--minor .ai-ticket-spine{background:#b8960a}.ai-ticket.ai-sev--fyi .ai-ticket-spine{background:#2f4db8}.ai-ticket--urgent{background:color-mix(in srgb,#c11f1f 6%,#fff)}.ai-ticket-body{display:flex;flex-direction:column;gap:6px;padding:11px 12px;border-left:1px dashed color-mix(in srgb,var(--border) 70%,transparent)}.ai-ticket-top{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.ai-ticket-top .ai-ticket-sev{text-transform:none;letter-spacing:0;font-size:.68rem}.ai-ticket-top .ai-ticket-age{margin-left:auto}.ai-ticket--quiet{opacity:.72}.ai-ticket--quiet .ai-ticket-title{font-weight:500;color:var(--muted)}.ai-ticket-id{font-size:.75rem;font-weight:700;letter-spacing:.08em;color:var(--muted)}.ai-ticket-age{font-size:.75rem;color:var(--muted)}.ai-ticket-title{font-weight:600;font-size:.98rem;line-height:1.3;color:var(--text)}.ai-ticket-flow{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:.8rem;color:var(--muted)}.ai-ticket-arrow{color:var(--accent2);font-weight:700}.ai-ticket-foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:2px}.ai-ticket-status,.ai-ticket-part{font-size:.72rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.ai-ticket-foot .status-badge{font-size:var(--fs-label);text-transform:none;letter-spacing:0}.ai-ticket-part{padding:2px 6px;border:1px solid var(--border);border-radius:3px;background:var(--surface)}.ai-rack-empty,.ai-case-empty{margin:auto}.ai-case-dock{min-width:0;background:var(--card);display:flex;flex-direction:column}.ai-case-sheet{display:flex;flex-direction:column;height:100%;min-height:0;border-left:4px solid #b8960a}.ai-case-sheet--production-down{border-left-color:#c11f1f}.ai-case-sheet--major-issue{border-left-color:#c45a12}.ai-case-sheet--minor-issue{border-left-color:#b8960a}.ai-case-sheet--fyi{border-left-color:#2f4db8}.ai-case-head{padding:18px 20px 14px;border-bottom:1px solid var(--border);background:linear-gradient(180deg,#f7faf9,#fff)}.ai-case-head-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.ai-case-id-block{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.ai-case-id{font-size:.8rem;font-weight:700;letter-spacing:.08em;color:var(--muted)}.ai-case-title{margin:8px 0 0;font-size:1.35rem;line-height:1.25;letter-spacing:-.02em}.ai-flow-track{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin-top:14px;padding:10px 12px;background:var(--surface);border-radius:6px}.ai-flow-node{min-width:0}.ai-flow-node-lbl{display:block;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.ai-flow-node strong{display:block;margin-top:2px;font-size:.92rem;overflow-wrap:anywhere}.ai-flow-node--to strong{color:var(--accent)}.ai-flow-line{width:28px;height:2px;background:linear-gradient(90deg,var(--border),var(--accent2));border-radius:2px}.ai-case-body{flex:1 1 auto;overflow:auto;padding:16px 20px 24px}.ai-case-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.ai-case-facts>div{padding:10px 12px;background:var(--surface);border-radius:6px}.ai-case-facts dt{font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.ai-case-facts dd{margin:4px 0 0;font-size:.95rem;font-weight:600}.ai-panel-select--inline{padding:6px 8px;margin-top:2px}.ai-case-actions{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px;padding:12px;background:var(--surface);border-radius:8px}.ai-panel-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:flex;justify-content:flex-end;background:#0f172a47;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ai-case-sheet--overlay{width:min(480px,100vw);height:100%;background:#fff;box-shadow:-16px 0 40px #0f172a1f;animation:side-drawer-in .15s ease-out}.ai-panel-close{width:34px;height:34px;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--muted);font-size:1.2rem;line-height:1;cursor:pointer}.ai-panel-close:hover{background:var(--surface);color:var(--text)}.ai-panel-opened{margin:10px 0 0;font-size:.82rem;color:var(--muted)}.ai-panel-error{margin-bottom:14px;padding:10px 12px;border-radius:6px;background:#fdecea;border:1px solid #f5c2c0;color:#b42318;font-size:.9rem}.ai-panel-section{margin-bottom:18px}.ai-panel-section h3{margin:0 0 10px;font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.ai-panel-description{margin:0 0 12px;color:#43505c;line-height:1.45}.ai-panel-label{display:block;margin-bottom:7px;font-size:.72rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.ai-panel-select,.ai-panel-textarea{width:100%;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);font:inherit;padding:10px 12px}.ai-panel-select:focus,.ai-panel-textarea:focus{outline:none;border-color:var(--accent2);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent2) 22%,transparent)}.ai-panel-transfer{display:grid;grid-template-columns:1fr auto;gap:8px}.ai-panel-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:6px;border:1px solid transparent;padding:10px 14px;min-height:40px;font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.ai-panel-btn:disabled{opacity:.55;cursor:not-allowed}.ai-panel-btn--transfer{background:var(--accent);border-color:var(--accent);color:#fff;white-space:nowrap}.ai-panel-btn--transfer:hover:not(:disabled){background:#1e4d44}.ai-panel-btn--email{background:#fff;border-color:var(--border);color:var(--text)}.ai-panel-btn--email:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.ai-panel-btn--complete{background:var(--accent2);border-color:var(--accent2);color:#fff}.ai-panel-btn--complete:hover:not(:disabled){background:#0c6552}.ai-panel-btn--dismiss{background:transparent;border-color:var(--border);color:#43505c}.ai-panel-btn--dismiss:hover:not(:disabled){background:#fff}.ai-panel-btn--reopen{background:#fff8e1;border-color:#e6c84d;color:#9a6b00}.ai-attach-drop{display:flex;flex-direction:column;gap:8px;padding:14px;border:1px dashed var(--border);border-radius:6px;background:var(--surface);font-size:.88rem;color:var(--muted);cursor:pointer}.ai-attach-drop input{font:inherit}.ai-attach-list{margin:10px 0 0;padding-left:1.1rem}.ai-note-form{display:flex;flex-direction:column;gap:8px}.ai-panel-activity{display:flex;flex-direction:column;margin-top:16px}.ai-panel-activity-row{display:flex;gap:11px;padding-bottom:15px}.ai-panel-activity-dot{width:8px;height:8px;margin-top:6px;border-radius:50%;background:var(--accent2);flex:0 0 auto}.ai-panel-activity-text{font-size:.9rem;color:#43505c;line-height:1.4}.ai-panel-activity-meta{margin-top:2px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;color:var(--muted)}.ai-panel-note-empty{margin:0 0 10px;color:var(--muted);font-size:.88rem}@media (max-width: 960px){.ai-pulse{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-workbench{grid-template-columns:1fr;min-height:50vh}.ai-rack{border-right:0}.ai-case-dock{display:none}}@media (max-width: 640px){.ai-case-facts,.ai-panel-transfer{grid-template-columns:1fr}.ai-case-actions{flex-direction:column}.ai-case-actions .ai-panel-btn{width:100%}}.change-management-page{max-width:none;width:100%}.cm-head-actions{display:flex;flex-wrap:wrap;gap:10px}.cm-stat-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.cm-stat{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:11px 14px;box-shadow:var(--shadow);border-left:3px solid var(--accent)}.cm-stat span{display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;color:var(--muted)}.cm-stat strong{display:block;margin-top:4px;font-size:1.5rem}.cm-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px}.cm-tabs{display:flex;gap:6px}.cm-tab{border:1px solid var(--border);background:var(--card);border-radius:8px;padding:8px 14px;font:inherit;font-weight:700;cursor:pointer}.cm-tab.is-active{background:#e1eee9;border-color:var(--accent);color:var(--accent)}.cm-tab:disabled{opacity:.45;cursor:not-allowed}.cm-legacy-panel{margin-top:4px}.cm-legacy-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;align-items:flex-start}.cm-legacy-meta{display:flex;flex-wrap:wrap;gap:4px;font-size:.85rem}.cm-legacy-path{font-size:.75rem;word-break:break-all}.cm-legacy-banner{background:#f4f8f6;border:1px solid var(--border);border-radius:8px;padding:10px 12px}.cm-approval-matrix ul{margin:6px 0 0;padding-left:1.1rem}[data-theme=dark] .cm-legacy-banner{background:#ffffff0a}.cm-search{flex:1 1 200px;max-width:280px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;font:inherit}.cm-filter-check{display:inline-flex;align-items:center;gap:6px;font-size:.88rem;color:var(--muted)}.cm-row{cursor:pointer}.cm-row:hover td{background:#f5faf8}.cm-row.is-selected td{background:#eaf5f1}.deviations-office .cm-row--quiet td{color:var(--muted);background:color-mix(in srgb,var(--surface) 80%,transparent)}.deviations-office .cm-row--exception td{background:color-mix(in srgb,#f59e0b 6%,#fff)}.deviations-office .cm-row--critical td{background:color-mix(in srgb,#c11f1f 7%,#fff)}.deviations-office .cm-row--exception.is-selected td,.deviations-office .cm-row--critical.is-selected td{background:#eaf5f1}.cm-panel-chip{margin-left:6px;vertical-align:middle}.cm-type{display:inline-flex;padding:3px 8px;border-radius:999px;font-size:.72rem;font-weight:800;text-transform:uppercase}.cm-type--deviation{background:#f0c40026;color:#7a6500}.cm-type--change{background:#2c43d61a;color:#2233bd}.cm-status-pill{display:inline-flex;padding:3px 8px;border-radius:6px;font-size:.78rem;font-weight:700;background:var(--surface);color:var(--text)}.cm-status-pill--table{font-size:.72rem}.cm-panel-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:flex;justify-content:flex-end;background:#0f172a47;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.cm-panel{width:min(480px,96vw);height:100%;background:#fff;border-left:1px solid var(--border);box-shadow:-16px 0 40px #0000001f;display:flex;flex-direction:column;animation:side-drawer-in .15s ease-out}.cm-panel-head{padding:18px 20px;border-bottom:1px solid var(--border)}.cm-panel-head-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.cm-panel-id{font-weight:800;margin-right:8px}.cm-panel-head h2{margin:10px 0 0;font-size:1.2rem}.cm-panel-meta{margin:6px 0 0;font-size:.85rem}.cm-panel-close{width:32px;height:32px;border:1px solid var(--border);border-radius:8px;background:#f8fafb;cursor:pointer}.cm-panel-body{flex:1 1 auto;overflow:auto;padding:16px 20px 24px}.cm-section{margin-bottom:18px}.cm-section h3{margin:0 0 10px;font-size:.78rem;font-weight:800;text-transform:uppercase;color:var(--muted)}.cm-workflow-steps{list-style:none;margin:0;padding:0}.cm-workflow-steps li{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:.9rem;color:var(--muted)}.cm-workflow-steps li.is-done{color:var(--accent);font-weight:600}.cm-workflow-steps li.is-current{color:var(--text);font-weight:800}.cm-workflow-dot{width:10px;height:10px;border-radius:50%;background:var(--border);flex:0 0 auto}.cm-workflow-steps li.is-done .cm-workflow-dot{background:var(--accent)}.cm-workflow-steps li.is-current .cm-workflow-dot{background:var(--accent-warm);box-shadow:0 0 0 3px #d86f1f33}.cm-workflow-steps--inline{display:flex;flex-wrap:wrap;gap:8px 16px}.cm-workflow-steps--inline li{padding:4px 0}.cm-workflow-card{margin-bottom:16px}.cm-sibling-link{margin-top:8px;font-size:.9rem}.cm-create-lead{margin:0 0 14px;max-width:42rem;line-height:1.45}.cm-list-status{margin:8px 0 16px;padding:28px 16px;text-align:center;border:1px dashed var(--border);border-radius:10px;background:var(--surface);color:var(--muted);font-size:.95rem}.cm-empty{margin:8px 0 16px;border:1px solid var(--border);border-radius:10px;background:var(--card)}.cm-table-hint{margin:10px 0 0;font-size:.88rem}.cm-stat--highlight strong{color:var(--accent-warm)}.cm-page--deviation .cm-stat--highlight strong{color:#b45309}.cm-page--change .cm-stat--highlight strong{color:var(--accent)}.cm-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.cm-meta-grid>div{border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:#fbfcfd}.cm-meta-grid span{display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;color:var(--muted)}.cm-meta-grid strong{display:block;margin-top:4px}.cm-comment{width:100%;border:1px solid var(--border);border-radius:8px;padding:10px 12px;font:inherit;margin-bottom:10px}.cm-actions{display:flex;flex-wrap:wrap;gap:8px}.cm-activity-list{display:flex;flex-direction:column;gap:10px;margin-bottom:12px;max-height:200px;overflow:auto}.cm-activity-row{border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:#fbfcfd}.cm-activity-row p{margin:6px 0 0}.cm-activity-row small{display:block;margin-top:4px}.warranty-page .wc-toolbar{margin-bottom:14px;gap:12px;flex-wrap:wrap}.wc-search{flex:1 1 220px;min-width:180px;padding:8px 12px;border:1px solid var(--border);border-radius:8px;font:inherit}.wc-toggle{display:inline-flex;align-items:center;gap:8px;font-size:.92rem;color:var(--muted)}.wc-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.9fr);gap:14px;align-items:start}.wc-table tbody tr{cursor:pointer}.wc-table tbody tr.is-selected{background:#f0f7f4}.wc-status{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.78rem;font-weight:600}.wc-status--new{background:#e8eef5;color:#1a4d8f}.wc-status--active{background:#fde8d8;color:#a04a12}.wc-status--done{background:#e1eee9;color:var(--accent)}.wc-status--denied{background:#fde8e8;color:#9b2c2c}.wc-detail{position:sticky;top:12px}.wc-detail--empty{display:flex;align-items:center;justify-content:center;min-height:200px}.wc-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.wc-detail-head h2{margin:4px 0 0;font-size:1.15rem}.wc-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.wc-detail-grid label,.wc-form label{display:flex;flex-direction:column;gap:4px;font-size:.88rem}.wc-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 14px}.wc-meta dt{font-size:.78rem;color:var(--muted);margin:0}.wc-meta dd{margin:2px 0 0}.wc-section h3{margin:0 0 8px;font-size:.95rem}.wc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.wc-form{width:min(560px,92vw);max-height:90vh;overflow:auto}@media (max-width: 900px){.wc-layout{grid-template-columns:1fr}.wc-detail{position:static}}@media (max-width: 800px){.cm-stat-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.cm-panel{width:100vw}}.compass-fab{position:fixed;right:22px;bottom:22px;z-index:1300;display:inline-flex;align-items:center;gap:8px;padding:0 16px 0 12px;height:52px;border:0;border-radius:999px;background:linear-gradient(135deg,#1a4f45,#0f7b63 55%,#245b50);color:#fff;font-size:.86rem;font-weight:500;letter-spacing:.01em;box-shadow:0 4px 14px #0f7b6359,0 0 0 1px #ffffff1f inset;cursor:pointer;transition:transform .2s cubic-bezier(.22,1,.36,1),box-shadow .2s ease}.compass-fab:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 28px #0f7b6366,0 0 0 1px #ffffff26 inset}.compass-fab-label{font-weight:400}.compass-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1400;background:#0c121866;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.compass-panel{position:fixed;right:0;top:0;bottom:0;width:min(440px,100vw);display:flex;flex-direction:column;background:#f8faf9;border-left:1px solid var(--border);box-shadow:-16px 0 48px #11182724;animation:compass-slide-in .28s cubic-bezier(.22,1,.36,1)}@keyframes compass-slide-in{0%{transform:translate(100%);opacity:.7}to{transform:translate(0);opacity:1}}.compass-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 16px;background:linear-gradient(145deg,#1a4f45,#245b50 40%,#2d6b5e);color:#fff}.compass-head-brand{display:flex;align-items:center;gap:14px}.compass-head-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;background:#ffffff1f;border:1px solid rgba(255,255,255,.18);color:#fff}.compass-head h2{margin:0;font-size:1.25rem;font-weight:400;letter-spacing:-.02em;color:#fff}.compass-tagline{margin:4px 0 0;font-size:.78rem;font-weight:400;color:#ffffffd1;max-width:26ch;line-height:1.4}.compass-head-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.compass-icon-btn{border:0;background:#ffffff1f;color:#fff;width:36px;height:36px;border-radius:10px;font-size:1.35rem;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,opacity .15s ease}.compass-icon-btn:hover:not(:disabled){background:#ffffff38}.compass-icon-btn:disabled{opacity:.45;cursor:not-allowed}.compass-status-bar{display:flex;align-items:center;gap:6px;padding:8px 20px;font-size:.72rem;font-weight:400;color:var(--muted);background:#fff;border-bottom:1px solid var(--border)}.compass-status-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 2px #22c55e40;flex-shrink:0}.compass-status-page{opacity:.85}.compass-disclaimer{display:flex;align-items:flex-start;gap:8px;margin:0;padding:10px 18px;background:#fff8ed;border-bottom:1px solid #f0dfc4;color:#7c4a12;font-size:.72rem;font-weight:400;line-height:1.45}.compass-disclaimer-icon{flex-shrink:0;font-size:.82rem;line-height:1.35}.compass-ai-tag{margin:6px 0 0;font-size:.65rem;font-weight:500;letter-spacing:.03em;text-transform:uppercase;color:#9a6b2e}.compass-body{flex:1;overflow-y:auto;padding:16px 18px 8px;display:flex;flex-direction:column;gap:16px}.compass-prompts-label{margin:0 0 10px;font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.compass-prompts-grid{display:flex;flex-direction:column;gap:8px}.compass-prompt-chip{text-align:left;padding:10px 14px;border:1px solid #d4e4de;border-radius:12px;background:#fff;color:var(--text);font:inherit;font-size:.84rem;font-weight:400;line-height:1.4;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.compass-prompt-chip:hover:not(:disabled){border-color:var(--accent);background:#f3faf7;transform:translate(2px)}.compass-prompt-chip:disabled{opacity:.6;cursor:wait}.compass-messages{display:flex;flex-direction:column;gap:14px}.compass-msg{display:flex;gap:10px;align-items:flex-start;max-width:100%}.compass-msg--user{flex-direction:row-reverse}.compass-avatar{flex-shrink:0;width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.62rem;font-weight:500}.compass-avatar--bot{background:linear-gradient(135deg,#e1eee9,#d4e4de);color:var(--accent);border:1px solid #c5ddd4}.compass-avatar--you{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.compass-msg-content{flex:1;min-width:0}.compass-msg--user .compass-msg-content{display:flex;flex-direction:column;align-items:flex-end}.compass-bubble{padding:11px 14px;border-radius:14px;font-size:.88rem;font-weight:400;line-height:1.55;white-space:pre-wrap;max-width:100%}.compass-msg--assistant .compass-bubble{background:#fff;border:1px solid var(--border);border-bottom-left-radius:4px;box-shadow:0 1px 2px #1118270a}.compass-msg--user .compass-bubble{background:linear-gradient(135deg,#e1eee9,#d8ebe3);border:1px solid #c5ddd4;border-bottom-right-radius:4px;color:var(--text)}.compass-bubble--typing{display:flex;align-items:center;gap:5px;padding:14px 18px}.compass-typing-dot{width:7px;height:7px;border-radius:50%;background:var(--accent);opacity:.5;animation:compass-typing 1.2s ease-in-out infinite}.compass-typing-dot:nth-child(2){animation-delay:.15s}.compass-typing-dot:nth-child(3){animation-delay:.3s}@keyframes compass-typing{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}.compass-sources{margin:6px 0 0;font-size:.68rem;font-weight:400;color:var(--muted)}.compass-feedback{display:flex;align-items:center;gap:6px;margin-top:8px}.compass-feedback-label{font-size:.68rem;font-weight:400;color:var(--muted)}.compass-feedback-btn{border:1px solid var(--border);background:#fff;border-radius:8px;padding:2px 8px;font-size:.85rem;cursor:pointer;opacity:.75;transition:opacity .15s ease,border-color .15s ease}.compass-feedback-btn:hover:not(:disabled){opacity:1;border-color:var(--accent)}.compass-feedback-btn.is-active{opacity:1;border-color:var(--accent);background:#e8f3ef}.compass-feedback-btn:disabled{cursor:default}.compass-error{margin:0;padding:10px 12px;border-radius:10px;background:#fef2f2;border:1px solid #fecaca;color:var(--danger);font-size:.84rem}.compass-foot{padding:14px 18px 18px;background:#fff;border-top:1px solid var(--border)}.compass-input-wrap{display:flex;gap:8px;align-items:flex-end}.compass-input{flex:1;min-height:48px;max-height:120px;resize:none;border:1px solid var(--border);border-radius:14px;padding:12px 14px;font:inherit;font-size:.88rem;font-weight:400;background:#fafbfb;transition:border-color .15s ease,box-shadow .15s ease}.compass-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #245b501f;background:#fff}.compass-send{flex-shrink:0;width:48px;height:48px;border:0;border-radius:14px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-size:1.25rem;font-weight:400;cursor:pointer;transition:opacity .15s ease,transform .15s ease}.compass-send:hover:not(:disabled){transform:scale(1.05)}.compass-send:disabled{opacity:.45;cursor:not-allowed}.compass-footnote{margin:10px 0 0;font-size:.68rem;font-weight:400;color:var(--muted);text-align:center}@media (max-width: 480px){.compass-fab-label{display:none}.compass-fab{width:52px;padding:0;justify-content:center}.compass-panel{width:100vw}}@media (prefers-reduced-motion: reduce){.compass-panel,.compass-fab,.compass-prompt-chip,.compass-typing-dot{animation:none!important;transition:none!important}}.ts-hub-head,.ts-editor-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;flex-wrap:wrap}.ts-hub-actions,.ts-editor-actions{display:flex;flex-wrap:wrap;gap:8px}.ts-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:20px}.ts-kpi-card{padding:16px;border-radius:12px;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow)}.ts-kpi-card strong{display:block;font-size:1.5rem;color:var(--accent);line-height:1.2}.ts-kpi-card span{font-size:.78rem;color:var(--muted)}.ts-filter-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;align-items:center}.ts-filter-bar input,.ts-filter-bar select{flex:1 1 180px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font:inherit}.ts-project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.ts-project-card{text-decoration:none;color:inherit;transition:box-shadow .15s ease,transform .15s ease}.ts-project-card:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.ts-project-card h3{margin:8px 0 6px;font-size:1.05rem}.ts-project-card-top{display:flex;justify-content:space-between;gap:8px}.ts-status{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:3px 8px;border-radius:6px;background:#eef2f1;color:var(--muted)}.ts-status--in_progress{background:#e8f3ef;color:var(--accent)}.ts-status--complete{background:#dcfce7;color:#166534}.ts-type{font-size:.72rem;color:var(--muted);text-transform:capitalize}.ts-project-meta,.ts-project-foot{font-size:.82rem;margin:0}.ts-empty{grid-column:1 / -1;text-align:center;padding:32px 24px}.ts-editor-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:16px;align-items:start}.ts-steps-panel h2,.ts-details-grid h2,.ts-timing-panel h2{margin-top:0;font-size:1rem}.ts-add-step{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;margin-bottom:14px}.ts-add-step input,.ts-add-step select{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font:inherit}.ts-step-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.ts-step-list li{display:flex;gap:4px;align-items:stretch}.ts-step-item{flex:1;display:flex;align-items:center;gap:8px;text-align:left;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:#fafbfb;cursor:pointer;font:inherit}.ts-step-item.is-active{border-color:var(--accent);background:#e8f3ef}.ts-step-num{font-size:.75rem;font-weight:600;color:var(--accent);min-width:1.2em}.ts-step-name{flex:1;font-size:.88rem}.ts-step-time{font-size:.75rem}.ts-step-reorder{display:flex;flex-direction:column;gap:2px}.ts-main-panel{display:flex;flex-direction:column;gap:16px}.ts-form-grid,.ts-obs-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.ts-form-grid label,.ts-obs-meta label{display:flex;flex-direction:column;gap:4px;font-size:.82rem}.ts-form-grid input,.ts-form-grid select,.ts-form-grid textarea,.ts-obs-meta input,.ts-obs-meta select{font:inherit;padding:8px 10px;border:1px solid var(--border);border-radius:8px}.ts-span-2{grid-column:span 2}.ts-back{display:inline-block;margin-bottom:8px;font-size:.85rem;color:var(--accent);text-decoration:none}.ts-empty-step{padding:40px 24px;text-align:center}.ts-obs-table{margin-top:16px}.ts-stopwatch{margin:16px 0;padding:20px;border:1px solid var(--border);border-radius:14px;background:linear-gradient(180deg,#f9fbfa,#eef2f0)}.ts-stopwatch--compact{padding:14px}.ts-stopwatch-display{font-size:2.5rem;font-weight:600;letter-spacing:.03em;color:var(--accent);font-variant-numeric:tabular-nums}.ts-stopwatch-meta{margin:4px 0 14px;font-size:.82rem}.ts-stopwatch-actions{display:flex;flex-wrap:wrap;gap:8px}.ts-laps{margin:14px 0 0;padding:0;list-style:none;font-size:.8rem;color:var(--muted)}.ts-laps li{padding:4px 0;border-top:1px dashed var(--border)}@media (max-width: 960px){.ts-editor-layout,.ts-add-step{grid-template-columns:1fr}}.coating-page{max-width:none;width:100%}.coating-flash{margin:0 0 14px;padding:10px 14px;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));background:#f3faf7;color:var(--text);font-size:.9rem}.coating-flash.is-error{background:#fff5f5;border-color:#f5c2c0;color:var(--danger)}.coating-panel{margin-bottom:16px}.coating-section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.coating-section-title h2{margin:0;font-size:1.05rem;font-weight:600;letter-spacing:-.01em}.coating-toolbar{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;margin-bottom:14px}.coating-toolbar>.btn{flex:0 0 auto;position:static;margin:0;width:auto}.coating-paste summary{cursor:pointer;font-weight:600;color:var(--text)}.coating-paste-grid{display:grid;grid-template-columns:1fr minmax(180px,240px);gap:14px;margin-top:12px}.coating-paste-grid textarea{width:100%;min-height:140px;border:1px solid var(--border);border-radius:8px;padding:10px 12px;font:inherit;background:var(--card);resize:vertical}.coating-paste-grid textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #245b5024}.coating-paste-actions{display:flex;flex-direction:column;gap:8px}.coating-hint{font-size:.8rem;margin:4px 0 0;line-height:1.45}.coating-part-mode{margin:10px 0 12px;padding:10px 12px;border:1px solid var(--border);border-radius:6px}.coating-part-mode legend{padding:0 4px;font-size:.85rem;font-weight:600}.coating-radio{display:flex;align-items:flex-start;gap:8px;margin:6px 0;font-size:.85rem;line-height:1.4;cursor:pointer}.coating-radio input{margin-top:3px;flex-shrink:0}.coating-order{margin-bottom:16px}.coating-order-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.coating-order-title{margin:2px 0 0;font-size:1.15rem;font-weight:600;letter-spacing:-.01em}.coating-order-actions{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.coating-grid{display:grid;grid-template-columns:140px 1.4fr minmax(180px,1.2fr) 120px;gap:12px;margin-bottom:14px}.coating-grid--bard{grid-template-columns:120px 1.2fr minmax(200px,1.4fr) minmax(140px,.9fr) 100px}.coating-grid label{display:flex;flex-direction:column;gap:5px;font-size:.78rem;font-weight:700;color:var(--muted)}.coating-field-hint{font-weight:400;font-size:.72rem;color:var(--muted);line-height:1.3}.coating-grid input,.coating-grid select,.coating-table input,.coating-table select{width:100%;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font:inherit;font-size:.9rem;font-weight:400;color:var(--text);background:var(--card)}.coating-grid input[readonly],.coating-table input[readonly],.coating-table select:disabled{background:var(--surface);color:var(--muted)}.coating-table{margin-top:4px}.coating-subhead{margin:18px 0 8px;font-size:.95rem;font-weight:600}.coating-badge{border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;display:inline-flex;align-items:center}.coating-badge.ok{background:#e6f6ee;color:#0f7b63}.coating-badge.warn{background:#fdf1e3;color:#b26a00}.coating-counts{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.coating-count-pill{background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:6px 12px;font-size:.78rem;font-weight:600;color:var(--text)}.coating-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.coating-tab.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.coating-preview-box{overflow:auto;max-height:430px;border:1px solid var(--border);border-radius:10px;background:#fff}.coating-preview-box .coating-table{min-width:900px;margin:0}.coating-preview-error{padding:14px 16px;color:var(--danger);font-weight:600}.coating-editor-wrap{max-height:320px;overflow:auto;border:1px solid var(--border);border-radius:10px;margin-bottom:10px;background:#fff}.coating-editor h3{margin:16px 0 8px;font-size:.92rem;font-weight:600}.coating-page .qty-yellow{background:#fff8e1!important}.coating-page .qty-red{background:#ffe8e6!important}@media (max-width: 900px){.coating-grid{grid-template-columns:1fr 1fr}.coating-paste-grid{grid-template-columns:1fr}}.coating-main-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.coating-main-tab{border:1px solid var(--border);background:var(--card);border-radius:999px;padding:10px 18px;min-height:var(--touch-min);font:inherit;font-size:.9rem;font-weight:600;color:var(--muted);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.coating-main-tab:hover{color:var(--text);border-color:#b8d4cc}.coating-main-tab.is-active{background:var(--accent);border-color:var(--accent);color:#fff}.coating-est-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.9fr);gap:16px;margin-bottom:0}.coating-est-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.coating-est-grid--rates{grid-template-columns:repeat(2,minmax(0,1fr))}.coating-est-settings{display:grid;gap:18px;margin-top:12px}.coating-est-group h3{margin:0 0 10px;font-size:.82rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.coating-est-grid label,.coating-est-span{display:flex;flex-direction:column;gap:5px;min-width:0;overflow:visible;white-space:normal;font-size:.78rem;font-weight:700;color:var(--muted)}.coating-est-span{grid-column:1 / -1}.coating-est-grid input,.coating-est-grid select,.coating-est-grid textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:8px 10px;font:inherit;font-size:.9rem;font-weight:400;color:var(--text);background:var(--card)}.coating-est-summary{margin:0 0 14px;display:grid;gap:10px}.coating-est-summary>div{display:grid;grid-template-columns:120px 1fr;gap:8px;align-items:baseline}.coating-est-summary dt{margin:0;font-size:.78rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.coating-est-summary dd{margin:0;font-size:.95rem}.coating-est-total{padding-top:10px;border-top:1px solid var(--border)}.coating-est-total dd{font-size:1.2rem;font-weight:700;color:var(--accent)}@media (max-width: 960px){.coating-est-layout,.coating-est-grid--rates{grid-template-columns:1fr}}.coating-help{margin:12px 0 0;padding:10px 12px;border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 7%,transparent);font-size:.86rem;color:var(--muted)}.coating-check{justify-content:center;flex-direction:row!important;align-items:center}.coating-check input{width:auto;margin-right:8px}.coating-est-grid small{font-weight:400;color:var(--muted)}.coating-table .btn{padding:4px 10px;font-size:.8rem}.coating-est-settings .coating-help{margin-top:0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);text-align:center;padding:var(--space-8) var(--space-4);min-height:160px}.empty-state-icon{color:var(--muted);opacity:.7}.empty-state-title{margin:0;font-size:1.05rem;font-weight:var(--font-weight-strong);color:var(--text)}.empty-state-desc{margin:0;max-width:28rem;line-height:1.45}.empty-state-action{margin-top:var(--space-2);min-height:var(--touch-min);display:inline-flex;align-items:center;justify-content:center;padding-left:18px;padding-right:18px}.app-breadcrumbs{margin:0 0 10px;padding:6px 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 5%,#f6f9f8);border:1px solid color-mix(in srgb,var(--accent) 12%,var(--border));width:fit-content;max-width:100%}.app-breadcrumbs-list{display:flex;flex-wrap:wrap;align-items:center;gap:2px 0;list-style:none;margin:0;padding:0;font-size:.8rem;color:var(--muted)}.app-breadcrumbs-item{display:inline-flex;align-items:center;gap:2px;min-width:0}.app-breadcrumbs-item:not(:last-child):after{content:none}.app-breadcrumbs-sep{display:inline-flex;align-items:center;color:#9aa3ad;margin:0 2px}.app-breadcrumbs-item a{color:var(--accent);text-decoration:none;font-weight:600;padding:2px 4px;border-radius:4px}.app-breadcrumbs-item a:hover{background:color-mix(in srgb,var(--accent) 10%,transparent);text-decoration:none}.app-breadcrumbs-item [aria-current=page]{color:var(--text);font-weight:var(--font-weight-strong);padding:2px 4px}.skeleton-block{border-radius:10px;background:linear-gradient(90deg,#e8ecf0,#f4f6f8,#e8ecf0);background-size:200% 100%;animation:shopfloor-skeleton 1.2s ease-in-out infinite}.shopfloor-touch-btn{min-height:var(--touch-min);min-width:var(--touch-min);padding-left:16px;padding-right:16px}.shopfloor-sidebar-scan-actions .shopfloor-touch-btn{min-height:var(--touch-min);min-width:var(--touch-min)}.config-label-pick.shopfloor-touch-btn{width:100%;text-align:left;justify-content:flex-start;min-height:var(--touch-min)}.shopfloor-scan-wi-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}.shopfloor-scan-wi-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.shopfloor-tools-fields input,.shopfloor-tools-fields select{min-height:var(--touch-min)}.shopfloor-labels-printer-line{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.coating-toolbar--primary{gap:10px}.coating-toolbar-more{position:relative}.coating-toolbar-more>summary{list-style:none;cursor:pointer}.coating-toolbar-more>summary::-webkit-details-marker{display:none}.coating-toolbar-more-menu{position:absolute;z-index:20;top:calc(100% + 6px);left:0;display:flex;flex-direction:column;gap:6px;min-width:200px;padding:10px;background:var(--card);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-raised)}.coating-est-settings-sticky{position:sticky;bottom:0;z-index:5;margin-top:var(--space-4);padding:12px 14px;background:color-mix(in srgb,var(--card) 92%,var(--accent));border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-raised)}.coating-est-sticky-hint{font-size:.82rem}.layout.layout--shopfloor{height:100dvh;max-height:100dvh;overflow:hidden}.layout.layout--shopfloor>.topbar{flex-shrink:0}.layout.layout--shopfloor>main,.layout.layout--shopfloor>main.main-content--modern,.layout.layout--shopfloor .main-content--modern{padding:0;margin:0;flex:1 1 auto;min-height:0;overflow:hidden;display:flex;flex-direction:column}.layout.layout--with-sidebar{height:100dvh;max-height:100dvh;overflow:hidden}.layout.layout--with-sidebar>.topbar{flex-shrink:0}.layout.layout--with-sidebar>.app-shell{display:flex;flex-direction:row;align-items:stretch;gap:0;margin:0;padding:0;flex:1 1 auto;width:100%;min-width:0;min-height:0;overflow:hidden;box-sizing:border-box}.layout.layout--with-sidebar>.app-shell>.app-sidebar{flex:0 0 var(--shell-sidebar-w, var(--shopfloor-sidebar-w));width:var(--shell-sidebar-w, var(--shopfloor-sidebar-w));min-width:var(--shell-sidebar-w, var(--shopfloor-sidebar-w));max-width:var(--shell-sidebar-w, var(--shopfloor-sidebar-w));position:relative;align-self:stretch;min-height:0;z-index:2;transition:width .2s ease,min-width .2s ease,max-width .2s ease,flex-basis .2s ease,padding .2s ease}.layout.layout--with-sidebar>.app-shell>.app-shell-main,.layout--with-sidebar .app-shell-main{flex:1 1 0%;width:auto;max-width:100%;min-width:0;padding:var(--space-4) var(--page-pad-x) var(--space-6);box-sizing:border-box;position:relative;z-index:1;overflow-x:hidden;overflow-y:auto}.layout.layout--with-sidebar>.app-shell>.app-shell-main.main-content--modern:has(.editor-shell:not(.editor-shopfloor-embed)),.layout.layout--with-sidebar>.app-shell>.app-shell-main:has(.editor-shell:not(.editor-shopfloor-embed)),.layout--with-sidebar .app-shell-main.main-content--modern:has(.editor-shell:not(.editor-shopfloor-embed)),.layout--with-sidebar .app-shell-main:has(.editor-shell:not(.editor-shopfloor-embed)){flex:1 1 0%;min-height:0;display:flex;flex-direction:column;overflow:hidden;overflow-y:hidden;padding:var(--space-1);padding-bottom:var(--space-1)}.layout.layout--with-sidebar>.app-shell>.app-shell-main:has(.editor-shell:not(.editor-shopfloor-embed)) .page-transition,.layout--with-sidebar .app-shell-main:has(.editor-shell:not(.editor-shopfloor-embed)) .page-transition{flex:1 1 0%;min-height:0;height:100%;display:flex;flex-direction:column;overflow:hidden}.topbar--editor-compact{padding:4px 14px;gap:6px 10px;min-height:44px;box-shadow:0 1px #1118270a}.topbar--editor-compact .topbar-logo{width:42px}.topbar--editor-compact .topbar-brand,.topbar--editor-compact .brand{gap:8px}.topbar--editor-compact .topbar-brand span,.topbar--editor-compact .brand span{font-size:.92rem;line-height:1.15}.topbar--editor-compact .topbar-sidebar-toggle{min-height:30px;padding:3px 8px;font-size:.78rem;gap:4px;border-radius:6px}.topbar--editor-compact .topbar-sidebar-toggle svg{width:15px;height:15px}.topbar--editor-compact .global-search--topbar .global-search-input{min-height:28px;padding:2px 46px 2px 26px;font-size:.76rem;border-radius:6px}.topbar--editor-compact .global-search--topbar .global-search-icon{left:8px;width:12px;height:12px}.topbar--editor-compact .global-search--topbar .global-search-kbd{font-size:.58rem;padding:0 4px}.topbar--editor-compact .topbar-meta{gap:8px}.topbar--editor-compact .topbar-user{gap:6px}.topbar--editor-compact .user-chip{padding:2px 8px;font-size:.76rem}.topbar--editor-compact .user-chip-role{margin-left:4px;padding:0 5px;font-size:.68rem}.topbar--editor-compact .topbar-user .btn-sm{padding:2px 8px;font-size:.76rem;min-height:28px;line-height:1.2}.topbar--editor-compact .topbar-nav a,.topbar--editor-compact .topbar-more-btn{padding:4px 8px;font-size:.78rem}.topbar--sidebar-shell:not(.topbar--shopfloor){grid-template-columns:auto 1fr minmax(140px,200px) auto;gap:10px 12px}.topbar--sidebar-shell:not(.topbar--shopfloor)>.global-search--topbar{grid-column:3}.topbar--sidebar-shell:not(.topbar--shopfloor) .topbar-meta{grid-column:4;justify-self:end}.topbar-sidebar-toggle{display:inline-flex;align-items:center;gap:6px;min-height:var(--touch-min, 40px);padding:8px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface, #fff);color:var(--accent);font:inherit;font-size:.86rem;font-weight:var(--font-weight-ui, 500);cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.topbar-sidebar-toggle:hover{background:#e1eee9;border-color:#c5ddd4}.topbar-sidebar-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.topbar-sidebar-toggle[aria-expanded=false]{background:#e1eee9;border-color:#c5ddd4}.topbar-sidebar-toggle-label{line-height:1}.topbar--shopfloor{grid-template-columns:auto 1fr auto minmax(140px,200px) auto;gap:10px 12px}.topbar--shopfloor .shopfloor-topbar-slot{grid-column:3}.topbar--shopfloor>.global-search--topbar{grid-column:4;max-width:200px}.topbar--shopfloor .topbar-meta{grid-column:5}@media (max-width: 1320px){.topbar--shopfloor{grid-template-columns:auto 1fr minmax(140px,200px) auto}.topbar--shopfloor .shopfloor-topbar-slot{grid-column:2;grid-row:1;justify-self:end;max-width:min(280px,36vw)}.topbar--shopfloor>.global-search--topbar{grid-column:3;grid-row:1}.topbar--shopfloor .topbar-meta{grid-column:4;grid-row:1}}@media (max-width: 780px){.topbar--shopfloor{grid-template-columns:auto 1fr}.topbar--shopfloor .shopfloor-topbar-slot{display:none}.topbar--shopfloor>.global-search--topbar{grid-column:1 / -1;grid-row:2;max-width:none;justify-self:stretch}.topbar--shopfloor .topbar-meta{grid-column:2;grid-row:1}}@media (prefers-reduced-motion: reduce){.skeleton-block,.shopfloor-wi-skeleton{animation:none}}.qc-msg{margin:0 0 12px;padding:8px 12px;border-radius:8px;background:var(--accent-tint);color:var(--text)}.qc-filters{margin-bottom:var(--space-3);padding:var(--space-3)}.qc-filter-grid{--form-grid-cols: 2;gap:16px}.qc-filter-grid .ff-field{margin:0}.qc-layout{display:grid;grid-template-columns:minmax(420px,1.2fr) minmax(400px,1fr);gap:var(--space-3);align-items:start}.qc-detail{order:1;position:sticky;top:12px}.qc-list-card{order:2;padding:12px 14px;overflow-x:auto}.qc-list-card .data-table{margin:0}.qc-table{table-layout:auto;width:100%;min-width:520px;font-size:.88rem;border-collapse:separate;border-spacing:0}.qc-table th,.qc-table td{white-space:nowrap;padding:7px 10px;vertical-align:middle}.qc-table th{font-size:.78rem;letter-spacing:.02em}.qc-table td:first-child,.qc-table th:first-child{white-space:normal;min-width:120px}.qc-table th:nth-child(2),.qc-table td:nth-child(2),.qc-table th:nth-child(3),.qc-table td:nth-child(3){min-width:110px}.qc-table th:nth-child(4),.qc-table td:nth-child(4){min-width:96px}.qc-table th:nth-child(5),.qc-table td:nth-child(5){min-width:56px;text-align:right}.qc-table tbody tr{cursor:pointer}.qc-table tbody tr.is-selected{background:var(--accent-tint)}.qc-table .status-badge{white-space:nowrap}.qc-rev{margin-left:4px;font-size:.85em}.qc-detail--empty{display:grid;place-items:center;min-height:220px}.qc-detail-head{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.qc-detail-head h2{margin:0;font-size:1.15rem}.qc-form-grid{--form-grid-cols: 2;margin-bottom:var(--space-3)}.qc-form-grid .ff-field{margin:0}.qc-run-header-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-bottom:16px}.qc-run-header-fields .ff-field{margin:0;min-width:0}.qc-job-run-field{grid-column:1 / -1}.qc-items-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin:var(--space-2) 0}.qc-items-head h3{margin:0;font-size:1rem}.qc-item-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-1)}.qc-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border:1px solid var(--border);border-radius:8px}.qc-item--section{background:var(--surface-alt)}.qc-item-label{flex:1 1 180px;min-width:140px;box-sizing:border-box;min-height:var(--control-height, 40px);padding:8px 10px;border:1px solid var(--border);border-radius:6px;font:inherit;background:#fff}.qc-item-label--section{font-weight:600}.qc-flag{display:inline-flex;align-items:center;gap:4px;font-size:.85rem;white-space:nowrap}.qc-item-move{display:flex;gap:4px;margin-left:auto}.qc-save-row{margin-top:14px;gap:8px}.qc-run-head{margin-bottom:12px}.qc-run-title{margin:8px 0 4px;font-size:1.2rem}.qc-run-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.qc-run-section{font-weight:700;padding:8px 4px;border-bottom:1px solid var(--border);margin-top:4px}.qc-run-item{display:grid;gap:8px;padding:10px;border:1px solid var(--border);border-radius:8px}.qc-run-item.is-critical{border-color:var(--attn-br)}.qc-run-item-label{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.qc-req{font-size:.85em}.qc-run-result-btns{display:flex;flex-wrap:wrap;gap:8px}.qc-result-btn.is-active{outline:2px solid var(--accent, #2f6f4e);outline-offset:1px}.qc-run-notes{width:100%}.qc-run-actions{margin-top:16px;gap:8px}.qc-auth-footer{margin-top:16px;padding-top:12px;border-top:1px solid var(--border)}@media (max-width: 900px){.qc-layout{grid-template-columns:1fr}.qc-detail{position:static}.qc-form-grid{--form-grid-cols: 1}.qc-run-header-fields{grid-template-columns:1fr}}:root{--kpi-ok: #0f7b63;--kpi-warn: #d86f1f;--kpi-danger: #b42318;--kpi-neutral: #64707d;--rail-width: 64px}[data-theme=dark]{--bg: #f6f7f8;--card: #ffffff;--surface: #eef1f4;--border: #d6dbe2;--text: #1d252c;--muted: #64707d;--accent: #245b50;--accent2: #0f7b63;--accent-warm: #d86f1f;--shadow: 0 1px 2px rgba(17, 24, 39, .05);--shadow-raised: 0 8px 24px rgba(17, 24, 39, .08);color-scheme:light}[data-theme=dark] body{background:var(--bg);color:var(--text)}[data-theme=dark] .topbar,[data-theme=dark] .topbar--modern{background:#0e1118f0;border-bottom-color:var(--border);box-shadow:0 1px #00000059,0 8px 24px #00000040}[data-theme=dark] .topbar nav a,[data-theme=dark] .topbar-nav a{color:var(--text)}[data-theme=dark] .topbar nav a.active,[data-theme=dark] .topbar-nav a.active{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent2);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}[data-theme=dark] .topbar-more-btn{color:var(--text)}[data-theme=dark] .user-chip{color:var(--text);background:var(--surface)}[data-theme=dark] .user-chip-role{background:color-mix(in srgb,var(--accent) 22%,var(--surface));color:var(--accent2)}[data-theme=dark] .dash-kpi--active{background:#1a2a26}[data-theme=dark] .home-hero-panel{background:linear-gradient(135deg,var(--card) 0%,var(--surface) 100%);border-color:var(--border)}[data-theme=dark] .home-card--primary,[data-theme=dark] .home-card--green.home-card--primary{background:linear-gradient(135deg,var(--card) 0%,color-mix(in srgb,var(--accent) 14%,var(--card)) 100%);border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}[data-theme=dark] .home-card--warm.home-card--primary{background:linear-gradient(135deg,var(--card) 0%,color-mix(in srgb,var(--accent-warm) 12%,var(--card)) 100%);border-color:color-mix(in srgb,var(--accent-warm) 45%,var(--border))}[data-theme=dark] .home-card--blue.home-card--primary{background:linear-gradient(135deg,var(--card) 0%,color-mix(in srgb,#5b9bd5 12%,var(--card)) 100%);border-color:color-mix(in srgb,#5b9bd5 45%,var(--border))}[data-theme=dark] .home-card:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}[data-theme=dark] .home-card-icon,[data-theme=dark] .home-card-icon--illustrated,[data-theme=dark] .home-card-icon--green,[data-theme=dark] .home-card-icon--warm,[data-theme=dark] .home-card-icon--blue,[data-theme=dark] .home-card-icon--neutral{background:linear-gradient(160deg,color-mix(in srgb,var(--card) 90%,#fff),var(--surface));color:var(--text);box-shadow:0 4px 14px color-mix(in srgb,#000 28%,transparent)}[data-theme=dark] .home-category-tab:hover{border-color:color-mix(in srgb,var(--accent) 40%,var(--border));color:var(--text)}[data-theme=dark] .home-search:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}[data-theme=dark] .theme-toggle{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme=dark] .theme-toggle:hover{background:var(--card)}[data-theme=dark] .compass-panel{background:var(--card);color:var(--text)}[data-theme=dark] .compass-msg--assistant .compass-bubble,[data-theme=dark] .compass-input,[data-theme=dark] .compass-prompt-chip{background:var(--surface);color:var(--text);border-color:var(--border)}[data-theme=dark] .btn{color:var(--text)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--card);color:var(--text);border-color:var(--border)}[data-theme=dark] .home-card,[data-theme=dark] .home-card-body h3{color:var(--text)}[data-theme=dark] .home-nav-card{background:var(--card)}.app-shell:has(.icon-rail):not(:has(.app-sidebar)){display:grid;grid-template-columns:var(--rail-width) minmax(0,1fr);min-height:100vh}.app-shell:has(.icon-rail):not(:has(.app-sidebar)) .app-shell-main{display:flex;flex-direction:column;min-width:0;min-height:100vh}.layout--with-sidebar>.app-shell,.layout--with-sidebar>.app-shell:has(.app-sidebar){display:flex!important;grid-template-columns:none!important;flex-direction:row}.topbar--rail{grid-template-columns:minmax(0,1fr) auto;padding-left:20px}.topbar--rail .topbar-brand{display:none}.icon-rail{position:sticky;top:0;align-self:start;display:flex;flex-direction:column;width:var(--rail-width);height:100vh;background:var(--card);border-right:1px solid var(--border);z-index:40}.icon-rail-brand{display:flex;align-items:center;justify-content:center;height:56px;flex-shrink:0;border-bottom:1px solid var(--border);text-decoration:none}.icon-rail-brand:hover{background:var(--surface);text-decoration:none}.icon-rail-logo{width:34px;height:34px;object-fit:contain}.icon-rail-nav{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 0;overflow-y:auto;flex:1}.icon-rail-btn{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;color:var(--muted);text-decoration:none;transition:background .15s,color .15s}.icon-rail-btn:hover{background:var(--surface);color:var(--text);text-decoration:none}.icon-rail-btn.is-active{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.icon-rail-btn-icon{display:flex;align-items:center;justify-content:center;width:22px;height:22px}.icon-rail-tip{position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%) translate(-4px);padding:6px 10px;border-radius:6px;background:var(--text);color:var(--card);font-size:.78rem;font-weight:var(--font-weight-ui);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s,transform .12s;z-index:50;box-shadow:var(--shadow-raised)}.icon-rail-tip:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);border:5px solid transparent;border-right-color:var(--text)}.icon-rail-btn:hover .icon-rail-tip,.icon-rail-btn:focus-visible .icon-rail-tip{opacity:1;transform:translateY(-50%) translate(0)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--muted);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.theme-toggle:hover{background:var(--surface);color:var(--text);border-color:color-mix(in srgb,var(--accent) 40%,var(--border))}.kpi-tone--ok{border-top:3px solid var(--kpi-ok)}.kpi-tone--warn{border-top:3px solid var(--kpi-warn)}.kpi-tone--danger{border-top:3px solid var(--kpi-danger)}.kpi-tone--neutral{border-top:3px solid var(--kpi-neutral)}.dash-kpi.kpi-tone--ok strong,.dashboard-metric.kpi-tone--ok strong{color:var(--kpi-ok)}.dash-kpi.kpi-tone--warn strong,.dashboard-metric.kpi-tone--warn strong{color:var(--kpi-warn)}.dash-kpi.kpi-tone--danger strong,.dashboard-metric.kpi-tone--danger strong{color:var(--kpi-danger)}@media (max-width: 720px){.app-shell:has(.icon-rail):not(:has(.app-sidebar)){grid-template-columns:1fr;grid-template-rows:auto 1fr}.icon-rail{position:relative;width:100%;height:auto;flex-direction:row;border-right:none;border-bottom:1px solid var(--border)}.icon-rail-brand{display:none}.icon-rail-nav{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;padding:8px 10px;width:100%}.icon-rail-tip{display:none}}.status-badge__icon{display:inline-flex;flex-shrink:0;width:.85em;height:.85em;align-items:center;justify-content:center;line-height:1}.status-badge__icon svg{display:block;width:100%;height:100%}.error-banner{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius);border:1px solid var(--stop-br);background:var(--stop-bg);color:var(--text);margin-bottom:var(--space-3)}.error-banner__body{flex:1 1 auto;min-width:0}.error-banner__what{margin:0;font-weight:var(--weight-strong);font-size:var(--fs-body);color:var(--stop-fg)}.error-banner__next{margin:var(--space-1) 0 0;font-size:var(--fs-small);color:var(--text);line-height:1.45}.error-banner__dismiss{flex-shrink:0;min-width:var(--touch-min);min-height:var(--touch-min);padding:var(--space-1) var(--space-2);border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:var(--fs-h3);line-height:1;border-radius:var(--radius-sm)}.error-banner__dismiss:hover{background:var(--stop-bg);color:var(--stop-fg)}.error-banner__dismiss:focus-visible{outline:none;box-shadow:var(--focus-ring)}.confirm-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:var(--space-4);box-sizing:border-box;background:transparent}.confirm-modal-backdrop:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--slate-900);opacity:.45;pointer-events:none}.confirm-modal{position:relative;z-index:1;background:var(--surface);border-radius:var(--radius);box-shadow:var(--elev-2);max-width:min(480px,100%);width:100%;padding:var(--space-5);box-sizing:border-box;border:1px solid var(--border)}.confirm-modal__title{margin:0 0 var(--space-2);font-size:var(--fs-h2);font-weight:var(--weight-strong);color:var(--text)}.confirm-modal__consequence{margin:0 0 var(--space-4);font-size:var(--fs-body);color:var(--text-muted);line-height:1.5}.confirm-modal__actions{display:flex;flex-wrap:wrap;gap:var(--space-2);justify-content:flex-end}.confirm-modal__actions .btn{min-width:96px}[data-ds-theme=floor] .wi-header-shopfloor-band,[data-ds-theme=floor] .wi-sheet-ref,[data-ds-theme=floor] .wi-shopfloor-page-label,[data-ds-theme=floor] .wi-extra-page-label{--accent: var(--green-500);--accent-text: var(--green-600);--text: var(--slate-ink);--text-muted: var(--slate-600)}[data-ds-theme=floor] .wi-header-shopfloor-band{--wi-sf-header-h: 7.5rem}[data-ds-theme=floor] .wi-header-shopfloor-main{flex-wrap:nowrap}[data-ds-theme=floor] .wi-header-shopfloor-main .wi-header-table-shopfloor{flex:1 1 24rem;min-width:20rem}[data-ds-theme=floor] .wi-header-table-shopfloor th.wi-header-table-shopfloor-lbl{width:104px;max-width:112px;font-size:var(--fs-label)}[data-ds-theme=floor] .wi-header-table-shopfloor td.wi-header-table-shopfloor-val{font-size:var(--fs-body)}[data-ds-theme=floor] .wi-header-shopfloor-ppe{gap:var(--space-2);padding:var(--space-2)}[data-ds-theme=floor] .wi-header-shopfloor-ppe-tile{width:auto;gap:var(--space-2);padding:var(--space-1) var(--space-2)}[data-ds-theme=floor] .wi-header-shopfloor-ppe-img{width:20px;height:20px}[data-ds-theme=floor] .wi-header-shopfloor-ppe-label{font-size:var(--fs-label);line-height:1.15}[data-ds-theme=floor] .editor-shopfloor-embed .wi-sf-rev-badge-lbl{font-size:var(--fs-label)}[data-ds-theme=floor] .editor-shopfloor-embed .wi-sf-rev-badge-val{font-size:var(--fs-h3)}[data-ds-theme=floor] .wi-shopfloor-page-label,[data-ds-theme=floor] .wi-extra-page-label,[data-ds-theme=floor] .editor-shopfloor-embed .wi-sf-operator-chrome{padding:6px 12px;font-size:var(--fs-small)}[data-ds-theme=floor] .editor-shopfloor-embed .wi-sf-page-progress{padding:2px 10px;border-color:var(--accent);color:var(--accent-text);font-size:var(--fs-label)}[data-ds-theme=floor] .wi-kits-compact{max-height:7rem;gap:var(--space-2) var(--space-3)}[data-ds-theme=floor] .wi-kits-compact-heading,[data-ds-theme=floor] .wi-kits-compact-num,[data-ds-theme=floor] .wi-kits-compact-chip{font-size:var(--fs-label)}[data-ds-theme=floor] .wi-kits-compact-chip{padding:2px 10px}[data-ds-theme=floor] .wi-kits-compact-meta,[data-ds-theme=floor] .wi-kits-compact-empty{font-size:var(--fs-small)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-4);border-radius:var(--radius-sm);border:1px solid transparent;font:var(--weight-ui) var(--fs-body) var(--font-sans);cursor:pointer;box-shadow:none;transition:var(--motion);background:var(--surface);color:var(--text);border-color:var(--border)}.btn:hover:not(:disabled){background:var(--surface-alt);border-color:var(--border-strong);box-shadow:none;transform:none;text-decoration:none}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover);color:var(--accent-ink);box-shadow:none}.btn.primary:active:not(:disabled){background:var(--accent-active);border-color:var(--accent-active)}.btn.btn-outline,.btn.secondary{background:var(--surface);border-color:var(--border);color:var(--text)}.btn.btn-outline:hover:not(:disabled),.btn.secondary:hover:not(:disabled){background:var(--surface-alt);border-color:var(--border-strong);color:var(--text)}.btn.attention{background:var(--attn);border-color:var(--attn);color:var(--text-inverse)}.btn.attention:hover:not(:disabled){background:var(--attn-fg);border-color:var(--attn-fg);color:var(--text-inverse)}.btn.danger{background:var(--surface);border-color:var(--stop);color:var(--stop)}.btn.danger:hover:not(:disabled){background:var(--stop);border-color:var(--stop);color:var(--text-inverse)}.btn.ghost{background:transparent;border-color:transparent;color:var(--accent-text)}.btn.ghost:hover:not(:disabled){background:var(--accent-tint);color:var(--accent-text)}.btn.btn-sm,.btn-sm{min-height:var(--control-h-dense);padding:0 var(--space-3);font-size:var(--fs-small)}.btn.btn-lg,.btn.lg{min-height:var(--control-h-lg)}.btn-primary-floor,.btn.primary.btn-primary-floor{min-height:var(--control-h);padding:0 var(--space-4);font-size:var(--fs-body);font-weight:var(--weight-ui);background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn:disabled,.btn.primary:disabled,.btn.ghost:disabled,.btn.attention:disabled,.btn.danger:disabled,.btn:disabled:hover,.btn.primary:disabled:hover,.btn.ghost:disabled:hover{opacity:1;background:var(--surface-alt);border-color:var(--border);color:var(--text-faint);cursor:not-allowed;box-shadow:none;transform:none}.ff-field{display:grid;gap:var(--space-2);min-width:0}.ff-label{font:var(--weight-ui) var(--fs-small) var(--font-sans);color:var(--text-muted)}.ff-field>select,.ff-field>input:not([type=checkbox]):not([type=radio]),.ff-field>textarea{min-height:var(--control-h);padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);color:var(--text);font:var(--weight-body) var(--fs-body) var(--font-sans)}.ff-field>select:focus-visible,.ff-field>input:not([type=checkbox]):not([type=radio]):focus-visible,.ff-field>textarea:focus-visible{outline:none;box-shadow:var(--focus-ring);border-color:var(--accent)}.ff-field--error>select,.ff-field--error>input:not([type=checkbox]):not([type=radio]),.ff-field--error>textarea{border-color:var(--stop)}.ff-error{margin:0;color:var(--stop);font-size:var(--fs-small)}.ff-field--id>input,.ff-field--id>select{font-family:var(--font-mono)}.status-badge{display:inline-flex;align-items:center;gap:var(--space-1);min-height:24px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-tight);font:var(--weight-ui) var(--fs-label) var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--hold-br);background:var(--hold-bg);color:var(--hold-fg);vertical-align:middle;white-space:nowrap}.status-badge--ok{background:var(--pass-bg);border-color:var(--pass-br);color:var(--pass-fg)}.status-badge--warn{background:var(--attn-bg);border-color:var(--attn-br);color:var(--attn-fg)}.status-badge--fail{background:var(--stop-bg);border-color:var(--stop-br);color:var(--stop-fg)}.status-badge--setup{background:var(--run-bg);border-color:var(--run-br);color:var(--run-fg)}.status-badge--off,.status-badge--idle,.status-badge--neutral{background:var(--hold-bg);border-color:var(--hold-br);color:var(--hold-fg)}.status-badge--hold{background:var(--tag-hold-bg);border-color:var(--tag-hold-br);color:var(--tag-hold-fg)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-5);box-shadow:none}.page .card{box-shadow:none}.card.card--interactive:hover{border-color:var(--accent);box-shadow:var(--elev-1)}.deviations-office .card.cm-create-card,.deviations-office .card.cm-workflow-card{border-left:3px solid var(--attn)}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.data-table{border-collapse:separate;border-spacing:0;column-gap:var(--space-5)}.data-table th{font:var(--weight-ui) var(--fs-label) var(--font-mono);letter-spacing:.1em;text-transform:uppercase;background:var(--surface-alt);color:var(--text-muted);border-bottom:1px solid var(--border-subtle)}.data-table td{border-bottom:1px solid var(--border-subtle);font-size:var(--fs-small)}.data-table tbody tr:nth-child(2n){background:transparent}.data-table tbody tr.is-selected{background:var(--accent-tint);box-shadow:inset 3px 0 0 var(--accent)}.topbar,.topbar--modern{min-height:var(--topnav-h);height:var(--topnav-h);box-sizing:border-box;padding:0 var(--space-5);background:var(--green-700);color:var(--text-inverse);border-bottom:1px solid var(--green-700);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;z-index:1200}.topbar .brand,.topbar--modern .brand,.topbar--modern .topbar-brand,.topbar .brand span{color:var(--text-inverse)}.topbar-nav a,.topbar nav a{color:var(--text-inverse);border-radius:0;background:transparent}.topbar-nav a:hover,.topbar nav a:hover{background:var(--accent-tint);color:var(--text-inverse);transform:none}.topbar-nav a.active,.topbar nav a.active{background:transparent;color:var(--text-inverse);box-shadow:inset 0 -2px 0 var(--attn);font-weight:var(--weight-strong)}.topbar-more-menu{z-index:1300;box-shadow:var(--elev-1)}.topbar-more-btn{color:var(--text-inverse)}.layout--with-sidebar{--shopfloor-sidebar-w: var(--sidebar-w);--shell-sidebar-w: var(--sidebar-w)}.layout--with-sidebar.layout--sidebar-collapsed{--shell-sidebar-w: var(--sidebar-w-rail)}.app-sidebar,.shopfloor-sidebar{flex-basis:var(--shell-sidebar-w, var(--sidebar-w));background:var(--surface-alt);border-right:1px solid var(--border)}.shopfloor-shell>.app-sidebar,.shopfloor-shell>.shopfloor-sidebar{flex-basis:var(--shell-sidebar-w, var(--shopfloor-sidebar-w));width:var(--shell-sidebar-w, var(--shopfloor-sidebar-w));min-width:var(--shell-sidebar-w, var(--shopfloor-sidebar-w));max-width:var(--shell-sidebar-w, var(--shopfloor-sidebar-w))}.layout--with-sidebar.layout--sidebar-collapsed .app-sidebar,.app-sidebar.is-collapsed{flex-basis:var(--sidebar-w-rail);width:var(--sidebar-w-rail);min-width:var(--sidebar-w-rail);max-width:var(--sidebar-w-rail)}.shopfloor-sidebar-link.is-active{background:var(--accent-tint);color:var(--accent-text);box-shadow:inset 3px 0 0 var(--accent);border-color:transparent}.home-card{background:var(--surface);box-shadow:none;border:1px solid var(--border)}.home-card:hover{transform:none;box-shadow:var(--elev-1);border-color:var(--accent)}.home-card--lead{border-color:var(--accent)}.home-cards--modern .home-card{box-shadow:none}.editor-title-bar,.editor-shell.editor-page-compact:not(.editor-shopfloor-embed)>.editor-title-bar{height:auto;min-height:var(--editor-chrome-h);max-height:36px;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:none;padding:0 var(--space-4)}[data-ds-theme=institutional]{background:var(--bg)}[data-ds-theme=institutional] .card{background:var(--surface);border-color:var(--border-strong)}[data-ds-theme=floor]{background:var(--bg);color:var(--text);--shopfloor-ink: var(--text);--shopfloor-panel: var(--surface);--shopfloor-panel-border: var(--border);--card: var(--surface);--muted: var(--text-muted);--danger: var(--stop);--shadow: none;--shadow-raised: none;--control-height: var(--control-h)}[data-ds-theme=floor] .btn{min-height:var(--control-h)}[data-ds-theme=floor] .confirm-modal-backdrop{display:none}[data-ds-theme=floor] .qc-run-result-btns{gap:var(--space-4)}[data-ds-theme=floor] .shopfloor-sidebar-link:hover{background:var(--surface-alt);color:var(--text)}.card--dense{padding:var(--space-3);margin-bottom:var(--space-3)}.card--comfortable{padding:var(--space-6);margin-bottom:var(--space-5)}.data-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%;min-width:0}.data-table-wrap--bordered{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.data-table-wrap .data-table{min-width:100%}.module-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.module-tab:hover{color:var(--text);border-color:#b8d4cc;background:color-mix(in srgb,var(--accent) 5%,var(--card))}.module-tab.is-active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:var(--font-weight-strong);box-shadow:0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.module-tab-badge{margin-left:8px;border-radius:999px;padding:1px 7px;font-size:.72rem;font-weight:800;background:color-mix(in srgb,var(--accent) 12%,var(--card));color:var(--accent)}.module-tab.is-active .module-tab-badge{background:#ffffff38;color:#fff}.cm-stat .cm-stat-value{display:block;font-size:1.5rem;font-weight:800;line-height:1.1;text-transform:none;letter-spacing:normal;color:var(--text)}.cm-stat .cm-stat-label{display:block;margin-top:4px;font-size:.72rem;font-weight:800;letter-spacing:.02em;text-transform:uppercase;color:var(--muted)}.cm-stat .cm-stat-sub{display:block;margin-top:3px;font-size:.76rem;font-weight:400;letter-spacing:normal;text-transform:none;color:var(--muted);overflow-wrap:anywhere}.cm-stat-bar--auto{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.cm-stat--ok{border-left-color:var(--status-ok)}.cm-stat--warn{border-left-color:var(--status-warn)}.cm-stat--fail{border-left-color:var(--status-fail)}.notice-banner{display:flex;align-items:flex-start;gap:12px;padding:10px 14px;border-radius:var(--radius);margin-bottom:12px;font-size:.9rem}.notice-banner__body{flex:1 1 auto;min-width:0}.notice-banner--success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.notice-banner--info{background:color-mix(in srgb,var(--accent) 8%,#fff);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);color:var(--accent)}.notice-banner__dismiss{flex-shrink:0;min-width:32px;min-height:32px;padding:2px 8px;border:none;background:transparent;color:inherit;cursor:pointer;font-size:1.2rem;line-height:1;border-radius:6px;opacity:.7}.notice-banner__dismiss:hover{opacity:1;background:#0000000f}.notice-banner__dismiss:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:14px}.card-stack>*{min-width:0}.btn-ghost:not(.btn){display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 14px;min-height:36px;border:1px solid var(--border);border-radius:6px;background:transparent;font:inherit;color:#24313a;cursor:pointer}.btn-ghost:not(.btn):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled,.btn.primary:disabled,.btn-ghost:disabled,.btn:disabled:hover,.btn.primary:disabled:hover,.btn-ghost:disabled:hover{opacity:1;background:var(--surface);border-color:var(--border);color:var(--muted);cursor:not-allowed;box-shadow:none;transform:none}.btn-row{display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--btn-row-gap, 8px)}.btn-row>.btn,.btn-row>.btn-ghost{min-height:36px}.btn-row--form{margin-top:14px;padding-top:14px;border-top:1px solid var(--border)}.btn-row--end{margin-left:auto;justify-content:flex-end}.btn-row--stack{flex-direction:column;align-items:stretch}.check-row{display:flex;align-items:flex-start;gap:8px;font-size:.82rem;line-height:1.35;color:var(--text)}.check-row>input[type=checkbox]{flex:0 0 auto;margin:2px 0 0}.check-row-text{min-width:0}.check-row-hint{display:block;font-size:.75rem;font-style:normal;color:var(--muted)}.check-group{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center}.check-group .check-row{align-items:center}.check-group .check-row>input[type=checkbox]{margin-top:0}.check-group--stack{flex-direction:column;align-items:stretch;gap:8px}.form-grid{display:grid;grid-template-columns:repeat(var(--form-grid-cols, 3),minmax(0,1fr));gap:20px 16px;align-items:start}.form-grid>.ff-field{margin:0;min-width:0}.form-grid>.ff-field--span-2,.form-grid>.form-grid-span-2,.form-grid>.check-row.form-grid-span-2{grid-column:1 / -1}@media (max-width: 1100px){.form-grid{--form-grid-cols: 2}}@media (max-width: 640px){.form-grid{--form-grid-cols: 1}}.connection-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:12px}.connection-panel-head .home-floor-card-title{margin:0}.connection-panel-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}.connection-panel-row{display:grid;grid-template-columns:auto minmax(5.5rem,max-content) minmax(0,1fr);align-items:center;column-gap:10px;row-gap:2px;padding:5px 0;font-size:.85rem}.connection-panel-row+.connection-panel-row{border-top:1px solid color-mix(in srgb,var(--border) 60%,transparent)}.connection-panel-name{font-weight:var(--font-weight-strong);color:var(--text)}.connection-panel-status{color:var(--muted);overflow-wrap:anywhere}.connection-panel-detail{grid-column:2 / -1;font-size:.78rem;color:var(--muted);overflow-wrap:anywhere}.connection-dot{width:9px;height:9px;border-radius:50%;background:var(--status-idle);flex:0 0 auto}.connection-dot--ok{background:var(--status-ok)}.connection-dot--warn{background:var(--status-warn)}.connection-dot--fail,.connection-dot--off{background:var(--status-fail)}.connection-dot--idle,.connection-dot--neutral{background:var(--status-idle)}.connection-panel-hint{margin:12px 0 0;font-size:.82rem;line-height:1.45;color:var(--muted)}.connection-panel-footer{margin:10px 0 0;font-size:.72rem;color:var(--muted)}.cc-page .cc-queue-toolbar{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-bottom:12px}.cc-table tbody tr{cursor:pointer}.cc-table tbody tr:hover{background:var(--surface)}.cc-intake .cc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-bottom:16px}.cc-intake .cc-span-2{grid-column:span 2}.cc-intake label,.cc-panel label,.cc-inline-form label{display:flex;flex-direction:column;gap:4px;font-size:.85rem}.cc-workspace-header{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.cc-transition-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.cc-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;margin:0 0 16px}.cc-dl dt{font-size:.75rem;color:var(--muted);margin:0}.cc-dl dd{margin:0 0 8px}.cc-inline-form{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin-top:12px}.cc-comment-list,.cc-event-list{list-style:none;padding:0;margin:12px 0 0}.cc-comment-list li,.cc-event-list li{padding:8px 0;border-top:1px solid var(--border)}.nav-back-link{display:inline-flex;align-items:center;gap:6px;padding:5px 10px 5px 6px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 18%,var(--border));background:color-mix(in srgb,var(--accent) 5%,#fff);color:var(--accent);font-size:.82rem;font-weight:600;text-decoration:none;line-height:1.2;transition:background .15s ease,border-color .15s ease,color .15s ease}.nav-back-link--button{font:inherit;cursor:pointer}.nav-back-link:hover{background:color-mix(in srgb,var(--accent) 10%,#fff);border-color:color-mix(in srgb,var(--accent) 35%,var(--border));color:#1a4a42;text-decoration:none}.nav-back-link-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,#fff)}.nav-back-link-label{white-space:nowrap}.reorder-buttons{display:inline-flex;flex-direction:column;gap:2px;vertical-align:middle}.reorder-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:22px;padding:0;border:1px solid var(--border);border-radius:5px;background:#fff;color:var(--muted);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.reorder-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 8%,#fff);border-color:color-mix(in srgb,var(--accent) 30%,var(--border));color:var(--accent)}.reorder-btn:disabled{opacity:.35;cursor:not-allowed}.ai-ticket-flow-sep{display:inline-block;width:14px;height:1px;margin:0 6px;background:#c5cdd6;vertical-align:middle}.editor-back-link .nav-back-link{margin-bottom:0}.editor-title-bar .editor-back-link .nav-back-link{min-height:24px;max-height:24px;padding:0 var(--space-2) 0 var(--space-1);gap:var(--space-1);border-radius:var(--radius-sm);font-size:var(--fs-label);line-height:1}.editor-title-bar .editor-back-link .nav-back-link-icon{width:16px;height:16px}.tss-pill.nav-back-link{border-radius:999px}
