:root{--bg-app:#f8f8fa;--bg-card:#fff;--bg-card-alt:#f5f7f9;--header-live-search:#164b50;--header-config:#14325a;--header-data-entry:#c88c00;--header-faults-feedback:#8c1414;--btn-confirm:#2eb68f;--btn-info:#53b2c8;--btn-danger:#c84646;--btn-neutral:#164b50;--btn-muted:#8c8c96;--metric-ok:#196e46;--metric-bad:#b43232;--nav-active-fill:#ffffff1f;--nav-active-border:#fff6;--font-family:"Open Sans", sans-serif;--fs-title:22px;--fs-header:18px;--fs-label:14px;--fs-key:10px;--fs-metric:40px;--radius-sm:6px;--radius-md:10px;--sidebar-width:220px;--sidebar-rail-width:64px;--breakpoint-desktop:768px}.shell{background:var(--bg-app);min-height:100vh;font-family:var(--font-family);flex-direction:column;display:flex}.shell__body{flex:1;display:flex}.shell__main{flex:1;min-width:0;padding:16px 16px 80px}.sidebar{display:none}.bottom-bar{background:var(--header-config);scrollbar-width:none;justify-content:flex-start;gap:2px;padding:8px;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-x:auto}.bottom-bar::-webkit-scrollbar{display:none}.bottom-bar:after{content:"";flex:0 0 6px}.bottom-bar__item{white-space:nowrap;border:1px solid #0000;flex:1 0 auto}.bottom-bar__item,.sidebar__item{color:#fff;font-size:var(--fs-key);border-radius:var(--radius-sm);flex-direction:column;align-items:center;gap:4px;padding:8px 12px;text-decoration:none;display:flex}.bottom-bar__item.active,.sidebar__item.active{background:var(--nav-active-fill);border:1px solid var(--nav-active-border)}@media (width>=768px){.shell__body{flex-direction:row}.sidebar{width:var(--sidebar-width);background:var(--header-config);flex-direction:column;gap:4px;padding:16px 8px;display:flex}.sidebar__item{font-size:var(--fs-label);flex-direction:row;justify-content:flex-start}.bottom-bar{display:none}.shell__main{padding:24px}.sidebar__toggle,.sidebar__logout{cursor:pointer;background:0 0;border:none;font-family:inherit}.sidebar__toggle:hover,.sidebar__logout:hover{background:#ffffff1f}.sidebar__logout{margin-top:auto}.sidebar__toggle{display:none}}@media (width>=768px) and (width<=1279px){.sidebar{z-index:40;width:var(--sidebar-rail-width);padding:12px 6px;transition:width .18s,box-shadow .18s;position:fixed;top:0;bottom:0;left:0;overflow:hidden auto}.sidebar.is-open{width:var(--sidebar-width);box-shadow:4px 0 24px #0f172a59}.sidebar__toggle{margin-bottom:8px;display:flex}.sidebar__item{white-space:nowrap;flex-shrink:0;align-items:center;min-height:44px}.sidebar:not(.is-open) .sidebar__item{justify-content:center;padding:10px 0}.sidebar:not(.is-open) .sidebar__item span{display:none}.sidebar-backdrop{z-index:39;background:#0f172a59;position:fixed;inset:0}.shell__main{margin-left:var(--sidebar-rail-width)}}@media (width>=1280px){.sidebar{z-index:40;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.shell__main{margin-left:var(--sidebar-width)}}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}.route-progress{z-index:50;background:linear-gradient(90deg, transparent, var(--btn-info), transparent);background-repeat:no-repeat;background-size:50% 100%;height:3px;animation:1s linear infinite route-progress;position:fixed;top:0;left:0;right:0}@keyframes route-progress{0%{background-position:-50% 0}to{background-position:150% 0}}@media (prefers-reduced-motion:reduce){.route-progress{background:var(--btn-info);animation:none}}.route-loading{color:var(--btn-muted);font-family:var(--font-family);padding:24px 16px}.no-access{flex-direction:column;gap:8px;max-width:520px;padding:20px;display:flex}.no-access h1{font-size:var(--fs-title);margin:0}.no-access p{margin:0}button{border:1px solid var(--p-border);background:var(--p-surface);min-height:44px;color:var(--p-ink);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-family:inherit;font-size:14px;font-weight:600;display:inline-flex}button:hover{background:var(--p-surface-2)}button:disabled{opacity:.55;cursor:default}button[type=submit]{background:var(--p-accent);border-color:var(--p-accent);color:#fff}button[type=submit]:hover{background:#1d4ed8}input,select,textarea{border:1px solid var(--p-border);background:var(--p-surface);min-height:44px;color:var(--p-ink);border-radius:10px;padding:0 12px;font-family:inherit;font-size:14px}textarea{min-height:80px;padding:10px 12px}input[type=file]{min-height:auto;color:var(--p-ink-2);background:0 0;border:none;border-radius:0;padding:0;font-size:14px}input[type=file]::file-selector-button{border:1px solid var(--p-border);background:var(--p-surface);min-height:40px;color:var(--p-ink);font:inherit;cursor:pointer;border-radius:10px;margin-right:10px;padding:0 14px;font-weight:600}.kpi-tile{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);flex-direction:column;gap:4px;padding:14px;display:flex}.kpi-tile--ok{background:var(--p-progress-tint)}.kpi-tile--bad{background:var(--p-blocked-tint)}.kpi-tile__label{font-size:var(--fs-key);text-transform:uppercase;color:#787882}.kpi-tile__value{font-size:var(--fs-metric);font-weight:700}.kpi-tile__value--ok{color:var(--p-progress)}.kpi-tile__value--bad{color:var(--p-blocked)}.kpi-tile__sub{font-size:var(--fs-key);color:#787882}.card{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);padding:16px}.status-pill{font-size:var(--fs-key);text-transform:uppercase;color:#fff;border-radius:999px;align-items:center;padding:2px 10px;font-weight:700;display:inline-flex}.status-pill--running{background:var(--p-progress)}.status-pill--hold{background:var(--p-warning)}.status-pill--waiting{background:var(--p-planned)}.status-pill--stopped{background:var(--p-blocked)}.status-pill--planned{background:var(--p-completed)}.bottom-sheet__backdrop{z-index:50;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.bottom-sheet__panel{border-radius:var(--radius-md) var(--radius-md) 0 0;width:100%;max-width:560px;max-height:88vh;overflow-y:auto}.bottom-sheet__header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.bottom-sheet__close{cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:22px;line-height:1}@media (width>=768px){.bottom-sheet__backdrop{align-items:center}.bottom-sheet__panel{border-radius:var(--radius-md);margin:16px}}.drag-handle{cursor:grab;touch-action:none}.data-table{border-collapse:collapse;background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);width:100%;overflow:hidden}.data-table th,.data-table td{text-align:left;font-size:var(--fs-label);border-bottom:1px solid var(--p-border);padding:10px 12px}.data-table th{background:var(--p-surface-2);font-size:var(--fs-key);text-transform:uppercase}.chip{border:1px solid var(--p-border);background:var(--p-surface);min-height:36px;font-size:var(--fs-label);cursor:pointer;border-radius:999px;align-items:center;padding:4px 14px;display:inline-flex}.chip.active{background:var(--p-accent);color:#fff;border-color:var(--p-accent)}.progress-bar{background:var(--p-surface-2);border-radius:999px;height:8px;overflow:hidden}.progress-bar__fill{background:var(--p-progress);border-radius:999px;height:100%}.quick-access-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.quick-access-card{text-align:center;color:inherit;flex-direction:column;align-items:center;gap:8px;padding:16px;text-decoration:none;display:flex}.quick-access-card svg{color:var(--header-live-search)}.session-card{cursor:pointer;flex-direction:column;gap:8px;display:flex}.session-card__header{justify-content:space-between;align-items:center;display:flex}.session-card__meta{font-size:var(--fs-key);color:#787882}.steps{gap:8px;display:flex}.step{text-align:center;border-radius:var(--radius-sm);background:var(--p-surface-2);font-size:var(--fs-key);text-transform:uppercase;color:#787882;flex:1;padding:8px;font-weight:700}.step.active{background:var(--p-accent);color:#fff}.step.done{background:var(--p-progress);color:#fff}.field{flex-direction:column;gap:4px;display:flex}.field label{font-size:var(--fs-key);text-transform:uppercase;color:#787882}.error-text{color:var(--p-blocked);font-size:var(--fs-label);margin:0}.record-row{cursor:pointer;flex-direction:column;gap:8px;display:flex}.record-row__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.record-row__name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.record-row__metrics{flex-wrap:wrap;gap:16px;display:flex}.record-metric{flex-direction:column;gap:2px;display:flex}.record-metric__label{font-size:var(--fs-key);color:#787882;text-transform:uppercase}.record-metric__value{font-size:var(--fs-label);font-weight:700}.record-metric__value--bad{color:var(--p-blocked)}.record-metric__value--ok{color:var(--p-progress)}@media (width>=768px){.record-row{flex-direction:row;justify-content:space-between;align-items:center}.record-row__top{flex:1;min-width:0}.record-row__metrics{flex-shrink:0}}.metric-split{background:var(--p-surface-2);border-radius:999px;height:8px;display:flex;overflow:hidden}.metric-split__uptime{background:var(--p-progress)}.metric-split__downtime{background:var(--p-blocked)}.bar-chart-row{align-items:center;gap:10px;display:flex}.bar-chart-row__label{width:150px;font-size:var(--fs-label);text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;overflow:hidden}.bar-chart-row__track{flex:1;align-items:center;min-width:0;height:24px;display:flex}.bar-chart-row__fill{background:var(--p-blocked);border-radius:0 4px 4px 0;min-width:3px;height:10px}.bar-chart-row__value{text-align:right;width:64px;font-size:var(--fs-label);font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:600}.qr-label{box-sizing:border-box;border:1px solid var(--p-border);flex-direction:column;justify-content:center;align-items:center;gap:.4cm;width:10cm;height:9cm;padding:.6cm;display:flex}.qr-label img{width:6cm;height:6cm}.bar-chart-total{border-top:1px solid var(--p-border);justify-content:space-between;margin-top:12px;padding-top:10px;font-weight:700;display:flex}:root{--p-planned:#1d4ed8;--p-planned-tint:#eff6ff;--p-progress:#0d9488;--p-progress-tint:#f0fdfa;--p-blocked:#dc2626;--p-blocked-tint:#fef2f2;--p-completed:#64748b;--p-completed-tint:#f1f5f9;--p-warning:#ca8a04;--p-warning-tint:#fefce8;--p-compounding:#ea580c;--p-filling:#7c3aed;--p-accent:#2563eb;--p-ink:#0f172a;--p-ink-2:#475569;--p-ink-3:#94a3b8;--p-border:#e2e8f0;--p-surface:#fff;--p-surface-2:#f8fafc;--p-radius:12px;--p-radius-lg:16px;--p-shadow:0 1px 2px #0f172a0a, 0 1px 3px #0f172a0f}.plan{color:var(--p-ink);flex-direction:column;gap:16px;display:flex}.plan button{font-family:inherit}.plan-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.plan-header__left{align-items:center;gap:12px;min-width:0;display:flex}.plan-header__icon{border-radius:var(--p-radius);background:var(--p-planned-tint);width:44px;height:44px;color:var(--p-accent);flex-shrink:0;justify-content:center;align-items:center;display:flex}.plan-header__title{margin:0;font-size:24px;font-weight:700;line-height:1.2}.plan-header__sub{color:var(--p-ink-2);margin:2px 0 0;font-size:13px}.plan-header__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.plan-btn{border:1px solid var(--p-border);background:var(--p-surface);min-height:44px;color:var(--p-ink);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.plan-btn:hover{background:var(--p-surface-2)}.plan-btn:disabled{opacity:.55;cursor:default}.plan-btn--primary{background:var(--p-accent);border-color:var(--p-accent);color:#fff}.plan-btn--primary:hover{background:#1d4ed8}.plan-btn--icon{flex-shrink:0;width:44px;padding:0}.plan-btn--on{background:var(--p-planned-tint);border-color:var(--p-accent);color:var(--p-accent)}.plan-weekpicker{border:1px solid var(--p-border);background:var(--p-surface);border-radius:10px;align-items:center;gap:2px;padding:3px;display:inline-flex}.plan-weekpicker__label{white-space:nowrap;min-height:38px;color:var(--p-ink);align-items:center;gap:8px;padding:0 10px;font-size:14px;font-weight:600;display:inline-flex}.plan-weekpicker__nav{width:34px;min-height:38px;color:var(--p-ink-2);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.plan-weekpicker__nav:hover{background:var(--p-surface-2);color:var(--p-ink)}.plan-kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;display:grid}.plan-kpi{border-radius:var(--p-radius);background:var(--p-surface);text-align:left;cursor:pointer;border:1px solid #0000;align-items:center;gap:10px;min-height:44px;padding:12px;font-family:inherit;display:flex}.plan-kpi__icon{background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.plan-kpi__body{min-width:0}.plan-kpi__body>span{display:block}.plan-kpi__label{color:var(--p-ink-2);font-size:12px;font-weight:700}.plan-kpi__value{color:var(--p-ink);font-size:26px;font-weight:700;line-height:1.1}.plan-kpi__sub{color:var(--p-ink-3);font-size:11px}.plan-kpi--planned{background:var(--p-planned-tint)}.plan-kpi--planned .plan-kpi__icon{color:var(--p-planned)}.plan-kpi--progress{background:var(--p-progress-tint)}.plan-kpi--progress .plan-kpi__icon{color:var(--p-progress)}.plan-kpi--blocked{background:var(--p-blocked-tint)}.plan-kpi--blocked .plan-kpi__icon{color:var(--p-blocked)}.plan-kpi--completed{background:var(--p-completed-tint)}.plan-kpi--completed .plan-kpi__icon{color:var(--p-completed)}.plan-kpi--warning{background:var(--p-warning-tint)}.plan-kpi--warning .plan-kpi__icon{color:var(--p-warning)}.plan-kpi--on{border-color:currentColor;box-shadow:0 0 0 2px #2563eb1f}.plan-kpi--planned.plan-kpi--on{border-color:var(--p-planned)}.plan-kpi--progress.plan-kpi--on{border-color:var(--p-progress)}.plan-kpi--blocked.plan-kpi--on{border-color:var(--p-blocked)}.plan-kpi--completed.plan-kpi--on{border-color:var(--p-completed)}.plan-kpi--warning.plan-kpi--on{border-color:var(--p-warning)}.plan-layout{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}@media (width>=1100px){.plan-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start}}.plan-aside{flex-direction:column;gap:12px;min-width:0;display:flex}.plan-panel{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);min-width:0;overflow:hidden}.plan-panel__head{border-bottom:1px solid var(--p-border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;display:flex}.plan-panel__title{margin:0;font-size:16px;font-weight:700}.plan-panel__tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.plan-panel__body{min-width:0;padding:12px 16px 16px}.plan-seg{background:var(--p-surface-2);border:1px solid var(--p-border);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.plan-seg__btn{min-height:38px;color:var(--p-ink-2);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.plan-seg__btn.active{background:var(--p-surface);color:var(--p-accent);box-shadow:var(--p-shadow)}.plan-search{flex:200px;min-width:0;position:relative}.plan-search__icon{color:var(--p-ink-3);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.plan-search input{border:1px solid var(--p-border);background:var(--p-surface);width:100%;min-height:44px;color:var(--p-ink);border-radius:10px;padding:0 12px 0 36px;font-family:inherit;font-size:14px}.plan-filters{border-bottom:1px solid var(--p-border);flex-wrap:wrap;gap:8px;padding:0 16px 12px;display:flex}.plan-filters select{border:1px solid var(--p-border);background:var(--p-surface);min-height:40px;color:var(--p-ink);border-radius:10px;padding:0 10px;font-family:inherit;font-size:13px}.plan-stage+.plan-stage{margin-top:4px}.plan-stage__head{border:2px solid var(--p-border);background:var(--p-surface-2);cursor:pointer;text-align:left;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:44px;padding:8px 10px;font-family:inherit;display:flex}.plan-stage__head--compounding{border-color:var(--p-compounding)}.plan-stage__head--filling{border-color:var(--p-filling)}.plan-stage__head--compounding .plan-stage__title{color:var(--p-compounding)}.plan-stage__head--filling .plan-stage__title{color:var(--p-filling)}.plan-stage__title{align-items:center;gap:8px;font-size:14px;font-weight:700;display:flex}.plan-stage__meta{color:var(--p-ink-2);align-items:center;gap:8px;font-size:12px;display:flex}.plan-group{padding:6px 0 2px}.plan-group__head{align-items:baseline;gap:8px;padding:8px 2px 6px;display:flex}.plan-group__title{color:var(--p-ink-2);font-size:13px;font-weight:700}.plan-group__count{color:var(--p-ink-3);font-size:11px}.plan-rows{flex-direction:column;gap:6px;display:flex}.plan-row{border:1px solid var(--p-border);background:var(--p-surface);cursor:pointer;text-align:left;border-radius:10px;grid-template-columns:1fr;align-items:center;gap:4px 10px;width:100%;padding:10px 12px 10px 16px;font-family:inherit;display:grid;position:relative}.plan-row:hover{background:var(--p-surface-2)}.plan-row:before{content:"";background:var(--row-accent,var(--p-completed));border-radius:0 3px 3px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.plan-row--planned{--row-accent:var(--p-planned)}.plan-row--progress{--row-accent:var(--p-progress)}.plan-row--blocked{--row-accent:var(--p-blocked)}.plan-row--completed{--row-accent:var(--p-completed)}.plan-row__main{align-items:center;gap:8px;min-width:0;display:flex}.plan-row__name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.plan-row__meta{color:var(--p-ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.plan-row__side{flex-wrap:wrap;align-items:center;gap:8px;display:flex}@media (width>=900px){.plan-row{grid-template-columns:minmax(0,2.1fr) minmax(0,.8fr) 90px minmax(0,1.5fr) auto}.plan-row__side{justify-content:flex-end}}.plan-pill{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.plan-pill--planned{background:var(--p-planned-tint);color:var(--p-planned)}.plan-pill--progress{background:var(--p-progress-tint);color:var(--p-progress)}.plan-pill--blocked{background:var(--p-blocked-tint);color:var(--p-blocked)}.plan-pill--completed{background:var(--p-completed-tint);color:var(--p-completed)}.plan-pill--warning{background:var(--p-warning-tint);color:var(--p-warning)}.plan-pill--stage{background:var(--p-surface-2);color:var(--p-ink-2)}.plan-row__qty{white-space:nowrap;font-size:14px;font-weight:700}.plan-row__qty--tbc{color:var(--p-ink-3);font-size:12px;font-weight:600}.plan-row__note{color:var(--p-ink-2);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:12px;display:-webkit-box;overflow:hidden}.plan-gantt{flex-direction:column;gap:8px;display:flex}.plan-gantt__rangehead{color:var(--p-ink-2);padding-bottom:6px;font-size:12px;font-weight:700}.plan-gantt__grid{flex-direction:column;gap:6px;min-width:0;display:flex}.plan-gantt__days{border-bottom:1px solid var(--p-border);gap:0;padding-bottom:4px;display:grid}.plan-gantt__day{color:var(--p-ink-3);text-align:center;border-left:1px solid var(--p-border);padding:2px 0;font-size:11px;font-weight:600}.plan-gantt__day:first-child{border-left:none}.plan-gantt__day--today{color:var(--p-accent)}.plan-gantt__row{flex-direction:column;gap:4px;padding:6px 0;display:flex}.plan-gantt__label{align-items:center;gap:8px;min-width:0;display:flex}.plan-gantt__labeltext{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.plan-gantt__track{background:var(--p-surface-2);border-radius:6px;height:22px;position:relative;overflow:hidden}.plan-gantt__gridlines{display:grid;position:absolute;inset:0}.plan-gantt__gridline{border-left:1px solid #e2e8f0e6}.plan-gantt__gridline:first-child{border-left:none}.plan-gantt__gridline--today{background:#2563eb0f}.plan-gantt__bar{background:var(--row-accent,var(--p-progress));border-radius:4px;min-width:6px;position:absolute;top:4px;bottom:4px}.plan-gantt__bar--clipstart{border-top-left-radius:0;border-bottom-left-radius:0}.plan-gantt__bar--clipend{border-top-right-radius:0;border-bottom-right-radius:0}@media (width>=900px){.plan-gantt__row{grid-template-columns:minmax(0,260px) minmax(0,1fr);align-items:center;gap:12px;display:grid}.plan-gantt__days{margin-left:272px}}.plan-kanban{grid-template-columns:1fr;gap:10px;display:grid}@media (width>=700px){.plan-kanban{grid-template-columns:none;grid-auto-columns:minmax(240px,1fr);grid-auto-flow:column;overflow-x:auto}}.plan-kanban__col{background:var(--p-surface-2);border:1px solid var(--p-border);border-radius:var(--p-radius);flex-direction:column;gap:8px;min-width:0;padding:10px;display:flex}.plan-kanban__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.plan-kanban__title{align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.plan-kanban__count{color:var(--p-ink-3);font-size:11px;font-weight:700}.plan-kanban__list{flex-direction:column;gap:8px;min-height:40px;display:flex}.plan-kanban__col--over{border-color:var(--p-accent);background:var(--p-planned-tint)}.plan-card{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);min-width:0;padding:14px}.plan-card__title{margin:0 0 10px;font-size:14px;font-weight:700}.plan-donut{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.plan-donut__figure{flex-shrink:0}.plan-donut__center-value{fill:var(--p-ink);font-size:20px;font-weight:700}.plan-donut__center-label{fill:var(--p-ink-3);font-size:8px;font-weight:600}.plan-donut__track{stroke:var(--p-surface-2)}.plan-donut__seg{stroke-linecap:butt}.plan-donut__seg--planned{stroke:var(--p-planned)}.plan-donut__seg--progress{stroke:var(--p-progress)}.plan-donut__seg--blocked{stroke:var(--p-blocked)}.plan-donut__seg--completed{stroke:var(--p-completed)}.plan-legend__dot--planned{background:var(--p-planned)}.plan-legend__dot--progress{background:var(--p-progress)}.plan-legend__dot--blocked{background:var(--p-blocked)}.plan-legend__dot--completed{background:var(--p-completed)}.plan-legend__dot--warning{background:var(--p-warning)}.plan-legend{flex-direction:column;flex:130px;gap:6px;min-width:0;display:flex}.plan-legend__row{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:2px 0;font-family:inherit;font-size:12px;display:flex}.plan-legend__row--on .plan-legend__label{color:var(--p-ink);font-weight:700}.plan-legend__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.plan-legend__label{color:var(--p-ink-2);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.plan-legend__value{font-weight:700}.plan-eq__row{border-top:1px solid var(--p-border);align-items:center;gap:8px;padding:7px 0;font-size:12px;display:flex}.plan-eq__row:first-child{border-top:none}.plan-eq__name{flex-shrink:0;font-weight:600}.plan-eq__state{color:var(--p-ink-2);flex:1;align-items:center;gap:5px;min-width:0;display:flex}.plan-eq__dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.plan-eq__order{color:var(--p-ink-3);text-overflow:ellipsis;white-space:nowrap;max-width:110px;overflow:hidden}.plan-quick{flex-direction:column;gap:6px;display:flex}.plan-quick__row{background:var(--p-surface-2);min-height:44px;color:var(--p-ink);cursor:pointer;text-align:left;border:none;border-radius:10px;align-items:center;gap:10px;padding:0 10px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.plan-quick__row:hover{background:var(--p-planned-tint);color:var(--p-accent)}.plan-activity__row{border-top:1px solid var(--p-border);gap:8px;padding:7px 0;font-size:12px;display:flex}.plan-activity__row:first-child{border-top:none}.plan-activity__dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.plan-activity__body{flex:1;min-width:0}.plan-activity__text{color:var(--p-ink)}.plan-activity__meta{color:var(--p-ink-3);font-size:11px}.plan-empty{text-align:center;color:var(--p-ink-3);padding:24px 12px;font-size:13px}.plan-empty strong{color:var(--p-ink-2);margin-bottom:4px;font-size:14px;display:block}.plan-muted{color:var(--p-ink-3);font-size:12px}.win-page{flex-direction:column;gap:16px;display:flex}.win-back{cursor:pointer;min-height:0;color:var(--p-ink-2);background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:0;font-size:13px;display:flex}.win-explorer{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid;position:relative}.win-explorer--wide,.win-explorer--medium{height:var(--win-explorer-h,auto);align-items:stretch}.win-explorer--wide{grid-template-columns:240px minmax(0,1fr) 400px}.win-explorer--wide.win-explorer--no-detail{grid-template-columns:240px minmax(0,1fr)}.win-explorer--medium{grid-template-columns:minmax(0,1fr) 360px}.win-explorer--medium.win-explorer--no-detail{grid-template-columns:minmax(0,1fr)}.win-panel{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);min-width:0}.win-main{flex-direction:column;min-height:0;display:flex;overflow:hidden}.win-table-scroll{container:wintable/inline-size}.win-explorer--wide .win-table-scroll,.win-explorer--medium .win-table-scroll{flex:1;min-height:0;overflow-y:auto}.win-filters{flex-direction:column;gap:16px;padding:14px;display:flex}.win-filters__title{letter-spacing:.04em;text-transform:uppercase;color:var(--p-ink-3);margin:0 0 6px;font-size:11px;font-weight:700}.win-filters__list{flex-direction:column;gap:2px;display:flex}.win-chip-btn{width:100%;min-height:32px;font:inherit;color:var(--p-ink);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:4px 8px;font-size:13px;display:flex}.win-chip-btn:hover{background:var(--p-surface-2)}.win-chip-btn.active{background:var(--p-planned-tint);color:var(--p-accent);font-weight:600}.win-chip-btn__count{color:var(--p-ink-3);font-variant-numeric:tabular-nums;font-size:12px}.win-chip-btn__remove{color:var(--p-ink-3);padding:0 2px;font-size:16px;line-height:1}.win-check{cursor:pointer;align-items:center;gap:8px;min-height:28px;font-size:13px;display:flex}.win-check input{margin:0}.win-save-view{gap:6px;display:flex}.win-save-view input{border:1px solid var(--p-border);min-width:0;min-height:34px;font:inherit;border-radius:8px;flex:1;padding:0 8px;font-size:13px}.win-save-view button{min-height:34px;padding:0 10px;font-size:13px}.win-filters-wrap{display:none}.win-filters-wrap.open{display:block}.win-explorer--wide .win-filters-wrap{border-radius:var(--p-radius-lg);min-height:0;display:block;overflow-y:auto}.win-explorer--wide .win-filters-toggle{display:none}.win-explorer--medium .win-filters-wrap.open{z-index:5;border-radius:var(--p-radius-lg);width:260px;position:absolute;top:0;bottom:0;left:0;overflow-y:auto;box-shadow:0 10px 30px #0f172a2e}.win-toolbar{border-bottom:1px solid var(--p-border);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding:12px;display:flex}.win-toolbar .plan-search{flex:200px}.win-toolbar select{border:1px solid var(--p-border);background:var(--p-surface);min-height:44px;font:inherit;color:var(--p-ink);border-radius:10px;padding:0 10px;font-size:13px}.win-toolbar__count{color:var(--p-ink-2);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}.win-table{font-size:13px}.win-row{border-bottom:1px solid var(--p-border);cursor:pointer;width:100%;min-height:38px;font:inherit;color:var(--p-ink);text-align:left;background:0 0;border-top:none;border-left:none;border-right:none;grid-template-columns:44px minmax(0,1fr) 72px 132px 90px 140px 52px 18px;align-items:center;gap:8px;padding:0 12px;display:grid}.win-row:hover{background:var(--p-surface-2)}.win-row.selected{background:var(--p-planned-tint);box-shadow:inset 3px 0 0 var(--p-accent)}.win-row:focus-visible{outline:2px solid var(--p-accent);outline-offset:-2px}.win-row--head{cursor:default;text-transform:uppercase;letter-spacing:.04em;min-height:32px;color:var(--p-ink-3);background:var(--p-surface-2);z-index:2;font-size:11px;font-weight:700;position:sticky;top:0}.win-row--head:hover{background:var(--p-surface-2)}.win-row__num{color:var(--p-ink-3);font-variant-numeric:tabular-nums}.win-row__title{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.win-row__meta{display:none}.win-row__muted{color:var(--p-ink-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.win-row__age{color:var(--p-ink-2);font-variant-numeric:tabular-nums;text-align:right}.win-row__age--late{color:var(--p-blocked);font-weight:600}.win-row .plan-pill{text-overflow:ellipsis;white-space:nowrap;justify-self:start;max-width:100%;overflow:hidden}.win-group__head{border:none;border-bottom:1px solid var(--p-border);background:var(--p-surface);width:100%;min-height:36px;font:inherit;color:var(--p-ink);cursor:pointer;text-align:left;z-index:1;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:700;display:flex;position:sticky;top:32px}.win-group__count{color:var(--p-ink-3);font-variant-numeric:tabular-nums;font-weight:600}.win-group__chev{color:var(--p-ink-3);transition:transform .15s}.win-group__chev.collapsed{transform:rotate(-90deg)}.win-empty{text-align:center;color:var(--p-ink-2);padding:32px 16px}.win-more{justify-content:center;padding:12px;display:flex}@container wintable (width<=829px){.win-row{grid-template-columns:44px minmax(0,1fr) 72px 132px 90px 52px 18px}.win-col--related{display:none}}@container wintable (width<=679px){.win-row{grid-template-columns:44px minmax(0,1fr) 72px 132px 52px 18px}.win-col--assignee{display:none}}@container wintable (width<=459px){.win-row--head{display:none}.win-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title age""meta meta";row-gap:4px;min-height:56px;padding:10px 12px}.win-row__title{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-area:title;display:-webkit-box}.win-row__age{grid-area:age}.win-row__meta{color:var(--p-ink-2);flex-wrap:wrap;grid-area:meta;align-items:center;gap:6px;font-size:12px;display:flex}.win-row>.win-col--desktop{display:none}.win-group__head{top:0}}.win-detail{flex-direction:column;min-height:0;display:flex}.win-explorer--wide .win-detail-overlay,.win-explorer--medium .win-detail-overlay{display:contents}.win-explorer--wide .win-detail,.win-explorer--medium .win-detail{height:100%;overflow:hidden}.win-detail-overlay--fixed{z-index:60;background:#0f172a59;justify-content:flex-end;display:flex;position:fixed;inset:0}.win-detail-overlay--fixed .win-detail{border:none;border-radius:0;width:min(480px,100%);height:100%}.win-detail__head{flex-direction:column;gap:8px;padding:14px 16px 0;display:flex}.win-detail__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.win-detail__num{color:var(--p-ink-3);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.win-detail__title{margin:0;font-size:17px;font-weight:700;line-height:1.3}.win-detail__pills{flex-wrap:wrap;gap:6px;display:flex}.win-detail__close{color:var(--p-ink-2);cursor:pointer;background:0 0;border:none;min-width:36px;min-height:36px;padding:0;font-size:22px;line-height:1}.win-tabs{border-bottom:1px solid var(--p-border);gap:2px;margin-top:6px;padding:0 12px;display:flex;overflow-x:auto}.win-tab{min-height:40px;font:inherit;color:var(--p-ink-2);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:10px 8px;font-size:13px;font-weight:600}.win-tab.active{color:var(--p-accent);border-bottom-color:var(--p-accent)}.win-detail__body{flex-direction:column;flex:1;gap:16px;min-height:0;padding:14px 16px 20px;display:flex;overflow-y:auto}.win-fields{grid-template-columns:140px minmax(0,1fr);gap:6px 12px;margin:0;font-size:13px;display:grid}.win-fields dt{color:var(--p-ink-2)}.win-fields dd{overflow-wrap:anywhere;margin:0}.win-section__title{letter-spacing:.04em;text-transform:uppercase;color:var(--p-ink-3);margin:0 0 6px;font-size:11px;font-weight:700}.win-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.5}.win-text--empty{color:var(--p-ink-3);font-style:italic}.win-callout{border-radius:var(--p-radius);padding:10px 12px;font-size:13px;line-height:1.4}.win-callout--warning{background:var(--p-warning-tint);color:#854d0e}.win-callout--info{background:var(--p-surface-2);color:var(--p-ink-2)}.win-timeline{margin:0;padding:0;list-style:none;position:relative}.win-timeline:before{content:"";background:var(--p-border);width:2px;position:absolute;top:6px;bottom:6px;left:6px}.win-timeline__item{padding:0 0 16px 24px;font-size:13px;position:relative}.win-timeline__dot{background:var(--p-surface);border:3px solid var(--p-completed);border-radius:50%;width:14px;height:14px;position:absolute;top:3px;left:0}.win-timeline__dot--planned{border-color:var(--p-planned)}.win-timeline__dot--progress{border-color:var(--p-progress)}.win-timeline__dot--blocked{border-color:var(--p-blocked)}.win-timeline__dot--warning{border-color:var(--p-warning)}.win-timeline__dot--dashed{border-style:dashed}.win-timeline__label{font-weight:600}.win-timeline__date{color:var(--p-ink-2);font-size:12px}.win-steps{gap:4px;display:flex}.win-step{text-align:center;color:var(--p-ink-3);flex:1;font-size:11px;font-weight:600}.win-step__bar{background:var(--p-border);border-radius:3px;height:6px;margin-bottom:4px}.win-step.done .win-step__bar{background:var(--p-progress)}.win-step.done{color:var(--p-ink-2)}.win-step.current .win-step__bar{background:var(--p-accent)}.win-step.current{color:var(--p-accent)}.win-page .plan-seg__btn{text-decoration:none}.win-link{color:var(--p-accent);margin-top:4px;margin-right:12px;font-size:13px;display:inline-block}.win-timeline__dot--comment{border-color:var(--p-accent);background:var(--p-accent)}.win-comment{background:var(--p-surface-2);border:1px solid var(--p-border);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:10px;margin:6px 0 0;padding:8px 10px;font-size:13px;line-height:1.45}.win-attachments{flex-direction:column;gap:6px;margin-bottom:6px;display:flex}.win-attachment{border:1px solid var(--p-border);background:var(--p-surface);width:100%;min-height:40px;font:inherit;color:var(--p-ink);text-align:left;cursor:pointer;border-radius:10px;justify-content:flex-start;align-items:center;gap:8px;padding:6px 10px;font-size:13px;display:flex}.win-attachment:hover{background:var(--p-surface-2)}.win-attachment span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.win-viewer{z-index:80;background:#0f172a99;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.win-viewer__panel{background:var(--p-surface);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);flex-direction:column;width:min(960px,100%);height:min(90vh,900px);display:flex;overflow:hidden}.win-viewer__head{border-bottom:1px solid var(--p-border);align-items:center;gap:8px;padding:8px 8px 8px 16px;display:flex}.win-viewer__name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;overflow:hidden}.win-viewer__head .plan-btn{min-height:36px;text-decoration:none}.win-viewer__body{background:var(--p-surface-2);flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.win-viewer__body img{object-fit:contain;max-width:100%;max-height:100%}.win-viewer__body iframe{background:#fff;border:0;width:100%;height:100%}@media (width<=767px){.win-viewer{padding:0}.win-viewer__panel{border-radius:0;width:100%;height:100%}}.win-comment-box{border-top:1px solid var(--p-border);flex-direction:column;gap:8px;padding-top:12px;display:flex}.win-comment-box .plan-btn{align-self:flex-start}.win-input,.win-select{border:1px solid var(--p-border);background:var(--p-surface);min-height:40px;font:inherit;color:var(--p-ink);border-radius:10px;min-width:0;padding:0 10px;font-size:13px}.win-input{flex:1}.win-input--sm{width:100%;min-height:32px;font-size:12px}.win-textarea{resize:vertical;width:100%;padding:8px 10px;line-height:1.45}.win-actions-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.win-icon-btn{color:var(--p-ink-3);cursor:pointer;background:0 0;border:none;border-radius:6px;min-width:28px;min-height:28px;padding:0;font-size:18px;line-height:1}.win-icon-btn:hover{background:var(--p-surface-2);color:var(--p-blocked)}.win-btn--danger{color:var(--p-blocked);border-color:var(--p-blocked)}.win-rp-card{border:1px solid var(--p-border);border-radius:var(--p-radius);background:var(--p-surface-2);flex-direction:column;gap:8px;padding:12px;display:flex}.win-rp-card__top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.win-similar{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.win-similar__item{border:1px solid var(--p-border);border-radius:10px;align-items:center;gap:8px;padding:6px 8px;display:flex}.win-similar__pct{text-align:center;min-width:44px;color:var(--p-accent);background:var(--p-planned-tint);font-variant-numeric:tabular-nums;border-radius:999px;flex-shrink:0;padding:2px 6px;font-size:12px;font-weight:700}.win-similar__main{min-width:0;min-height:0;font:inherit;text-align:left;cursor:pointer;color:var(--p-ink);background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:3px;padding:0;display:flex}.win-similar__title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:13px;font-weight:500;overflow:hidden}.win-similar__meta{color:var(--p-ink-2);align-items:center;gap:6px;font-size:11px;display:flex}.win-similar__btn{flex-shrink:0;min-height:32px;padding:0 10px;font-size:12px}.win-problem-list{flex-direction:column;gap:8px;display:flex}.win-problem-row{border:1px solid var(--p-border);border-radius:var(--p-radius);background:var(--p-surface);width:100%;font:inherit;text-align:left;color:var(--p-ink);cursor:pointer;justify-content:flex-start;align-items:center;gap:12px;padding:10px 12px;display:flex}.win-problem-row:hover{background:var(--p-surface-2)}.win-problem-row__count{background:var(--p-planned-tint);width:40px;height:40px;color:var(--p-accent);font-variant-numeric:tabular-nums;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.win-problem-row__main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.win-problem-row__meta{color:var(--p-ink-2);font-size:12px}.win-card{flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.win-card__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.win-card__title{margin:0;font-size:15px;font-weight:700}.win-title-input{min-width:0;font:inherit;color:var(--p-ink);background:0 0;border:1px solid #0000;border-radius:8px;flex:1;padding:4px 6px;font-size:20px;font-weight:700}.win-title-input:hover,.win-title-input:focus{border-color:var(--p-border);background:var(--p-surface)}.win-problem-grid{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}@media (width>=1100px){.win-problem-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start}}.win-strip{height:18px;margin:6px 8px 0;position:relative}.win-strip:before{content:"";background:var(--p-border);height:2px;position:absolute;top:8px;left:0;right:0}.win-strip__dot{border:2px solid var(--p-surface);background:var(--p-completed);border-radius:50%;width:12px;height:12px;margin-left:-6px;position:absolute;top:3px}.win-strip__dot--planned{background:var(--p-planned)}.win-strip__dot--progress{background:var(--p-progress)}.win-strip__dot--blocked{background:var(--p-blocked)}.win-strip__dot--warning{background:var(--p-warning)}.win-strip__labels{color:var(--p-ink-3);justify-content:space-between;margin:2px 8px 0;font-size:11px;display:flex}.win-linked{align-items:flex-start;gap:6px;display:flex}.win-linked__main{min-width:0;min-height:0;font:inherit;text-align:left;cursor:pointer;color:var(--p-ink);background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:2px;padding:0;display:flex}.win-linked__main:hover .win-timeline__label{color:var(--p-accent)}.win-whys{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.win-whys__item{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:8px;display:grid;position:relative}.win-whys__label{color:var(--p-accent);font-size:12px;font-weight:700}.win-fish{align-items:stretch;gap:0;display:flex;overflow-x:auto}.win-fish__body{flex-direction:column;flex:1;min-width:480px;display:flex}.win-fish__row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.win-fish__spine{background:var(--p-ink-2);border-radius:2px;height:3px;margin:10px 0}.win-fish__branch{border-left:3px solid var(--p-border);flex-direction:column;gap:4px;min-width:0;padding:4px 0 4px 8px;display:flex}.win-fish__label{text-transform:uppercase;letter-spacing:.04em;color:var(--p-ink-2);font-size:11px;font-weight:700}.win-fish__causes{flex-direction:column;gap:2px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.win-fish__causes li{justify-content:space-between;align-items:center;gap:4px;display:flex}.win-fish__head{background:var(--p-blocked-tint);width:120px;color:var(--p-blocked);border-radius:10px;flex-shrink:0;align-self:center;margin-left:8px;padding:10px;font-size:12px;font-weight:700;line-height:1.3}.win-action-list,.win-check-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.win-action{align-items:flex-start;gap:8px;display:flex}.win-action input[type=checkbox]{flex-shrink:0;width:18px;height:18px;margin-top:3px}.win-action__main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.win-action__text{font-size:13px}.win-action.done .win-action__text{color:var(--p-ink-3);text-decoration:line-through}.win-action-form{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto auto auto;align-items:center;gap:8px;display:grid}@media (width<=700px){.win-action-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.win-check-item{border:1px solid var(--p-border);border-radius:10px;flex-direction:column;gap:8px;padding:10px;display:flex}.win-check-item .plan-seg{flex-wrap:wrap;align-self:flex-start}.win-filter-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.win-kpis{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;display:grid}.win-charts{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}@media (width>=1100px){.win-charts{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.win-chart{flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.win-chart__head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.win-chart__sub{color:var(--p-ink-2);margin:2px 0 0;font-size:12px}.win-chart__toggle{min-height:36px;padding:0 10px;font-size:12px}.win-chart__table{overflow-x:auto}.win-legend{color:var(--p-ink-2);flex-wrap:wrap;align-items:center;gap:12px;font-size:12px;display:flex}.win-legend__item{align-items:center;gap:6px;display:inline-flex}.win-legend__swatch{border-radius:3px;width:12px;height:12px;display:inline-block}.win-legend__note{color:var(--p-ink-3)}.win-scale{border-radius:3px;width:96px;height:10px;display:inline-block}.win-hbars{flex-direction:column;gap:4px;display:flex}.win-hbar{min-height:28px;color:var(--p-ink);grid-template-columns:minmax(80px,34%) minmax(0,1fr) 36px 40px;align-items:center;gap:8px;font-size:12px;display:grid}.win-hbar--link{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:6px;grid-template-columns:minmax(80px,40%) minmax(0,1fr) 36px;padding:0 4px;font-size:12px}.win-hbar--link:hover{background:var(--p-surface-2)}.win-hbar__label{text-overflow:ellipsis;white-space:nowrap;color:var(--p-ink-2);overflow:hidden}.win-hbar__track{border-left:1px solid var(--p-border);height:16px;position:relative}.win-hbar__bar{background:var(--p-accent);cursor:default;outline-offset:2px;border-radius:0 4px 4px 0;min-width:2px;height:16px;display:block}.win-hbar__bar:hover,.win-hbar__bar:focus-visible{filter:brightness(1.15)}.win-hbar__bar--rest{background:var(--p-ink-3)}.win-hbar__value{font-variant-numeric:tabular-nums;text-align:right;font-weight:600}.win-hbar__cum{font-variant-numeric:tabular-nums;text-align:right;color:var(--p-ink-3)}.win-heat{gap:2px;font-size:12px;display:grid}.win-heat__row{display:contents}.win-heat__col{color:var(--p-ink-3);text-align:center;text-transform:uppercase;letter-spacing:.03em;padding-bottom:2px;font-size:11px;font-weight:700}.win-heat__label{text-overflow:ellipsis;white-space:nowrap;color:var(--p-ink-2);align-self:center;padding-right:6px;overflow:hidden}.win-heat__cell{background:var(--p-surface-2);font-variant-numeric:tabular-nums;cursor:default;border-radius:4px;justify-content:center;align-items:center;min-height:30px;font-weight:600;display:flex}.win-heat__cell:hover,.win-heat__cell:focus-visible{outline:2px solid var(--p-ink);outline-offset:-2px}.win-heat__total{text-align:right;font-variant-numeric:tabular-nums;color:var(--p-ink-2);align-self:center}.win-cols{border-bottom:1px solid var(--p-border);grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:10px;height:200px;padding-top:8px;display:grid}.win-col{flex-direction:column;align-items:center;min-width:0;height:100%;display:flex}.win-col__plot{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;width:100%;min-height:0;display:flex}.win-col__value{font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:12px;font-weight:600}.win-col__stack{cursor:default;flex-direction:column;gap:2px;width:min(24px,100%);min-height:2px;display:flex}.win-col__stack:focus-visible{outline:2px solid var(--p-ink);outline-offset:2px}.win-col__seg{background:var(--p-accent);flex-basis:0;min-height:2px;display:block}.win-col__seg--overdue{background:var(--p-blocked)}.win-col__stack>.win-col__seg:first-child{border-radius:4px 4px 0 0}.win-col__label{color:var(--p-ink-2);white-space:nowrap;margin-top:6px;margin-bottom:-2px;font-size:11px;transform:translateY(100%)}.win-cols+*{margin-top:18px}.win-table-view{border-collapse:collapse;width:100%;font-size:12px}.win-table-view th,.win-table-view td{border-bottom:1px solid var(--p-border);text-align:right;font-variant-numeric:tabular-nums;padding:6px 8px}.win-table-view th:first-child,.win-table-view td:first-child{text-align:left}.win-table-view th{color:var(--p-ink-2);font-weight:700}.win-tip{z-index:90;pointer-events:none;background:var(--p-ink);color:#fff;white-space:nowrap;border-radius:8px;padding:6px 10px;font-size:12px;position:fixed;transform:translate(-50%,calc(-100% - 12px));box-shadow:0 6px 20px #0f172a40}.win-tip__row strong{font-size:13px}.win-tip__row span{color:#cbd5e1}.win-inline-link{min-height:0;color:var(--p-accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.win-field-inline{gap:8px}.win-queue{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.win-queue__item{border:1px solid var(--p-border);border-radius:var(--p-radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.win-queue__main{flex-direction:column;flex:280px;gap:3px;min-width:0;display:flex}.win-queue__top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.win-queue__kind{text-transform:uppercase;letter-spacing:.04em;color:var(--p-ink-3);font-size:11px;font-weight:700}.win-queue__title{overflow-wrap:anywhere;font-size:14px}.win-queue__actions{flex-wrap:wrap;gap:6px;display:flex}.win-queue__actions .plan-btn{min-height:36px;padding:0 10px;font-size:12px;text-decoration:none}.win-page .plan-header__actions{min-width:0;max-width:100%}.win-page .plan-header__actions>nav.plan-seg{scrollbar-width:none;max-width:100%;overflow-x:auto}.win-page .plan-header__actions>nav.plan-seg::-webkit-scrollbar{display:none}.win-page .plan-header__actions>nav.plan-seg .plan-seg__btn{flex-shrink:0}.winr{flex-direction:column;gap:16px;max-width:560px;display:flex}.winr-form{flex-direction:column;gap:16px;display:flex}.winr-form textarea,.winr-form select,.winr-form input:not([type=file]){box-sizing:border-box;width:100%}.winr-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;display:grid}.winr-label{font-size:var(--fs-key);text-transform:uppercase;color:#787882}.winr-inline{gap:8px;display:flex}.winr-inline input{flex:1;min-width:0}.winr-form .plan-seg{align-self:flex-start}.winr-alert{border-radius:var(--p-radius);background:var(--p-blocked-tint);color:var(--p-blocked);margin:8px 0 0;padding:10px 12px;font-weight:600}.winr-submit{min-height:48px;font-size:1rem}.winr-done{flex-direction:column;gap:8px;display:flex}.winr-done p{margin:0}.winr-done__number{color:var(--p-accent);letter-spacing:.02em;font-size:2rem;font-weight:700}.winr-actions{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.winr-actions a{text-decoration:none}.winr-paths{gap:10px;display:grid}.winr-path{--tone:var(--p-accent);text-align:left;cursor:pointer;border:1px solid var(--p-border);min-height:72px;font:inherit;color:inherit;align-items:center;gap:14px;display:flex}.winr-path:hover,.winr-path:focus-visible{border-color:var(--tone)}.winr-path__icon{width:44px;height:44px;color:var(--tone);background:color-mix(in srgb, var(--tone) 12%, var(--p-surface));border-radius:12px;flex:none;place-items:center;display:grid}.winr-path__text{flex-direction:column;gap:4px;min-width:0;display:flex}.winr-path__text span{color:var(--p-ink-2);font-size:var(--fs-label)}.winr-path--safety{--tone:var(--p-blocked)}.winr-path--spill{--tone:var(--p-planned)}.winr-path--maintenance{--tone:var(--p-warning)}.winr-path--problem{--tone:var(--p-filling)}.winr-path--idea{--tone:var(--p-progress)}.winr-path--it{--tone:var(--p-completed)}.winr-back{align-self:flex-start}.winr-wrap{flex-wrap:wrap}.winr-options{flex-direction:column;gap:8px;display:flex}.winr-options .plan-btn{text-align:left;justify-content:flex-start;min-height:44px}.wint{grid-template-columns:minmax(260px,320px) minmax(0,1fr);align-items:start;gap:16px;display:grid}@media (width<=900px){.wint{grid-template-columns:1fr}}.wint-list{flex-direction:column;gap:8px;padding:16px;display:flex}.wint-list .win-card__title{margin:0 0 4px}.wint-item{text-align:left;border:1px solid var(--p-border);border-radius:var(--p-radius);background:var(--p-surface);min-height:0;font:inherit;color:inherit;cursor:pointer;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:4px;padding:10px 12px;display:flex}.wint-item:hover{background:var(--p-surface-2)}.wint-item--on{border-color:var(--p-accent);box-shadow:inset 3px 0 0 var(--p-accent)}.wint-item__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.wint-item__text{-webkit-line-clamp:2;color:var(--p-ink-2);font-size:var(--fs-label);-webkit-box-orient:vertical;line-height:1.35;display:-webkit-box;overflow:hidden}.wint-hurt{background:var(--p-blocked-tint);color:var(--p-blocked)}.wint-panel{flex-direction:column;padding:0;display:flex;overflow:hidden}.wint-head{border-bottom:1px solid var(--p-border);padding:16px 20px 12px}.wint-head__title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.wint-head__title h2{margin:0;font-size:18px}.wint-head p{margin:4px 0 0}.wint-section{border-bottom:1px solid var(--p-border);flex-direction:column;gap:12px;padding:16px 20px;display:flex}.wint-section:last-child{border-bottom:none}.wint-section__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.wint-sub{font-size:var(--fs-key);letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink-2);margin:0}.wint-facts{font-size:var(--fs-label);grid-template-columns:120px minmax(0,1fr);gap:8px 16px;margin:0;display:grid}.wint-facts dt{color:var(--p-ink-2)}.wint-facts dd{color:var(--p-ink);margin:0}@media (width<=560px){.wint-facts{grid-template-columns:1fr;gap:2px}.wint-facts dd{margin-bottom:8px}}.wint-text{white-space:pre-wrap;overflow-wrap:anywhere}.wint-private{border:1px dashed var(--p-blocked);border-radius:var(--p-radius);background:color-mix(in srgb, var(--p-blocked) 4%, var(--p-surface));padding:10px 12px}.wint-private dt{color:var(--p-blocked)}.wint-photos{flex-wrap:wrap;gap:8px;display:flex}.wint-photos img{object-fit:cover;border-radius:var(--p-radius);border:1px solid var(--p-border);width:88px;height:88px;display:block}.wint-ai{background:var(--p-surface-2)}.wint-ai p{margin:0}.wint-suggestion{font-size:var(--fs-label);margin:0;padding-left:18px}.wint-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:14px 16px;display:grid}@media (width<=560px){.wint-grid{grid-template-columns:1fr}}.wint-grid select,.wint-grid input,.wint-grid textarea{box-sizing:border-box;width:100%}.wint-wide{grid-column:1/-1}.wint-grid .winr-alert{margin:0}.wint-actions{justify-content:flex-end;align-items:center;gap:12px;padding-top:4px;display:flex}.wint-actions .error-text{margin:0 auto 0 0}.winr-private{border:1px dashed var(--p-blocked);border-radius:var(--p-radius);background:color-mix(in srgb, var(--p-blocked) 4%, var(--p-surface));flex-direction:column;gap:12px;margin:0;padding:12px;display:flex}.winr-private legend{font-size:var(--fs-label);color:var(--p-blocked);padding:0 6px;font-weight:600}.winr-private select,.winr-private input,.winr-private textarea{box-sizing:border-box;width:100%}.sop-page{flex-direction:column;gap:16px;min-width:0;display:flex}.sop-code{letter-spacing:.02em;color:var(--p-ink-2);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;font-weight:700}.sop-library{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:12px;display:grid}.sop-lib-card{text-align:left;background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);height:auto;min-height:0;box-shadow:var(--p-shadow);color:var(--p-ink);cursor:pointer;font:inherit;flex-direction:column;align-items:stretch;gap:6px;padding:16px;display:flex}.sop-lib-card:hover{border-color:var(--p-accent);background:var(--p-surface)}.sop-lib-card__top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sop-lib-card__title{font-size:16px;font-weight:700;line-height:1.3}.sop-lib-card__ppe{color:var(--p-warning);gap:8px;margin-top:4px;display:flex}.sop-lib-card__hit{color:var(--p-accent);font-size:13px;font-weight:600}.sop-search{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.sop-search__input{flex:280px;min-width:0;max-width:560px;min-height:48px;font-size:16px}.sop-head{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);flex-direction:column;gap:6px;padding:16px;display:flex}.sop-head__meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sop-head__title{margin:0;font-size:22px;font-weight:700;line-height:1.25}.sop-head__people{margin:0}.sop-ppe{flex-wrap:wrap;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.sop-ppe__item{background:var(--p-warning-tint);color:var(--p-ink);border-radius:999px;align-items:center;gap:6px;padding:5px 10px 5px 8px;font-size:13px;font-weight:600;display:inline-flex}.sop-ppe__item svg{color:var(--p-warning)}.sop-changed{border:1px solid var(--p-progress);background:var(--p-progress-tint);border-radius:var(--p-radius-lg);border-left-width:4px;flex-direction:column;align-items:flex-start;gap:8px;padding:14px 16px;display:flex}.sop-changed__head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.sop-changed__notes{color:var(--p-ink-2);margin:0;font-size:14px}.sop-changed__list{flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:14px;display:flex}.sop-link{height:auto;min-height:0;color:var(--p-accent);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.sop-link:hover{background:0 0}.sop-viewer{container:sopviewer/inline-size}.sop-viewer__layout{flex-direction:column;gap:16px;display:flex}.sop-index{min-width:0}.sop-index__title{display:none}.sop-index ol{gap:6px;margin:0;padding:2px 0 4px;list-style:none;display:flex;overflow-x:auto}.sop-index__item{border:1px solid var(--p-border);background:var(--p-surface);min-width:40px;height:40px;min-height:40px;font:inherit;color:var(--p-ink);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 10px;font-size:14px;font-weight:700;display:flex;position:relative}.sop-index__item.active{border-color:var(--p-accent);color:var(--p-accent)}.sop-index__label{display:none}.sop-index__dot{background:var(--p-blocked);border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:4px}.sop-steps{flex-direction:column;gap:16px;min-width:0;display:flex}@container sopviewer (width>=900px){.sop-viewer__layout{grid-template-columns:220px minmax(0,1fr);align-items:start;display:grid}.sop-index{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);padding:12px}.sop-index__title{letter-spacing:.04em;text-transform:uppercase;color:var(--p-ink-3);margin:0 0 8px;font-size:11px;font-weight:700;display:block}.sop-index ol{flex-direction:column;gap:2px;padding:0;overflow:visible}.sop-index__item{text-align:left;background:0 0;border:none;justify-content:flex-start;width:100%;height:auto;min-height:36px;padding:6px 8px;font-weight:500}.sop-index__item:hover{background:var(--p-surface-2)}.sop-index__item.active{background:var(--p-planned-tint)}.sop-index__num{background:var(--p-surface-2);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.sop-index__label{flex:1;min-width:0;font-size:13px;line-height:1.3;display:block}.sop-index__dot{flex-shrink:0;position:static}.sop-steps{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));display:grid}}.sop-step{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);flex-direction:column;min-width:0;scroll-margin-top:16px;display:flex;overflow:hidden}.sop-step--focus{border-color:var(--p-accent);box-shadow:0 0 0 3px var(--p-planned-tint), var(--p-shadow)}.sop-step__media{aspect-ratio:4/3;object-fit:cover;background:var(--p-surface-2);width:100%;display:block}.sop-step__media.sop-annotated{aspect-ratio:auto}.sop-step__video-link{text-decoration:none}.sop-step__media--video{object-fit:contain;background:#000}.sop-step__media--empty{color:var(--p-ink-3);border-bottom:1px solid var(--p-border);flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.sop-step__media--empty span{color:var(--p-border);font-size:56px;font-weight:800;line-height:1}.sop-step__media--empty small{font-size:12px}.sop-step__body{flex-direction:column;flex:1;gap:10px;padding:14px 16px 16px;display:flex}.sop-step__head{align-items:center;gap:10px;display:flex}.sop-step__num{background:var(--p-accent);color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;font-weight:800;display:inline-flex}.sop-step__title{margin:0;font-size:17px;font-weight:700;line-height:1.25}.sop-step__pills{flex-wrap:wrap;gap:6px;display:flex}.sop-step__pills:empty{display:none}.sop-step__instruction{margin:0;font-size:16px;font-weight:600;line-height:1.4}.sop-step__points{flex-direction:column;gap:6px;margin:0;padding:0;font-size:14px;list-style:none;display:flex}.sop-step__points li{align-items:flex-start;gap:8px;display:flex}.sop-step__points svg{color:var(--p-progress);flex-shrink:0;margin-top:2px}.sop-step__why{background:var(--p-surface-2);color:var(--p-ink-2);border-radius:10px;margin:0;padding:8px 10px;font-size:13px}.sop-step__foot{justify-content:flex-end;margin-top:auto;display:flex}.sop-step__qr{min-height:36px;font-size:13px}.sop-dialog{z-index:1000;background:#0f172a8c;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.sop-dialog__panel{background:var(--p-surface);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);text-align:center;flex-direction:column;align-items:center;gap:12px;width:min(420px,100%);max-height:100%;padding:20px;display:flex;overflow-y:auto}.sop-dialog__actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.sop-dialog__actions a{text-decoration:none}.sop-qr__label{flex-direction:column;gap:2px;display:flex}.sop-qr__img{aspect-ratio:1;width:min(280px,100%);image-rendering:pixelated}.sop-qr__url{color:var(--p-ink-3);word-break:break-all;margin:0;font-size:12px}.sop-page .plan-header__actions{min-width:0;max-width:100%}.sop-page .plan-header__actions>nav.plan-seg{scrollbar-width:none;max-width:100%;overflow-x:auto}.sop-page .plan-header__actions>nav.plan-seg::-webkit-scrollbar{display:none}.sop-head__actions{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.sop-approval-check{margin:4px 0 0;font-size:13px;font-weight:600}.sop-approval-check.is-verified{color:var(--p-progress)}.sop-approval-check.is-mismatch{color:var(--p-blocked)}a.plan-btn{text-decoration:none}.sop-section-title{margin:0 0 4px;font-size:16px;font-weight:700}.sop-person{flex-direction:column;gap:4px;max-width:360px;display:flex}.sop-review-card{border-radius:var(--p-radius-lg);border:1px solid var(--p-border);background:var(--p-surface);box-shadow:var(--p-shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex}.sop-review-card.has-due{border-color:var(--p-accent);background:var(--p-planned-tint)}.sop-review-card>div{flex:240px;min-width:0}.sop-assignments{flex-direction:column;gap:8px;display:flex}.sop-asg{border-radius:var(--p-radius-lg);border:1px solid var(--p-border);background:var(--p-surface);box-shadow:var(--p-shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.sop-asg__main{flex-direction:column;flex:260px;align-items:flex-start;gap:4px;min-width:0;display:flex}.sop-asg__top{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sop-asg__title{text-align:left;height:auto;min-height:0;font:inherit;color:var(--p-ink);cursor:pointer;background:0 0;border:none;padding:0;font-size:16px;font-weight:700}.sop-asg__title:hover{color:var(--p-accent);background:0 0}.sop-asg__side{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sop-learn{flex-direction:column;gap:16px;width:100%;max-width:640px;margin:0 auto;display:flex}.sop-learn__top{flex-direction:column;gap:10px;display:flex}.sop-learn__title{flex-direction:column;gap:2px;display:flex}.sop-learn__actions{justify-content:flex-end;display:flex}.sop-learn__actions .plan-btn{min-width:140px}.sop-learn__retry{border-radius:var(--p-radius);background:var(--p-warning-tint);border:1px solid var(--p-warning);padding:10px 14px;font-size:14px;font-weight:600}.sop-progress{background:var(--p-surface-2);border:1px solid var(--p-border);border-radius:999px;height:8px;overflow:hidden}.sop-progress__fill{background:var(--p-progress);height:100%;transition:width .25s}.sop-q{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);flex-direction:column;gap:14px;padding:18px 16px;display:flex}.sop-q__meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sop-q__type{letter-spacing:.04em;text-transform:uppercase;color:var(--p-accent);font-size:11px;font-weight:700}.sop-q__prompt{margin:0;font-size:19px;font-weight:700;line-height:1.35}.sop-q__options{flex-direction:column;gap:8px;display:flex}.sop-q__option{text-align:left;border:2px solid var(--p-border);background:var(--p-surface);width:100%;height:auto;min-height:52px;color:var(--p-ink);font:inherit;cursor:pointer;border-radius:12px;justify-content:flex-start;align-items:center;gap:10px;padding:10px 14px;font-size:15px;font-weight:500;display:flex}.sop-q__option:disabled{cursor:default;opacity:1}.sop-q__option.is-selected{border-color:var(--p-accent);background:var(--p-planned-tint)}.sop-q__option.is-right{border-color:var(--p-progress);background:var(--p-progress-tint)}.sop-q__option.is-wrong{border-color:var(--p-blocked);background:var(--p-blocked-tint)}.sop-q__order{flex-direction:column;gap:12px;display:flex}.sop-q__picked{flex-direction:column;gap:8px;min-height:52px;margin:0;padding:0;list-style:none;display:flex}.sop-q__pos{background:var(--p-accent);color:#fff;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:800;display:inline-flex}.sop-q__pool{border-top:1px dashed var(--p-border);flex-wrap:wrap;gap:8px;padding-top:12px;display:flex}.sop-q__chip{border:1px solid var(--p-border);background:var(--p-surface-2);height:auto;min-height:44px;font:inherit;color:var(--p-ink);cursor:pointer;text-align:left;border-radius:12px;padding:8px 12px;font-size:14px}.sop-q__correct-order{color:var(--p-ink-2);margin:0;font-size:13px}.sop-q__hotspot{cursor:crosshair;border:1px solid var(--p-border);border-radius:12px;width:100%;position:relative;overflow:hidden}.sop-q__hotspot img{-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.sop-q__zone,.sop-q__mark{pointer-events:none;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.sop-q__zone{border:4px solid var(--p-progress);box-shadow:0 0 0 4px #ffffffb3}.sop-q__mark{background:var(--p-accent);border:3px solid #fff;width:22px;height:22px;box-shadow:0 1px 4px #0f172a80}.sop-q__mark.is-right{background:var(--p-progress)}.sop-q__mark.is-wrong{background:var(--p-blocked)}.sop-q__feedback{border-radius:12px;padding:12px 14px;font-size:14px}.sop-q__feedback strong{align-items:center;gap:6px;font-size:15px;display:flex}.sop-q__feedback p{margin:6px 0 0}.sop-q__feedback.is-right{background:var(--p-progress-tint);color:var(--p-ink);border:1px solid var(--p-progress)}.sop-q__feedback.is-right strong{color:var(--p-progress)}.sop-q__feedback.is-wrong{background:var(--p-blocked-tint);color:var(--p-ink);border:1px solid var(--p-blocked)}.sop-q__feedback.is-wrong strong{color:var(--p-blocked)}.sop-q__actions{justify-content:flex-end;display:flex}.sop-q__actions .plan-btn{min-width:140px}.sop-result{text-align:center;background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);width:100%;max-width:520px;box-shadow:var(--p-shadow);flex-direction:column;align-items:center;gap:10px;margin:24px auto;padding:24px 20px;display:flex}.sop-result__badge{background:var(--p-progress-tint);width:56px;height:56px;color:var(--p-progress);border-radius:50%;justify-content:center;align-items:center;font-size:28px;font-weight:800;display:flex}.sop-result__title{margin:0;font-size:22px}.sop-result__score{margin:0;font-size:15px;font-weight:600}.sop-result__next{background:var(--p-warning-tint);border:1px solid var(--p-warning);text-align:left;border-radius:12px;flex-direction:column;gap:2px;padding:10px 14px;font-size:14px;display:flex}.sop-missing{border-color:var(--p-warning);background:var(--p-warning-tint);gap:4px;font-size:14px}.sop-signoff{flex-direction:column;gap:16px;width:100%;max-width:820px;margin:0 auto;display:flex}.sop-signoff__obs{color:var(--p-ink-2);font-size:13px;font-style:italic}.sop-signoff__sig{object-fit:contain;border-bottom:1px solid var(--p-border);width:120px;height:40px}.sop-signoff__submit{text-align:right;flex-direction:column;align-items:flex-end;gap:6px;display:flex}.sop-signoff__submit .plan-btn{min-width:200px}.sop-check{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sop-check__item{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);border-left-width:4px;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:12px 14px;display:flex}.sop-check__item.is-ok{border-left-color:var(--p-progress)}.sop-check__item.is-coached{border-left-color:var(--p-warning)}.sop-check__item.is-fail{border-left-color:var(--p-blocked)}.sop-check__head{flex:300px;align-items:flex-start;gap:10px;min-width:0;display:flex}.sop-check__text{flex-direction:column;gap:2px;min-width:0;display:flex}.sop-check__look{color:var(--p-ink-2);font-size:12px}.sop-check__seg{flex-shrink:0}.sop-check__seg .plan-seg__btn{justify-content:center;min-width:76px;min-height:44px}.sop-check__btn--ok.active{background:var(--p-progress);color:#fff}.sop-check__btn--coached.active{background:var(--p-warning);color:#fff}.sop-check__btn--fail.active{background:var(--p-blocked);color:#fff}.sop-check__note{flex:100%}.sop-levels{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.sop-level{text-align:left;border:2px solid var(--p-border);background:var(--p-surface);height:auto;min-height:64px;font:inherit;color:var(--p-ink);cursor:pointer;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.sop-level span{color:var(--p-ink-2);font-size:12px;font-weight:400}.sop-level.active{border-color:var(--p-accent);background:var(--p-planned-tint)}.sop-field{flex-direction:column;gap:6px;margin-top:8px;display:flex}.sop-field textarea{resize:vertical;width:100%}.sop-sign{border:1px dashed var(--p-ink-3);background:var(--p-surface-2);border-radius:12px;overflow:hidden}.sop-sign__canvas{touch-action:none;cursor:crosshair;background:#fff;width:100%;height:160px;display:block}.sop-sign__foot{border-top:1px solid var(--p-border);justify-content:space-between;align-items:center;gap:8px;padding:6px 8px 6px 12px;display:flex}.sop-sign__clear{min-height:36px;font-size:13px}.sop-result__badge.is-fail{background:var(--p-blocked-tint);color:var(--p-blocked)}.sop-kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.sop-toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.sop-toolbar__field{flex-direction:column;gap:4px;display:flex}.sop-lvl-1{--lvl-bg:#86b6ef;--lvl-ink:#0f172a}.sop-lvl-2{--lvl-bg:#3987e5;--lvl-ink:#fff}.sop-lvl-3{--lvl-bg:#1c5cab;--lvl-ink:#fff}.sop-lvl-4{--lvl-bg:#0d366b;--lvl-ink:#fff}.sop-lvl-none{--lvl-bg:var(--p-surface-2);--lvl-ink:var(--p-ink-3)}.sop-legend{color:var(--p-ink-2);flex-wrap:wrap;align-items:center;gap:6px 12px;margin-left:auto;font-size:12px;display:flex}.sop-legend__item{align-items:center;gap:5px;display:inline-flex}.sop-legend__swatch{background:var(--lvl-bg);width:20px;height:20px;color:var(--lvl-ink);border:1px solid var(--p-border);border-radius:5px;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.sop-matrix-scroll{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);max-width:100%;box-shadow:var(--p-shadow);overflow-x:auto}.sop-matrix{border-collapse:separate;border-spacing:0;min-width:100%}.sop-matrix th,.sop-matrix td{border-bottom:1px solid var(--p-border);vertical-align:top;text-align:center;padding:8px 10px}.sop-matrix thead th{background:var(--p-surface-2);min-width:120px;font-weight:600}.sop-matrix__sop{color:var(--p-ink-2);max-width:160px;margin:2px auto 0;font-size:12px;font-weight:500;line-height:1.25;display:block}.sop-matrix__corner,.sop-matrix__person{z-index:1;background:var(--p-surface);box-shadow:1px 0 0 var(--p-border);position:sticky;left:0;text-align:left!important}.sop-matrix__corner{background:var(--p-surface-2)}.sop-matrix__person{min-width:130px}.sop-matrix__person strong{font-size:14px;display:block}.sop-matrix__person span{color:var(--p-ink-2);font-size:12px;font-weight:400;display:block}.sop-cell{background:var(--lvl-bg);width:52px;height:44px;min-height:0;color:var(--lvl-ink);cursor:pointer;border:2px solid #0000;border-radius:8px;justify-content:center;align-items:center;margin:0 auto;padding:0;display:flex}.sop-cell:hover{background:var(--lvl-bg);outline:2px solid var(--p-ink-3);outline-offset:1px}.sop-cell.is-selected{outline:3px solid var(--p-accent);outline-offset:2px}.sop-cell.is-optional.sop-lvl-none{border:1px dashed var(--p-border);background:0 0}.sop-cell__level{font-size:18px;font-weight:800}.sop-cell__note{color:var(--p-ink-2);white-space:nowrap;justify-content:center;align-items:center;gap:3px;margin-top:4px;font-size:11px;display:flex}.sop-st{flex-shrink:0}.sop-st--blocked{color:var(--p-blocked)}.sop-st--warning{color:var(--p-warning)}.sop-st--planned{color:var(--p-planned)}.sop-st--progress{color:var(--p-progress)}.sop-cell-detail{gap:10px}.sop-cell-detail__top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sop-cell-detail__hist{margin:4px 0 0;padding-left:18px;font-size:13px}.sop-rank{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sop-rank__item{border-top:1px solid var(--p-border);flex-wrap:wrap;align-items:center;gap:8px 16px;padding:12px 0;display:flex}.sop-rank__main{flex-direction:column;flex:320px;gap:6px;min-width:0;display:flex}.sop-rank__title{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.sop-rank__title strong{flex-basis:100%;font-size:14px;line-height:1.35}.sop-rank__title .sop-code{flex-basis:100%}.sop-rank__notes{color:var(--p-ink-2);margin:0;padding-left:18px;font-size:13px;font-style:italic}.sop-bar{align-items:center;gap:10px;max-width:420px;display:flex}.sop-bar__track{background:var(--p-surface-2);border:1px solid var(--p-border);border-radius:4px;flex:1;height:10px;position:relative}.sop-bar__fill{background:#3987e5;border-radius:0 4px 4px 0;height:100%}.sop-bar__mark{background:var(--p-ink-3);width:2px;position:absolute;top:-3px;bottom:-3px}.sop-bar__value{width:40px;color:var(--p-ink);text-align:right;font-size:13px;font-weight:700}.sop-annotated{background:var(--p-surface-2);width:100%;position:relative;overflow:hidden}.sop-annotated>img{object-fit:fill;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;position:absolute;inset:0}.sop-annotated__layer{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.sop-studio{flex-direction:column;gap:16px;display:flex;container:sopstudio/inline-size}.sop-studio__top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.sop-studio__body{flex-direction:column;gap:16px;display:flex}@container sopstudio (width>=900px){.sop-studio__body{grid-template-columns:260px minmax(0,1fr);align-items:start;display:grid}}.sop-header-form summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.sop-header-form__grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 12px;display:grid}.sop-field__label{color:var(--p-ink-2);justify-content:space-between;gap:8px;font-size:13px;font-weight:600;display:flex}.sop-field__count{color:var(--p-ink-3);font-weight:500}.sop-field__count.is-over{color:var(--p-warning);font-weight:700}.sop-field input,.sop-field textarea{width:100%}.sop-check-inline{align-items:center;gap:6px;font-size:14px;display:inline-flex}.sop-check-inline input{width:18px;height:18px;min-height:0}.sop-btn--danger{color:var(--p-blocked);border-color:var(--p-blocked)}.sop-steplist{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);flex-direction:column;gap:8px;padding:12px;display:flex}.sop-steplist ol{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.sop-steplist__item{background:var(--p-surface);border-radius:10px;align-items:center;gap:2px;display:flex}.sop-steplist__item.active{background:var(--p-planned-tint)}.sop-steplist__handle{width:32px;height:40px;min-height:40px;color:var(--p-ink-3);cursor:grab;touch-action:none;letter-spacing:-2px;background:0 0;border:none;flex-shrink:0;padding:0}.sop-steplist__handle:hover{background:var(--p-surface-2)}.sop-steplist__pick{text-align:left;min-width:0;height:auto;min-height:40px;font:inherit;color:var(--p-ink);cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.sop-steplist__pick:hover{background:0 0}.sop-steplist__num{background:var(--p-surface-2);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.sop-steplist__title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.sop-steplist__dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.sop-steplist__dot.is-error{background:var(--p-blocked)}.sop-steplist__dot.is-warning{background:var(--p-warning)}.sop-step-ed{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);flex-direction:column;gap:12px;min-width:0;padding:16px;display:flex}.sop-step-ed__head{align-items:center;gap:10px;display:flex}.sop-step-ed__title{flex:1;min-width:0;font-size:17px;font-weight:700}.sop-step-ed__flags{flex-wrap:wrap;align-items:center;gap:8px 16px;display:flex}.sop-step-ed__ppe{border:0;flex-wrap:wrap;gap:6px;margin:0;padding:0;display:flex}.sop-step-ed__ppe legend{width:100%;margin-bottom:6px}.sop-step-ed__ppe-item{border:1px solid var(--p-border);cursor:pointer;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;display:inline-flex}.sop-step-ed__ppe-item input{margin:0}.sop-step-ed__ppe-item.is-on{border-color:var(--p-warning);background:var(--p-warning-tint)}.sop-step-ed__questions{border-top:1px solid var(--p-border);flex-direction:column;gap:10px;padding-top:12px;display:flex}.sop-step-ed__add{flex-wrap:wrap;gap:8px;display:flex}.sop-step-ed__foot{border-top:1px solid var(--p-border);flex-wrap:wrap;justify-content:space-between;gap:8px;padding-top:12px;display:flex}.sop-media-ed{flex-direction:column;gap:8px;display:flex}.sop-media-ed__empty{border:2px dashed var(--p-border);background:var(--p-surface-2);border-radius:12px;flex-direction:column;align-items:flex-start;gap:8px;padding:16px;display:flex}.sop-media-ed__video{flex-wrap:wrap;gap:8px;width:100%;display:flex}.sop-media-ed__video input{flex:220px;min-width:0}.sop-media-ed__tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sop-media-ed__canvas{border:1px solid var(--p-border);border-radius:12px}.sop-media-ed__player{background:#000;border-radius:12px;width:100%;max-height:420px;display:block}.sop-media-ed__upload{flex-direction:column;gap:6px;width:100%;display:flex}.sop-media-ed__upload-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sop-media-ed__error{color:var(--p-blocked);margin:0;font-weight:600}.sop-q-ed{border:1px solid var(--p-border);background:var(--p-surface-2);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.sop-q-ed.has-issues{border-color:var(--p-warning)}.sop-q-ed__head{flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex}.sop-q-ed__head strong{flex:200px}.sop-q-ed textarea,.sop-q-ed input:not([type]){background:var(--p-surface);width:100%}.sop-q-ed__options{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.sop-q-ed__option{align-items:center;gap:6px;width:100%;display:flex}.sop-q-ed__option input[type=radio]{flex-shrink:0;width:20px;height:20px;min-height:0}.sop-q-ed__option input:not([type]){flex:1;min-width:0}.sop-q-ed__x{flex-shrink:0;width:40px;min-width:40px;padding:0}.sop-q-ed__hotspot{border:1px solid var(--p-border);border-radius:10px}.sop-q-ed__zone{fill:#ffffff40;stroke:var(--p-ink);stroke-width:3px;stroke-dasharray:4 3;vector-effect:non-scaling-stroke;cursor:pointer}.sop-q-ed__zone.is-answer{stroke:var(--p-progress);stroke-dasharray:none;fill:#0d948833}.sop-q-ed__zone.is-selected{stroke-width:5px}.sop-q-ed__zone-tools{flex-wrap:wrap;align-items:center;gap:8px;font-size:13px;display:flex}.sop-q-ed__radius{align-items:center;gap:6px;display:inline-flex}.sop-issues{flex-direction:column;gap:3px;margin:0;padding-left:18px;font-size:13px;display:flex}.sop-issues li.is-error::marker{color:var(--p-blocked)}.sop-issues li.is-warning::marker{color:var(--p-warning)}.sop-issues li.is-error{color:var(--p-ink);font-weight:600}.sop-issues li.is-warning{color:var(--p-ink-2)}.sop-issues--inline{background:var(--p-warning-tint);border-radius:8px;padding:8px 8px 8px 24px}.sop-approval{gap:10px}.sop-approval.is-done{border-color:var(--p-progress);background:var(--p-progress-tint)}.sop-approval__notes{border-left:3px solid var(--p-border);color:var(--p-ink-2);margin:0;padding:8px 12px;font-style:italic}.sop-preview{flex-direction:column;justify-content:flex-start;align-items:stretch;gap:12px;overflow:auto hidden}.sop-preview__bar{background:var(--p-surface);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.sop-preview__frame{background:var(--p-surface-2);border-radius:16px;flex:1;min-height:0;margin:0 auto;padding:16px;overflow-y:auto}.sop-preview__frame--mobile{width:390px;max-width:100%}.sop-preview__frame--desktop{flex-shrink:0;width:1200px;max-width:none}.sop-preview__bar{position:sticky;left:0}.sop-cmp{gap:10px}.sop-cmp--added{border-left:4px solid var(--p-progress)}.sop-cmp--removed{border-left:4px solid var(--p-blocked)}.sop-cmp--modified{border-left:4px solid var(--p-warning)}.sop-cmp__field{flex-direction:column;gap:4px;display:flex}.sop-cmp__label{letter-spacing:.04em;text-transform:uppercase;color:var(--p-ink-3);font-size:11px;font-weight:700}.sop-cmp__pair{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px;display:grid}.sop-cmp__before,.sop-cmp__after{overflow-wrap:anywhere;border-radius:8px;min-width:0;padding:8px 10px;font-size:14px}.sop-cmp__before{background:var(--p-blocked-tint)}.sop-cmp__after{background:var(--p-progress-tint)}.sop-cmp__list{margin:0;padding-left:18px}.sop-cmp__img{border-radius:8px;max-width:260px}.sop-topbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 16px;display:flex}.sop-topbar .sop-person{flex-direction:row;align-items:center;gap:8px}.sop-topbar .sop-person select{min-height:36px}.sop-page .plan-header__actions .sop-person{max-width:260px}.sop-subnav{align-self:flex-start;max-width:100%;overflow-x:auto}.sop-progress__status{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.sop-table-wrap{max-width:100%;overflow-x:auto}.sop-table{border-collapse:collapse;width:100%;font-size:14px}.sop-table th,.sop-table td{border-bottom:1px solid var(--p-border);text-align:left;vertical-align:middle;padding:8px 10px}.sop-table thead th{background:var(--p-surface-2);white-space:nowrap;font-weight:600}.sop-table select{min-height:36px}.sop-table__check{font-weight:700;text-align:center!important}.sop-suggestions{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.sop-suggestion{border:1px solid var(--p-border);background:var(--p-surface-2);border-radius:10px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.sop-suggestion__meta{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sop-suggestion__text{margin:0}.sop-suggestion input{flex:200px;min-width:0;min-height:38px}.sop-dialog__panel--form{text-align:left;align-items:stretch;width:min(520px,100%)}.sop-step__foot{flex-wrap:wrap;gap:8px}.sop-pages{border:1px solid var(--p-border);background:var(--p-surface-2);border-radius:10px;gap:4px;padding:3px;display:inline-flex}.sop-pages__item{min-height:38px;color:var(--p-ink-2);border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.sop-pages__item.active{background:var(--p-surface);color:var(--p-ink);box-shadow:var(--p-shadow)}.sop-pages__num{background:var(--p-border);width:22px;height:22px;color:var(--p-ink);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.sop-pages__item.active .sop-pages__num{background:var(--p-accent);color:#fff}.sop-sketch{max-width:720px}.sop-sketch__strip{scrollbar-width:none;gap:6px;margin:-4px;padding:4px;display:flex;overflow-x:auto}.sop-sketch__strip::-webkit-scrollbar{display:none}.sop-sketch__chip{border:1px solid var(--p-border);background:var(--p-surface);min-width:44px;height:44px;color:var(--p-ink);cursor:pointer;border-radius:10px;flex-shrink:0;padding:0 10px;font-weight:700}.sop-sketch__chip.is-done{background:var(--p-progress-tint);border-color:var(--p-progress)}.sop-sketch__chip.active{border-color:var(--p-accent);box-shadow:0 0 0 2px var(--p-accent)}.sop-sketch__chip--add{color:var(--p-ink-2);border-style:dashed;font-size:20px}.sop-sketch__card{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);flex-direction:column;gap:12px;padding:14px;display:flex}.sop-sketch__card.is-editing{border-color:var(--p-accent)}.sop-sketch__head{align-items:center;gap:10px;display:flex}.sop-sketch-photo{flex-direction:column;gap:8px;display:flex}.sop-sketch-photo.is-empty{border:2px dashed var(--p-border);background:var(--p-surface-2);text-align:center;border-radius:12px;align-items:stretch;padding:20px 16px}.sop-sketch-photo__pick{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.sop-sketch-photo__pick .plan-btn{min-height:48px;padding:0 20px}.sop-media-ed__canvas.is-drawing{box-shadow:0 0 0 3px var(--p-accent)}.sop-sketch__note{flex-direction:column;gap:4px;display:flex}.sop-sketch__note p{white-space:pre-line;margin:0}.sop-sketch__note--ref{background:var(--p-planned-tint);border-radius:10px;align-items:flex-start;padding:10px 12px}.sop-sketch__actions{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.sop-sketch__actions .plan-btn{min-height:48px}.sop-sketch__done{flex:160px;font-size:16px}.sop-sketch__finish{flex-flow:wrap;justify-content:space-between;align-items:center;gap:8px}.sop-gate{flex-direction:column;gap:12px;max-width:460px;display:flex}.sop-gate__names{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;display:grid}.sop-gate__name{min-height:52px;font-size:16px}.sop-gate__pin{flex-direction:column;gap:10px;display:flex}.sop-gate__pin input{letter-spacing:.4em;text-align:center;max-width:220px;min-height:52px;font-size:24px}.sop-gate__actions{justify-content:space-between;gap:8px;max-width:320px;display:flex}.sop-gate__actions .plan-btn{flex:1;min-height:48px}.sop-sync{color:var(--p-ink-3);align-items:center;gap:6px;margin-left:auto;font-size:12px;display:inline-flex}.sop-sync.is-offline{color:var(--p-warning);font-weight:600}.sop-sync__reload{border:1px solid var(--p-border);background:var(--p-surface);width:32px;height:32px;color:var(--p-ink-2);cursor:pointer;border-radius:50%;font-size:16px}.sop-sync__reload:disabled{opacity:.5;cursor:default}.sop-person__switch{min-height:32px}.sop-media-loading{background:var(--p-surface-2);width:100%;height:100%;min-height:60px;display:block}.sop-stations{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sop-chip{background:var(--p-planned-tint);border:1px solid var(--p-border);border-radius:999px;align-items:center;gap:4px;padding:2px 4px 2px 10px;font-size:13px;display:inline-flex}.sop-chip button{color:var(--p-ink-3);cursor:pointer;background:0 0;border:0;min-width:28px;min-height:28px}.sop-stations__add{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.sop-stations__add input{width:180px;min-width:0;max-width:100%;min-height:36px}.sop-reqs{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.sop-reqs li{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sop-reqs li span{flex:160px;font-weight:600}.sop-coverage{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;display:grid}.sop-coverage__card{text-align:left;cursor:pointer;border-radius:var(--p-radius-lg);border:1px solid var(--p-border);background:var(--p-surface);color:var(--p-ink);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.sop-coverage__card.is-short{border-color:var(--p-warning);background:var(--p-warning-tint)}.sop-coverage__card.is-selected{box-shadow:0 0 0 2px var(--p-accent)}.sop-coverage__count{font-size:22px;font-weight:700}.sop-page{--sop-suggest:#ea580c;--sop-suggest-ink:#9a3412;--sop-suggest-tint:#fff7ed;--sop-suggest-line:#fdba74;gap:18px}.sop-page .session-card__meta{color:var(--p-ink-2);font-size:12.5px;line-height:1.45}.sop-page .sop-section-title{letter-spacing:-.01em;font-size:15px}.sop-page .sop-head{gap:8px}.sop-page a.plan-seg__btn{text-decoration:none}.sop-page .plan-seg__btn:not(.active):hover{color:var(--p-ink);background:#fff9}.sop-sync{border:1px solid var(--p-border);background:var(--p-surface);border-radius:999px;padding:2px 3px 2px 10px}.sop-sync.is-offline{border-color:var(--p-warning);background:var(--p-warning-tint)}.sop-sync__reload{background:var(--p-surface-2);border:none;width:28px;height:28px;min-height:0;font-size:14px}.sop-titlebar{justify-content:space-between;align-items:flex-start;gap:12px;width:100%;display:flex}.sop-titlebar .plan-header__left{flex:auto}.sop-titlebar .sop-sync{flex-shrink:0;margin-left:0}@media (width<=600px){.sop-titlebar .sop-sync.is-idle{padding:3px}.sop-titlebar .sop-sync.is-idle .sop-sync__label{display:none}}.sop-header-form>summary,.sop-checks>summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:4px 10px;list-style:none;display:flex}.sop-header-form>summary::-webkit-details-marker{display:none}.sop-checks>summary::-webkit-details-marker{display:none}.sop-header-form>summary:before,.sop-checks>summary:before{content:"";border-right:2px solid var(--p-ink-3);border-bottom:2px solid var(--p-ink-3);flex-shrink:0;width:7px;height:7px;margin:0 4px 0 2px;transition:transform .15s;transform:rotate(-45deg)}.sop-header-form[open]>summary:before,.sop-checks[open]>summary:before{transform:rotate(45deg)}.sop-header-form>summary strong,.sop-checks>summary strong{font-size:15px}.sop-header-form[open]>summary{border-bottom:1px solid var(--p-border);margin-bottom:4px;padding-bottom:8px}.sop-checks.has-errors{border-color:var(--p-blocked)}.sop-field select{width:100%;min-height:40px}.sop-field__hint{color:var(--p-ink-3);font-size:12px}.sop-steplist__dot.is-warning{border:2px solid var(--p-warning);background:0 0;width:9px;height:9px}.sop-steplist__suggest{background:var(--sop-suggest);color:#fff;border-radius:999px;flex-shrink:0;align-items:center;gap:3px;padding:1px 7px;font-size:11px;font-weight:700;display:inline-flex}.sop-studio__main{flex-direction:column;gap:10px;min-width:0;display:flex}.sop-suggest-panel{background:linear-gradient(180deg, var(--sop-suggest-tint), var(--p-surface) 140px);border:1px solid var(--sop-suggest-line);border-left:4px solid var(--sop-suggest);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);flex-direction:column;gap:12px;padding:14px 16px;display:flex}.sop-suggest-panel__head{align-items:flex-start;gap:12px;display:flex}.sop-suggest-panel__icon{background:var(--sop-suggest);color:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.sop-suggest-panel__title{color:var(--sop-suggest-ink);align-items:center;gap:8px;margin:0;font-size:15px;font-weight:700;display:flex}.sop-suggest-panel__count{background:var(--sop-suggest);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:12px;display:inline-flex}.sop-suggest-panel__sub{color:var(--p-ink-2);margin:2px 0 0;font-size:12.5px}.sop-suggestions{gap:8px}.sop-suggestion{border:1px solid var(--sop-suggest-line);background:var(--p-surface);border-radius:12px;gap:8px;padding:12px 14px 12px 18px;position:relative}.sop-suggestion:before{content:"";background:var(--sop-suggest);border-radius:0 4px 4px 0;width:4px;position:absolute;top:10px;bottom:10px;left:0}.sop-suggestion__head{flex-wrap:wrap;align-items:center;gap:8px 10px;display:flex}.sop-suggestion__avatar{background:var(--sop-suggest-tint);width:32px;height:32px;color:var(--sop-suggest-ink);border:1px solid var(--sop-suggest-line);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.sop-suggestion__who{flex-direction:column;min-width:0;line-height:1.25;display:flex}.sop-suggestion__who strong{font-size:14px}.sop-suggestion__who span{color:var(--p-ink-3);font-size:12px}.sop-suggestion__sop{border:1px solid var(--p-border);background:var(--p-surface-2);max-width:100%;height:auto;min-height:0;color:var(--p-ink);font:inherit;text-align:left;cursor:pointer;border-radius:8px;margin-left:auto;padding:4px 10px;font-size:13px;font-weight:600}.sop-suggestion__sop:disabled{cursor:default}.sop-suggestion__target{border:1px solid var(--sop-suggest-line);background:var(--sop-suggest-tint);height:auto;min-height:0;color:var(--sop-suggest-ink);font:inherit;cursor:pointer;border-radius:999px;align-self:flex-start;padding:3px 10px;font-size:12px;font-weight:700}.sop-suggestion__target.is-static{cursor:default}.sop-suggestion__text{color:var(--p-ink);margin:0;font-size:15px;line-height:1.45}.sop-suggestion__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.sop-suggestion__actions input{flex:220px;min-width:0;min-height:38px}.sop-btn--suggest{background:var(--sop-suggest);border-color:var(--sop-suggest);color:#fff}.sop-btn--suggest:hover{background:#c2410c;border-color:#c2410c}.sop-pill--suggest{white-space:nowrap;background:var(--sop-suggest-tint);color:var(--sop-suggest-ink);border:1px solid var(--sop-suggest-line);border-radius:999px;align-items:center;gap:4px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.sop-suggest-banner{border:1px solid var(--sop-suggest-line);border-left:4px solid var(--sop-suggest);border-radius:var(--p-radius-lg);background:var(--sop-suggest-tint);color:var(--sop-suggest-ink);flex-wrap:wrap;align-items:center;gap:10px 12px;padding:12px 14px;display:flex}.sop-suggest-banner>span{color:var(--p-ink);flex:220px;font-size:14px}.sop-step-suggest{background:var(--sop-suggest-tint);border:1px solid var(--sop-suggest-line);color:var(--sop-suggest-ink);border-radius:12px;align-items:flex-start;gap:8px;padding:10px 12px;font-size:14px;display:flex}.sop-step-suggest svg{flex-shrink:0;margin-top:2px}.sop-step-suggest span{color:var(--p-ink)}.sop-flow{flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sop-flow li{border:1px solid var(--p-border);background:var(--p-surface);border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 5px;font-size:13px;font-weight:600;display:inline-flex}.sop-flow li>span{background:var(--p-planned-tint);width:22px;height:22px;color:var(--p-accent);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.sop-flow small{color:var(--p-ink-3);font-size:12px;font-weight:400}.sop-row{padding-left:20px;position:relative}.sop-row:before{content:"";background:var(--row-accent,var(--p-completed));border-radius:0 4px 4px 0;width:4px;position:absolute;top:12px;bottom:12px;left:0}.sop-row--sketch{--row-accent:var(--p-ink-3)}.sop-row--draft{--row-accent:var(--p-warning)}.sop-row--in-review{--row-accent:var(--p-planned)}.sop-row--published{--row-accent:var(--p-progress)}.sop-lib-card,.sop-asg{transition:border-color .15s,box-shadow .15s}.sop-lib-card:hover,.sop-asg:hover{box-shadow:0 4px 14px #0f172a14}.sop-suggestion__due{white-space:nowrap;background:var(--p-surface-2);color:var(--p-ink-2);border-radius:999px;margin-left:auto;padding:2px 9px;font-size:11.5px;font-weight:700}.sop-suggestion__due.is-overdue{background:var(--p-blocked);color:#fff}.sop-suggestion__due+.sop-suggestion__sop{margin-left:0}.sop-suggestion.is-overdue{border-color:var(--p-blocked)}.sop-suggestion.is-overdue:before{background:var(--p-blocked)}.sop-suggest-panel__overdue{background:var(--p-blocked);color:#fff;border-radius:999px;padding:2px 9px;font-size:12px;font-weight:700}.sop-stations__add select{max-width:100%;min-height:36px}.sop-chip.is-unofficial,.sop-unofficial{color:var(--p-warning-ink,#92400e)}.sop-chip.is-unofficial{border-color:var(--p-warning);background:var(--p-warning-tint)}.sop-archived{border:1px solid var(--p-border);border-left:4px solid var(--p-completed);border-radius:var(--p-radius-lg);background:var(--p-completed-tint);color:var(--p-ink);flex-wrap:wrap;align-items:center;gap:6px 12px;padding:12px 14px;font-size:14px;display:flex}.sop-archived>span{color:var(--p-ink-2)}.sop-lifecycle{border-style:dashed}.sop-lifecycle input{width:100%;min-height:40px}.sop-btn--danger{background:var(--p-blocked);border-color:var(--p-blocked);color:#fff}.sop-btn--danger:hover:not(:disabled){background:#b91c1c;border-color:#b91c1c}.sop-btn--danger-outline{color:var(--p-blocked);border-color:var(--p-blocked)}.sop-btn--danger-outline:hover:not(:disabled){background:var(--p-blocked-tint)}.sop-row--archived{--row-accent:var(--p-completed);opacity:.8}.sop-archived-list>.sop-assignments{margin-top:10px}.sop-pdf-error{flex-basis:100%;font-size:13px}.qa-page{flex-direction:column;gap:16px;min-width:0;display:flex}.qa-page .session-card__meta{color:var(--p-ink-2);margin:0;font-size:12.5px;line-height:1.45}.qa-page a.plan-seg__btn{text-decoration:none}.qa-page .plan-header__actions{min-width:0;max-width:100%}.qa-page .plan-header__actions>nav.plan-seg{scrollbar-width:none;max-width:100%;overflow-x:auto}.qa-mono{letter-spacing:.02em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:700}.qa-sample{border-radius:var(--p-radius);background:var(--p-warning-tint);border:1px solid var(--p-warning);color:var(--p-ink);padding:10px 14px;font-size:13.5px}.qa-section{flex-direction:column;gap:12px;min-width:0;display:flex}.qa-section__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;display:flex}.qa-section__title{margin:0;font-size:16px;font-weight:700}.qa-subtitle{letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink-2);margin:6px 0 0;font-size:12px;font-weight:700}.qa-search{flex:0 300px;min-width:0;min-height:40px}.qa-card{flex-direction:column;gap:10px;display:flex}.qa-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.qa-row{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius);box-shadow:var(--p-shadow);color:var(--p-ink);align-items:center;gap:12px;padding:12px 14px 12px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.qa-row:hover{border-color:var(--p-accent);box-shadow:0 4px 14px #0f172a14}.qa-row:before{content:"";background:var(--row-accent,var(--p-accent));border-radius:0 4px 4px 0;width:4px;position:absolute;top:10px;bottom:10px;left:0}.qa-row--reviewing{--row-accent:var(--p-planned)}.qa-row--released{--row-accent:var(--p-progress)}.qa-row--rejected,.qa-row--returned{--row-accent:var(--p-blocked)}.qa-row__main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.qa-row__main strong{font-size:15px}.qa-row__side{flex-shrink:0;align-items:center;gap:10px;display:flex}.qa-row__chev{color:var(--p-ink-3);font-size:22px;line-height:1}.qa-returned{color:var(--p-blocked);font-size:13px}.qa-expired{color:var(--p-blocked);font-weight:700}.qa-ok{color:var(--p-progress);font-weight:700}.qa-warn{color:var(--p-warning);margin:0;font-size:13px;font-weight:600}.qa-summary{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px 16px;margin:0;display:grid}.qa-summary>div{min-width:0}.qa-summary__wide{grid-column:span 2}.qa-summary dt{letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink-3);font-size:11px;font-weight:700}.qa-summary dd{overflow-wrap:anywhere;margin:2px 0 0;font-size:15px}.qa-summary--center{text-align:left;width:100%;max-width:520px}.qa-steps{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.qa-steps li{border:1px solid var(--p-border);background:var(--p-surface);color:var(--p-ink-2);border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 5px;font-size:13px;font-weight:600;display:inline-flex}.qa-steps li>span{background:var(--p-surface-2);width:22px;height:22px;color:var(--p-ink-3);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:inline-flex}.qa-steps li.is-current{border-color:var(--p-accent);color:var(--p-ink)}.qa-steps li.is-current>span{background:var(--p-accent);color:#fff}.qa-steps li.is-done>span{background:var(--p-progress-tint);color:var(--p-progress)}.qa-fields{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.qa-field{flex-direction:column;gap:4px;min-width:0;display:flex}.qa-field>span{letter-spacing:.04em;text-transform:uppercase;color:var(--p-ink-2);font-size:12px;font-weight:700}.qa-field input,.qa-field select,.qa-field textarea{width:100%;min-height:42px;font:inherit}.qa-field--reviewer{max-width:420px}.qa-params{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.qa-param{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius);box-shadow:var(--p-shadow);flex-direction:column;gap:4px;padding:12px 14px;display:flex}.qa-param--in{border-color:var(--p-progress)}.qa-param--out,.qa-param--invalid{border-color:var(--p-blocked);background:var(--p-blocked-tint)}.qa-param__label{font-size:14px;font-weight:700}.qa-param__spec{color:var(--p-ink-2);font-size:12.5px}.qa-param__input{align-items:center;gap:8px;display:flex}.qa-param__input input{min-width:0;min-height:42px;font:inherit;flex:1}.qa-check{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:2px 9px;font-size:11.5px;font-weight:700}.qa-check--in{background:var(--p-progress-tint);color:var(--p-progress)}.qa-check--out,.qa-check--invalid{background:var(--p-blocked);color:#fff}.qa-check--no-spec{background:var(--p-surface-2);color:var(--p-ink-3)}.qa-blind{border-radius:var(--p-radius);background:var(--p-planned-tint);border:1px solid var(--p-planned);color:var(--p-ink);margin:0;padding:10px 14px;font-size:13.5px}.qa-table-wrap{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius);max-width:100%;box-shadow:var(--p-shadow);overflow-x:auto}.qa-table{border-collapse:collapse;width:100%;font-size:14px}.qa-table th,.qa-table td{border-bottom:1px solid var(--p-border);text-align:left;vertical-align:top;padding:9px 12px}.qa-table thead th{letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink-3);background:var(--p-surface-2);font-size:11px}.qa-table tbody tr:last-child th,.qa-table tbody tr:last-child td{border-bottom:none}.qa-table tbody th{white-space:nowrap;font-weight:700}.qa-cell--spec{color:var(--p-ink-2)}.qa-cell--in{color:var(--p-progress);font-weight:600}.qa-cell--out,.qa-cell--invalid{color:var(--p-blocked);background:var(--p-blocked-tint);font-weight:700}.qa-cell__flag{font-size:12px;font-weight:600}.qa-checks{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.qa-checkcard{gap:8px}.qa-checkcard.is-bad{border-color:var(--p-blocked);background:var(--p-blocked-tint)}.qa-checkcard__label{letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink-2);font-size:11px;font-weight:700}.qa-toggle{border:1px solid var(--p-border);background:var(--p-surface-2);border-radius:10px;align-self:flex-start;gap:4px;padding:3px;display:inline-flex}.qa-toggle__btn{min-height:38px;color:var(--p-ink-2);font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:0 16px;font-weight:700}.qa-toggle__btn.is-yes{background:var(--p-progress);color:#fff}.qa-toggle__btn.is-no{background:var(--p-blocked);color:#fff}.qa-decision{gap:6px}.qa-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.qa-actions .plan-btn{min-width:140px}.qa-actions__hint{text-align:right}.qa-btn--go{background:var(--btn-confirm);border-color:var(--btn-confirm);color:#fff}.qa-btn--go:hover:not(:disabled){filter:brightness(.92);background:var(--btn-confirm)}.qa-btn--danger{background:var(--btn-danger);border-color:var(--btn-danger);color:#fff}.qa-btn--danger:hover:not(:disabled){filter:brightness(.92);background:var(--btn-danger)}.qa-done{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:28px 16px;display:flex}.qa-done h2{margin:0;font-size:20px}.qa-done__icon{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;font-size:30px;display:inline-flex}.qa-done__icon--wait{background:var(--p-planned-tint)}.qa-done__icon--ok{background:var(--p-progress)}.qa-done__icon--no{background:var(--p-blocked)}.qa-formula-search{flex-flow:wrap;align-items:flex-end}.qa-formula-search .qa-field{flex:220px}.qa-formula-search__btns{gap:8px;display:flex}.qa-specs{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px 16px;margin:0;display:grid}.qa-specs dt{letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink-3);font-size:11px;font-weight:700}.qa-specs dd{margin:2px 0 0;font-size:15px}@media (width<=520px){.qa-summary__wide{grid-column:auto}.qa-actions .plan-btn{flex:1;min-width:0}}.br-page{flex-direction:column;gap:16px;min-width:0;display:flex}.br-page .session-card__meta{color:var(--p-ink-2);margin:0;font-size:12.5px;line-height:1.45}.br-mono{letter-spacing:.02em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:700}.br-toolbar{flex-wrap:wrap;align-items:center;gap:10px 16px;display:flex}.br-toolbar .plan-seg{flex:none}.br-search{flex:260px;min-width:0;min-height:42px}.br-hint{color:var(--p-ink-2);margin:0;font-size:12.5px}.br-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.br-row{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius);width:100%;box-shadow:var(--p-shadow);color:var(--p-ink);text-align:left;font:inherit;cursor:pointer;align-items:center;gap:12px;padding:12px 14px 12px 18px;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}.br-row:hover{border-color:var(--p-accent);box-shadow:0 4px 14px #0f172a14}.br-row:before{content:"";background:var(--row-accent,var(--p-accent));border-radius:0 4px 4px 0;width:4px;position:absolute;top:10px;bottom:10px;left:0}.br-row--gmp{--row-accent:var(--p-filling)}.br-row--cleaning{--row-accent:var(--p-progress)}.br-row__main{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.br-row__main strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.br-row__side{color:var(--p-ink-2);flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;font-size:12.5px;display:flex}.br-row__chev{color:var(--p-ink-3);font-size:22px;line-height:1}.br-tag{letter-spacing:.04em;text-transform:uppercase;background:var(--p-warning-tint);color:var(--p-warning);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.br-card{flex-direction:column;gap:14px;display:flex}.br-card__codes{flex-wrap:wrap;align-items:baseline;gap:6px 14px;display:flex}.br-card__code{font-size:26px}.br-card__ext{color:var(--p-ink-2);font-size:15px}.br-card__product{margin:0;font-size:16px;font-weight:700}.br-specs{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px 16px;margin:0;display:grid}.br-specs dt{letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink-3);font-size:11px;font-weight:700}.br-specs dd{overflow-wrap:anywhere;margin:2px 0 0;font-size:15px}.br-sg{border-radius:var(--p-radius);background:var(--p-planned-tint);border:1px solid var(--p-accent);align-self:flex-start;align-items:baseline;gap:8px;padding:8px 14px;display:inline-flex}.br-sg__label{letter-spacing:.06em;color:var(--p-accent);font-size:13px;font-weight:700}.br-sg__value{color:var(--p-ink);font-size:22px}.br-actions{flex-wrap:wrap;gap:8px;display:flex}.br-actions a.plan-btn{text-decoration:none}.br-card__top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px 16px;display:flex}.br-card__comment{border-left:2px solid var(--p-border);max-width:360px;color:var(--p-ink-2);overflow-wrap:anywhere;flex:200px;margin:0;padding:2px 0 2px 10px;font-size:12.5px;font-style:italic;line-height:1.45}.br-row__sg{color:var(--p-ink-2);white-space:nowrap;font-size:12px}.br-row__sg b{color:var(--p-ink);font-size:13px}.br-row__sg.is-empty b{color:var(--p-ink-3);font-weight:400}.br-hint-row{flex-wrap:wrap;align-items:center;gap:4px 12px;display:flex}.br-link-btn{min-height:32px;color:var(--p-accent);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 6px;font-size:13px;font-weight:700;display:inline-flex}.br-link-btn:hover{text-decoration:underline}.br-pickbar{border-radius:var(--p-radius);background:var(--p-planned-tint);border:1px solid var(--p-accent);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;display:flex}.br-pickbar__gap{flex:1}.br-check{border:2px solid var(--p-border);color:#fff;background:var(--p-surface);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;font-weight:800;display:inline-flex}.br-check.on{background:var(--p-accent);border-color:var(--p-accent)}.br-row--picked{border-color:var(--p-accent);background:var(--p-planned-tint)}.br-print{display:none}@media print{.br-page>:not(.br-print){display:none!important}html:has(.br-print){background:#fff!important}html:has(.br-print) body{background:#fff!important}html:has(.br-print) .shell{background:#fff!important}html:has(.br-print) .shell__body{background:#fff!important}html:has(.br-print) .shell__main{background:#fff!important}.br-print{color:#000;font-size:12pt;display:block}.br-print h1{margin:0 0 2mm;font-size:16pt}.br-print p{color:#444;margin:0 0 5mm;font-size:9pt}.br-print table{border-collapse:collapse;width:100%}.br-print th,.br-print td{text-align:left;vertical-align:top;border:1px solid #000;padding:3mm}.br-print th{background:#eee;font-size:10pt}.br-print tr{break-inside:avoid}}.inv{--inv-rm:var(--p-compounding);--inv-pk:var(--p-filling);--inv-bk:var(--p-progress);--inv-fg:var(--p-accent);--inv-cn:var(--p-completed);color:var(--p-ink);flex-direction:column;gap:16px;min-width:0;display:flex}.inv-muted{color:var(--p-ink-2);font-size:12px}.inv-link{min-height:0;color:var(--p-accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:600}.inv-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}@media (width>=900px){.inv-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}}.inv-toolbar{border-bottom:1px solid var(--p-border);flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px;display:flex}.inv-toolbar .plan-seg{max-width:100%;overflow-x:auto}.inv-focus{background:var(--p-surface-2);border-bottom:1px solid var(--p-border);align-items:center;gap:10px;padding:8px 16px;font-size:13px;display:flex}.inv-chips{gap:6px;padding:12px 16px 4px;display:flex;overflow-x:auto}.inv-chip{border:1px solid var(--p-border);background:var(--p-surface);min-height:34px;font:inherit;color:var(--p-ink-2);cursor:pointer;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex}.inv-chip.on{background:var(--p-ink);border-color:var(--p-ink);color:#fff}.inv-chip .inv-cat{border-radius:5px;width:18px;height:18px;font-size:8px}.inv-cat{letter-spacing:.04em;width:36px;height:36px;color:var(--inv-c,var(--p-ink-2));background:color-mix(in srgb, var(--inv-c,var(--p-ink-3)) 12%, white);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.inv-cat--lg{border-radius:14px;width:56px;height:56px;font-size:15px}[data-cat=Raw\ Material]{--inv-c:var(--inv-rm)}[data-cat=Packaging]{--inv-c:var(--inv-pk)}[data-cat=Bulk]{--inv-c:var(--inv-bk)}[data-cat=Finished\ Good]{--inv-c:var(--inv-fg)}[data-cat=Consumable]{--inv-c:var(--inv-cn)}.inv-items{margin:0;padding:4px 0 8px;list-style:none}.inv-items__head{display:none}.inv-item{color:inherit;border-top:1px solid var(--p-border);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name level""bar avail";align-items:center;gap:8px 12px;padding:12px 16px;text-decoration:none;display:grid}.inv-items>li:nth-child(2) .inv-item{border-top:none}.inv-item:hover{background:var(--p-surface-2)}.inv-item__name{grid-area:name;align-items:center;gap:12px;min-width:0;display:flex}.inv-item__name>span:last-child{flex-direction:column;min-width:0;display:flex}.inv-item__name .inv-muted{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.inv-item__bar{flex-direction:column;grid-area:bar;gap:4px;padding-left:48px;display:flex}.inv-item__avail{grid-area:avail;font-size:15px}.inv-item__level{grid-area:level}.inv-item__quar,.inv-item__exp{display:none}.num{text-align:right;font-variant-numeric:tabular-nums}.inv-item small,.inv-qty small,.inv-lot__qty small{color:var(--p-ink-3);font-weight:600}@media (width>=900px){.inv-items__head,.inv-item{grid-template-columns:minmax(220px,2fr) minmax(140px,1.4fr) 110px 110px 120px 80px;grid-template-areas:none;gap:16px;display:grid}.inv-items__head{text-transform:uppercase;letter-spacing:.05em;color:var(--p-ink-3);padding:10px 16px;font-size:11px;font-weight:700}.inv-item>*{grid-area:auto}.inv-item__bar{padding-left:0}.inv-item__quar,.inv-item__exp{display:block}.inv-items>li:nth-child(2) .inv-item{border-top:1px solid var(--p-border)}}.inv-bar{background:var(--p-surface-2);height:8px;box-shadow:inset 0 0 0 1px var(--p-border);border-radius:999px;display:flex;position:relative;overflow:visible}.inv-bar__avail{background:var(--p-progress);border-radius:999px 0 0 999px}.inv-bar__quar{background:repeating-linear-gradient(135deg, var(--p-warning) 0 4px, color-mix(in srgb, var(--p-warning) 55%, white) 4px 8px)}.inv-bar__avail+.inv-bar__quar{border-radius:0 999px 999px 0}.inv-bar__reorder{background:var(--p-ink);border-radius:1px;width:2px;margin-left:-1px;position:absolute;top:-3px;bottom:-3px}.inv-expiry{white-space:nowrap;background:var(--p-surface-2);color:var(--p-ink-2);border-radius:999px;align-items:center;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.inv-expiry--soon{background:var(--p-warning-tint);color:var(--p-warning)}.inv-expiry--expired{background:var(--p-blocked-tint);color:var(--p-blocked)}.inv-expiry--none{color:var(--p-ink-3)}.inv-lots{margin:0;padding:0;list-style:none}.inv-lot{border-top:1px solid var(--p-border);border-left:3px solid #0000;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px 16px;display:grid}.inv-lots>.inv-lot:first-child{border-top:none}.inv-lot--soon{border-left-color:var(--p-warning)}.inv-lot--expired{border-left-color:var(--p-blocked)}.inv-lot__main{align-items:center;gap:12px;min-width:0;display:flex}.inv-lot__item{color:inherit;text-decoration:none}.inv-lot__item:hover strong{color:var(--p-accent)}.inv-lot__meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inv-lot__qty{font-variant-numeric:tabular-nums;margin-right:4px;font-size:16px;font-weight:700}.inv-lot__actions{flex-wrap:wrap;gap:6px;display:flex}.inv-mini{border:1px solid var(--p-border);background:var(--p-surface);min-height:34px;font:inherit;color:var(--p-ink-2);cursor:pointer;border-radius:8px;padding:0 12px;font-size:12px;font-weight:600}.inv-mini:hover{border-color:var(--p-accent);color:var(--p-accent)}@media (width>=900px){.inv-lot{grid-template-columns:minmax(0,1.6fr) minmax(0,1.4fr) auto;align-items:center}}.inv-timeline section+section{margin-top:14px}.inv-timeline__day{text-transform:uppercase;letter-spacing:.05em;color:var(--p-ink-3);margin:0 0 6px;font-size:11px;font-weight:700}.inv-timeline ul{margin:0;padding:0;list-style:none}.inv-move{border-top:1px solid var(--p-border);grid-template-columns:36px minmax(0,1fr) auto;align-items:start;gap:12px;padding:10px 0;display:grid}.inv-timeline ul>.inv-move:first-child{border-top:none}.inv-move__line{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.inv-move__item{color:inherit;font-weight:600;text-decoration:none}.inv-move__item:hover{color:var(--p-accent)}.inv-move__by{color:var(--p-ink-3);margin-top:2px;font-size:11px}.inv-move__qty{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:700}.inv-move__qty.neg{color:var(--p-blocked)}.inv-move__qty.pos{color:var(--p-progress)}.inv-kind{background:var(--p-surface-2);width:36px;height:36px;color:var(--p-ink-2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.inv-kind--Receive{background:var(--p-progress-tint);color:var(--p-progress)}.inv-kind--Move{background:var(--p-planned-tint);color:var(--p-planned)}.inv-kind--Adjust,.inv-kind--Count{background:var(--p-warning-tint);color:var(--p-warning)}.inv-kind--Status{background:color-mix(in srgb, var(--p-filling) 10%, white);color:var(--p-filling)}.inv-locs{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding:16px;display:grid}.inv-loc{border:1px solid var(--p-border);border-radius:var(--p-radius);background:var(--p-surface);border-top:4px solid var(--inv-z,var(--p-border));padding:14px}.inv-loc--off{opacity:.55}.inv-loc header{justify-content:space-between;align-items:center;gap:8px;display:flex}.inv-loc p{margin:2px 0 10px}.inv-loc__stats{color:var(--p-ink-2);gap:14px;font-size:12px;display:flex}.inv-loc__stats strong{color:var(--p-ink);margin-right:2px;font-size:18px}.inv-loc ul{border-top:1px dashed var(--p-border);flex-direction:column;gap:4px;margin:10px 0 0;padding:10px 0 0;font-size:13px;list-style:none;display:flex}.inv-loc li{gap:6px;min-width:0;display:flex}.inv-loc li a{color:var(--p-accent);flex-shrink:0;font-weight:600;text-decoration:none}.inv-loc li .inv-muted{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.inv-zone{color:var(--inv-z,var(--p-ink-2));background:color-mix(in srgb, var(--inv-z,var(--p-ink-3)) 12%, white);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}[data-zone=Receiving]{--inv-z:var(--p-planned)}[data-zone=Warehouse]{--inv-z:var(--p-progress)}[data-zone=Quarantine]{--inv-z:var(--p-warning)}[data-zone=Production]{--inv-z:var(--p-compounding)}[data-zone=Dispatch]{--inv-z:var(--p-filling)}[data-zone=Cold\ Store]{--inv-z:#0891b2}.inv-back{color:var(--p-ink-2);align-self:flex-start;align-items:center;gap:4px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.inv-back:hover{color:var(--p-accent)}.inv-hero{grid-template-columns:minmax(0,1fr);gap:16px;padding:18px;display:grid}.inv-hero__title{align-items:flex-start;gap:14px;min-width:0;display:flex}.inv-hero h1{letter-spacing:-.01em;margin:0;font-size:22px}.inv-hero p{color:var(--p-ink-2);margin:2px 0 8px}.inv-hero__tags{flex-wrap:wrap;gap:6px;display:flex}.inv-hero__actions{gap:8px;display:flex}.inv-hero__facts{border-top:1px solid var(--p-border);grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px 16px;margin:0;padding-top:14px;display:grid}.inv-hero__facts dt{color:var(--p-ink-3);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.inv-hero__facts dd{margin:2px 0 0;font-size:14px}@media (width>=700px){.inv-hero{grid-template-columns:minmax(0,1fr) auto}}.inv-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}@media (width>=900px){.inv-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}.inv-stat{border-radius:var(--p-radius);background:var(--p-surface);border:1px solid var(--p-border);border-left:4px solid var(--inv-s);flex-direction:column;gap:2px;padding:12px 14px;display:flex}.inv-stat span{color:var(--p-ink-2);font-size:12px;font-weight:700}.inv-stat strong{font-variant-numeric:tabular-nums;font-size:22px}.inv-stat--progress{--inv-s:var(--p-progress)}.inv-stat--warning{--inv-s:var(--p-warning)}.inv-stat--planned{--inv-s:var(--p-planned)}.inv-stat--completed{--inv-s:var(--p-completed)}.inv-stats__bar{grid-column:1/-1;padding:4px 2px}.inv-stats__bar .inv-bar{height:10px}.inv-detail{grid-template-columns:minmax(0,1fr);gap:16px;display:grid}@media (width>=1100px){.inv-detail{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start}}.inv-form{flex-direction:column;gap:12px;display:flex}.inv-form label{color:var(--p-ink-2);flex-direction:column;gap:4px;font-size:13px;font-weight:600;display:flex}.inv-form input,.inv-form select{width:100%;color:var(--p-ink);font-weight:400}.inv-form__row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.inv-form__lot{border-radius:var(--p-radius);background:var(--p-surface-2);align-items:center;gap:12px;padding:10px 12px;display:flex}.inv-form__sign{align-self:flex-start}.inv-form__checks{flex-wrap:wrap;gap:18px;display:flex}.inv-form__checks label{flex-direction:row;align-items:center;gap:8px}.inv-form__checks input{width:auto;min-height:0}.inv-form__actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.inv-form .inv-link{align-self:flex-start}.inv-form .inv-import__pick{color:var(--p-ink);cursor:pointer;flex-direction:row;align-self:flex-start}.inv-import__list{color:var(--p-ink-2);margin:0;padding-left:18px;font-size:13px}.inv-import__counts{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin:0;display:grid}.inv-import__counts div{background:var(--p-surface-2,var(--p-planned-tint));border-radius:10px;padding:8px 10px}.inv-import__counts dt{color:var(--p-ink-2);font-size:12px}.inv-import__counts dd{margin:0;font-size:18px;font-weight:700}.inv-import__counts .is-bad{background:var(--p-blocked-tint)}.inv-import__counts .is-bad dd{color:var(--p-blocked)}.inv-status-pick{flex-wrap:wrap;gap:8px;display:flex}.inv-status-pick__btn{border:2px solid var(--p-border);background:var(--p-surface);cursor:pointer;border-radius:10px;flex-direction:column;align-items:center;gap:2px;min-height:48px;padding:6px 14px;display:inline-flex}.inv-status-pick__btn.on{border-color:var(--p-accent)}.inv-status-pick__btn:disabled{opacity:.5;cursor:not-allowed}.inv-status-pick__btn small{color:var(--p-ink-3);font-size:10px}.inv-empty{text-align:center;color:var(--p-ink-2);padding:32px 16px}.inv-empty strong{color:var(--p-ink);margin-bottom:4px;display:block}.inv-empty p{margin:0;font-size:13px}.inv-error{flex-wrap:wrap;align-items:center;gap:12px;padding:16px;display:flex}.inv-skeleton{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;display:grid}.inv-skeleton span{border-radius:var(--p-radius);background:linear-gradient(90deg, var(--p-surface-2), var(--p-border), var(--p-surface-2));background-size:200% 100%;height:76px;animation:1.2s linear infinite inv-shimmer}@keyframes inv-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.inv-skeleton span{animation:none}}[data-zone=Lab]{--inv-z:#7c3aed}.inv-where{flex-direction:column;min-width:0;display:flex}.inv-where__bar{flex-wrap:wrap;align-items:center;gap:8px 12px;padding-right:16px;display:flex}.inv-where__bar .inv-chips{padding-bottom:12px}.inv-where__search{flex:220px;min-width:0;margin:0 0 12px 16px}.inv-chip__n{opacity:.7;font-size:11px}.inv-where__site,.inv-where__found{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));align-items:start;gap:12px;padding:4px 16px 16px;display:grid}.inv-rack{border:1px solid var(--p-border);border-radius:var(--p-radius);background:var(--p-surface);min-width:0;padding:12px}.inv-rack header{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.inv-rack__grid{gap:4px;display:grid;overflow-x:auto}.inv-rack__level{color:var(--p-ink-3);align-self:center;font-size:11px;font-weight:700}.inv-rack__gap{background:repeating-linear-gradient(45deg, transparent 0 4px, var(--p-surface-2) 4px 8px);border-radius:8px}.inv-rack__cell{cursor:pointer;border:1px solid var(--p-border);background:var(--p-surface-2);min-height:40px;color:var(--p-ink-3);font:inherit;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:11px;font-weight:600;display:flex;position:relative}.inv-rack__cell:disabled{cursor:default;opacity:1}.inv-rack__cell.has{background:color-mix(in srgb, var(--p-progress) 16%, white);border-color:color-mix(in srgb, var(--p-progress) 45%, white);color:var(--p-ink)}.inv-rack__cell small{color:var(--p-progress);font-size:9px;position:absolute;top:2px;right:4px}.inv-rack__cell.sel{outline:2px solid var(--p-accent);outline-offset:1px}.inv-rack__cell.hit{background:color-mix(in srgb, var(--p-warning) 22%, white);border-color:var(--p-warning);color:var(--p-ink)}.inv-rack__cell.primary{background:var(--p-accent);border-color:var(--p-accent);color:#fff}.inv-rack__cell.primary small{color:#fff}.inv-where__named{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.inv-named{border:1px solid var(--p-border);border-left:4px solid var(--inv-z,var(--p-border));background:var(--p-surface);min-height:48px;font:inherit;cursor:pointer;text-align:left;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:6px 12px;font-size:13px;display:flex}.inv-named.has{background:color-mix(in srgb, var(--p-progress) 8%, white)}.inv-named.sel{outline:2px solid var(--p-accent);outline-offset:1px}.inv-loc--wide{grid-column:1/-1}.inv-loc--wide header{justify-content:flex-start}.inv-loc--wide header .inv-link{margin-left:auto}.inv-loc--wide li{flex-wrap:wrap;align-items:center}.inv-loc__lot{width:100%;color:var(--p-ink-2);flex-wrap:wrap;align-items:center;gap:4px 6px;font-size:12px;display:flex}.cmp{--cmp:var(--p-compounding);color:var(--p-ink);flex-direction:column;gap:16px;min-width:0;display:flex}.cmp .plan-header__icon{color:var(--cmp);background:color-mix(in srgb, var(--cmp) 12%, white)}.cmp-back{color:var(--p-accent);align-self:flex-start;font-size:14px;font-weight:600;text-decoration:none}.cmp-bad{color:var(--p-blocked)}.cmp-section{flex-direction:column;gap:10px;min-width:0;display:flex}.cmp-section__title{margin:0;font-size:16px;font-weight:700}.cmp-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:12px;display:grid}.cmp-card{border-radius:var(--p-radius-lg);background:var(--p-surface);border:1px solid var(--p-border);border-left:5px solid var(--cmp);box-shadow:var(--p-shadow);color:inherit;flex-direction:column;gap:6px;min-height:44px;padding:16px;text-decoration:none;display:flex}.cmp-card--batch{border-left-color:var(--p-progress)}.cmp-card__top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.cmp-card__stats{color:var(--p-ink-2);gap:14px;font-size:13px;display:flex}.cmp-banner{border-radius:var(--p-radius);border:1px solid var(--p-border);padding:12px 16px;font-size:14px}.cmp-banner--warn{background:var(--p-warning-tint);border-color:var(--p-warning)}.cmp-banner--bad{background:var(--p-blocked-tint);border-color:var(--p-blocked)}.cmp-banner--ok{background:var(--p-progress-tint);border-color:var(--p-progress)}.cmp-finish{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.cmp-flag{border-radius:8px;margin:0;padding:6px 10px;font-size:13px;font-weight:600}.cmp-flag--warn{background:var(--p-warning-tint);color:var(--p-ink)}.cmp-flag--bad{background:var(--p-blocked-tint);color:var(--p-blocked)}.cmp-scale{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.cmp-scale label{color:var(--p-ink-2);flex-direction:column;gap:4px;font-size:13px;font-weight:600;display:flex}.cmp-scale__input{align-items:center;gap:6px;display:inline-flex}.cmp-scale__input input{width:120px;font-size:18px;font-weight:700}.cmp-steps{flex-direction:column;gap:12px;display:flex}.cmp-steps__head{display:none}.cmp-step{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);box-shadow:var(--p-shadow);grid-template-columns:64px minmax(0,1fr);gap:12px 16px;padding:16px;display:grid}.cmp-step__lines{grid-column:1/-1;min-width:0}@media (width>=900px){.cmp-steps__head{letter-spacing:.06em;text-transform:uppercase;color:var(--p-ink-3);grid-template-columns:72px minmax(0,1fr) minmax(0,1.35fr);gap:16px;padding:0 16px;font-size:11px;font-weight:700;display:grid}.cmp-step{grid-template-columns:72px minmax(0,1fr) minmax(0,1.35fr)}.cmp-step__lines{border-left:1px dashed var(--p-border);grid-column:auto;padding-left:16px}}.cmp-step--open{border:2px solid var(--cmp);box-shadow:0 0 0 4px color-mix(in srgb, var(--cmp) 12%, transparent), var(--p-shadow)}.cmp-step--done{background:color-mix(in srgb, var(--p-progress) 5%, white)}.cmp-step--locked{opacity:.6;grid-template-columns:64px minmax(0,1fr);align-items:center}.cmp-step__locked{color:var(--p-ink-2);margin:0;font-size:14px}.cmp-step__phase{flex-direction:column;align-items:center;gap:4px;display:flex}.cmp-step__letter{color:#fff;background:var(--cmp);border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;font-size:28px;font-weight:800;display:flex}.cmp-step--done .cmp-step__letter{background:var(--p-progress)}.cmp-step--locked .cmp-step__letter{background:var(--p-ink-3)}.cmp-step__count{color:var(--p-ink-3);white-space:nowrap;font-size:11px;font-weight:700}.cmp-step__tick{color:var(--p-progress);font-size:18px;font-weight:800}.cmp-step__body{flex-direction:column;gap:10px;min-width:0;display:flex}.cmp-step__text{margin:0;font-size:18px;font-weight:500;line-height:1.45}.cmp-step__params{grid-template-columns:auto 1fr;gap:2px 10px;margin:0;font-size:14px;display:grid}.cmp-step__params dt{color:var(--p-ink-2)}.cmp-step__params dd{margin:0;font-weight:700}.cmp-step__check{background:var(--p-planned-tint);border-radius:8px;margin:0;padding:8px 10px;font-size:14px}.cmp-step__media{flex-wrap:wrap;gap:8px;display:flex}.cmp-step__media a{text-decoration:none}.cmp-lines{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.cmp-line{background:var(--p-surface-2);border-radius:10px;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:4px 10px;padding:8px 10px;display:grid}.cmp-line__seq{color:var(--p-ink-3);text-align:center;font-size:12px;font-weight:700}.cmp-line__name{flex-direction:column;min-width:0;display:flex}.cmp-line__name strong{font-size:15px}.cmp-line__name small{color:var(--p-ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.cmp-line__pct{color:var(--p-ink-2);font-size:13px}.cmp-line__qty{flex-direction:column;align-items:flex-end;font-size:16px;font-weight:700;display:flex}.cmp-line__qty small{color:var(--p-ink-3);font-size:11px;font-weight:600}.cmp--run{gap:12px}.cmp-runhead{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg);grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:12px 14px;display:grid}.cmp-runhead__title{flex-direction:column;min-width:0;display:flex}.cmp-runhead__title h1{margin:0;font-size:22px;line-height:1.2}.cmp-runhead__title span{color:var(--p-ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.cmp-runhead__facts{color:var(--p-ink-2);flex-direction:column;align-items:flex-end;font-size:14px;display:flex}.cmp-runhead__facts strong{color:var(--p-ink);font-size:20px}.cmp-runhead__bar{background:var(--p-surface-2);border-radius:999px;grid-column:1/-1;height:6px;overflow:hidden}.cmp-runhead__bar span{background:var(--p-progress);height:100%;transition:width .3s;display:block}.cmp-runhead__tools{grid-column:1/-1;gap:8px;display:flex}.cmp-tool{border:1px solid var(--p-border);background:var(--p-surface);min-height:40px;font:inherit;color:var(--p-ink);cursor:pointer;border-radius:999px;padding:0 14px;font-size:14px;font-weight:700}.cmp-runsteps{flex-direction:column;gap:10px;display:flex}.cmp-run{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius-lg)}.cmp-run--current{border:2px solid var(--cmp)}.cmp-run__head{width:100%;min-height:64px;font:inherit;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:44px minmax(0,1fr) auto 18px;align-items:center;gap:12px;padding:10px 12px;display:grid}.cmp-run__letter{color:#fff;background:var(--cmp);border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;font-size:24px;font-weight:800;display:flex}.cmp-run--done .cmp-run__letter{background:var(--p-progress)}.cmp-run--next .cmp-run__letter{background:var(--p-ink-3)}.cmp-run__text{text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:500;line-height:1.4;overflow:hidden}.cmp-run.is-open .cmp-run__text{white-space:normal;font-size:18px}.cmp-run--done:not(.is-open) .cmp-run__text{color:var(--p-ink-2)}.cmp-run__count{color:var(--p-ink-2);font-size:16px;font-weight:800}.cmp-run--done .cmp-run__count{color:var(--p-progress);font-size:20px}.cmp-run__chev{border-right:2.5px solid var(--p-ink-3);border-bottom:2.5px solid var(--p-ink-3);width:10px;height:10px;margin-top:-4px;transition:transform .2s;transform:rotate(45deg)}.cmp-run.is-open .cmp-run__chev{margin-top:4px;transform:rotate(-135deg)}.cmp-run__body{flex-direction:column;gap:12px;padding:0 12px 14px;display:flex}.cmp-run__info{flex-direction:column;gap:8px;display:flex}.cmp-run__params{flex-wrap:wrap;gap:6px;margin:0;display:flex}.cmp-run__params div{background:var(--p-surface-2);border-radius:8px;align-items:baseline;gap:6px;padding:6px 10px;font-size:15px;display:flex}.cmp-run__params dt{color:var(--p-ink-2);font-size:13px}.cmp-run__params dd{margin:0;font-weight:700}.cmp-run__wait{color:var(--p-ink-2);margin:0;font-size:15px}@media (width>=900px){.cmp-run__body{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:start;display:grid}.cmp-run__body>*{grid-column:1}.cmp-run__body>.cmp-pots{grid-area:1/2/span 3}}.cmp-pots{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.cmp-pot{border:2px solid var(--p-border);background:var(--p-surface);width:100%;min-height:72px;font:inherit;color:var(--p-ink);text-align:left;cursor:pointer;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 12px;padding:12px 14px;transition:opacity .2s,background .2s,border-color .2s;display:grid;position:relative}.cmp-pot:active{transform:scale(.99)}.cmp-pot__name{font-size:18px;font-weight:700;line-height:1.25}.cmp-pot__qty{white-space:nowrap;font-size:22px;font-weight:800}.cmp-pot__sub{color:var(--p-ink-2);grid-column:1/-1;font-size:15px}.cmp-pot__mark{color:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:15px;font-weight:900;display:flex;position:absolute;top:-8px;right:-6px}.cmp-pot__fill{background:var(--p-surface-2);border-radius:999px;grid-column:1/-1;height:5px;margin-top:6px;overflow:hidden}.cmp-pot__fill span{background:var(--cmp);height:100%;display:block}.cmp-pot--part{border-color:var(--cmp)}.cmp-pot--done{opacity:.55;background:var(--p-surface-2)}.cmp-pot--done .cmp-pot__mark{background:var(--p-progress)}.cmp-pot--dev{background:var(--p-warning-tint);border-color:var(--p-warning)}.cmp-pot--dev .cmp-pot__mark{background:var(--p-warning)}.cmp-pot--done .cmp-pot__sub strong,.cmp-pot--dev .cmp-pot__sub strong{color:var(--p-ink)}.cmp-detail{flex-direction:column;gap:12px;display:flex}.cmp-detail__sum{margin:0;font-size:16px}.cmp-detail__sum strong{font-size:28px}.cmp-detail__list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.cmp-detail__list li{border:1px solid var(--p-border);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:4px 12px;padding:10px 12px;font-size:15px;display:flex}.cmp-detail__list strong{font-size:18px}.cmp-formula{flex-direction:column;gap:14px;display:flex}.cmp-formula h4{align-items:flex-start;gap:10px;margin:0 0 6px;font-size:15px;font-weight:600;line-height:1.4;display:flex}.cmp-formula__letter{background:var(--cmp);color:#fff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-weight:800;display:inline-flex}.cmp-formula table{border-collapse:collapse;width:100%;font-size:15px}.cmp-formula td{border-top:1px solid var(--p-border);vertical-align:top;padding:6px 4px}.cmp-formula td:first-child{width:28px;color:var(--p-ink-3)}.cmp-formula td small{color:var(--p-ink-2);font-size:12px;display:block}.cmp-formula td.num{text-align:right;white-space:nowrap}.cmp-formula tr.is-ready{opacity:.5}.cmp-close{border-top:1px dashed var(--p-border);flex-direction:column;gap:8px;padding-top:10px;display:flex}.cmp-close__fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.cmp-close label{color:var(--p-ink-2);flex-direction:column;gap:4px;font-size:12px;font-weight:600;display:flex}.cmp-close input{width:100%}.cmp-close__btn{min-height:52px;font-size:16px}.cmp-done{background:var(--p-progress-tint);border-radius:8px;margin:0;padding:8px 10px;font-size:15px}.cmp-weigh__target{background:var(--p-surface-2);border-radius:12px;flex-direction:column;gap:2px;padding:12px 14px;display:flex}.cmp-weigh__target strong{font-size:34px;font-weight:800;line-height:1.1}.cmp-weigh__target span{color:var(--p-ink-2);font-size:14px}.cmp-weigh__where{align-self:flex-start;font-size:15px}.cmp-weigh__more{align-items:center;gap:10px;min-height:44px;font-size:16px;flex-direction:row!important}.cmp-weigh__more input{width:22px;height:22px}.cmp-weigh__input{text-align:center;min-height:60px;font-size:28px!important;font-weight:800!important}.cmp-weigh__input.is-ok{border-color:var(--p-progress);box-shadow:0 0 0 3px var(--p-progress-tint)}.cmp-weigh__input.is-under,.cmp-weigh__input.is-over{border-color:var(--p-warning);box-shadow:0 0 0 3px var(--p-warning-tint)}.cmp-weigh__preview{border-radius:10px;justify-content:center;align-self:stretch;padding:8px;font-size:14px}.cmp-weigh button[type=submit]{min-height:52px;font-size:16px}.cmp-where{flex-direction:column;gap:12px;display:flex}.cmp-where__sub{flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:14px;display:flex}.cmp-where__h{text-transform:uppercase;letter-spacing:.06em;color:var(--p-ink-3);margin:4px 0 0;font-size:12px}.cmp-where__lots{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.cmp-where__lots li{border:1px solid var(--p-border);border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:4px 10px;padding:10px 12px;font-size:14px;display:grid}.cmp-where__lots li>:last-child:not(:nth-child(4)){grid-column:2/-1;justify-self:start}.cmp-where__lots li.first{border:2px solid var(--p-accent);background:var(--p-planned-tint)}.cmp-where__lots--blocked li{opacity:.75;background:var(--p-surface-2)}.cmp-where__badge{text-transform:uppercase;color:var(--p-accent);font-size:11px;font-weight:800}.cmp-where__loc{flex-direction:column;min-width:0;display:flex}.cmp-where__loc small{color:var(--p-ink-2);font-size:12px}.cmp-specs{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:10px;display:grid}.cmp-spec{border:1px solid var(--p-border);border-radius:var(--p-radius);background:var(--p-surface);flex-direction:column;gap:4px;padding:12px 14px;font-size:14px;display:flex}.cmp-check{color:var(--p-progress);font-weight:700}.cmp-check-form{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.cmp-check-form input{flex:160px;min-width:0}.cmp-runhead__stage{grid-column:1/-1}.cmp-stagepill{border:2px solid var(--p-progress);background:var(--p-progress-tint);width:100%;min-height:48px;font:inherit;color:var(--p-ink);cursor:pointer;text-align:left;border-radius:12px;align-items:center;gap:10px;padding:0 14px;display:flex}.cmp-stagepill__dot{width:10px;height:10px;color:var(--p-progress);background:currentColor;border-radius:50%;animation:1.6s ease-in-out infinite cmp-pulse}.cmp-stagepill__name{flex:1;font-size:17px;font-weight:700}.cmp-stagepill__clock{font-size:20px;font-weight:800}.cmp-stagepill--idle{border-style:dashed;border-color:var(--cmp);background:var(--p-surface);color:var(--cmp);justify-content:center;font-size:15px;font-weight:700}.cmp-stagepill--idle:disabled{border-color:var(--p-border);color:var(--p-ink-2);cursor:pointer}.cmp-stagepill--down{border-color:var(--p-blocked);background:var(--p-blocked-tint)}.cmp-stagepill--down .cmp-stagepill__dot{color:var(--p-blocked)}.cmp-stagepill--paused{border-color:var(--p-ink-3);background:var(--p-surface-2)}.cmp-stagepill--paused .cmp-stagepill__dot{color:var(--p-ink-3);animation:none}@keyframes cmp-pulse{50%{opacity:.3}}@media (prefers-reduced-motion:reduce){.cmp-stagepill__dot{animation:none}}.cmp-stages{flex-direction:column;gap:14px;display:flex}.cmp-stages__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.cmp-stagebtn{border:2px solid var(--p-border);background:var(--p-surface);min-height:64px;font:inherit;color:var(--p-ink);text-align:left;cursor:pointer;border-radius:12px;flex-direction:column;justify-content:center;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.cmp-stagebtn strong{font-size:16px}.cmp-stagebtn small{color:var(--p-ink-2);font-size:12px}.cmp-stagebtn.is-on{border-color:var(--p-progress);background:var(--p-progress-tint);opacity:1}.cmp-stagebtn.is-on small{color:var(--p-ink);font-size:15px;font-weight:800}.cmp-stagebtn--down{border-color:color-mix(in srgb, var(--p-blocked) 40%, var(--p-border))}.cmp-stagebtn--down.is-on,.cmp-stagebtn--down.is-ask{border-color:var(--p-blocked);background:var(--p-blocked-tint)}.cmp-stagebtn--paused.is-on,.cmp-stagebtn--paused.is-ask{border-color:var(--p-ink-3);background:var(--p-surface-2)}.cmp-stages__ask{background:var(--p-surface-2);border-radius:12px;padding:12px}.cmp-times{flex-direction:column;gap:10px;display:flex}.cmp-times__sum{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.cmp-times__sum span{background:var(--p-surface-2);border-radius:10px;flex-direction:column;padding:8px 10px;display:flex}.cmp-times__sum small{text-transform:uppercase;color:var(--p-ink-3);font-size:11px;font-weight:700}.cmp-times__sum strong{font-size:17px}.cmp-times__bars{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.cmp-times__bars li{grid-template-columns:84px minmax(0,1fr) auto;align-items:center;gap:10px;font-size:14px;display:grid}.cmp-times__bar{background:var(--p-surface-2);border-radius:999px;height:10px;overflow:hidden}.cmp-times__bar span{background:var(--p-progress);height:100%;display:block}.cmp-times__bar span.is-down{background:var(--p-blocked)}.cmp-times__bar span.is-paused{background:var(--p-ink-3)}.cmp-times__log summary{cursor:pointer;color:var(--p-accent);min-height:32px;font-size:14px;font-weight:700}.cmp-times__log ol{flex-direction:column;gap:4px;margin:6px 0 0;padding:0;list-style:none;display:flex}.cmp-times__log li{border-top:1px solid var(--p-border);grid-template-columns:auto minmax(0,1fr) auto;gap:2px 10px;padding:6px 0;font-size:14px;display:grid}.cmp-times__log small{color:var(--p-ink-2);grid-column:1/-1}.fml{--fml:#6d28d9;color:var(--p-ink);flex-direction:column;gap:16px;min-width:0;display:flex}.fml .plan-header__icon{color:var(--fml);background:color-mix(in srgb, var(--fml) 12%, white)}.fml-section{flex-direction:column;gap:10px;min-width:0;display:flex}.fml-section .cmp-section__title .inv-muted{margin-left:6px;font-weight:500}.fml-progress{flex-direction:column;gap:10px;padding:16px;display:flex}.fml-progress__head{justify-content:space-between;align-items:baseline;font-size:16px;display:flex}.fml-bar{background:var(--p-surface-2);border-radius:999px;height:10px;display:flex;overflow:hidden}.fml-bar__seg{height:100%}.fml-bar__seg--progress,.fml-dot--progress{background:var(--p-progress)}.fml-bar__seg--planned,.fml-dot--planned{background:var(--p-planned)}.fml-bar__seg--warning,.fml-dot--warning{background:var(--p-warning)}.fml-bar__seg--completed,.fml-dot--completed{background:var(--p-ink-3)}.fml-progress__legend{color:var(--p-ink-2);flex-wrap:wrap;gap:6px 14px;font-size:12px;display:flex}.fml-dot{border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.fml-tabs{border-bottom:1px solid var(--p-border);gap:4px;display:flex;overflow-x:auto}.fml-tab{min-height:44px;color:var(--p-ink-2);white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;border-radius:0;padding:0 14px;font-weight:600}.fml-tab:hover{color:var(--p-ink);background:0 0}.fml-tab.on{color:var(--fml);border-bottom-color:var(--fml)}.fml-tab__n{background:var(--p-surface-2);color:var(--p-ink-2);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:700}.fml-filters{flex-direction:column;gap:8px;display:flex}.fml-filters__row{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.fml-filters__row select{width:auto;min-width:140px}.fml-chips{padding:0}.fml-search{width:100%;font-size:16px}.fml-toggle{color:var(--p-ink-2);align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.fml-toggle input{width:auto;min-height:0}.fml-rows{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.fml-row{background:var(--p-surface);border:1px solid var(--p-border);border-radius:var(--p-radius);color:inherit;grid-template-columns:92px minmax(0,1fr);align-items:center;gap:4px 12px;padding:10px 14px;text-decoration:none;display:grid}.fml-row:hover{border-color:color-mix(in srgb, var(--fml) 45%, var(--p-border))}.fml-row--retired{opacity:.6}.fml-row__code{color:var(--fml);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;font-weight:700}.fml-row__main{flex-direction:column;min-width:0;display:flex}.fml-row__main strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fml-row__meta{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px;display:flex}@media (width>=760px){.fml-row{grid-template-columns:100px minmax(0,1fr) auto}.fml-row__meta{grid-column:auto;justify-content:flex-end}}.fml-origin{background:var(--p-planned-tint);color:var(--p-planned);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.fml-origin--old{background:var(--p-warning-tint);color:#92400e}.fml-sources{flex-wrap:wrap;gap:4px;display:inline-flex}.fml-origin--fishbowl{background:var(--p-planned-tint);color:var(--p-planned)}.fml-origin--goodface{color:#6d28d9;background:#ede9fe}.fml-origin--sharepoint{color:#075985;background:#e0f2fe}.fml-origin--none{background:var(--p-blocked-tint);color:var(--p-blocked)}.fml-filter-group{align-items:center;gap:8px;min-width:0;display:flex}.fml-filter-group__label{color:var(--p-ink-2);flex:0 0 52px;font-size:12px;font-weight:700}.fml-filter-group .fml-chips{flex:1;min-width:0}.fml-active{background:var(--p-planned-tint);border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;display:flex}.fml-active__chip{background:var(--p-ink);color:#fff;border-radius:999px;align-items:center;gap:4px;padding:4px 4px 4px 10px;font-size:13px;font-weight:600;display:inline-flex}.fml-active__chip button{color:#fff;cursor:pointer;background:#fff3;border:0;border-radius:999px;width:24px;height:24px;min-height:0;padding:0;font-size:16px;line-height:1}.fml-active__clear{min-height:0;color:var(--p-ink-2);cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:13px;font-weight:700;text-decoration:underline}.fml-counts{gap:4px;display:inline-flex}.fml-count{border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:11px;font-weight:800;display:inline-flex}.fml-count--red{background:var(--p-blocked-tint);color:var(--p-blocked)}.fml-count--red:before{content:"●";margin-right:3px;font-size:8px}.fml-count--amber{background:var(--p-warning-tint);color:#92400e}.fml-count--amber:before{content:"▲";margin-right:3px;font-size:8px}.fml-count--ok{background:var(--p-progress-tint);color:var(--p-progress)}.fml-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fml-issues{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.fml-issue{border-radius:8px;gap:8px;padding:6px 10px;font-size:13px;line-height:1.35;display:flex}.fml-issue span{flex-shrink:0;padding-top:3px;font-size:10px}.fml-issue--block{background:var(--p-blocked-tint);color:#991b1b}.fml-issue--warn{background:var(--p-warning-tint);color:#78350f}.fml-flag{color:#92400e;margin:0;font-size:12px;font-weight:600}.fml-id{flex-direction:column;margin:0;padding:6px 16px;display:flex}.fml-id__row{border-bottom:1px solid var(--p-border);grid-template-columns:130px minmax(0,1fr);gap:10px;padding:9px 0;font-size:14px;display:grid}.fml-id__row:last-child{border-bottom:none}.fml-id__row dt{color:var(--p-ink-2);font-size:13px;font-weight:600}.fml-id__row dd{overflow-wrap:anywhere;flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-width:0;margin:0;display:flex}.fml-id__pending{color:#92400e;font-size:13px;font-weight:700}.fml-review{flex-direction:column;gap:12px;padding:16px;display:flex}.fml-checks{grid-template-columns:repeat(auto-fill,minmax(min(100%,180px),1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.fml-check{border-radius:var(--p-radius);border:1px solid var(--p-border);background:var(--p-surface-2);flex-wrap:wrap;align-items:center;gap:6px 8px;padding:10px 12px;display:flex}.fml-check.on{border-color:var(--p-progress);background:var(--p-progress-tint)}.fml-check label{cursor:pointer;flex:1;align-items:center;gap:8px;min-height:28px;display:flex}.fml-check input{width:20px;height:20px;min-height:0;accent-color:var(--p-progress)}.fml-check__label{font-weight:700}.fml-check__warn{width:100%;color:var(--p-blocked);font-size:11px;font-weight:700}.fml-why{color:var(--p-ink-2);margin:0;padding-left:18px;font-size:13px}.fml-review__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.fml-changes{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.fml-change{flex-direction:column;gap:4px;padding:14px 16px;display:flex}.fml-change p{margin:0}.fml-change__top{justify-content:space-between;align-items:center;gap:8px;display:flex}.fml-change__formula{color:var(--p-accent);font-size:13px;font-weight:600;text-decoration:none}.fml-change__diff{font-size:15px}.fml-change__reason{color:var(--p-ink-2);font-size:13px;font-style:italic}.fml-change__btn{align-self:flex-end}.fml-old{color:var(--p-ink-3);text-decoration:line-through}.fml-steps{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.fml-step{grid-template-columns:44px minmax(0,1fr);gap:10px 14px;padding:14px;display:grid}.fml-step--flag{border-left:4px solid var(--p-warning)}.fml-step__phase{color:#fff;background:var(--p-compounding);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;font-weight:800;display:flex}.fml-step__phase--none{background:var(--p-blocked-tint);color:var(--p-blocked);border:2px dashed var(--p-blocked)}.fml-step__body{flex-direction:column;gap:6px;min-width:0;display:flex}.fml-step__text{white-space:pre-line;margin:0;font-size:15px;line-height:1.45}.fml-step__params{color:var(--p-ink-2);flex-wrap:wrap;gap:12px;margin:0;font-size:13px;font-weight:700;display:flex}.fml-step__edit{grid-column:1/-1;justify-self:end}@media (width>=760px){.fml-step{grid-template-columns:44px minmax(0,1fr) auto}.fml-step__edit{grid-column:auto;align-self:start}}.fml-caution{background:var(--p-blocked-tint);color:#991b1b;white-space:pre-line;border-radius:8px;margin:0;padding:6px 10px;font-size:13px;font-weight:600}.fml-specs{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:8px;display:grid}.fml-spec{flex-direction:column;gap:4px;padding:12px 14px;font-size:14px;display:flex}.fml-spec__top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.fml-spec__range{color:var(--p-planned);font-size:15px;font-weight:800}.fml-source{color:var(--p-ink-2);font-size:12px}.fml-source summary{cursor:pointer;color:var(--p-ink-3);font-weight:600}.fml-source p{background:var(--p-surface-2);white-space:pre-line;overflow-wrap:anywhere;border-radius:8px;margin:6px 0 0;padding:8px 10px}.fml-notes{white-space:pre-line;margin:0;font-size:14px}.fml-product{padding:12px 16px}.fml-product summary{cursor:pointer;flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-height:28px;display:flex}.fml-product__steps{flex-direction:column;gap:8px;margin:10px 0 0;padding-left:20px;font-size:14px;display:flex}.fml-product__steps p{white-space:pre-line;margin:2px 0}.fml-section>.fml-product__steps{margin:0;padding:12px 16px 12px 36px}.fml-reactivate{border:1px solid var(--p-border);border-radius:10px;flex-direction:column;gap:8px;margin:0;padding:10px 12px;display:flex}.fml-reactivate legend{color:var(--p-ink-2);padding:0 4px;font-size:13px;font-weight:700}.fml-reactivate .fml-toggle{color:var(--p-ink);flex-direction:row;font-weight:500}.fml-bom{border-collapse:collapse;width:100%;font-size:14px;display:block;overflow:auto hidden}.fml-bom th,.fml-bom td{text-align:left;border-bottom:1px solid var(--p-border);vertical-align:top;padding:8px 10px}.fml-bom th{color:var(--p-ink-2);font-size:12px;font-weight:700}.fml-bom tr:last-child td{border-bottom:0}.fml-bom .num{text-align:right;white-space:nowrap}.fml-section__head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.fml-qa{flex-direction:column;gap:12px;padding:14px 16px;display:flex}.fml-samples{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.fml-sample{border-radius:var(--p-radius);background:var(--p-surface-2);border:1px solid var(--p-border);flex-direction:column;gap:2px;padding:10px 12px;font-size:13px;display:flex}.fml-sample strong{color:var(--p-ink-2);font-size:14px}.fml-sample--yes{background:var(--p-planned-tint);border-color:var(--p-planned)}.fml-sample--yes strong{color:var(--p-planned)}.fml-sample--unset{border-style:dashed}.fml-sample--unset strong{color:#92400e}.fml-qa__notes,.fml-qa__process{flex-direction:column;gap:2px;margin:0;font-size:14px;display:flex}.fml-qa__process p{white-space:pre-line;margin:0}.fml-sample-checks{flex-direction:column;gap:10px;display:flex}.fml-sample-checks label{color:var(--p-ink);flex-direction:row;align-items:center;gap:10px;font-size:15px}.fml-sample-checks input{width:20px;height:20px;min-height:0}.fml-prev{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.fml-prev strong{font-weight:600}.code-scan{flex-direction:column;gap:10px;display:flex}.code-scan__camera{border-radius:var(--p-radius-lg);aspect-ratio:4/3;background:#000;max-height:46vh;position:relative;overflow:hidden}.code-scan__camera video{object-fit:cover;width:100%;height:100%;display:block}.code-scan__frame{border:3px solid #ffffffe6;border-radius:14px;position:absolute;inset:18% 12%;box-shadow:0 0 0 999px #00000040}.code-scan__note{text-align:center;color:#fff;margin:0;font-size:14px;position:absolute;inset:auto 0 12px}.code-scan__form{gap:8px;display:flex}.code-scan__form input{letter-spacing:.04em;flex:1;min-width:0;min-height:48px;font-size:18px;font-weight:700}.code-scan__form .plan-btn{min-height:48px}.lbls{flex-direction:column;gap:14px;display:flex}.lbls__prefs{flex-wrap:wrap;gap:8px;display:flex}.lbls__panel{border-radius:var(--p-radius-lg);background:var(--p-surface);border:1px solid var(--p-border);flex-direction:column;gap:12px;padding:14px;display:flex}.lbls__summary h2{margin:0 0 4px;font-size:19px}.lbls__summary p{flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 4px;font-size:15px;display:flex}.lbls__lots{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.lbls__lot{border:2px solid var(--p-border);background:var(--p-surface);width:100%;min-height:64px;font:inherit;color:var(--p-ink);text-align:left;cursor:pointer;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:10px 14px;display:grid}.lbls__lot strong{font-size:19px}.lbls__lot>span:nth-child(2){color:var(--p-ink-2);justify-self:end;font-size:15px}.lbls__lot.is-on{border-color:var(--p-accent);background:var(--p-planned-tint)}.lbls__lotmeta{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px;display:flex}.lbls__lotmeta small{color:var(--p-ink-2);font-size:12px}.lbls__actions{flex-wrap:wrap;gap:8px;display:flex}.lbls__actions .plan-btn{min-height:48px}.lbls__preview{justify-content:center;padding:8px 0;display:flex;overflow:hidden}.lbls__preview .lbl{zoom:.82;box-shadow:var(--p-shadow);border:1px solid var(--p-border)}.lbls__station{border-radius:var(--p-radius-lg);background:var(--p-surface);border:2px dashed var(--p-border);flex-wrap:wrap;align-items:flex-end;gap:10px;padding:14px;display:flex}.lbls__station.is-on{border:2px solid var(--p-progress);background:var(--p-progress-tint)}.lbls__station label{color:var(--p-ink-2);flex-direction:column;gap:4px;font-size:13px;font-weight:600;display:flex}.lbls__status{flex-basis:100%;margin:0;font-size:15px;font-weight:700}.lbls__station.is-on .lbls__status{color:var(--p-progress)}.lbls__log{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.lbls__log li{border:1px solid var(--p-border);border-radius:10px;flex-wrap:wrap;gap:4px 12px;padding:8px 10px;font-size:14px;display:flex}.lbls__help{font-size:14px}.lbls__help summary{cursor:pointer;color:var(--p-accent);min-height:32px;font-weight:700}.lbls__help code{word-break:break-all;font-size:12px}.lbl{box-sizing:border-box;color:#000;background:#fff;flex-direction:column;gap:2mm;padding:4mm;font-family:Arial,Helvetica,sans-serif;line-height:1.15;display:flex;overflow:hidden}.lbl--100x100{width:100mm;height:100mm}.lbl--100x50{width:100mm;height:50mm;padding:3mm}.lbl__head{flex-direction:column;display:flex}.lbl__item{letter-spacing:.02em;font-size:9mm;font-weight:800}.lbl__name{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:4.6mm;font-weight:600;display:-webkit-box;overflow:hidden}.lbl__body{flex:1;grid-template-columns:44mm minmax(0,1fr);align-items:center;gap:4mm;min-height:0;display:grid}.lbl__qr{width:44mm;height:44mm;display:block}.lbl__facts{flex-direction:column;gap:2.5mm;margin:0;display:flex}.lbl__facts div{flex-direction:column;display:flex}.lbl__facts dt{letter-spacing:.08em;font-size:3.2mm;font-weight:700}.lbl__facts dd{margin:0;font-size:6.4mm;font-weight:800}.lbl__id dd{font-family:Courier New,monospace;font-size:5mm}.lbl__barcode{flex-direction:column;align-items:center;gap:.6mm;display:flex}.lbl__barcode svg{width:80mm;height:11mm;display:block}.lbl__barcode span{letter-spacing:.1em;font-size:3.4mm}.lbl--100x50{grid-template-rows:auto 1fr;grid-template-columns:38mm minmax(0,1fr);gap:1.5mm 3mm;display:grid}.lbl--100x50 .lbl__head{grid-area:1/2}.lbl--100x50 .lbl__item{font-size:6.4mm}.lbl--100x50 .lbl__name{-webkit-line-clamp:1;font-size:3.4mm}.lbl--100x50 .lbl__body{display:contents}.lbl--100x50 .lbl__qr{grid-area:1/1/span 2;align-self:center;width:38mm;height:38mm}.lbl--100x50 .lbl__facts{flex-flow:wrap;grid-area:2/2;align-content:flex-start;gap:1mm 4mm}.lbl--100x50 .lbl__facts dt{font-size:2.6mm}.lbl--100x50 .lbl__facts dd{font-size:4.6mm}.lbl--100x50 .lbl__id{flex-basis:100%}.lbl--100x50 .lbl__id dd{font-size:3.6mm}.lbl-print-root{display:none}@media print{@page lbl-100x100{size:100mm 100mm;margin:0}@page lbl-100x50{size:100mm 50mm;margin:0}body:has(.lbl-print-root)>:not(.lbl-print-root){display:none!important}.lbl-print-root{display:block}.lbl-page{break-after:page}.lbl-page:last-child{break-after:auto}.lbl-page--100x100{page:lbl-100x100}.lbl-page--100x50{page:lbl-100x50}}.report{color:#1e1e23;background:#fff;max-width:820px;margin:0 auto;padding:32px}.report__header{border-bottom:3px solid var(--header-config);justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:16px;display:flex}.report__eyebrow{font-size:var(--fs-key);letter-spacing:.08em;text-transform:uppercase;color:var(--header-config);margin:0 0 4px;font-weight:700}.report__title{margin:0;font-size:26px;font-weight:700;line-height:1.2}@media (width<=480px){.report{padding:20px 16px}.report__title{font-size:20px}.report__header{flex-direction:column}.report__status{text-align:left}}.report__meta{font-size:var(--fs-label);color:#64646e;margin:6px 0 0}.report__status{text-align:right;font-size:var(--fs-label);flex-shrink:0}.report__generated{color:#64646e;font-size:var(--fs-key);margin-top:4px}.report__summary{border-top:1px solid #e1e1e6;border-bottom:1px solid #e1e1e6;flex-wrap:wrap;gap:0;margin:20px 0;display:flex}.report__stat{border-left:1px solid #e1e1e6;flex:120px;padding:12px 16px}.report__stat:first-child{border-left:none;padding-left:0}.report__stat-label{font-size:var(--fs-key);text-transform:uppercase;letter-spacing:.04em;color:#787882;display:block}.report__stat-value{font-variant-numeric:tabular-nums;margin-top:2px;font-size:22px;font-weight:700;display:block}.report__stat-value--bad{color:var(--metric-bad)}.report__section{break-inside:avoid;margin:24px 0}.report__section-title{font-size:var(--fs-label);text-transform:uppercase;letter-spacing:.04em;color:var(--header-config);border-bottom:1px solid #e1e1e6;margin:0 0 10px;padding-bottom:6px;font-weight:700}.report__table{border-collapse:collapse;width:100%}.report__table td{font-size:var(--fs-label);vertical-align:top;border-bottom:1px solid #f0f0f4;padding:5px 0}.report__table td:first-child{color:#64646e;width:42%;padding-right:12px}.report__table tr:last-child td{border-bottom:none}.report__bar-row{align-items:center;gap:10px;padding:4px 0;display:flex}.report__bar-label{width:150px;font-size:var(--fs-label);flex-shrink:0}.report__bar-track{background:#f0f0f4;flex:1;height:10px}.report__bar-fill{background:var(--header-faults-feedback);height:100%}.report__bar-value{text-align:right;width:60px;font-size:var(--fs-label);font-variant-numeric:tabular-nums;flex-shrink:0}.report__total-row{border-top:1px solid #e1e1e6;justify-content:space-between;margin-top:8px;padding-top:8px;font-weight:700;display:flex}.report__notes{font-size:var(--fs-label);white-space:pre-wrap;margin:0}.report__footer{font-size:var(--fs-key);color:#8c8c96;border-top:1px solid #e1e1e6;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:28px;padding-top:12px;display:flex}.report__brand{font-size:var(--fs-key);letter-spacing:.03em;color:#8c8c96;text-align:center;margin:6px 0 0;font-weight:700}@media print{.report{max-width:none;padding:0}.report__wrap{box-shadow:none!important;border:none!important;padding:0!important}.report__summary,.report__stat,.report__section-title,.report__table td,.report__total-row,.report__footer{border-color:#999!important}.report__bar-track{background:#e4e4e4!important}}.help{flex-direction:column;gap:16px;max-width:760px;display:flex}.help__back{color:var(--p-ink-2);font:inherit;cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:4px 0;font-weight:600;display:inline-flex}.help h2{margin:0 0 8px;font-size:18px}.help__intro{color:var(--p-ink-2);margin:0 0 12px}.help__search{max-width:420px;min-height:48px;font-size:16px}.help__stages{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.help__stages li{align-items:flex-start;gap:12px;display:flex}.help__stages p{margin:2px 0 0}.help__stage-n{background:var(--p-accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:inline-flex}.help__stations,.help__pending{color:var(--p-ink-2);font-size:13px}.help__pending{font-style:italic}.help__terms{flex-direction:column;gap:10px;margin:0;display:flex}.help__term{border-bottom:1px solid var(--p-border);padding-bottom:10px}.help__term:last-child{border-bottom:none;padding-bottom:0}.help__term dt{font-weight:700}.help__term dd{margin:2px 0 0}.about{flex-direction:column;gap:16px;max-width:640px;display:flex}.about__card{flex-direction:column;gap:14px;padding:16px;display:flex}.about__list{grid-template-columns:max-content 1fr;gap:8px 16px;margin:0;display:grid}.about__list dt{color:var(--btn-muted);font-weight:600}.about__list dd{margin:0;font-weight:600}.about__status{background:var(--p-surface-2);border-radius:10px;padding:10px 12px;font-weight:600}.about__status.is-latest{background:var(--p-progress-tint);color:var(--p-progress)}.about__status.is-outdated{background:var(--p-warning-tint,var(--p-surface-2));color:var(--p-ink)}.about__actions{gap:8px;display:flex}.notify-switch{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.notify-switch input{flex:none;width:22px;height:22px;margin-top:2px}.notify-error{color:var(--p-blocked);margin:0;font-weight:600}.mod-list{margin:0;padding:0;list-style:none}.mod-row{border-top:1px solid var(--p-border);align-items:center;gap:16px;padding:14px 16px;display:flex}.mod-row:first-child{border-top:none}.mod-row--off{background:var(--p-surface-2)}.mod-row__text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mod-row__title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.mod-switch{cursor:pointer;flex-shrink:0;width:52px;height:30px;position:relative}.mod-switch input{opacity:0;min-height:0;cursor:inherit;margin:0;position:absolute;inset:0}.mod-switch span{background:var(--p-border);border-radius:999px;transition:background .15s;position:absolute;inset:0}.mod-switch span:after{content:"";background:#fff;border-radius:50%;width:24px;height:24px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0f172a40}.mod-switch input:checked+span{background:var(--p-progress)}.mod-switch input:checked+span:after{transform:translate(22px)}.mod-switch input:focus-visible+span{outline:2px solid var(--p-accent);outline-offset:2px}.mod-switch input:disabled+span{opacity:.5}@media (prefers-reduced-motion:reduce){.mod-switch span,.mod-switch span:after{transition:none}}.home{flex-direction:column;gap:16px;display:flex}.home h2{font-size:var(--fs-header);margin:0}.home__title{margin:0 0 8px}.home__news{align-items:flex-start;gap:12px;padding:12px 16px;display:flex}.home__news>svg{color:var(--p-accent);flex-shrink:0;margin-top:2px}.home__news p{margin:2px 0 0}.home__quick{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.home__shortcut{text-align:center;min-height:92px;color:inherit;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px 6px;font-size:13px;font-weight:600;line-height:1.2;text-decoration:none;display:flex}.home__shortcut svg{color:var(--header-live-search)}.home__shortcut--primary{background:var(--p-accent);border-color:var(--p-accent);color:#fff}.home__shortcut--primary svg{color:#fff}@media (width>=900px){.home__quick{grid-template-columns:repeat(6,minmax(0,1fr))}.home__shortcut{min-height:110px}}.scan{flex-direction:column;gap:16px;max-width:560px;display:flex}.scan__camera{border-radius:var(--p-radius-lg);aspect-ratio:3/4;background:#000;max-height:60vh;position:relative;overflow:hidden}.scan__camera video{object-fit:cover;width:100%;height:100%;display:block}.scan__frame{aspect-ratio:1;pointer-events:none;border:3px solid #fff;border-radius:16px;width:60%;margin:auto;position:absolute;inset:0;box-shadow:0 0 0 999px #00000059}.scan__note{color:#fff;place-items:center;margin:0;display:grid;position:absolute;inset:0}.scan__text{overflow-wrap:anywhere;margin:4px 0 0}@media print{.sidebar,.bottom-bar,.no-print{display:none!important}.shell__main{padding:0}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}@page{size:A4;margin:16mm}@page qr-label-page{size:100mm 90mm;margin:0}.qr-label{page:qr-label-page;border:none}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}html,body{overflow-x:hidden}body{font-family:var(--font-family);background:var(--bg-app);color:#1e1e23;margin:0}input,select,textarea{max-width:100%}textarea{resize:vertical}
