body.stage-mode #systems > .page-heading,
body.stage-mode #systems > .notice { display:none; }
body.stage-mode #operating-detail { padding:0; border:0; background:transparent; box-shadow:none; }
#production:has(#production-workbench) > h2,
#production:has(#production-workbench) > p:not(.production-location) { display:none; }
.stage-workbench { color:var(--ink); min-width:0; }
/* Intelligence inherits the hub palette and forms; only its entry layout changes. */
.intelligence-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.intelligence-card { min-width:0; border:1px solid var(--line); background:var(--paper-warm); }
.stage-workbench .intelligence-card > button { display:flex; flex-direction:column; width:100%; height:100%; padding:28px; border:0; border-radius:0; background:transparent; color:var(--forest); text-align:left; }
.stage-workbench .intelligence-card:hover { border-color:var(--forest); }
.intelligence-card-title { font-size:1.4rem; font-weight:750; line-height:1.4; }
.intelligence-card-description { margin-top:8px; font-size:.84rem; line-height:1.6; }
.intelligence-card-counts { display:flex; flex-wrap:wrap; gap:20px; margin:22px 0 14px; font-size:.8rem; font-variant-numeric:tabular-nums; }
.intelligence-card-summary { display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere; font-size:.9rem; line-height:1.7; min-height:5.1em; margin-bottom:24px; }
.intelligence-card-footer { display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; width:100%; margin-top:auto; padding-top:18px; border-top:1px solid var(--line); font-size:.8rem; }
.intelligence-card-footer > :last-child { font-weight:700; }
.intelligence-detail { min-width:0; }
.intelligence-detail > .stage-unit { margin-top:20px; }
@media(max-width:700px) { .intelligence-grid { grid-template-columns:1fr; gap:18px; }.stage-workbench .intelligence-card > button { padding:22px; } }
.brand-review-trigger { min-width:82px; }
.brand-card-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.brand-card { min-width:0; display:flex; flex-direction:column; border:1px solid var(--line); background:var(--paper-warm); }
.brand-card-open { display:flex; flex:1; flex-direction:column; width:100%; min-height:218px; padding:22px; border:0; border-radius:0; background:transparent; color:var(--forest); text-align:left; }
.brand-card:hover { border-color:var(--gold); }
.brand-card-open:hover, .brand-card-open:active { background:var(--paper-warm); color:var(--forest); }
.brand-card-open:focus-visible { outline:3px solid var(--gold); outline-offset:-3px; }
.brand-card-index { color:var(--wine); font:850 .72rem ui-monospace,SFMono-Regular,Menlo,monospace; }
.brand-card-copy { display:grid; gap:10px; margin-top:26px; }
.brand-card-copy strong { font-size:1.25rem; line-height:1.35; }
.brand-card-copy > span { color:var(--muted); font-size:.82rem; line-height:1.7; }
.brand-card-footer { display:flex; justify-content:space-between; gap:10px; margin-top:auto; padding-top:18px; border-top:1px solid var(--line); color:var(--muted); font-size:.72rem; }
.brand-card-footer > :last-child { color:var(--wine); font-weight:750; }
.brand-card-records { padding:0 22px; }
.brand-card-records .stage-record { padding-block:14px; }
.brand-card-records .stage-record h4 { font-size:.88rem; }
.brand-card-add { align-self:flex-start; margin:0 22px 22px; }
.brand-detail { min-width:0; }
.brand-detail-back { margin-bottom:20px; }
.brand-detail-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:24px; padding-bottom:18px; border-bottom:1px solid var(--line); }
.brand-detail-heading h3 { margin:6px 0 8px; color:var(--forest); font-size:1.5rem; }
.brand-detail-heading p { margin:0; color:var(--muted); line-height:1.6; }
.brand-detail-heading > span { color:var(--wine); font-size:.75rem; font-weight:750; white-space:nowrap; }
@media(max-width:900px) { .brand-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:640px) { .brand-card-grid { grid-template-columns:1fr; }.brand-card-open { min-height:190px; }.brand-detail-heading { align-items:start; flex-direction:column; gap:8px; } }
.planning-flow { min-width:0; }
.planning-flow-rail { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; margin-bottom:30px; }
.planning-flow-node { position:relative; display:flex; align-items:stretch; min-width:0; }
.planning-flow-node > button { display:grid; grid-template-columns:auto minmax(0,1fr); gap:0 13px; width:100%; height:100%; min-height:170px; box-sizing:border-box; padding:20px; border:1px solid var(--line); border-radius:0; background:var(--paper-warm); color:var(--forest); text-align:left; }
.planning-flow-node > button:hover { border-color:var(--gold); background:var(--paper-warm); }
.planning-flow-node > button:focus-visible { outline:3px solid var(--gold); outline-offset:-3px; }
.planning-flow-node > button[aria-pressed=true] { border-color:var(--forest); box-shadow:inset 0 -3px 0 var(--wine); }
.planning-flow-index { color:var(--wine); font:850 .72rem ui-monospace,SFMono-Regular,Menlo,monospace; }
.planning-flow-copy { display:grid; gap:7px; min-width:0; }
.planning-flow-copy strong { font-size:1.08rem; }
.planning-flow-copy span { color:var(--muted); font-size:.76rem; line-height:1.55; }
.planning-flow-count { grid-column:2; margin-top:15px; color:var(--muted); font-size:.7rem; }
.planning-flow-node:not(:last-child)::after { content:'→'; position:absolute; top:50%; right:-18px; transform:translateY(-50%); color:var(--gold); font-size:1.5rem; pointer-events:none; }
.planning-flow-arrow { display:none; }
.planning-step-panel { border-top:2px solid var(--forest); }
.planning-step-panel > header { display:flex; justify-content:space-between; align-items:end; gap:20px; padding:18px 0 20px; border-bottom:1px solid var(--line); background:transparent; color:var(--ink); }
.planning-step-panel > header h3 { margin:6px 0 7px; color:var(--forest); font-size:1.35rem; }
.planning-step-panel > header p:last-child { margin:0; color:var(--muted); line-height:1.6; }
.planning-step-panel > header > span { color:var(--wine); font-size:.75rem; font-weight:750; white-space:nowrap; }
.planning-step-panel .stage-unit { border-bottom:0; padding-top:12px; }
@media(max-width:900px) { .planning-flow-rail { grid-template-columns:1fr; gap:10px; }.planning-flow-node:not(:last-child)::after { display:none; }.planning-flow-node > button { height:auto; min-height:0; } }
@media(max-width:640px) { .planning-step-panel > header { align-items:start; flex-direction:column; gap:8px; }.planning-step-panel > header > span { white-space:normal; } }
.stage-workbench [hidden] { display:none!important; }
.stage-workbench .stage-heading { display:flex; align-items:start; justify-content:space-between; gap:24px; padding:0 0 22px; border-bottom:2px solid var(--forest); }
.stage-workbench .stage-heading h2 { margin:6px 0 14px; color:var(--forest); font-size:clamp(2rem,4vw,3.6rem); line-height:1.15; }
.stage-workbench .stage-heading p { margin:0; max-width:55ch; color:var(--muted); }
.stage-workbench .stage-heading .eyebrow { color:var(--wine); font-size:.72rem; }
.stage-heading-actions { display:flex; flex-wrap:wrap; align-items:start; justify-content:end; gap:12px; }
.stage-workbench button { cursor:pointer; font-family:inherit; }
.stage-workbench button:focus-visible,.stage-workbench summary:focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
.stage-workbench .stage-directions { margin:0; position:relative; }
.stage-workbench .stage-directions > summary { padding:10px 14px; border:1px solid var(--line); color:var(--forest); font-size:.79rem; min-height:44px; cursor:pointer; white-space:nowrap; }
.stage-directions > div { position:absolute; z-index:12; right:0; top:54px; width:540px; max-width:85vw; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; padding:12px; background:var(--paper-warm); border:1px solid var(--forest); box-shadow:0 12px 24px #123f341c; }
.stage-directions button { padding:12px; background:var(--paper-warm); color:var(--forest); border:1px solid var(--line); text-align:left; border-radius:0; min-width:0; }
.stage-directions button[aria-pressed=true] { border:2px solid var(--forest); background:#e7eee7; }
.stage-directions strong,.stage-directions small { display:block; }
.stage-directions strong { font-size:.8rem; margin:9px 0 6px; }
.stage-directions small { font-size:.7rem; line-height:1.5; color:var(--muted); }
.stage-layout-sketch { display:grid; gap:5px; height:66px; padding:7px; border:1px solid var(--line); }
.stage-layout-sketch i { background:#adc3b8; }
.sketch-2 { grid-template-columns:repeat(3,1fr); }
.sketch-3 { grid-template-columns:1fr 2.5fr; }
.sketch-3 i:nth-child(2) { grid-row:span 2; }
.stage-feedback { min-height:24px; padding:8px 0; font-size:.8rem; max-width:none; }
.stage-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-bottom:1px solid var(--line); margin:4px 0 24px; }
.stage-summary > div { padding:10px 20px 20px 0; }
.stage-summary > div + div { border-left:1px solid var(--line); padding-left:20px; }
.stage-summary span { display:block; color:var(--muted); font-size:.75rem; }
.stage-summary strong { display:block; color:var(--forest); font-size:1.9rem; margin-top:8px; font-variant-numeric:tabular-nums; }
.stage-groups { display:flex; flex-wrap:wrap; gap:8px; padding:0 0 22px; }
.stage-groups button { border:1px solid var(--line); border-radius:0; color:var(--forest); background:transparent; min-height:42px; padding:8px 16px; font-size:.8rem; }
.stage-groups button[aria-pressed=true] { background:var(--forest); color:white; border-color:var(--forest); }
.customer-service-channels { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 0 22px; }
.customer-service-channel-list { display:flex; flex-wrap:wrap; gap:8px; }
.customer-service-channel,.customer-service-scripts { min-height:42px; padding:8px 18px; border:1px solid var(--line); border-radius:0; color:var(--forest); background:transparent; font-size:.8rem; }
.customer-service-channel[aria-pressed=true] { color:#fff; border-color:var(--forest); background:var(--forest); }
.customer-service-scripts { border-color:var(--wine); color:var(--wine); font-weight:750; }
.customer-service-scripts[aria-pressed=true] { color:#fff; border-color:var(--wine); background:var(--wine); }
.stage-units { display:grid; gap:24px; }
.stage-unit { min-width:0; padding:0 0 24px; border-bottom:1px solid var(--line); }
.stage-workbench .stage-unit > header { display:flex; flex-wrap:nowrap; justify-content:space-between; align-items:center; gap:14px; background:transparent; color:var(--ink); padding:16px 0; border-bottom:1px solid var(--line); }
.stage-workbench .stage-unit > header span { color:var(--muted); font-size:.72rem; white-space:nowrap; }
.stage-workbench .stage-unit h3 { margin:4px 0 0; color:var(--forest); font-size:1.12rem; line-height:1.4; }
.stage-workbench .stage-template { margin:10px 0 18px; }
.stage-template > summary { color:var(--forest); cursor:pointer; font-size:.8rem; padding:7px 0; }
.stage-facts { display:grid; gap:12px; margin:12px 0 18px; }
.stage-facts > div { display:grid; grid-template-columns:90px minmax(0,1fr); gap:12px; }
.stage-facts dt { color:var(--muted); font-size:.77rem; }
.stage-facts dd { margin:0; font-size:.83rem; line-height:1.7; white-space:pre-wrap; overflow-wrap:anywhere; }
.stage-unit-records { margin:0 0 18px; }
.stage-empty { color:var(--muted); margin:14px 0; font-size:.8rem; }
.stage-record { position:relative; padding:16px 0; border-bottom:1px solid var(--line); }
.stage-record h4 { margin:6px 0; color:var(--ink); font-size:1rem; }
.stage-record p { font-size:.78rem; margin:6px 0; }
.stage-record details { margin:0 0 12px; }
.stage-record summary { font-size:.78rem; }
.stage-state { display:inline-block; font-size:.73rem; color:var(--muted); }
.stage-state[data-state=review],.stage-state[data-state=waiting] { color:var(--wine); }
.stage-state[data-state=done] { color:var(--forest); }
.stage-record-delete { position:absolute; top:8px; right:8px; padding:4px 10px; color:#a33; border:1px solid #e4c8c8; background:transparent; font-size:.72rem; border-radius:4px; cursor:pointer; }
.stage-record-delete:hover { background:#fdf2f2; color:#7a1f1f; border-color:#c99; }
.stage-record-delete:disabled { opacity:.5; cursor:not-allowed; }
.launch-file-tree-folder { margin:6px 0; }
.launch-file-tree-folder summary { cursor:pointer; font-size:.8rem; color:var(--forest); padding:4px 0; }
.launch-file-tree-folder summary:hover { color:var(--wine); }
.launch-file-tree-list { display:grid; gap:4px; padding-left:18px; margin-top:4px; }
.launch-file-tree-root { display:grid; gap:4px; }
.launch-file-link { display:block; width:100%; text-align:left; padding:6px 10px; border:1px solid var(--line); background:var(--paper-warm); color:var(--ink); font-size:.78rem; border-radius:4px; cursor:pointer; }
.launch-file-link:hover { border-color:var(--gold); background:var(--paper-warm); }
.stage-layout-1 > .stage-unit { display:grid; grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr); gap:0 36px; }
.stage-layout-1 .stage-unit > header { grid-column:1; align-self:start; border-bottom:0; }
.stage-layout-1 .stage-template { grid-column:2; grid-row:1 / span 2; }
.stage-layout-1 .stage-unit-records { grid-column:1 / -1; }
.stage-layout-1 .stage-unit > button { justify-self:start; grid-column:1; }
.stage-layout-2 { grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; }
.stage-layout-2 > .stage-unit { padding:0 22px 22px; border:1px solid var(--line); background:var(--paper-warm); }
.stage-focus { display:grid; grid-template-columns:240px minmax(0,1fr); gap:32px; align-items:start; }
.stage-focus-index { display:grid; gap:1px; border-top:1px solid var(--line); }
.stage-focus-index button { border:0; border-bottom:1px solid var(--line); border-radius:0; text-align:left; padding:15px 12px; color:var(--forest); background:transparent; font-size:.83rem; }
.stage-focus-index button span { display:block; color:var(--muted); font-size:.7rem; margin-top:6px; }
.stage-focus-index button[aria-pressed=true] { background:#e7eee7; border-left:3px solid var(--wine); }
.stage-related { margin-top:32px; padding-top:18px; border-top:1px solid var(--line); }
.stage-related summary { cursor:pointer; color:var(--forest); }
.stage-workbench .stage-dialog { width:min(720px,calc(100vw - 32px)); max-height:90dvh; overflow:auto; padding:26px; background:var(--paper-warm); color:var(--ink); border:1px solid var(--forest); }
.stage-dialog::backdrop { background:#10292080; }
.stage-dialog-head { display:flex; align-items:start; justify-content:space-between; gap:24px; margin-bottom:20px; }
.stage-dialog-head h3 { color:var(--forest); margin:6px 0; font-size:1.25rem; }
.stage-workbench .stage-dialog label { display:grid; gap:7px; margin:0 0 18px; font-size:.82rem; color:var(--forest); }
.stage-dialog input,.stage-dialog textarea,.stage-dialog select { width:100%; border:1px solid var(--line); border-radius:0; padding:10px; color:var(--ink); background:white; font:inherit; }
.stage-form-pair { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.stage-dialog details { border-top:1px solid var(--line); padding-top:8px; }
.stage-dialog p { font-size:.8rem; }
.stage-module-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; align-items:start; }
.stage-module-card { min-width:0; padding:22px; border:1px solid var(--line); background:var(--paper-warm); }
.stage-module-card > header { display:grid; grid-template-columns:minmax(0,3fr) minmax(max-content,1fr); align-items:stretch; gap:16px; min-height:114px; box-sizing:border-box; margin:-22px -22px 0; padding:18px 22px 16px; border-bottom:1px solid var(--forest); background:var(--forest); color:#fff; }
.stage-module-card-header-main { display:grid; grid-template-columns:20% minmax(0,1fr); align-items:stretch; gap:2px; min-width:0; }
.stage-module-card-header-main > div { display:flex; flex-direction:column; justify-content:center; min-width:0; }
.stage-module-card-header-meta { display:grid; justify-items:end; gap:4px; min-width:0; text-align:right; }
.stage-module-card > header span { color:#e8efe9; font-size:.7rem; }
.stage-module-card > header .stage-module-index { display:flex; align-items:center; align-self:stretch; position:relative; top:7px; width:100%; color:transparent; font-family:"Helvetica Neue Condensed Black","Helvetica Neue",Arial,sans-serif; font-stretch:condensed; font-size:3.2rem; line-height:1.16; letter-spacing:.01em; font-weight:900; font-variant-numeric:tabular-nums; transform:scale(1.25); transform-origin:left bottom; -webkit-text-stroke:1px var(--gold); text-shadow:none; }
.stage-module-card > header h3 { margin:5px 0 0; color:#fff; font-size:1.12rem; }
.stage-module-card > header strong { color:#fff; white-space:nowrap; }
.stage-module-card .stage-module-goal { min-height:0; max-width:none; margin:0; color:#e8efe9; font-size:.68rem; line-height:1.45; white-space:nowrap; }
.stage-module-card > details { margin:12px 0; }
.stage-module-card > details > summary { color:var(--forest); cursor:pointer; font-size:.8rem; }
.launch-upload-methods { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:14px; align-items:stretch; }
.launch-upload-methods .button,.launch-inline-drop { display:flex; align-items:center; justify-content:center; min-width:0; width:100%; height:52px; min-height:52px; box-sizing:border-box; margin:0; padding:8px 10px; border:1px solid var(--forest); border-radius:6px; background:#fff; color:var(--forest); font:inherit; font-size:.72rem; font-weight:750; line-height:1.35; text-align:center; cursor:pointer; transition:background .18s ease,border-color .18s ease,transform .18s ease; }
.launch-upload-methods .button:first-child { background:var(--forest); color:#fff; border-color:var(--forest); }
.launch-upload-methods .button:first-child:not(:disabled):hover { background:#1d5748; border-color:#1d5748; }
.launch-upload-methods .button.secondary { background:#fff; color:var(--forest); border-color:var(--line); }
.launch-upload-methods .button.secondary:not(:disabled):hover { background:#f1f4ef; border-color:var(--forest); }
.launch-upload-methods .button:not(:disabled):active,.launch-inline-drop:active { transform:translateY(1px); }
.launch-inline-drop { border-style:dashed; background:#f8faf6; }
.launch-inline-drop:hover,.launch-inline-drop.is-dragging { background:#e7eee7; border-color:var(--forest); }
.launch-upload-methods .button:disabled,.launch-inline-drop.is-disabled { cursor:not-allowed; opacity:.5; }
.launch-inline-drop { display:flex; align-items:center; justify-content:center; border-style:dashed; }
.launch-inline-drop input { display:none; }
.stage-module-status { display:flex; justify-content:space-between; gap:12px; padding:10px 0; border-top:1px solid var(--line); color:var(--muted); font-size:.72rem; }
.marketing-layout { display:grid; gap:26px; min-width:0; }
.marketing-data-panel { min-width:0; padding:22px; border:1px solid var(--line); background:var(--paper-warm); }
.marketing-data-panel > header { display:flex; align-items:end; justify-content:space-between; gap:24px; min-height:0; margin:-22px -22px 22px; padding:22px 24px 20px; border-bottom:2px solid #d8e6df; background:var(--forest); color:#fff; }
.marketing-data-panel > header h3 { margin:6px 0 7px; color:#fff; font-size:1.55rem; }
.marketing-data-panel > header .eyebrow { color:#d5b45c; }
.marketing-data-panel > header p:last-child { margin:0; color:#e8efe9; font-size:.78rem; line-height:1.6; }
.marketing-data-panel > header .marketing-cost-button { border-color:#fff; background:transparent; color:#fff; }
.marketing-cost-button { flex:0 0 auto; white-space:nowrap; }
.marketing-monitor-panel { min-width:0; }
.marketing-monitor-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; padding:0 0 14px; border-bottom:1px solid var(--line); }
.marketing-monitor-heading h4 { margin:0; color:var(--forest); font-size:1.05rem; }
.marketing-monitor-heading p { margin:4px 0 0; color:var(--muted); font-size:.7rem; line-height:1.5; }
.marketing-monitor-heading > span { color:var(--wine); font-size:.68rem; font-weight:750; white-space:nowrap; }
.marketing-monitor-table { overflow-x:auto; }
.marketing-monitor-table-head,.marketing-monitor-row { display:grid; grid-template-columns:1.35fr .9fr .8fr 1.5fr .9fr auto; gap:16px; align-items:center; min-width:780px; }
.marketing-monitor-table-head { padding:10px 0; color:var(--muted); font-size:.64rem; font-weight:750; letter-spacing:.04em; }
.marketing-monitor-rows { border-top:2px solid var(--forest); }
.marketing-monitor-row { padding:15px 0; border-bottom:1px solid var(--line); }
.marketing-monitor-account,.marketing-monitor-state,.marketing-monitor-sync,.marketing-monitor-health { display:grid; gap:3px; min-width:0; }
.marketing-monitor-account > span { color:var(--wine); font-size:.64rem; font-weight:750; }
.marketing-monitor-account > strong { overflow-wrap:anywhere; color:var(--forest); font-size:.86rem; }
.marketing-monitor-account > small,.marketing-monitor-state > small,.marketing-monitor-sync > small,.marketing-monitor-health > small { color:var(--muted); font-size:.64rem; line-height:1.4; }
.marketing-monitor-state > strong,.marketing-monitor-sync > strong,.marketing-monitor-health > strong { color:var(--forest); font-size:.72rem; }
.marketing-monitor-state .marketing-monitor-pending { color:var(--wine); }
.marketing-monitor-metrics { display:flex; flex-wrap:wrap; gap:10px; }
.marketing-monitor-metrics span { display:grid; gap:2px; min-width:44px; }
.marketing-monitor-metrics strong { color:var(--forest); font-size:.82rem; }
.marketing-monitor-metrics small { color:var(--muted); font-size:.6rem; }
.marketing-monitor-action { min-width:76px; min-height:34px; padding:7px 10px; font-size:.66rem; white-space:nowrap; }
.marketing-account-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:18px; }
.marketing-account-card { min-width:0; padding:15px; border:1px solid var(--line); background:#fff; }
.marketing-account-card > header { display:flex; align-items:start; justify-content:space-between; gap:10px; min-height:0; margin:0; padding:0 0 10px; border-bottom:1px solid var(--line); background:#fff; color:var(--forest); }
.marketing-account-card h4 { margin:4px 0 0; color:var(--forest); font-size:.95rem; line-height:1.35; }
.marketing-account-card header span { color:var(--wine); font-size:.68rem; font-weight:750; }
.marketing-account-card header small { display:block; margin-top:3px; color:var(--muted); font-size:.65rem; }
.marketing-account-card header strong { color:var(--muted); font-size:.68rem; white-space:nowrap; }
.marketing-card-goal { min-height:2.8em; margin:11px 0; color:var(--muted); font-size:.7rem; line-height:1.5; }
.marketing-account-card > details,.marketing-subcard > details { margin:0 0 10px; }
.marketing-account-card > details > summary,.marketing-subcard > details > summary { color:var(--forest); cursor:pointer; font-size:.7rem; }
.marketing-account-card .stage-facts,.marketing-subcard .stage-facts { gap:8px; margin:10px 0 12px; }
.marketing-account-card .stage-facts > div,.marketing-subcard .stage-facts > div { grid-template-columns:68px minmax(0,1fr); gap:8px; }
.marketing-account-card .stage-facts dt,.marketing-subcard .stage-facts dt,.marketing-account-card .stage-facts dd,.marketing-subcard .stage-facts dd { font-size:.65rem; line-height:1.45; }
.marketing-card-status { display:flex; justify-content:space-between; gap:10px; padding:9px 0; border-top:1px solid var(--line); color:var(--muted); font-size:.66rem; }
.marketing-card-records { margin:0 0 10px; }
.marketing-card-records .stage-empty { margin:8px 0; font-size:.68rem; }
.marketing-card-records .stage-record { padding:9px 0; }
.marketing-card-records .stage-record h4 { font-size:.75rem; }
.marketing-card-records .stage-record p,.marketing-card-records .stage-record summary { font-size:.65rem; }
.marketing-account-card > .button,.marketing-subcard > .button { width:100%; min-height:36px; padding:8px 10px; font-size:.68rem; }
.marketing-module-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; min-width:0; }
.marketing-module-card { min-width:0; padding:18px; border:1px solid var(--line); background:var(--paper-warm); }
.marketing-module-card > header { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:start; gap:14px; min-height:0; margin:0; padding:0 0 15px; border-bottom:2px solid var(--forest); background:transparent; color:var(--ink); }
.marketing-module-index { color:var(--wine); font:850 .72rem ui-monospace,SFMono-Regular,Menlo,monospace; }
.marketing-module-card h3 { margin:0; color:var(--forest); font-size:1.15rem; }
.marketing-module-card header p { margin:5px 0 0; color:var(--muted); font-size:.7rem; line-height:1.5; }
.marketing-module-card header strong { color:var(--muted); font-size:.68rem; white-space:nowrap; }
.marketing-module-items { display:grid; gap:12px; padding-top:14px; }
.marketing-subcard { min-width:0; padding:13px; border:1px solid var(--line); background:#fff; }
.marketing-subcard > header { display:flex; align-items:start; justify-content:space-between; gap:10px; min-height:0; margin:0; padding:0; background:transparent; color:var(--forest); }
.marketing-subcard h4 { margin:4px 0 0; color:var(--forest); font-size:.9rem; }
.marketing-subcard header span { color:var(--wine); font-size:.66rem; font-weight:750; }
.marketing-subcard header strong { color:var(--muted); font-size:.66rem; }
.marketing-subcard .marketing-card-goal { min-height:0; margin:8px 0 10px; }
@media(max-width:1000px) { .marketing-account-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:900px) { .marketing-monitor-table-head,.marketing-monitor-row { gap:12px; } }
@media(max-width:640px) { .marketing-data-panel { padding:16px; } .marketing-data-panel > header { align-items:start; flex-direction:column; gap:12px; margin:-16px -16px 18px; padding:18px 16px; } .marketing-cost-button { width:100%; } .marketing-account-grid,.marketing-module-grid { grid-template-columns:1fr; } .marketing-monitor-heading { align-items:start; flex-direction:column; gap:5px; } .marketing-module-card { padding:15px; } }
.launch-upload-zone { min-height:132px; place-items:center; align-content:center; padding:20px; border:2px dashed var(--line)!important; background:white; text-align:center; cursor:pointer; }
.launch-upload-zone.is-dragging { border-color:var(--wine)!important; background:#f7ecee; }
.launch-upload-zone input { max-width:360px; }
.launch-upload-zone span { color:var(--muted); font-size:.72rem; }
.launch-upload-list { margin:0 0 18px; padding:12px 12px 12px 30px; background:var(--paper-warm); color:var(--muted); font-size:.76rem; line-height:1.7; }
.stage-development { border:1px solid var(--line); padding:22px; margin:0 0 32px; }
.stage-development > h3 { margin:0 0 18px; color:var(--forest); }
.stage-development-controls { display:flex; flex-wrap:wrap; gap:16px; }
.stage-development-controls label { min-width:140px; flex:1; display:grid; gap:7px; font-size:.8rem; }
.stage-development-controls select { border:1px solid var(--line); border-radius:0; background:var(--paper-warm); padding:10px; color:var(--forest); width:100%; }
.stage-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.stage-product-grid article { min-width:0; padding:14px; background:var(--paper-warm); border:1px solid var(--line); }
.stage-product-image { position:relative; aspect-ratio:4/3; display:grid; place-items:center; background:white; overflow:hidden; color:var(--muted); font-size:.8rem; }
.stage-product-image img { position:absolute; inset:0; display:block; width:100%; height:100%; min-width:0; min-height:0; object-fit:contain; object-position:center center; margin:auto; }
.stage-product-grid h4 { font-size:.95rem; color:var(--forest); margin:14px 0 8px; }
.stage-product-grid p { font-size:.78rem; }
.stage-product-grid button { width:100%; }
.development-product-card { display:grid; gap:0; }
.development-product-card h4 { margin-bottom:4px; }
.development-product-card > p { margin:6px 0; }
.development-mini-flow { display:grid; gap:6px; margin:12px 0 8px; padding:0; list-style:none; }
.development-mini-flow li { display:flex; justify-content:space-between; gap:10px; padding:6px 0; border-top:1px solid var(--line); font-size:.68rem; line-height:1.4; }
.development-mini-flow li span { color:var(--forest); font-weight:750; }
.development-mini-flow li strong { color:var(--muted); font-size:.64rem; font-weight:650; text-align:right; }
.development-mini-flow .development-mini-revision strong { color:var(--wine); }
.stage-product-grid .production-product-open { min-height:210px; padding:8px; border:0; background:transparent; color:var(--forest); text-align:left; }
.stage-product-grid .production-product-card { display:grid; grid-template-columns:minmax(0,1fr) 100px; gap:14px; }
.stage-product-grid .production-product-open { display:flex; align-items:flex-end; min-width:0; }
.production-product-open > div > span { display:block; }
.production-card-design { align-self:stretch; display:flex; flex-direction:column; padding:8px 0; color:var(--muted); font-size:12px; }
.production-card-design img { display:block; width:100%; max-height:170px; object-fit:contain; background:white; margin:auto 0; }
.development-detail { min-width:0; }
.development-detail-back { margin-bottom:20px; }
.development-detail-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:12px; padding:0 0 18px; border-bottom:2px solid var(--forest); background:transparent; color:var(--ink); }
.development-detail-heading h3 { margin:7px 0 5px; color:var(--forest); font-size:clamp(1.8rem,3.6vw,3.1rem); }
.development-detail-heading p { margin:0; color:var(--muted); }
.development-detail-heading > span { color:var(--wine); font-size:.75rem; font-weight:750; white-space:nowrap; }
.development-flow-note { margin:0 0 24px; padding:13px 16px; border-left:3px solid var(--gold); background:var(--paper-warm); color:var(--muted); font-size:.78rem; line-height:1.6; }
.development-flow-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; align-items:stretch; }
.development-flow-card { display:flex; min-width:0; flex-direction:column; padding:18px; border:1px solid var(--line); background:var(--paper-warm); }
.development-flow-card > header { display:flex; justify-content:space-between; align-items:start; gap:14px; min-height:116px; padding:0 0 15px; border-bottom:1px solid var(--line); background:transparent; color:var(--ink); }
.development-flow-card > header h3 { margin:7px 0 6px; color:var(--forest); font-size:1.12rem; }
.development-flow-card > header p { margin:0; color:var(--muted); font-size:.74rem; line-height:1.55; }
.development-flow-card > header > strong { color:var(--wine); font-size:.67rem; line-height:1.45; text-align:right; }
.development-flow-index { color:var(--wine); font:850 .7rem ui-monospace,SFMono-Regular,Menlo,monospace; }
.development-flow-steps { display:grid; gap:7px; margin:15px 0 16px; padding:0 0 0 20px; color:var(--muted); font-size:.7rem; line-height:1.5; }
.development-flow-steps li::marker { color:var(--gold); font-weight:750; }
.development-media-groups { display:grid; gap:12px; margin:0 0 15px; }
.development-media-group { padding:12px; border:1px solid var(--line); background:#fff; }
.development-media-group-heading { display:flex; justify-content:space-between; align-items:baseline; gap:10px; margin-bottom:10px; }
.development-media-group-heading h4 { margin:0; color:var(--forest); font-size:.75rem; }
.development-media-group-heading span { color:var(--muted); font-size:.63rem; }
.development-media-strip { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; align-items:start; margin:0; }
.development-media-strip figure { min-width:0; margin:0; border:1px solid var(--line); background:white; }
.development-media-strip figure { grid-column:span 2; }
.development-media-strip figure:only-child { grid-column:2 / span 3; }
.development-media-strip figure:first-child:nth-last-child(2) { grid-column:1 / span 3; }
.development-media-strip figure:nth-child(2):last-child { grid-column:4 / span 3; }
.development-media-thumb { position:relative; aspect-ratio:4/3; overflow:hidden; background:white; }
.development-media-thumb img { display:block; width:100%; height:100%; object-fit:contain; background:white; }
.development-media-thumb span { position:absolute; left:6px; top:6px; padding:3px 5px; background:#fbfbf7e8; color:var(--forest); font-size:.58rem; }
.development-media-strip figcaption { padding:6px 7px; color:var(--muted); font-size:.6rem; line-height:1.35; }
.development-media-empty { margin:0 0 15px; padding:18px 10px; border:1px dashed var(--line); color:var(--muted); font-size:.7rem; text-align:center; }
.development-media-upload { width:100%; margin-top:10px; padding:9px 12px; font-size:.7rem; }
.stage-development-title { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:18px; }
.stage-development-title h3 { margin:4px 0 5px; }
.stage-development-title p { margin:0; color:var(--muted); font-size:.76rem; }
.stage-development-actions,.development-card-actions { display:flex; flex-wrap:wrap; gap:10px; }
.development-card-actions .button { flex:1 1 120px; }
.development-lifecycle-state { display:block; margin:5px 0; color:var(--wine); font-size:.72rem; }
.development-product-dialog { width:min(560px,calc(100vw - 32px)); padding:26px; border:1px solid var(--forest); background:var(--paper-warm); color:var(--ink); }
.development-product-dialog::backdrop { background:#10292080; }
.development-product-dialog label { display:grid; gap:7px; margin-bottom:16px; color:var(--forest); font-size:.82rem; }
.development-product-dialog input { width:100%; box-sizing:border-box; padding:10px; border:1px solid var(--line); background:white; color:var(--ink); font:inherit; }
.media-upload-dialog { width:min(680px,calc(100vw - 32px)); max-width:none; padding:0; border:1px solid var(--forest); background:var(--paper-warm); color:var(--ink); }
.media-upload-dialog::backdrop { background:#10292080; }
.development-choice-dialog { width:min(440px,calc(100vw - 32px)); padding:26px; border:1px solid var(--forest); background:var(--paper-warm); color:var(--ink); }
.development-choice-dialog::backdrop { background:#10292080; }
.development-choice-dialog h3 { margin:0 0 6px; color:var(--forest); font-size:1.15rem; }
.development-choice-dialog p { margin:0 0 16px; font-size:.8rem; color:var(--ink); opacity:.72; }
.development-choice-list { display:grid; gap:10px; margin-bottom:18px; }
.development-choice-option { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 14px; border:1px solid var(--line); border-radius:4px; background:white; color:var(--ink); font:inherit; text-align:left; cursor:pointer; }
.development-choice-option:hover,.development-choice-option:focus-visible { border-color:var(--forest); background:#eef3ed; outline:none; }
.development-choice-name { font-weight:500; }
.development-choice-meta { flex:none; font-size:.72rem; color:var(--forest); background:#fff; border:1px solid var(--line); border-radius:999px; padding:2px 9px; }
.media-upload-shell { padding:26px; }
.media-upload-tabs { display:flex; gap:8px; margin:0 0 20px; border-bottom:1px solid var(--line); padding-bottom:12px; }
.media-upload-tabs .button { min-width:120px; }
.media-upload-tabs .button[aria-pressed="true"] { background:var(--forest); color:#fff; border-color:var(--forest); }
.media-upload-body { display:grid; gap:15px; }
.media-upload-body label { display:grid; gap:7px; color:var(--forest); font-size:.78rem; }
.media-upload-body input[type=text],.media-upload-body input[type=file] { width:100%; border:1px solid var(--line); background:#fff; padding:10px; color:var(--ink); font:inherit; }
.media-upload-context { display:grid; gap:4px; padding:12px; background:#e7eee7; color:var(--forest); }
.media-upload-context span,.media-upload-rule { color:var(--muted); font-size:.72rem; }
.media-upload-rule { margin:0; padding:12px; border-left:3px solid var(--gold); background:#fff; line-height:1.6; }
.media-upload-rule code { color:var(--wine); font-size:.68rem; }
.media-upload-preview { padding:12px; border:1px solid var(--line); background:#fff; }
.media-upload-preview-head { display:flex; justify-content:space-between; gap:10px; margin-bottom:8px; color:var(--forest); font-size:.75rem; }
.media-upload-preview-head span { color:var(--muted); font-size:.68rem; }
.media-upload-file-list { display:grid; gap:6px; max-height:220px; overflow:auto; margin:0; padding:0; list-style:none; }
.media-upload-file-list li { display:grid; gap:3px; padding:8px 10px; border-left:3px solid var(--line); background:var(--paper-warm); }
.media-upload-file-list li span { color:var(--muted); font-size:.68rem; }
.media-upload-file-list li.is-recognized { border-left-color:#5e9a72; }
.media-upload-file-list li.is-unresolved { border-left-color:var(--wine); background:#fff3f3; }
.media-upload-empty { margin:0; color:var(--muted); font-size:.72rem; }
.media-upload-status { min-height:1.3em; margin:0; color:var(--wine); font-size:.73rem; }
.media-upload-progress { height:6px; border-radius:3px; background:var(--line); overflow:hidden; margin-top:8px; }
.media-upload-progress [data-media-upload-progress-bar] { height:100%; width:0; background:#5e9a72; transition:width .2s ease; }
.media-upload-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:22px; padding-top:16px; border-top:1px solid var(--line); }
.development-flow-records { margin-top:auto; }
.development-flow-records .stage-record { padding:12px 0; }
.development-flow-records .stage-record h4 { font-size:.8rem; }
.development-flow-records .stage-record p { font-size:.68rem; }
.development-flow-card > .button { align-self:flex-start; margin-top:16px; }
.production-progress-filter,.production-single-steps { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 24px; }
.production-filter-toolbar {display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin:20px 0 28px;padding:16px 0;border-bottom:1px solid var(--line);}
.production-filter-toolbar .stage-period-picker {display:flex;align-items:center;gap:12px;margin:0;max-width:none;font-size:13px;white-space:nowrap;}
.production-filter-toolbar select {appearance:none;-webkit-appearance:none;width:180px;min-height:40px;padding:8px 32px 8px 12px;border:1px solid var(--line);border-radius:6px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23123f34' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right 10px center;font-size:14px;line-height:20px;box-shadow:none;}
.production-filter-toolbar .production-progress-filter {gap:4px;margin:0;border:0;}
.production-filter-toolbar .production-progress-filter .button {border:0;border-radius:6px;background:transparent;color:var(--muted);padding:8px 12px;min-height:40px;font-size:13px;font-weight:600;line-height:20px;box-shadow:none;}
.production-filter-toolbar .production-progress-filter .button:hover {background:#e8ede6;color:var(--forest);}
.production-filter-toolbar .production-progress-filter .button[aria-pressed="true"] {background:#8e2638;color:#fff;border:0;}
.production-filter-toolbar .production-progress-filter .button:focus-visible {outline:2px solid var(--wine);outline-offset:-4px;}
.stage-workbench .production-steps button:focus-visible {outline:2px solid var(--wine);outline-offset:-4px;}
body[data-unified] #production > .production-steps,body[data-unified] #production > .production-location,body[data-unified] #production > .production-placeholder { display:none; }
body[data-unified] [data-order-mode]:not([data-single-product]) { display:none; }
.production-product-open h3 { color:var(--forest); }
.production-product-open p { color:var(--muted); }
.production-product-open:focus-visible { outline:2px solid var(--wine); outline-offset:3px; }
.stage-period-picker { max-width:300px; margin:20px 0; }
#production-workbench { margin:0 0 40px; }
.production-product-banner { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin:20px 0 24px; padding:22px 28px; background:var(--forest); color:#fff; }
.production-product-banner .eyebrow { display:block; margin-bottom:7px; color:#d5b45c; font-size:12px; letter-spacing:.14em; font-weight:700; }
.production-product-banner h3 { margin:0; color:#fff; font-size:28px; }
.production-product-banner p { margin:8px 0 0; color:#e6eee8; }
.production-product-banner > p { flex:0 0 auto; margin:0; text-align:right; color:#fff; }
@media(max-width:640px) { .production-product-banner { align-items:flex-start; flex-direction:column; gap:12px; padding:18px; } .production-product-banner h3 { font-size:22px; } .production-product-banner > p { text-align:left; } }
@media(max-width:900px) {
  .stage-layout-1 > .stage-unit { grid-template-columns:1fr; }
  .stage-layout-1 .stage-template { grid-column:1; grid-row:auto; }
  .stage-focus { grid-template-columns:190px minmax(0,1fr); gap:20px; }
  .stage-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .development-flow-grid { grid-template-columns:1fr; }
}
@media(max-width:640px) {
  .stage-workbench .stage-heading { flex-direction:column; }
  .launch-upload-methods { grid-template-columns:1fr; }
  .customer-service-channels { align-items:stretch; flex-direction:column; }
  .customer-service-channel-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customer-service-channel,.customer-service-scripts { width:100%; }
  .stage-development-title { align-items:start; flex-direction:column; }
  .stage-development-title > .button { width:100%; }
  .development-media-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .development-media-strip figure,.development-media-strip figure:only-child,.development-media-strip figure:first-child:nth-last-child(2),.development-media-strip figure:nth-child(2):last-child { grid-column:span 1; }
  .stage-heading-actions { width:100%; justify-content:space-between; }
  .stage-directions > div { width:calc(100vw - 48px); grid-template-columns:1fr; }
  .stage-directions button { display:grid; grid-template-columns:65px 1fr; gap:0 12px; }
  .stage-directions .stage-layout-sketch { grid-row:span 2; }
  .stage-directions strong { margin-top:0; }
  .stage-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .stage-summary > div:nth-child(3) { padding-left:0; border-left:0; }
  .stage-summary > div:nth-child(n+3) { border-top:1px solid var(--line); padding-top:16px; }
  .stage-layout-2,.stage-focus,.stage-product-grid,.stage-form-pair,.stage-module-grid { grid-template-columns:1fr; }
  .stage-focus-index { display:flex; overflow:auto; margin-bottom:10px; }
  .stage-focus-index button { flex:0 0 155px; }
  .stage-facts > div { grid-template-columns:1fr; gap:3px; }
  .stage-development { padding:14px; }
  .development-detail-heading { align-items:start; flex-direction:column; gap:8px; }
  .development-detail-heading > span { white-space:normal; }
  .development-flow-card > header { min-height:0; }
}
.production-gaps {display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-top:10px;}
.stage-product-grid .production-gap {background:#98263f;color:#fff;border:0;padding:4px 6px;margin:0;width:auto;min-height:0;font-size:14px;line-height:1.4;cursor:pointer;text-align:left;border-radius:3px;}
.stage-product-grid .production-gap.gap-1 {background:#80601e;}
.stage-product-grid .production-gap.gap-2 {background:#496675;}
.single-field-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;}
.single-bulk-layout {display:grid;gap:24px;}
.single-bulk-row {display:grid;gap:24px;}
.single-bulk-row-four {grid-template-columns:repeat(4,minmax(0,1fr));}
.single-bulk-row-four {align-items:start;}
.single-bulk-row-four label {grid-template-rows:auto 80px;align-content:start;}
.single-bulk-row-four input,.single-bulk-row-four select,.single-bulk-row-four output.single-wide-value {box-sizing:border-box;width:100%;height:80px;min-height:80px;max-height:80px;margin:0;}
.single-bulk-row-four output.single-wide-value {padding:14px 16px;align-items:center;}
.single-bulk-row-full {grid-template-columns:minmax(0,1fr);}
.single-bulk-row label {display:grid;gap:8px;min-width:0;}
.single-row-summary {display:flex;gap:8px;align-items:center;margin:20px 0 0;color:var(--muted);font-size:14px;}
.single-row-summary strong {color:var(--wine);font-variant-numeric:tabular-nums;}
.single-production-actions {margin:24px 0 32px;padding:20px 0;border-top:1px solid var(--line);}
.single-production-actions .single-row-summary {margin:0 0 16px;}
.single-production-actions .order-actions {display:grid;gap:12px;}
.single-production-actions .order-actions button {display:block;width:100%;box-sizing:border-box;font:inherit;cursor:pointer;border:1px solid var(--forest);border-radius:3px;padding:10px 12px;min-height:44px;}
.single-production-actions .order-actions button:first-child {background:var(--forest);color:#fff;}
.single-production-actions .order-actions [data-history] {background:transparent;color:var(--forest);}
.single-production-actions .order-actions [data-history].is-expanded {background:var(--wine);border-color:var(--wine);color:#fff;}
.single-production-actions [data-row-message] {display:block;font-size:12px;color:var(--muted);}
.single-production-media {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;margin:20px 0 32px;}
.single-production-media>section[data-media-slot],.single-production-media .production-media-grid {display:contents;}
.single-production-media .production-asset-card {height:270px;}
.single-production-media .production-asset-card>h3 {font-size:14px;line-height:18px;margin:0 0 6px;}
.production-order-status-card {height:270px;box-sizing:border-box;border:1px solid #ccd5cc;border-radius:8px;background:#fff;padding:10px;display:flex;flex-direction:column;align-items:stretch;box-shadow:0 4px 14px rgba(20,63,52,.04);}
.production-order-status-card>h3 {font-size:14px;line-height:18px;margin:0 0 6px;color:var(--forest);}
.production-order-status-mark {flex:0 0 56px;display:grid;place-items:center;align-self:center;width:56px;height:56px;margin:auto;border:1px solid #cbd5cc;border-radius:50%;background:#fbfbf7;color:#8e9b91;font-size:28px;line-height:1;font-weight:400;box-shadow:none;}
.production-order-status-card.is-ordered .production-order-status-mark {border-color:#8ab398;background:#f1f7f1;color:#398657;box-shadow:none;}
.production-order-status-card.is-waiting .production-order-status-mark {color:#8e9b91;}
.production-order-status-card>strong {display:block;padding:10px 12px;border-radius:5px;background:#e4ebe3;color:#65736b;font-size:14px;line-height:20px;text-align:center;}
.production-order-status-card.is-ordered>strong {background:#dff0e2;color:#287044;}
.single-production-media section,.single-production-fields section {border-bottom:1px solid var(--line);padding:20px 0;}
.single-field-grid label,.single-field-grid .single-field {display:grid;gap:8px;}
.single-field-grid textarea,.single-field-grid input,.single-field-grid select {width:100%;min-width:0;box-sizing:border-box;}
.single-compact-grid input,.single-compact-grid select,.single-compact-grid output.single-compact-value {box-sizing:border-box;width:100%;min-height:64px;padding:14px 16px;border:1px solid #d4dbd2;background:#fbfbf7;color:var(--ink);font:inherit;line-height:1.35;}
.single-compact-grid select,.single-compact-grid .color-choice-group {height:80px;}
.single-compact-grid output.single-compact-value {display:flex;align-items:center;}
.single-compact-grid textarea,.single-compact-grid output.single-wide-value {box-sizing:border-box;width:100%;min-height:96px;padding:14px 16px;border:1px solid #becabc;background:#fffdf1;color:var(--ink);font:inherit;line-height:1.45;}
.single-compact-grid output.single-wide-value {align-items:flex-start;}
.pending-checklist {display:grid;gap:10px;}
.pending-checklist-list {display:grid;gap:8px;}
.pending-checklist-item {display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;align-items:center;min-height:64px;padding:6px 10px;border:1px solid #becabc;background:#fffdf1;transition:background .18s ease,color .18s ease,opacity .18s ease;}
.pending-checklist-item.is-confirmed {background:#eef0ec;color:#89908a;opacity:.72;}
.pending-checklist-item [data-pending-text] {width:100%;min-width:0;box-sizing:border-box;border:0;background:transparent;color:inherit;font:inherit;line-height:1.4;outline:none;}
.pending-checklist-item.is-confirmed [data-pending-text] {text-decoration:line-through;}
.pending-checklist-toggle {width:48px;height:48px;padding:0;display:grid;place-items:center;border:1px solid #aebaae;border-radius:0;background:#fffdf1;color:var(--ink);font:inherit;font-size:25px;line-height:1;cursor:pointer;}
.pending-checklist-toggle:hover,.pending-checklist-toggle[aria-pressed="true"] {border-color:#bc9951;background:#fffdf1;color:var(--ink);}
.pending-checklist-toggle:disabled {cursor:not-allowed;opacity:.55;}
.pending-checklist-add {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;}
.pending-checklist-add input {min-height:54px !important;background:#fbfbf7 !important;}
.pending-checklist-add button {min-width:76px;border:1px solid var(--forest);background:var(--forest);color:#fff;font:inherit;cursor:pointer;}
.pending-checklist-add button:disabled {cursor:not-allowed;opacity:.55;}
.color-choice-group {display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:64px;padding:8px 12px;border:1px solid #d4dbd2;background:#fbfbf7;box-sizing:border-box;}
.color-choice {display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:7px 10px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--ink) !important;-webkit-text-fill-color:var(--ink);font:inherit;cursor:pointer;}
.color-choice:hover,.color-choice[aria-pressed="true"] {border-color:var(--forest);background:#eef3ed;}
.color-choice:disabled {cursor:not-allowed;opacity:1;color:var(--muted) !important;-webkit-text-fill-color:var(--muted);}
.color-choice-dot {display:inline-block;width:18px;height:18px;border:1px solid #849188;border-radius:50%;box-shadow:inset 0 0 0 2px #fff;flex:0 0 18px;}
.color-choice-dot.black {background:#222824;}.color-choice-dot.ivory {background:#eee9d9;}.color-choice-dot.gray {background:#8c969a;}.color-choice-dot.brown {background:#765849;}.color-choice-dot.blue {background:#47748f;}.color-choice-dot.green {background:#718b78;}.color-choice-dot.red {background:#af5b5c;}.color-choice-dot.multi {background:linear-gradient(135deg,#8c969a 0 50%,#765849 50%);}
.trim-library-choice {display:grid;gap:10px;align-content:start;padding:16px;border:1px solid var(--line);border-radius:6px;background:#f7f7f1;}
.trim-library-choice button {justify-self:start;background:var(--forest);color:#fff;border-color:var(--forest);border-radius:6px;}
.trim-library-choice small,.trim-library-choice details {color:var(--muted);font-size:.72rem;line-height:1.6;}
.trim-library-choice details {margin-top:2px;}.trim-library-choice details p {margin:8px 0 0;}
@media(max-width:1200px){.single-production-media{grid-template-columns:repeat(4,minmax(0,1fr));}}
@media(max-width:900px){.single-bulk-row-four{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.single-field-grid,.single-bulk-row-four{grid-template-columns:1fr;}.single-production-media{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;}}
.single-bulk-row-four label {grid-template-rows:auto 40px;}
.single-bulk-row-four input,.single-bulk-row-four select,.single-bulk-row-four output.single-wide-value {height:40px!important;min-height:40px!important;max-height:40px!important;margin:0!important;padding:8px 12px!important;box-sizing:border-box;}
.single-bulk-row-four output.single-wide-value {display:flex!important;align-items:center!important;}

/* Native development workspace: compact, equal-height cards with configurable flow slots. */
.development-workspace { min-width:0; display:grid; gap:22px; }
.development-flow-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); grid-auto-flow:column; grid-auto-columns:minmax(230px,1fr); gap:14px; align-items:stretch; overflow-x:auto; padding:2px 2px 6px; }
.development-flow-card { position:relative; display:flex; min-width:0; height:360px; min-height:360px; box-sizing:border-box; flex-direction:column; gap:10px; padding:14px; overflow:hidden; border:1px solid var(--line); border-radius:12px; background:var(--paper-warm); }
.development-flow-card > header { display:flex; min-height:0; height:52px; flex:0 0 52px; align-items:flex-start; justify-content:space-between; gap:8px; padding:0 0 8px; border-bottom:1px solid var(--line); background:transparent; color:var(--ink); }
.development-flow-card > header h3 { margin:4px 0 2px; color:var(--forest); font-size:.95rem; line-height:1.25; }
.development-flow-card > header p { display:none; }
.development-flow-index { color:var(--wine); font-size:.64rem; line-height:1.2; }
.development-card-delete { position:relative; z-index:3; flex:0 0 auto; min-height:28px; padding:4px 8px; border:1px solid #dcbfc4; border-radius:5px; background:transparent; color:var(--wine); font:inherit; font-size:.68rem; cursor:pointer; }
.development-card-delete:hover { background:#f7ecec; }
.development-flow-media { position:relative; display:grid; flex:0 0 190px; height:190px; max-height:190px; min-height:190px; place-items:center; overflow:hidden; border:1px solid var(--line); border-radius:8px; background:#fff; }
.development-flow-media img { display:block; width:100%; height:100%; object-fit:contain; cursor:default; }
.development-flow-media.gw-empty { cursor:pointer; }
.development-flow-media.is-dragging { border-color:var(--forest); border-style:dashed; background:#eef3ed; }
.development-flow-empty { display:grid; width:100%; height:100%; min-height:0; place-items:center; color:var(--muted); font-size:.72rem; }
.development-flow-carousel { position:absolute; z-index:2; inset:0; display:flex; align-items:center; justify-content:space-between; pointer-events:none; }
.development-flow-carousel button { width:30px; height:30px; margin:0 6px; padding:0; border:1px solid #b7c1bb; border-radius:50%; background:rgba(20,34,29,.42); color:#fff; font:inherit; font-size:1.1rem; line-height:1; cursor:pointer; pointer-events:auto; }
.development-flow-carousel span { position:absolute; right:50%; bottom:7px; transform:translateX(50%); padding:2px 7px; border-radius:10px; background:rgba(20,34,29,.48); color:#fff; font-size:.62rem; pointer-events:none; }
.development-flow-card-meta { display:flex; min-height:36px; align-items:center; justify-content:space-between; gap:8px; margin-top:auto; color:var(--muted); font-size:.68rem; }
.development-flow-card-meta .button { min-height:30px; padding:5px 8px; font-size:.68rem; }
.development-flow-add-card { padding:0; border-style:dashed; background:transparent; }
.development-flow-add { display:grid; width:100%; height:100%; place-items:center; align-content:center; gap:8px; border:0; background:transparent; color:var(--forest); font:inherit; cursor:pointer; }
.development-flow-add span { color:var(--gold); font-size:2rem; line-height:1; }
.development-flow-add strong { font-size:.86rem; }
.development-flow-add small { color:var(--muted); font-size:.68rem; }
.development-process-section { display:grid; gap:14px; padding-top:20px; border-top:1px solid var(--line); }
.development-process-heading { display:flex; align-items:end; justify-content:space-between; gap:14px; }
.development-process-heading h3 { margin:4px 0 0; color:var(--forest); font-size:1.1rem; }
.development-process-grid { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:10px; align-items:stretch; overflow-x:auto; padding:2px; }
.development-process-card { position:relative; display:flex; min-width:0; min-height:160px; height:160px; box-sizing:border-box; flex-direction:column; gap:10px; padding:12px; overflow:hidden; border:1px solid var(--line); border-radius:10px; background:var(--paper-warm); }
.development-process-card > header { display:flex; min-height:28px; align-items:flex-start; justify-content:space-between; gap:6px; padding:0 0 7px; border-bottom:1px solid var(--line); background:transparent; }
.development-process-card h4 { margin:0; color:var(--forest); font-size:.74rem; line-height:1.35; }
.development-process-card .development-card-delete { min-height:23px; padding:2px 5px; font-size:.6rem; }
.development-process-card textarea { width:100%; min-height:74px; flex:1; box-sizing:border-box; resize:vertical; padding:7px; border:1px solid var(--line); border-radius:5px; background:#fff; color:var(--ink); font:inherit; font-size:.68rem; line-height:1.45; }
.development-process-card .button { align-self:flex-start; min-height:26px; padding:4px 7px; font-size:.64rem; }
.development-process-dropzone { display:grid; min-height:96px; flex:1; place-items:center; align-content:center; gap:6px; padding:8px; border:1px dashed #afbeb2; border-radius:6px; color:var(--muted); font-size:.64rem; text-align:center; cursor:pointer; }
.development-process-dropzone.is-dragging { border-color:var(--forest); background:#eef3ed; }
.development-process-dropzone input { width:100%; max-width:100%; font-size:.62rem; }
.development-workspace-actions { display:flex; justify-content:flex-end; }
.development-workspace-actions .button { min-height:34px; padding:7px 14px; }
@media(max-width:1100px) {
  .development-flow-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .development-process-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media(max-width:640px) {
  .development-flow-grid { grid-template-columns:1fr; grid-auto-columns:minmax(210px,1fr); }
  .development-process-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .development-process-heading { align-items:flex-start; flex-direction:column; }
}

/* ===== V27 flow-card redesign (flow-card-redesign-20260923-r1): full-bleed photo cards, dot markers, gw-lower rail ===== */
.gw-flow-grid{display:grid; grid-template-columns:repeat(4,272px); grid-auto-flow:column; grid-auto-columns:272px; grid-auto-rows:340px; align-items:stretch; gap:16px; overflow-x:auto; padding:0; scrollbar-width:none; background:#fff;}
.gw-flow-grid::-webkit-scrollbar{display:none;}
.gw-flow-card, .development-workspace .development-flow-card.gw-add-card{position:relative; display:flex; flex-direction:column; height:100%; min-height:0; max-height:100%; padding:0; gap:0; background:#fff; border:1px solid var(--line); border-radius:var(--atelier-radius); box-shadow:none; overflow:hidden; box-sizing:border-box;}
.gw-flow-card > header{display:flex; flex:0 0 48px; height:48px; align-items:center; gap:9px; min-height:0; padding:0 12px 0 14px; background:#fff; box-sizing:border-box; border-bottom:0; border-top:0;}
.gw-no{flex:none; width:10px; height:10px; border-radius:50%; background:var(--forest);}
.gw-flow-card.gw-bleed .gw-no{background:#fff;}
.gw-flow-card .tt{flex:1; min-width:0;}
.gw-flow-card .tt h3{margin:0; font-size:14.5px; font-weight:650; color:var(--ink); line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.gw-flow-card .tt small{display:block; margin:1px 0 0; font-size:10.5px; color:var(--muted); letter-spacing:.04em; line-height:1.2;}
.gw-flow-card h3{margin:0;}
.gw-x{flex:none; width:24px; height:24px; min-height:24px; display:inline-flex; align-items:center; justify-content:center; border:0; background:transparent; color:var(--muted); font:inherit; font-size:14px; line-height:1; cursor:pointer; border-radius:4px; position:relative; z-index:3;}
.gw-x:hover{background:#f6e7ea; color:var(--wine);}

.gw-media{position:relative; flex:1 1 0; height:auto; max-height:none; min-height:0; margin:0; border:0; border-radius:0; background:transparent; overflow:hidden; display:block;}
.gw-media img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; display:block; cursor:default;}
.gw-nav{position:absolute; top:50%; transform:translateY(-50%); z-index:2; width:28px; height:28px; border:0; border-radius:50%; background:rgba(16,57,47,.45); color:#fff; font:inherit; font-size:14px; line-height:1; display:flex; align-items:center; justify-content:center; cursor:pointer;}
.gw-nav:hover{background:rgba(16,57,47,.68);}
.gw-nav.prev{left:8px;} .gw-nav.next{right:8px;}
.gw-count{position:absolute; right:8px; bottom:8px; z-index:2; font-size:11px; color:#fff; background:rgba(16,57,47,.55); border-radius:99px; padding:2px 9px;}
body.atelier #workspace .gw-media .gw-nav{width:30px; height:30px; min-height:0; margin:0 8px; padding:0; border-radius:50%; background:none; color:#fff; border:0; font-size:17px; text-shadow:0 1px 4px rgba(0,0,0,.45);}
body.atelier #workspace .gw-media .gw-nav:hover{background:none; color:#fff;}
body.atelier #workspace .gw-media .gw-count{background:rgba(0,0,0,.45); color:#fff; border:0;}

.gw-media.gw-empty{display:flex; flex:1; min-height:0; flex-direction:column; align-items:center; justify-content:center; gap:6px; margin:10px; border:1px dashed var(--line-dark); border-radius:calc(var(--atelier-radius) - 1px); color:var(--muted); font-size:12px; box-sizing:border-box;}
.gw-media.gw-empty small{font-size:11px;}

.gw-flow-meta{display:flex; flex-direction:column; justify-content:center; align-items:stretch; gap:5px; flex:0 0 50px; height:50px; padding:7px 14px 9px; background:#fff; box-sizing:border-box;}
.gw-meta-line{display:flex; align-items:center; justify-content:space-between; gap:10px;}
.gw-flow-meta .info{font-size:12px; color:var(--muted);}
.gw-flow-meta .info b{color:var(--ink); font-weight:600;}
.gw-track{flex:0 0 3px; height:3px; border-radius:99px; background:#edf0ea; overflow:hidden;}
.gw-track i{display:block; height:100%; background:var(--forest); border-radius:99px;}
.gw-track i.zero{background:var(--gold); width:100%; opacity:.35;}
.gw-flow-card.gw-bleed .gw-media{position:absolute; inset:0; flex:none; width:100%; height:100%; max-height:none;}
.gw-flow-card.gw-bleed > header{position:absolute; top:0; left:0; right:0; z-index:2; flex:0 0 auto; height:auto; padding:9px 10px 20px 12px; background:linear-gradient(rgba(16,25,22,.42), rgba(16,25,22,0));}
body.atelier #workspace .gw-flow-card.gw-bleed > header{background:linear-gradient(rgba(16,25,22,.42), rgba(16,25,22,0));}
body.atelier #workspace .gw-flow-card.gw-bleed .tt h3{color:#fff; text-shadow:0 1px 4px rgba(0,0,0,.35);}
body.atelier #workspace .gw-flow-card.gw-bleed .tt small{color:rgba(255,255,255,.78);}
body.atelier #workspace .gw-flow-card.gw-bleed .gw-x{color:rgba(255,255,255,.9); background:rgba(16,25,22,.25); border-color:transparent;}
body.atelier #workspace .gw-flow-card.gw-bleed .gw-x:hover{background:var(--wine); color:#fff;}
.gw-flow-card.gw-bleed .gw-flow-meta{position:absolute; left:0; right:0; bottom:0; z-index:2; flex:0 0 auto; height:50px; padding:7px 14px 9px; box-sizing:border-box; background:linear-gradient(rgba(16,25,22,0), rgba(16,25,22,.52));}
.gw-flow-card.gw-bleed .info{color:rgba(255,255,255,.92); text-shadow:0 1px 4px rgba(0,0,0,.35);}
.gw-flow-card.gw-bleed .info b{color:#fff;}
.gw-flow-card.gw-bleed .gw-more{color:#fff; text-shadow:0 1px 4px rgba(0,0,0,.35);}
.gw-flow-card.gw-bleed .gw-more:hover{color:#ffe9b0; background:none;}
.gw-flow-card.gw-bleed .gw-track{background:rgba(255,255,255,.3);}
.gw-flow-card.gw-bleed .gw-track i{background:#fff;}
.gw-flow-card.gw-bleed .gw-count{bottom:56px;}

.gw-more{border:0; background:none; padding:0; margin:0; width:auto; min-height:0; color:var(--forest); font:inherit; font-size:12.5px; font-weight:600; cursor:pointer; white-space:nowrap;}

.gw-add-card{display:flex; align-items:stretch; background:transparent; border:1.5px dashed var(--line-dark); box-shadow:none;}
.gw-flow-add{flex:1; width:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:9px; border:0; border-radius:calc(var(--atelier-radius) - 1.5px); background:transparent; color:var(--muted); cursor:pointer; font-family:inherit;}
.gw-add-card:hover{border-color:var(--forest);}
.gw-add-card:hover .gw-flow-add{color:var(--forest);}
.gw-flow-add span{color:inherit; font-size:18px; font-weight:300; width:36px; height:36px; border:1px solid currentColor; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; line-height:1;}
.gw-flow-add strong{font-size:14px; font-weight:600;}
.gw-flow-add small{font-size:12px;}

/* 下半区：左小卡片 / 右流程动作栏 */
.gw-lower{display:grid; grid-template-columns:minmax(0,8fr) minmax(260px,4fr); gap:clamp(24px,3.5vw,48px); margin-top:26px; align-items:start;}
.gw-mini-head{display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin:0 0 12px;}
.gw-mini-head h3{margin:4px 0 0; font-size:18px; font-weight:600; color:var(--ink); border:0; padding:0; background:transparent;}
.gw-mini-list{display:grid; grid-template-columns:1fr; grid-auto-rows:1fr; gap:12px; padding:0; overflow:visible;}
.gw-mini{display:grid; grid-template-columns:176px minmax(0,1fr) 168px; gap:18px; align-items:stretch; height:auto; min-height:148px; overflow:visible; padding:16px 18px; background:#fff; border:1px solid var(--line); border-radius:var(--atelier-radius); box-shadow:var(--shadow); box-sizing:border-box;}
.gw-mini-id{display:flex; flex-direction:column; gap:7px; padding-right:16px; border-right:1px dashed var(--line);}
.gw-mini-id h4{margin:0; font-size:15px; font-weight:600; color:var(--ink); line-height:1.45; border:0; padding:0; background:transparent;}
.gw-type{align-self:flex-start; font-size:11px; color:var(--muted); background:#f1f3ee; border-radius:99px; padding:2px 10px;}
.gw-mini-cnt{min-width:0; display:flex; flex-direction:column; gap:9px;}
.gw-mini-cnt.gw-center{justify-content:center;}
.gw-mini-cnt textarea{flex:1; width:100%; min-height:96px; resize:vertical; border:1px solid var(--line); border-radius:var(--atelier-control-radius); background:#fff; padding:9px 11px; font:inherit; font-size:13px; color:var(--ink); line-height:1.65;}
.gw-mini-cnt textarea:focus{outline:none; border-color:var(--forest); background:#fff;}
.gw-mini-cnt textarea::placeholder{color:var(--muted);}
.gw-files{display:flex; flex-wrap:wrap; gap:7px;}
.gw-drop .gw-files{width:100%; max-width:100%; min-width:0; justify-content:flex-start; text-align:left;}
.gw-chip{display:inline-flex; align-items:center; gap:8px; border:1px solid var(--line); border-radius:var(--atelier-control-radius); background:#fff; padding:5px 11px; font-size:12.5px; max-width:100%; min-width:0;}
.gw-chip-file{position:relative; z-index:2; flex:0 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; border:0; background:transparent; padding:0; font:inherit; font-size:12.5px; color:inherit; text-align:left; cursor:pointer;}
.gw-chip-file:hover{color:var(--forest); text-decoration:underline;}
.gw-chip-file:hover{border-color:var(--forest); color:var(--forest);}
.gw-chip .nm{min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.gw-chip .sz{color:var(--muted); font-size:11px; flex:none;}
.gw-badge{flex:none; padding:2px 8px; border-radius:999px; font-size:10.5px; font-weight:500; letter-spacing:.02em; border:1px solid transparent; white-space:nowrap;}
.gw-badge[data-bulk-status="PENDING_REVIEW"]{color:var(--forest); border-color:var(--forest); background:color-mix(in srgb, var(--forest) 8%, #fff);}
.gw-badge[data-bulk-status="SELF_CHECK_FAILED"]{color:var(--wine, #9e3049); border-color:var(--wine, #9e3049); background:color-mix(in srgb, var(--wine, #9e3049) 8%, #fff);}
.gw-badge[data-bulk-status="APPROVED"]{color:#fff; background:var(--forest); border-color:var(--forest);}
.gw-badge[data-bulk-status="REJECTED"]{color:var(--muted); border-color:var(--line); background:var(--soft, #f4f4f0);}
.gw-chip-act{flex:none; display:inline-flex; align-items:center; justify-content:center; width:22px; height:22px; padding:0; border:1px solid var(--line); border-radius:6px; background:#fff; color:var(--muted); font:inherit; font-size:12px; line-height:1; cursor:pointer; transition:border-color .15s, color .15s;}
.gw-chip-act:hover{border-color:var(--forest); color:var(--forest);}
.gw-chip-act.ok:hover{border-color:var(--forest); background:color-mix(in srgb, var(--forest) 10%, #fff);}
.gw-chip-act.warn:hover{border-color:var(--wine, #9e3049); color:var(--wine, #9e3049); background:color-mix(in srgb, var(--wine, #9e3049) 8%, #fff);}
.gw-chip-act:disabled{opacity:.5; cursor:default;}
.gw-chip-act.ev{cursor:pointer; position:relative;}
.gw-close{margin-top:10px; border:1px solid var(--line); border-radius:var(--atelier-radius); background:var(--soft, #f4f4f0); padding:10px 12px; font-size:12px;}
.gw-close-head{display:flex; align-items:center; justify-content:space-between; gap:10px; font-weight:600; color:var(--ink, #172b2b); margin-bottom:8px;}
.gw-close-head .cnt{flex:none; font-weight:500; color:var(--muted); font-size:11px;}
.gw-close ol{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:7px;}
.gw-close li{border:1px solid var(--line); border-radius:8px; background:#fff; padding:7px 9px;}
.gw-close li.done{border-color:var(--forest); background:color-mix(in srgb, var(--forest) 5%, #fff);}
.gw-close li .rw{display:flex; align-items:center; gap:8px;}
.gw-close li .no{flex:none; width:20px; height:20px; display:inline-flex; align-items:center; justify-content:center; border-radius:50%; border:1px solid var(--line); font-size:11px; color:var(--muted);}
.gw-close li.done .no{border-color:var(--forest); color:var(--forest);}
.gw-close li .tx{min-width:0; flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--ink, #172b2b);}
.gw-close li .cnt{flex:none; color:var(--muted); font-size:11px;}
.gw-close .evs{display:flex; flex-wrap:wrap; gap:6px; margin-top:6px; padding-left:28px;}
.gw-ev-link{max-width:240px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; border:1px solid var(--line); border-radius:6px; background:#fff; padding:2px 8px; font:inherit; font-size:11px; color:var(--muted); cursor:pointer;}
.gw-ev-link:hover{border-color:var(--forest); color:var(--forest);}
.gw-close .gw-close-note{margin:8px 0 0; color:var(--muted); font-size:11px;}
.gw-close.all-done{border-color:var(--forest);}
/* 复版确认移到右侧 rail 卡片（2026-09-26）：卡片内不再叠边框底色，文件名超省略 */
.gw-close-card .gw-close{margin-top:8px; border:0; background:transparent; padding:0;}
.gw-close-card .gw-close-head .fn{min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-weight:500; color:var(--muted); font-size:11px;}
.gw-close-card .gw-close ol{max-height:340px; overflow:auto;}
.gw-drop{width:100%; min-height:56px; flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; position:relative; border:1px dashed var(--line-dark); border-radius:var(--atelier-control-radius); padding:9px 13px; color:var(--muted); font-size:12.5px; cursor:pointer; text-align:center; box-sizing:border-box;}
.gw-filecol{display:flex; flex-direction:column; gap:8px; width:100%; min-width:0; justify-content:center;}
.gw-drop:hover{color:var(--forest); border-color:var(--forest);}
.gw-drop input{position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; font-size:12px;}
.gw-mini-act{display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; gap:8px; padding-left:0;}
.gw-mini-act .gw-generate{margin-top:auto;}
.gw-state-row{display:flex; align-items:center; justify-content:space-between; gap:8px;}
.gw-state{font-size:11px; color:var(--muted); white-space:nowrap;}
.gw-state.is-set{color:var(--forest);}
.gw-save{display:inline-flex; align-items:center; justify-content:center; min-height:34px; padding:6px 15px; border:1px solid var(--line); border-radius:var(--atelier-control-radius); background:#fff; color:var(--ink, #172b2b); font:inherit; font-size:12.5px; font-weight:500; cursor:pointer; white-space:nowrap;}
.gw-save:hover{border-color:var(--forest); color:var(--forest); background:#eef3ed;}
.gw-generate{display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:36px; margin-top:auto; padding:7px 14px; border:1px solid var(--forest); border-radius:var(--atelier-control-radius); background:var(--forest); color:#fff; font:inherit; font-size:12.5px; font-weight:500; letter-spacing:.02em; cursor:pointer; white-space:nowrap; transition:filter .15s ease;}
.gw-generate::before{content:"✦"; font-size:11px; line-height:1; opacity:.9;}
.gw-generate:hover{filter:brightness(1.08);}
.gw-generate:active{filter:brightness(.95);}
.gw-generate:disabled{opacity:.55; cursor:default;}
.gw-generate.is-busy{cursor:progress; opacity:.75;}
.gw-generate.is-busy::before{content:""; width:11px; height:11px; padding:0; border:1.5px solid rgba(255,255,255,.35); border-top-color:#fff; border-radius:50%; animation:gw-generate-spin .7s linear infinite;}
@keyframes gw-generate-spin{to{transform:rotate(360deg);}}
.gw-mini-add{display:flex; align-items:center; justify-content:center; gap:9px; margin-top:14px; padding:13px; border:1.5px dashed var(--line-dark); border-radius:var(--atelier-radius); background:transparent; color:var(--muted); cursor:pointer; font-size:13px; font-family:inherit;}
.gw-mini-add:hover{border-color:var(--forest); color:var(--forest); background:#fff;}
.gw-mini-add span{font-size:17px; font-weight:300;}

/* 右栏：流程动作 + 资料留存 */
.gw-rail{display:flex; flex-direction:column; gap:12px;}
.gw-rail .gw-mini-head{margin:0;}
.gw-rail-card{background:#fff; border:1px solid var(--line); border-radius:var(--atelier-radius); box-shadow:var(--shadow); padding:18px 18px 20px;}
.gw-rail .gw-rail-card:first-of-type{height:308px; box-sizing:border-box; display:flex; flex-direction:column; justify-content:center; gap:11px; padding:16px 18px; overflow:hidden;}
.gw-rail .gw-rail-card:first-of-type .gw-kv{padding:0; border:0; font-size:13px;}
.gw-rail .gw-rail-card:first-of-type .button{min-height:38px; padding:8px 16px; margin:4px 0 0; align-self:flex-start;}
.gw-rail .gw-rail-card:first-of-type .gw-note{margin:0; font-size:11px; line-height:1.5;}
.gw-rail-card h3{margin:4px 0 10px; font-size:18px; font-weight:600; color:var(--forest); border:0; padding:0; background:transparent;}
.gw-rail-eyebrow{margin:0;}
.gw-kv{display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-bottom:1px dashed var(--line); font-size:13px;}
.gw-kv:last-of-type{border-bottom:none;}
.gw-kv .k{color:var(--muted); flex:none;}
.gw-kv .v{text-align:right; min-width:0; overflow-wrap:anywhere;}
.gw-note{font-size:12.5px; color:var(--muted); margin:10px 0 0; line-height:1.65;}
.gw-arch{list-style:none; margin:0; padding:0;}
.gw-arch li{display:block; padding:8px 0; border-bottom:1px dashed var(--line); font-size:13px;}
.gw-arch li:last-child{border-bottom:none;}
.gw-arch-row{display:flex; align-items:center; justify-content:space-between; gap:8px;}
.gw-arch .nm{flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.gw-arch .sz{color:var(--muted); font-size:11px; flex:0 1 auto; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.gw-arch-empty{color:var(--muted); font-size:12px;}
.gw-arch-act{min-height:0; height:auto; display:inline-flex; align-items:center; justify-content:center; min-width:64px; box-sizing:border-box; border:1px solid var(--line); border-radius:4px; background:#fff; color:var(--forest); font:inherit; font-size:10px; padding:1px 6px; line-height:1.3; cursor:pointer; white-space:nowrap;}
.gw-arch-act:hover{border-color:var(--forest); background:#eef3ed;}
body.atelier .gw-arch .gw-arch-act{min-height:0; height:auto; font-size:10px; padding:1px 6px; line-height:1.3;}
.gw-arch-acts{display:flex; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:4px; flex:none;}

/* ===== bulk-generate-20260925-r3: inline status next to the AI generate button (progress must be visible where you click) ===== */
.gw-gen-status{display:block; max-width:200px; font-size:11px; line-height:1.55; color:var(--forest); text-align:right; overflow-wrap:anywhere;}
.gw-gen-status:empty{display:none;}
.gw-gen-status.is-error{color:var(--wine); font-weight:600;}
@media(max-width:1100px){
  .gw-flow-grid{grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-flow:row; grid-auto-columns:auto;}
  .gw-lower{grid-template-columns:1fr;}
}
@media(max-width:640px){
  .gw-flow-grid{grid-template-columns:1fr; grid-auto-columns:auto;}
  .gw-mini{grid-template-columns:1fr; height:auto; gap:12px;}
  .gw-mini-act{flex-direction:row; align-items:center;}
}

/* ===== r2 hardening: survive atelier-theme L239-244 and legacy header rules ===== */
body.atelier #workspace .gw-flow-card > header{flex-wrap:nowrap; display:flex; align-items:center;}
body.atelier #workspace .gw-flow-card .tt{min-width:0; overflow:hidden;}
body.atelier #workspace .gw-flow-card .tt small{display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
body.atelier #workspace .gw-flow-card .gw-x{flex:0 0 24px; width:24px; min-width:24px; height:24px; min-height:24px; padding:0; margin:0; background:transparent; border:0; box-shadow:none; color:var(--muted); font-size:13px; line-height:1;}
body.atelier #workspace .gw-flow-card .gw-x:hover{background:#f6e7ea; color:var(--wine);}
body.atelier #workspace .gw-flow-card.gw-bleed .gw-x{background:rgba(16,25,22,.25); border:0; color:rgba(255,255,255,.9);}
body.atelier #workspace .gw-flow-card.gw-bleed .gw-x:hover{background:var(--wine); color:#fff;}
body.atelier #workspace .gw-flow-card.gw-bleed .gw-flow-meta .gw-more{color:#fff; text-shadow:0 1px 4px rgba(0,0,0,.45); background:none;}
body.atelier #workspace .gw-media .gw-nav{background:none; border:0; box-shadow:none; color:#fff; text-shadow:0 1px 4px rgba(0,0,0,.45);}
body.atelier #workspace .gw-media .gw-nav:hover{background:none; color:#fff;}
body.atelier #workspace .gw-flow-card.gw-bleed .gw-flow-meta{background:linear-gradient(rgba(16,25,22,0), rgba(16,25,22,.58));}

/* ===== r4: lower-section matched to V27 mock (head 54px, full-width dashed add, rail gap 6) ===== */
body.atelier #workspace .gw-lower .gw-mini-head{margin:0 0 6px; min-height:54px;}
body.atelier #workspace .gw-lower .gw-rail .gw-mini-head{margin:0; min-height:54px;}
body.atelier #workspace .gw-lower .gw-mini-head .eyebrow{font-size:12px; margin:0 0 8px;}
body.atelier #workspace .gw-lower .gw-mini-head h3{margin:4px 0 0; font-size:18px;}
body.atelier #workspace .gw-lower .gw-mini-add{width:100%; box-sizing:border-box; min-height:55px;}
body.atelier #workspace .gw-lower .gw-rail{gap:6px;}
body.atelier #workspace .gw-lower .gw-tool-btn{display:none;}
body.atelier #workspace .gw-lower .gw-mini-head{padding:0;}

/* ===== r5: detail heading flex restored (beat .pipeline-live header{display:block} reset) ===== */
body.atelier #workspace .development-detail-heading{display:flex; justify-content:space-between; align-items:center; gap:20px; margin:0 0 24px; padding:0 0 20px; border-bottom:1px solid var(--line); min-height:0;}

/* ===== r6: breathing room — note-to-card gap, card header top inset, meta bottom inset ===== */
body.atelier #workspace .development-flow-note{margin:0 0 40px;}
body.atelier #workspace .gw-flow-card:not(.gw-bleed) > header{height:58px; flex:0 0 58px;}
body.atelier #workspace .gw-flow-card:not(.gw-bleed) .gw-flow-meta{height:62px; flex:0 0 62px; padding:9px 14px 16px;}

/* ===== r7: unified insets — white card matches bleed card (header 14px sides / ~12px top, meta 58px / 8 14 12); borderless ＋补充 ===== */
body.atelier #workspace .gw-flow-card > header{padding-left:14px; padding-right:14px;}
body.atelier #workspace .gw-flow-card.gw-bleed > header{padding:12px 14px 20px;}
body.atelier #workspace .gw-flow-card .gw-flow-meta{height:58px; flex-basis:58px; padding:8px 14px 12px;}
body.atelier #workspace .gw-flow-card.gw-bleed .gw-count{bottom:64px;}
body.atelier #workspace .gw-flow-meta .gw-more{border:0; background:none; box-shadow:none; padding:0; min-height:0; font-size:12.5px; font-weight:600;}

/* ===== r8: beat r6 :not() specificity — white card meta truly unified with bleed (58px / 8 14 12) ===== */
body.atelier #workspace .gw-flow-card:not(.gw-bleed) .gw-flow-meta{height:58px; flex-basis:58px; padding:8px 14px 12px;}

/* ===== r9: flow-note closer to cards by 50% (40px -> 20px) ===== */
body.atelier #workspace .development-flow-note{margin:0 0 20px;}

/* ===== r12: carousel arrows frameless (no circle backdrop, text-shadow keeps them readable on white flat-lay shots); frameless image viewer with prev/next ===== */
body.atelier #workspace .gw-media .gw-nav{background:none; border:0; box-shadow:none; color:#fff; font-size:22px; text-shadow:0 1px 4px rgb(0 0 0/.45);}
body.atelier #workspace .gw-media .gw-nav:hover{background:none; color:#fff;}
dialog.series-image-viewer.gw-viewer, body.atelier dialog.series-image-viewer.gw-viewer{max-width:96vw; max-height:96vh; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none;}
dialog.series-image-viewer.gw-viewer::backdrop, body.atelier dialog.series-image-viewer.gw-viewer::backdrop{background:rgba(0,0,0,.72);}
dialog.series-image-viewer.gw-viewer > img, body.atelier dialog.series-image-viewer.gw-viewer > img{display:block; max-width:96vw; max-height:96vh; width:auto; height:auto; object-fit:contain; margin:0; cursor:zoom-out;}
dialog.series-image-viewer.gw-viewer > .gw-viewer-nav, body.atelier dialog.series-image-viewer.gw-viewer > .gw-viewer-nav{position:absolute; top:50%; transform:translateY(-50%); z-index:2; width:40px; min-width:40px; height:40px; min-height:40px; margin:0; padding:0; border:0; border-radius:0; background:none; color:#fff; font:inherit; font-size:34px; line-height:1; display:flex; align-items:center; justify-content:center; text-shadow:0 1px 6px rgb(0 0 0/.65); cursor:pointer;}
dialog.series-image-viewer.gw-viewer > .gw-viewer-nav:hover, body.atelier dialog.series-image-viewer.gw-viewer > .gw-viewer-nav:hover{background:none; color:#fff; text-shadow:0 1px 6px rgb(0 0 0/.65);}
dialog.series-image-viewer.gw-viewer > .gw-viewer-nav.prev, body.atelier dialog.series-image-viewer.gw-viewer > .gw-viewer-nav.prev{left:16px;}
dialog.series-image-viewer.gw-viewer > .gw-viewer-nav.next, body.atelier dialog.series-image-viewer.gw-viewer > .gw-viewer-nav.next{right:16px;}
dialog.series-image-viewer.gw-viewer > .gw-viewer-nav[hidden], body.atelier dialog.series-image-viewer.gw-viewer > .gw-viewer-nav[hidden]{display:none;}

/* ===== viewer-media-delete-20260924-r1: delete-current-image button in the development image viewer ===== */
dialog.series-image-viewer.gw-viewer > .gw-viewer-delete, body.atelier dialog.series-image-viewer.gw-viewer > .gw-viewer-delete{position:absolute; top:16px; right:16px; z-index:2; margin:0; padding:7px 14px; border:0; border-radius:999px; background:rgb(17 38 29/.55); color:#fff; font:inherit; font-size:13px; line-height:1; letter-spacing:.02em; cursor:pointer; box-shadow:0 1px 4px rgb(0 0 0/.25);}
dialog.series-image-viewer.gw-viewer > .gw-viewer-delete:hover, body.atelier dialog.series-image-viewer.gw-viewer > .gw-viewer-delete:hover{background:rgb(17 38 29/.75); color:#fff;}
dialog.series-image-viewer.gw-viewer > .gw-viewer-delete[data-armed], body.atelier dialog.series-image-viewer.gw-viewer > .gw-viewer-delete[data-armed]{background:rgb(140 34 22/.85);}
dialog.series-image-viewer.gw-viewer > .gw-viewer-delete[disabled], body.atelier dialog.series-image-viewer.gw-viewer > .gw-viewer-delete[disabled]{opacity:.55; cursor:default;}
dialog.series-image-viewer.gw-viewer > .gw-viewer-delete[hidden], body.atelier dialog.series-image-viewer.gw-viewer > .gw-viewer-delete[hidden]{display:none;}

/* ===== supplier-picker-20260925-r2: production entry card redesign; supplier shown as a status pill, live-updated after save ===== */
.gw-rail .gw-rail-card.gw-production-card, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card{
  position:relative; height:auto; min-height:308px; justify-content:center; gap:12px; padding:22px 18px 20px; overflow:hidden;
}
.gw-rail .gw-rail-card.gw-production-card .gw-kv, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .gw-kv{
  padding:9px 12px; border:1px solid #e2e9e1; border-bottom:1px solid #e2e9e1; border-radius:10px; background:#f7faf7;
}
.gw-rail .gw-rail-card.gw-production-card .gw-kv:last-of-type, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .gw-kv:last-of-type{
  border-bottom:1px solid #e2e9e1;
}
.gw-rail .gw-rail-card.gw-production-card .gw-kv .v, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .gw-kv .v{
  font-weight:600; color:var(--ink);
}
.gw-rail .gw-rail-card.gw-production-card .gw-kv-supplier .v, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .gw-kv-supplier .v{
  display:inline-flex; align-items:center; gap:7px; padding:3px 12px; border:1px dashed var(--line); border-radius:999px;
  color:var(--muted); font-size:12.5px; font-weight:500; line-height:1.5; white-space:nowrap;
}
.gw-rail .gw-rail-card.gw-production-card .gw-kv-supplier .v::before, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .gw-kv-supplier .v::before{
  content:''; flex:none; width:6px; height:6px; border-radius:50%; background:#b7c2b8;
}
.gw-rail .gw-rail-card.gw-production-card .gw-kv-supplier .v.is-set, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .gw-kv-supplier .v.is-set{
  border:1px solid rgba(18,63,52,.4); background:#e7efe7; color:var(--forest); font-weight:700;
}
.gw-rail .gw-rail-card.gw-production-card .gw-kv-supplier .v.is-set::before, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .gw-kv-supplier .v.is-set::before{
  background:var(--forest);
}
.gw-rail .gw-rail-card.gw-production-card .button, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .button{
  width:100%; box-sizing:border-box; min-height:40px; align-self:stretch; display:flex; align-items:center; justify-content:center;
  margin:2px 0 0; border-radius:10px;
}
.gw-rail .gw-rail-card.gw-production-card .button[data-enter-production], body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .button[data-enter-production]{
  background:linear-gradient(135deg, #123f34, #2d5f4b); border-color:transparent; box-shadow:0 10px 22px rgba(18,63,52,.22); letter-spacing:.05em;
}
.gw-rail .gw-rail-card.gw-production-card .button[data-enter-production]:hover, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .button[data-enter-production]:hover{
  background:linear-gradient(135deg, #0e332a, #24503f); outline:none;
}
.gw-rail .gw-rail-card.gw-production-card .gw-note, body.atelier #workspace .gw-lower .gw-rail .gw-rail-card.gw-production-card .gw-note{
  font-size:11px; line-height:1.6;
}

/* AI 生成进度弹窗（card-fix 后续：进度走弹窗，不再写底部文字条） */
.gw-progress-dialog{width:min(400px,92vw); border:0.5px solid var(--line); border-radius:14px; padding:22px 24px; background:#fff; color:var(--ink, #172b2b);}
.gw-progress-dialog::backdrop{background:rgba(23,43,43,.32);}
.gw-progress-head{display:flex; align-items:center; gap:10px; margin:0 0 16px;}
.gw-progress-head h3{margin:0; font-size:15px; font-weight:500;}
.gw-progress-head .sku{margin-left:auto; font-size:12px; color:var(--muted);}
.gw-progress-steps{display:flex; flex-direction:column; gap:12px; margin:0; padding:0; list-style:none;}
.gw-progress-steps li{display:flex; align-items:center; gap:10px;}
.gw-progress-steps .dot{flex:none; width:20px; height:20px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:11px; border:0.5px solid var(--line); background:#fff; color:var(--muted); box-sizing:border-box;}
.gw-progress-steps li.done .dot{border-color:var(--forest); background:var(--forest); color:#fff;}
.gw-progress-steps li.run .dot{border:2.5px solid #E1F5EE; border-top-color:var(--forest); animation:gw-spin .9s linear infinite;}
.gw-progress-steps .lb{margin:0; font-size:13px; color:var(--muted);}
.gw-progress-steps li.run .lb{color:var(--ink, #172b2b); font-weight:500;}
.gw-progress-steps li.done .lb{color:var(--ink, #172b2b);}
.gw-progress-steps .meta{margin-left:auto; font-size:11px; color:var(--muted); white-space:nowrap;}
@keyframes gw-spin{to{transform:rotate(360deg);}}
.gw-progress-bar{margin-top:18px; height:5px; background:#f1f3ee; border-radius:99px; overflow:hidden;}
.gw-progress-bar i{display:block; height:100%; background:var(--forest); border-radius:99px; transition:width .4s ease;}
.gw-progress-result{display:flex; align-items:flex-start; gap:10px; margin:4px 0 0;}
.gw-progress-result .ok-dot{flex:none; width:22px; height:22px; border-radius:50%; background:var(--forest); color:#fff; font-size:12px; display:inline-flex; align-items:center; justify-content:center;}
.gw-progress-result .ok-dot.err{background:var(--wine, #9e3049);}
.gw-progress-result p{margin:0; font-size:13px; line-height:1.6; overflow-wrap:anywhere;}
.gw-progress-result .sub{color:var(--muted); font-size:12px;}
.gw-progress-actions{display:flex; justify-content:flex-end; gap:10px; margin-top:16px;}
.gw-progress-actions button{border:0.5px solid var(--line); background:#fff; color:var(--ink, #172b2b); border-radius:8px; padding:8px 18px; font:inherit; font-size:12.5px; cursor:pointer;}
.gw-progress-actions button.primary{border-color:var(--forest); background:var(--forest); color:#fff;}


/* 重新生成按钮与建议弹窗（r29） */
.gw-regen{display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:32px; padding:4px 15px; border:1px solid var(--line); border-radius:var(--atelier-control-radius); background:transparent; color:var(--ink, #172b2b); font:inherit; font-size:12.5px; cursor:pointer; white-space:nowrap;}
.gw-regen:hover{border-color:var(--forest); color:var(--forest); background:#eef3ed;}
.gw-regen:disabled{opacity:.55; cursor:default;}
.gw-regen-dialog{width:min(480px,92vw); border:0.5px solid var(--line); border-radius:14px; padding:22px 24px; background:#fff; color:var(--ink, #172b2b);}
.gw-regen-dialog::backdrop{background:rgba(23,43,43,.32);}
.gw-regen-tip{margin:0 0 12px; font-size:12.5px; line-height:1.7; color:var(--muted);}
.gw-regen-input{width:100%; box-sizing:border-box; min-height:96px; resize:vertical; border:1px solid var(--line); border-radius:var(--atelier-control-radius); background:#fff; padding:9px 11px; font:inherit; font-size:13px; color:var(--ink, #172b2b); line-height:1.6;}
.gw-regen-input:focus{outline:none; border-color:var(--forest);}

/* 大货修改文件卡：文件盒与说明卡输入框同款边框，行式布局（r30） */
.gw-filebox{width:100%; min-width:0; min-height:96px; flex:1; display:flex; flex-direction:column; justify-content:center; gap:0; border:1px solid var(--line); border-radius:var(--atelier-control-radius); background:#fff; padding:4px 6px; box-sizing:border-box;}
.gw-filebox-empty{color:var(--muted); font-size:12.5px; text-align:center; padding:20px 8px;}
.gw-filerow{display:flex; align-items:center; min-width:0; padding:7px 9px;}
.gw-filerow + .gw-filerow{border-top:0.5px solid var(--line);}
.gw-filemain{display:flex; flex-direction:column; align-items:stretch; gap:7px; min-width:0; flex:1;}
.gw-filemeta{display:flex; align-items:center; gap:8px;}
.gw-filerow .gw-chip-file{flex:0 1 auto; max-width:100%;}
.gw-filerow .gw-badge{margin-left:0;}
.gw-filerow .gw-chip-act{margin-left:auto;}

/* ✕ 统一为纯符号（r32）：全局按钮基础样式（team.css/brand-workbench.css 的裸 button 规则）会给 ✕ 泄漏边框与内边距，这里用高优先级强制覆盖 */
body.atelier #workspace button.gw-x, .stage-workbench button.gw-x, button.gw-x{border:0!important; background:transparent!important; box-shadow:none!important; padding:0!important; width:24px; height:24px; min-height:24px; display:inline-flex; align-items:center; justify-content:center; color:var(--muted); font-size:14px; line-height:1; cursor:pointer; border-radius:4px;}
body.atelier #workspace button.gw-x:hover, .stage-workbench button.gw-x:hover, button.gw-x:hover{background:#f6e7ea!important; border:0!important; color:var(--wine);}
.gw-filerow .gw-x{margin-left:auto;}

/* ===== card-width-20260925-r33: 两张流程小卡片内容列等宽（按钮列固定 168px，按钮撑满） ===== */
.gw-mini-act .gw-generate,.gw-mini-act .gw-save,.gw-mini-act .gw-regen,.gw-mini-act .gw-deliver{width:100%; box-sizing:border-box;}
/* ===== dl-deliver-20260927-r36: 复核按钮按标注加宽为 30px、并排靠右（右缘与文件名框对齐）；新增「下载到语料库」按钮 ===== */
.gw-filerow .gw-chip-act{width:30px; margin-left:auto;}
.gw-filerow .gw-chip-act + .gw-chip-act{margin-left:0;}
.gw-deliver{display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:32px; padding:4px 15px; border:1px solid var(--line); border-radius:var(--atelier-control-radius); background:transparent; color:var(--ink, #172b2b); font:inherit; font-size:12.5px; cursor:pointer; white-space:nowrap;}
.gw-deliver:hover{border-color:var(--forest); color:var(--forest); background:#eef3ed;}
.gw-deliver:disabled{opacity:.5; cursor:default;}
.gw-toast{position:fixed; bottom:24px; left:50%; transform:translateX(-50%); z-index:9999; max-width:min(560px, 92vw); padding:12px 18px; border-radius:12px; background:#0b4a40; color:#fff; font-size:14px; line-height:1.5; box-shadow:0 12px 30px rgba(8,54,46,.28); pointer-events:none;}
/* ===== note-photos-20260927-r42: 大货修改说明卡的照片附件区（紧凑虚线框） ===== */
.gw-note-drop{min-height:0; padding:7px 12px; margin-top:8px; font-size:12px; flex:0 0 auto;}
/* ===== file-x-on-chip-20260928-r45: 文件名小卡片成型——删除 ✕ 收进卡片内部右端；文件名缩小 ===== */
/* r45: chipwrap 即「文件名小卡片」胶囊（边框+圆角+白底）；has-x 时右侧留 ✕ 位；文件名 12.5px→11px 做小 */
.gw-chipwrap{position:relative; display:inline-flex; align-items:center; min-width:0; max-width:100%; border:1px solid var(--line); border-radius:var(--atelier-control-radius); background:#fff; padding:3px 10px;}
.gw-chipwrap:hover{border-color:var(--forest);}
.gw-chipwrap.has-x{padding-right:24px;}
.gw-chipwrap .gw-chip-file{flex:0 1 auto; min-width:0; padding-right:0; font-size:11px;}
body.atelier #workspace .gw-chipwrap .gw-x, .gw-chipwrap .gw-x{position:absolute; right:4px; top:50%; transform:translateY(-50%); width:15px; min-width:15px; height:15px; min-height:15px; font-size:10px; margin-left:0;}
/* r46: 徽章收进文件名小卡片内部上方，作紧凑"小标题"（徽章紧贴文件名，间距 1px）；文件名保持 r45 小字 */
.gw-chiptext{display:flex; flex-direction:column; align-items:flex-start; gap:1px; min-width:0;}
.gw-chiptext .gw-badge{flex:none; margin-left:0; padding:0 5px; font-size:8.5px; font-weight:400; line-height:1.5; border-radius:5px;}
/* ===== file-chip-fullwidth-20260929-r47: 文件名小卡片宽度与下方「添加文件」虚线框（.gw-drop，width:100%）一致 ===== */
/* 根因：.gw-files 是 flex-wrap 行容器，.gw-filerow 收缩到内容宽；且行左右各 9px padding。     */
/* 做法：filerow 独占整行铺满、去掉左右 padding（上下 7px 不变，高度不变）；chipwrap 随父级     */
/* flex:1/align-items:stretch 链铺满；✕ 仍 absolute 在卡内右端、徽章/文件名样式不变。          */
.gw-files > .gw-filerow{flex:1 1 100%; width:100%; box-sizing:border-box; padding-left:0; padding-right:0;}
.gw-filerow .gw-chipwrap{flex:none; width:100%; box-sizing:border-box;}
/* ===== download-btn-20260929-r48: 文件名小卡片内右端加 ⬇ 下载按钮（✕ 左侧） ===== */
/* 根因：data-process-file-download 处理分支早已写好但无人渲染（死代码），页面只有「打开」没有下载。 */
/* 排列：卡片右端并排 [⬇][✕]，两者绝对定位、同尺寸 15px；仅 ⬇ 时右留 24px，⬇+✕ 时右留 44px。   */
.gw-chipwrap.has-dl{padding-right:24px;}
.gw-chipwrap.has-x.has-dl{padding-right:44px;}
body.atelier #workspace .gw-chipwrap .gw-dl, .gw-chipwrap .gw-dl{position:absolute; right:4px; top:50%; transform:translateY(-50%); width:15px; min-width:15px; height:15px; min-height:15px; padding:0; border:0; background:transparent; color:var(--muted); font:inherit; font-size:11px; line-height:1; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; border-radius:4px; z-index:3;}
.gw-chipwrap .gw-dl:hover{background:color-mix(in srgb, var(--forest) 10%, #fff); color:var(--forest);}
body.atelier #workspace .gw-chipwrap.has-x.has-dl .gw-dl, .gw-chipwrap.has-x.has-dl .gw-dl{right:22px;}
/* cache-token: 20260929-file-card-unify-r50 */
/* ===== file-card-unify-20260929-r50: 复版/大货文件卡版面统一（以大货为准），说明卡附件位收文件 ===== *//* 1) 大货文件卡去掉文件名小卡片外的实线框（gw-filebox 不再渲染），两种文件卡同一版面。          */
/* 2) 文件类小卡片的文件名小卡片加高：内容列先让出状态行高度，小卡片 min-height =                */
/*    「↻ 重新生成」高 + 8 +「⬇ 下载到语料库」高，做到顶部与重新生成对齐、底部与下载到语料库对齐。 */
/*    （act 列顺序：状态行 → [生成] → 重新生成 → 下载到语料库，列 gap 8px；数值经无头测量校准。）  */
/* 3) 说明输入框改矮（96px→56px，rows 同步 3→2）。                                              */
/* 4) 说明卡内 输入框 / 附件小卡片 / 添加框 三框间距一致：去掉 r42 给 gw-note-drop 的 margin-top:8px。 */
body.atelier #workspace .development-process-file > .gw-mini-cnt.gw-center, .stage-workbench .development-process-file > .gw-mini-cnt.gw-center{justify-content:flex-start; padding-top:32px;}
body.atelier #workspace .development-process-file .gw-chipwrap, .stage-workbench .development-process-file .gw-chipwrap{min-height:73px;}
body.atelier #workspace .development-process-file .gw-files > .gw-filerow, .stage-workbench .development-process-file .gw-files > .gw-filerow{padding-top:0; padding-bottom:0;}
.gw-mini-cnt textarea{min-height:56px;}
.gw-note-drop{margin-top:0;}

/* ===== dev-trims-restore-20260929-r51: 开发详情「辅料」卡——固定跟在定稿资料后面，与生产共用同一份选择 ===== */
/* 卡体占据与流程图同等的弹性空间，选好的辅料以胶囊条排列、可滚动；弹窗复用生产辅料弹窗样式。 */
.gw-trim-card .gw-trim-body{flex:1 1 0; min-height:64px; display:flex; flex-wrap:wrap; align-content:flex-start; gap:6px; padding:10px 12px; margin:0 0 6px; overflow-y:auto; box-sizing:border-box;}
.gw-trim-chip{display:inline-flex; align-items:center; gap:6px; max-width:100%; padding:3px 10px 3px 4px; border:1px solid var(--line); border-radius:999px; background:#fff; font-size:11.5px; line-height:1.5; color:var(--ink, #172b2b); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.gw-trim-chip img{flex:0 0 20px; width:20px; height:20px; border-radius:50%; object-fit:cover; background:#f2f2ee;}
.gw-trim-chip > span{overflow:hidden; text-overflow:ellipsis;}
.gw-trim-empty{color:var(--muted); font-size:11.5px; padding:3px 2px;}
.gw-trim-card .gw-more{flex:0 0 auto;}

/* ===== trim-stage-20260929-r53: 辅料图放进与定稿资料媒体卡完全相同的弹性舞台区（尺寸实测一致） ===== */
/* 关键坑1：.gw-media{flex:1 1 0; height:auto}（本文件 546 行，同特异性且行序晚于 492 的 190px 规则）会压掉
   .development-flow-media 的固定高度——媒体区实际靠「flex:1 吃卡片剩余预算」撑大。因此胶囊条必须挪进
   舞台做底部覆盖条；若独占卡内一行，舞台实测只剩 ~107px（定稿媒体区 ~240px），违背「差不多大」。 */
/* 关键坑2：.development-flow-media img{display:block} 的作者样式会压过 hidden 属性的 UA 规则，必须显式压回。 */
/* 关键坑3：.gw-media img{position:absolute; inset:0} 会波及覆盖条里的胶囊小缩略图，必须压回 static。 */
.gw-trim-stage [hidden]{display:none;}
.gw-trim-stage-empty{color:var(--muted); font-size:12px; text-align:center; padding:12px;}
.gw-trim-stage > img{inset:auto; top:calc(50% - 80px); left:50%; width:62%; max-width:160px; height:110px; transform:translateX(-50%); object-fit:contain;}
.gw-trim-stage .gw-trim-caption{position:absolute; top:calc(50% + 40px); left:14px; right:14px; text-align:center; color:var(--forest); font-size:12px; line-height:1.4;}
.gw-trim-caption strong{display:block; font-weight:600;}
.gw-trim-caption small{display:block; margin-top:3px; color:var(--muted); font-size:11px;}
.gw-trim-stage .gw-trim-caption[hidden]{display:none;}
.gw-trim-stage .gw-trim-stage-empty{position:absolute; inset:0; display:grid; place-items:center;}
.gw-trim-stage .gw-trim-stage-empty[hidden]{display:none;}
.gw-trim-stage .gw-trim-body::-webkit-scrollbar{display:none;}
.gw-trim-stage .gw-trim-body .gw-trim-chip{flex:0 0 auto;}
.gw-trim-stage .gw-trim-body .gw-trim-chip img{position:static; inset:auto; flex:0 0 20px; width:20px; height:20px;}
.gw-trim-stage .gw-trim-body .gw-count{position:static; margin-left:auto; flex:0 0 auto;}
button.gw-trim-chip{appearance:none; font:inherit; cursor:pointer; text-align:left;}
button.gw-trim-chip:hover{border-color:var(--forest, #1d4a3c);}
.gw-trim-chip.is-current{border-color:var(--forest, #1d4a3c); background:#eef3ed;}
/* cache-token: 20260930-launch-delete-period-r60 */

/* ===== launch-progress-r55：上新拖入极简表单的上传进度条 + 文件逐项状态 + 成功/失败明确提示 ===== */
.launch-upload-list{list-style:none; padding:0; margin:8px 0;}
.launch-upload-list li{display:flex; justify-content:space-between; align-items:center; gap:12px; padding:6px 10px; border:1px solid var(--line, #d8dcd6); border-radius:6px; margin-bottom:4px; font-size:13px; background:#fafbf9;}
.launch-upload-list .launch-file-name{flex:1 1 auto; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
.launch-upload-list [data-file-state]{flex:0 0 auto; font-size:12px; color:var(--muted, #6b7268); padding:2px 8px; border-radius:99px; background:#f0f1ee;}
.launch-upload-list [data-file-state][data-state="ing"]{color:#1d4a3c; background:#e6f0ea;}
.launch-upload-list [data-file-state][data-state="ok"]{color:#fff; background:#1d4a3c;}
.launch-upload-list [data-file-state][data-state="fail"]{color:#fff; background:#b3382c;}
.launch-progress{margin:10px 0 4px; height:22px; border-radius:99px; background:#f0f1ee; position:relative; overflow:hidden;}
.launch-progress-bar{position:absolute; inset:0 auto 0 0; width:0%; background:#1d4a3c; transition:width .25s ease;}
.launch-progress-text{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font-size:12px; color:#1d4a3c; font-weight:500; mix-blend-mode:normal;}
[data-stage-form-status]{display:block; margin-top:10px; padding:8px 10px; border-radius:6px; font-size:13px; line-height:1.5; min-height:1em;}
[data-stage-form-status].is-error{background:#fdecea; color:#b3382c; border:1px solid #f5c6c0;}
[data-stage-form-status].is-success{background:#e6f0ea; color:#1d4a3c; border:1px solid #b8d4c4;}
/* r58：文件明细默认折叠（details/summary），整体进度条为主 */
.launch-upload-details{margin-top:8px; font-size:13px;}
.launch-upload-details>summary{cursor:pointer; padding:6px 10px; color:#5a6a63; user-select:none; list-style:none; font-size:12px;}
.launch-upload-details>summary::before{content:'▸ '; display:inline-block; transition:transform .15s ease;}
.launch-upload-details[open]>summary::before{transform:rotate(90deg);}
.launch-upload-details>summary:hover{color:#1d4a3c;}
.launch-upload-details .launch-upload-list{margin-top:6px; max-height:240px; overflow:auto;}

/* r60: 删除条目按钮（右上小红按钮） */
.stage-record { position:relative; }
.stage-record-delete { position:absolute; top:8px; right:8px; padding:2px 8px; font-size:11px; line-height:1.4; color:#a33; background:transparent; border:1px solid #e4c8c8; border-radius:3px; cursor:pointer; }
.stage-record-delete:hover { background:#a33; color:#fff; border-color:#a33; }
.stage-record-delete:disabled { opacity:.5; cursor:wait; }

/* r66：透明文件夹网格（用户确认设计图）——无卡片、无底、无框，仅细分隔线 */
.launch-folder-mac-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(130px, 1fr)); gap:20px 16px; padding:20px 0 4px;}
.launch-folder-mac{display:block; border:none; background:transparent; padding:0; margin:0;}
.launch-folder-mac>summary{list-style:none; cursor:pointer; display:flex; flex-direction:column; align-items:center; gap:8px; padding:10px 0 8px; user-select:none; text-align:center; border:none; border-radius:6px; background:transparent;}
.launch-folder-mac>summary::-webkit-details-marker{display:none;}
.launch-folder-mac>summary:hover{background:rgba(18,63,52,.05);}
/* PNG 文件夹图标：子 52px，顶层 84px */
.launch-folder-png{width:52px; height:auto; display:block;}
/* 文件夹名：图标正下方，最多两行完整显示 */
.launch-folder-mac-name{font-size:.78rem; line-height:1.45; color:var(--ink,#17271f); word-break:break-all; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
/* 文件数：小灰字，无底色 */
.launch-folder-mac-count{font-size:.68rem; color:var(--muted,#6d7971); font-weight:400; font-variant-numeric:tabular-nums;}
/* 顶层总文件夹：横向一行，icon 84px，仅底部细分隔线 */
.launch-folder-mac-root{background:transparent; border:none; border-bottom:1px solid var(--line,#cbd2c9); padding:0 0 14px; margin:0 0 2px;}
.launch-folder-mac-root>summary{flex-direction:row; align-items:center; gap:16px; padding:4px 0 12px; text-align:left; border-radius:0;}
.launch-folder-mac-root>summary:hover{background:transparent;}
.launch-folder-mac-root .launch-folder-png-root{width:84px; filter:drop-shadow(0 4px 6px rgba(23,39,31,.18));}
.launch-folder-mac-root>summary .launch-folder-mac-name{font-size:1rem; font-weight:600; letter-spacing:.02em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; display:block; -webkit-line-clamp:unset; max-height:none; flex:1; min-width:0;}
.launch-folder-mac-root>summary .launch-folder-mac-count{flex:none; font-size:12px; color:var(--muted,#6d7971); letter-spacing:.04em;}
/* 展开态：子文件夹横排一行 + 缩略图网格，仍无背景 */
.launch-folder-mac[open]{grid-column:1 / -1;}
.launch-folder-mac[open]:not(.launch-folder-mac-root)>summary{flex-direction:row; justify-content:flex-start; text-align:left; gap:12px;}
.launch-folder-mac[open]:not(.launch-folder-mac-root) .launch-folder-png{width:28px;}
.launch-folder-mac[open]:not(.launch-folder-mac-root) .launch-folder-mac-name{font-size:.78rem; font-weight:600; max-height:none; -webkit-line-clamp:unset; flex:1; min-width:0;}
.launch-folder-mac-body{padding:12px 0 4px 20px; border-left:1px solid var(--line,#cbd2c9); margin-left:14px;}
.launch-folder-mac-root>.launch-folder-mac-body{border-left:none; margin-left:0; padding:14px 0 0;}
/* 照片缩略图网格 */
.launch-thumb-grid{display:grid; grid-template-columns:repeat(auto-fill, minmax(110px, 1fr)); gap:10px;}
.launch-thumb{display:flex; flex-direction:column; align-items:stretch; padding:0; margin:0; border:1px solid var(--line,#cbd2c9); border-radius:3px; background:transparent; cursor:pointer; overflow:hidden; transition:all .15s ease; text-align:left;}
.launch-thumb:hover{border-color:var(--wine,#8e2638); transform:translateY(-1px);}
.launch-thumb-img-wrap{display:block; width:100%; aspect-ratio:1; background:var(--paper,#f4f4ef); overflow:hidden; position:relative;}
.launch-thumb-img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block;}
.launch-thumb-icon{position:absolute; inset:0; display:grid; place-items:center; font-size:32px; color:var(--muted,#6d7971);}
.launch-thumb-meta{display:flex; flex-direction:column; gap:1px; padding:4px 6px;}
.launch-thumb-name{font-size:.68rem; color:var(--ink,#17271f); word-break:break-all; line-height:1.3; max-height:2.6em; overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;}
.launch-thumb-ver{font-size:.62rem; color:var(--muted,#6d7971); font-variant-numeric:tabular-nums;}
/* cache-token: upload-progress-20261003-r85 */

/* development-presentation-order-20261003: rotate previews while retaining originals. */
.gw-viewer-turns{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:5;}
.gw-viewer-turns[hidden]{display:none;}
.gw-viewer-turns button{border:1px solid #cdd7d0;border-radius:8px;padding:8px 12px;background:rgba(255,255,255,.95);color:#164c40;cursor:pointer;font:inherit;}
.gw-viewer-turns button:disabled{opacity:.6;cursor:wait;}

/* Approved development upload confirmation: localized glass, fixed card geometry. */
body.atelier #workspace .gw-flow-card .gw-flow-meta {
  height:58px; flex:0 0 58px; padding:8px 14px 12px; margin-top:auto;
}
body.atelier #workspace .gw-flow-card .gw-flow-meta .info,
body.atelier #workspace .gw-flow-card .gw-flow-meta .gw-more {font-size:12px; line-height:18px;}
body.atelier #workspace .gw-flow-card .gw-track,
body.atelier #workspace .gw-flow-card .gw-track i {border-radius:0;}
.gw-media.is-dragging {outline:1px dashed var(--forest); outline-offset:-6px;}
/* development-upload-compact-20261005-r1: exception to the shared full-height frame. */
html body.atelier #workspace dialog.media-upload-dialog.is-compact-confirm {
  position:fixed; inset:auto!important; left:50%!important; top:50%!important;
  transform:translate(-50%,-50%); margin:0!important; padding:32px 28px!important;
  width:min(420px,calc(100vw - 32px))!important; max-width:420px!important;
  height:auto!important; min-height:0!important; max-height:calc(100dvh - 32px)!important;
  overflow:auto; box-sizing:border-box;
  border:1px solid #dce3de; border-radius:12px;
  background:#fff; color:var(--ink);
  box-shadow:0 8px 28px rgba(0,0,0,.16);
}
body.atelier #workspace dialog.media-upload-dialog.is-compact-confirm::backdrop {background:rgb(17 37 29 / .25); backdrop-filter:blur(2px);}
.media-upload-confirm {text-align:center;}
body.atelier #workspace .media-upload-confirm h3 {margin:0 0 10px; font-size:20px; font-weight:600; line-height:28px;}
body.atelier #workspace .media-upload-confirm > p {margin:0; font-size:14px; line-height:21px; color:var(--muted);}
body.atelier #workspace .media-upload-confirm-actions {display:flex; justify-content:center; gap:10px; margin-top:30px;}
body.atelier #workspace .media-upload-confirm-actions .button {
  flex:0 0 88px; width:88px; min-width:0; min-height:40px; height:40px; padding:0; border-radius:6px;
  font-size:14px; font-weight:500; line-height:20px; background:var(--forest); color:#fff; border:1px solid var(--forest);
}
body.atelier #workspace .media-upload-confirm-actions .button.secondary {
  background:#fff; border-color:#cdd7d0; color:var(--ink);
}
.media-upload-confirm .media-upload-status:not([hidden]) {margin-top:10px; font-size:12px;}

/* adjustment-workspace-20261006-r2 */
body.atelier #workspace .adjustment-merged-card{height:auto!important;min-height:0!important;max-height:none!important;display:block!important;border:1px solid #dce4df;border-radius:9px;overflow:hidden;background:white}body.atelier #workspace .adjustment-merged-card>header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px 0}body.atelier #workspace .adjustment-merged-card>header h4{font-size:21px;margin:0}.adjustment-merged-card>header span{font-size:12px;color:#717d77}.adjustment-merged-content{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:32px;padding:24px 28px}body.atelier #workspace .adjustment-merged-content>.gw-mini-cnt{padding:0;display:block;min-width:0}.adjustment-merged-content label{display:block;font-size:13px;margin-bottom:10px}body.atelier #workspace .adjustment-merged-content textarea{width:100%;min-height:170px;padding:13px;font-size:14px;line-height:1.85;resize:vertical;border:1px solid #bdcbc4;border-radius:5px;background:white}.adjustment-merged-content aside{border-left:1px solid #dfe5e0;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px}.adjustment-merged-content aside p,.adjustment-merged-content aside small{font-size:12px;color:#6d7b75}.adjustment-merged-content aside button{background:#12483b;color:white;min-width:130px;padding:12px}.adjustment-merged-card>footer{border-top:1px solid #e0e5e1;padding:15px 28px;display:flex;justify-content:space-between;align-items:center;background:#fafbf9;color:#717d77;font-size:12px}.adjustment-completed{margin-top:15px}.adjustment-completed h5{font-size:12px;color:#6d7b75;margin:0 0 10px}.adjustment-completed .gw-files,.adjustment-completed .gw-filerow{max-width:100%}@media(max-width:700px){.adjustment-merged-content{grid-template-columns:1fr;padding:20px;gap:20px}.adjustment-merged-content aside{border-left:0;border-top:1px solid #dfe5e0;padding-top:20px}.adjustment-merged-card>header,.adjustment-merged-card>footer{padding:16px 20px}}

/* adjustment-ui-compact-20261008-r1: completed files with clear text actions */
body.atelier #workspace .adjustment-compact-card,.stage-workbench .adjustment-compact-card{padding:0!important;display:block!important;height:auto!important;min-height:0!important;border:1px solid #dce2de;border-radius:8px;background:#fff;overflow:hidden}
body.atelier #workspace .adjustment-compact-card>header,.stage-workbench .adjustment-compact-card>header{display:flex;align-items:center;justify-content:space-between;min-height:0;margin:0 24px;padding:18px 0 16px;border-bottom:1px solid #e0e5e1;background:transparent;gap:20px}
body.atelier #workspace .adjustment-compact-card>header h4,.stage-workbench .adjustment-compact-card>header h4{margin:0;font-size:20px;line-height:1.45;color:#172b2b;font-weight:600}
body.atelier #workspace .adjustment-compact-card .adjustment-make-button,.stage-workbench .adjustment-compact-card .adjustment-make-button{min-width:112px;min-height:38px;padding:8px 20px;border:1px solid #12483b;border-radius:6px;background:#12483b;color:#fff;font-size:14px;font-weight:500;line-height:1.4}
body.atelier #workspace .adjustment-output-list,.stage-workbench .adjustment-output-list{display:block;padding:0 24px;margin:0}
body.atelier #workspace .adjustment-output-row,.stage-workbench .adjustment-output-row{display:grid;grid-template-columns:minmax(0,1fr) auto 180px;align-items:center;gap:24px;padding:20px 0;min-height:90px}
body.atelier #workspace .adjustment-output-row+.adjustment-output-row,.stage-workbench .adjustment-output-row+.adjustment-output-row{border-top:1px solid #e0e5e1}
body.atelier #workspace .adjustment-output-info,.stage-workbench .adjustment-output-info{display:flex;align-items:center;gap:14px;min-width:0}
body.atelier #workspace .adjustment-output-icon,.stage-workbench .adjustment-output-icon{width:38px;height:44px;object-fit:contain;flex:none}
body.atelier #workspace .adjustment-output-text,.stage-workbench .adjustment-output-text{min-width:0;display:flex;flex-direction:column;gap:5px}
body.atelier #workspace .adjustment-output-name,.stage-workbench .adjustment-output-name{display:block;font-size:15px;line-height:1.5;font-weight:600;color:#172b2b;overflow-wrap:anywhere}
body.atelier #workspace .adjustment-output-text small,.stage-workbench .adjustment-output-text small{display:block;font-size:12px;line-height:1.5;color:#66716e}
body.atelier #workspace .adjustment-output-status,.stage-workbench .adjustment-output-status{display:inline-block;justify-self:start;border:0;border-radius:14px;padding:4px 12px;background:#f0f1f0;color:#58635e;font-size:12px;white-space:nowrap;line-height:1.5}
body.atelier #workspace .adjustment-output-actions,.stage-workbench .adjustment-output-actions{display:flex;flex-direction:column;gap:3px;border-left:1px solid #e0e5e1;padding-left:16px}
body.atelier #workspace .adjustment-output-actions>div,.stage-workbench .adjustment-output-actions>div{display:flex;gap:6px;align-items:center;justify-content:flex-end}
body.atelier #workspace .adjustment-output-action,.stage-workbench .adjustment-output-action{display:inline-flex;align-items:center;justify-content:center;min-height:32px;min-width:64px;margin:0;padding:4px 8px;background:transparent;border:0;border-radius:4px;color:#58635e;font-size:13px;line-height:1.4;white-space:nowrap;cursor:pointer;text-decoration:none}
body.atelier #workspace .adjustment-output-action:hover:not(:disabled),.stage-workbench .adjustment-output-action:hover:not(:disabled){background:#f1f3f1;color:#172b2b}
body.atelier #workspace .adjustment-output-action:focus-visible,.stage-workbench .adjustment-output-action:focus-visible{outline:2px solid #a2aaa5;outline-offset:1px}
body.atelier #workspace .adjustment-output-action:disabled,.stage-workbench .adjustment-output-action:disabled{opacity:.5;cursor:wait}
body.atelier #workspace .adjustment-output-empty,.stage-workbench .adjustment-output-empty{padding:24px 0;margin:0;color:#66716e;font-size:13px;line-height:1.7}
body.atelier #workspace .development-process-add,.stage-workbench .development-process-add{min-height:38px;height:auto!important;margin:12px 0 0;padding:9px 14px;border:1px dashed #d4dbd6;border-radius:6px;background:transparent;font-size:13px;line-height:1.5;color:#66716e}
@media(max-width:850px){body.atelier #workspace .adjustment-output-row,.stage-workbench .adjustment-output-row{grid-template-columns:minmax(0,1fr) auto;gap:12px}.adjustment-output-actions{grid-column:1/-1}.adjustment-output-actions>div{justify-content:flex-start!important}body.atelier #workspace .adjustment-output-actions,.stage-workbench .adjustment-output-actions{border-left:0;padding-left:52px;flex-direction:row;flex-wrap:wrap}body.atelier #workspace .adjustment-compact-card>header,.stage-workbench .adjustment-compact-card>header{margin:0 16px}body.atelier #workspace .adjustment-output-list,.stage-workbench .adjustment-output-list{padding:0 16px}}

/* sample-documents-20261017-r1 */
.gw-sample-documents{grid-template-columns:120px minmax(0,1fr);}
.gw-document-row .nm{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere;line-height:1.65;}
.gw-document-row{align-items:flex-start;}
.gw-document-row .gw-arch-acts{flex:0 0 auto;}
.gw-document-row .gw-arch-act{font-size:12px;min-height:32px;padding:4px 12px;}
.gw-document-group summary{cursor:pointer;color:var(--forest);padding:8px 0;font-size:13px;line-height:1.6;}
@media(max-width:640px){.gw-sample-documents{grid-template-columns:1fr;}.gw-sample-documents .gw-mini-id{border-right:0;padding:0;}}

.knowledge-library{max-width:1440px;margin:24px auto;padding:28px;background:#fff;border:1px solid #dce3da;border-radius:12px}
.knowledge-library h2{font-size:28px;margin:4px 0 12px;color:#193f34}
.kl-toolbar{display:flex;align-items:end;gap:24px;margin:24px 0 12px}
.kl-toolbar label{display:grid;gap:6px;font-size:13px}
.kl-toolbar input[type=search]{width:min(380px,70vw);height:40px;padding:8px 12px;border:1px solid #bccbbd;border-radius:7px;color:#193f34;background:#fff}
.kl-toolbar .kl-archive{display:flex;gap:8px;align-items:center;padding-bottom:10px}
.kl-archive input{width:16px;height:16px;margin:0;accent-color:#193f34}
.kl-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;padding:22px 0;border-top:1px solid #e1e7df}
.kl-entry-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.kl-entry h3{font-size:18px;margin:0;color:#193f34}
.kl-entry p{margin:8px 0;color:#53695c;overflow-wrap:anywhere}.kl-entry small{font-size:12px;color:#647568}
.kl-entry .kl-text{color:#294c3f;white-space:pre-wrap}.kl-entry .iq-actions{align-content:start;align-items:start;max-width:340px}
.kl-version{padding:14px 0;border-bottom:1px solid #dce3da}.kl-version p{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:700px){.knowledge-library{margin:12px 0;padding:18px}.kl-toolbar{align-items:stretch;flex-direction:column;gap:12px}.kl-toolbar input[type=search]{width:100%}.kl-entry{grid-template-columns:1fr;gap:12px}.kl-entry .iq-actions{max-width:none}}

.pipeline-live{--pipe-ink:#193f34;--pipe-line:#d6ded5;color:var(--pipe-ink);background:#f5f6f0;padding:24px;font:14px/1.6 system-ui,sans-serif;min-width:0}
.pipeline-style-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:20px;margin:18px 0 28px}
.pipeline-style-card{min-width:0;display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid #d6ded5;border-radius:10px;padding:18px}
.stage-product-grid.pipeline-style-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.stage-product-grid>.pipeline-style-card{padding:18px;background:#fff;border:1px solid #d6ded5;border-radius:10px}
.pipeline-live[data-pipeline-stage="production"] .pipeline-style-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.pipeline-live[data-pipeline-stage="production"] .pipeline-style-card{padding:14px;gap:10px}
.pipeline-live[data-pipeline-stage="production"] .pipeline-style-card .pipeline-square{aspect-ratio:4/3}
@media(max-width:1100px){.stage-product-grid.pipeline-style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.stage-product-grid.pipeline-style-grid{grid-template-columns:1fr}}
.pipeline-live .pipeline-style-card header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.pipeline-style-card header span{color:#65796c;font-size:12px}
.pipeline-style-progress{margin:0;padding:0;list-style:none}.pipeline-style-progress li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;border-top:1px solid #e5e9e2;font-size:12px}.pipeline-style-progress strong{flex-shrink:0}.pipeline-style-progress span{text-align:right;color:#65796c}
.pipeline-live .pipeline-style-card>button{margin-top:auto;min-height:44px;width:100%;background:#193f34;color:#fff}.pipeline-live .pipeline-style-card>button:hover{background:#285344;color:#fff}
.pipeline-live [data-pipeline-back]{margin:8px 0 16px}
.pipeline-clickable-card{position:relative}
.pipeline-live .pipeline-clickable-card>.pipeline-card-open,.pipeline-live .pipeline-clickable-card>.pipeline-card-open:hover{position:absolute;inset:0;z-index:1;margin:0;width:100%;height:100%;padding:0;background:transparent;border:0;border-radius:10px}
.pipeline-clickable-card:has(.pipeline-card-open:hover){border-color:#91a594;background:#fafcf8}
.pipeline-card-detail-label{margin-top:auto;min-height:44px;display:flex;align-items:center;justify-content:center;background:#193f34;color:#fff;border-radius:4px;font-weight:700}
.pipeline-card-open{cursor:pointer}
.pipeline-card-actions{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}
.pipeline-live .pipeline-card-actions button{width:100%;min-height:44px;padding:9px 8px}
.pipeline-card-open:focus-visible{outline:2px solid #bd9b48;outline-offset:3px}
.pipeline-clickable-card:has(.pipeline-card-open:hover)>.pipeline-card-detail-label{background:#285344}
.pipeline-live .pipeline-clickable-card>.pipeline-card-delete,.pipeline-live .pipeline-clickable-card>.pipeline-card-delete:hover{position:absolute;top:10px;right:10px;z-index:2;width:auto;min-height:36px;margin:0;padding:6px 10px;color:#9b3241;background:#fff;border:1px solid #eadcde;font-size:12px}
.pipeline-live .catalog-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.pipeline-live [data-catalog-new]{background:#193f34;color:#fff}
.pipeline-live .catalog-dialog{position:fixed;inset:0;margin:auto;width:min(520px,calc(100vw - 32px));height:fit-content;max-height:85dvh;padding:28px}
.pipeline-live .catalog-dialog .catalog-danger{background:#963d47;color:#fff;border-color:#963d47}
.catalog-removed{padding:0;margin:0;list-style:none;max-height:45dvh;overflow:auto}.catalog-removed li{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid #d6ded5}.catalog-removed li>div{min-width:0;overflow-wrap:anywhere}
.pipeline-live *{box-sizing:border-box}.pipeline-live [hidden]{display:none!important}
.pipeline-nav{display:flex;gap:24px;border-bottom:1px solid #d6ded5;margin:0 0 24px;padding:0 4px;overflow:auto}
.pipeline-nav button{flex:0 0 auto;width:auto;min-height:44px;margin:0;padding:10px 4px;background:transparent;color:#65796c;border:0;border-bottom:3px solid transparent;border-radius:0;font:600 15px/1.5 system-ui;cursor:pointer}
.pipeline-nav button[aria-current]{color:#193f34;border-bottom-color:#193f34}
.pipeline-live h1,.pipeline-live h2,.pipeline-live h3,.pipeline-live p{margin:0}
.pipeline-live header{background:transparent;color:#193f34;padding:0;border:0;box-shadow:none;position:static;min-height:0;display:block;text-align:left;width:auto}
.pipeline-live header h2,.pipeline-live header h3{color:#193f34}.pipeline-live header small{color:#66786b}
.pipeline-live h1{font-size:26px;line-height:1.35}.pipeline-live h2{font-size:19px;line-height:1.45}.pipeline-live h3{font-size:15px;line-height:1.5}
.pipeline-live small{font-size:12px;color:#66786b}.pipeline-live p{line-height:1.7;overflow-wrap:anywhere}
.pipeline-live button,.pipeline-live .pipeline-upload{width:auto;min-height:40px;padding:9px 15px;border:1px solid #cbd6c9;border-radius:6px;background:white;color:#193f34;font:600 13px/1.5 system-ui;cursor:pointer;box-shadow:none}
.pipeline-live button:hover:not(:disabled),.pipeline-live .pipeline-upload:hover{background:#edf2e9;border-color:#8aa38d}
.pipeline-live button:disabled{color:#788579;background:#f2f4ef;cursor:not-allowed;opacity:.7}
.pipeline-live button:focus-visible,.pipeline-nav button:focus-visible,.pipeline-live summary:focus-visible,.pipeline-live input:focus-visible,.pipeline-live select:focus-visible,.pipeline-live textarea:focus-visible{outline:2px solid #977d42;outline-offset:3px}
.pipeline-live .pipeline-nav button{border-width:0 0 3px;border-radius:0;background:transparent;padding:10px 4px;font-size:15px}
.pipeline-toolbar{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin-bottom:12px}.pipeline-toolbar label{display:grid;gap:5px;min-width:140px}.pipeline-toolbar label:nth-child(2){min-width:min(300px,100%)}
.pipeline-live input,.pipeline-live select,.pipeline-live textarea{width:100%;border:1px solid #cbd6c9;border-radius:6px;background:#fff;color:#193f34;font:inherit;padding:9px 12px;min-height:42px;box-shadow:none}
.pipeline-live textarea{min-height:140px;resize:vertical}.pipeline-live input:disabled,.pipeline-live select:disabled{background:#f2f4ef;color:#788579}
.pipeline-heading{display:flex;justify-content:space-between;align-items:start;gap:20px;padding:18px 0 22px}.pipeline-heading p{color:#65796c;margin-top:8px}.pipeline-heading>span{font-size:12px;color:#66786b;padding-top:8px;text-align:right}
.pipeline-warning{border-left:3px solid #b79550;padding:12px 16px;background:#faf5e8;color:#6a5735;margin:0 0 20px}
.pipeline-panel{min-width:0;background:#fff;border:1px solid var(--pipe-line);border-radius:10px;padding:24px;margin-bottom:20px}
.pipeline-panel>header{margin-bottom:22px}.pipeline-panel>header p{color:#65796c;font-size:13px;margin-top:5px}
.pipeline-milestones{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:8px;list-style:none;padding:0;margin:0 0 20px}
.pipeline-milestones li{min-width:0}
.pipeline-live .pipeline-milestones button{display:flex;flex-direction:column;align-items:flex-start;gap:5px;width:100%;height:100%;min-height:110px;padding:12px 10px;text-align:left;background:#fafbf8;border-color:#e1e7dd;border-radius:7px}
.pipeline-milestone-number{font-size:12px;font-variant-numeric:tabular-nums;color:#738578;line-height:1.3}
.pipeline-milestones strong{font-size:14px}.pipeline-milestones small{font-size:11px;line-height:1.5;overflow-wrap:anywhere}
.pipeline-live .pipeline-milestones [data-state=confirmed],.pipeline-live .pipeline-milestones [data-state=skipped]{background:#edf3e9;border-color:#ccd9c8}
.pipeline-live .pipeline-milestones [data-state=attention] small,.pipeline-live .pipeline-milestones [data-state=review] small{color:#85692f}
.pipeline-live .pipeline-milestones [aria-current=step],.pipeline-live .pipeline-milestones [aria-current=step]:hover{background:#193f34;border-color:#193f34;color:#fff}
.pipeline-live .pipeline-milestones [aria-current=step] small,.pipeline-live .pipeline-milestones [aria-current=step] .pipeline-milestone-number{color:#e2ebe2}
.pipeline-live .pipeline-milestones [aria-expanded=true]{box-shadow:0 0 0 1px #607c66;border-color:#607c66}
.pipeline-live .pipeline-progress-next{padding:12px 14px;background:#f0f4eb;border-radius:6px;font-size:13px}.pipeline-progress-next strong{margin-right:10px}
.pipeline-milestone-detail{margin:18px 0;padding:0 0 16px;border-bottom:1px solid #e2e7df;font-size:13px}.pipeline-milestone-detail h3 small{margin-left:10px;font-weight:400}
.pipeline-progress-files{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.pipeline-progress-files button{overflow-wrap:anywhere;max-width:100%}
@media(max-width:1050px){.pipeline-milestones{grid-template-columns:repeat(3,minmax(0,1fr))}.pipeline-live .pipeline-milestones button{min-height:96px}}
.pipeline-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}.pipeline-two.planning{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
.pipeline-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.pipeline-actions button[data-decision=release]:not(:disabled),.pipeline-order-footer button:not(:disabled),.pipeline-live dialog button[type=submit]{background:#193f34;color:#fff;border-color:#193f34}
.pipeline-steps{list-style:none;padding:0;margin:0 0 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--pipe-line);border-radius:8px;background:#edf2e9}
.pipeline-steps li{display:flex;gap:12px;align-items:center;padding:18px;border-right:1px solid var(--pipe-line)}.pipeline-steps li:last-child{border:0}.pipeline-steps li>span{color:#968255;font-size:22px}.pipeline-steps li>div{flex:1}.pipeline-steps small{display:block}
.pipeline-decision{padding:18px 0;border-top:1px solid #e1e7dd}.pipeline-decision:first-child{border:0;padding-top:0}.pipeline-decision>p{font-size:13px;color:#65796c;margin:7px 0 14px}.pipeline-decision button{margin-right:8px}
.pipeline-live .pipeline-receipt{padding:10px 12px;margin:12px 0;background:#f3f6ef;border-radius:5px;font-size:12px;color:#526857;white-space:pre-wrap}.pipeline-live .pipeline-muted{font-size:12px;color:#66786b;margin:12px 0}
.pipeline-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.pipeline-media-grid.has-revision{grid-template-columns:repeat(5,minmax(0,1fr))}.pipeline-media{min-width:0;border:1px solid var(--pipe-line);border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:8px}.pipeline-media header{display:flex;gap:8px;justify-content:space-between;align-items:start;min-height:38px}.pipeline-media header small{white-space:nowrap}.pipeline-media p{font-size:12px}.pipeline-media>small{margin-top:auto}
.pipeline-square{position:relative;width:100%;aspect-ratio:1;display:grid;place-items:center;overflow:hidden;min-height:0}.pipeline-square>img{width:100%;height:100%;min-height:0;object-fit:contain;filter:none!important;opacity:1!important;mix-blend-mode:normal!important;cursor:zoom-in;position:relative;z-index:2}.pipeline-square>.media-empty{width:100%;height:100%;min-height:0;max-height:none;display:flex;align-items:center;justify-content:center;transform:scale(.7);margin:0;padding:0;background:transparent}.pipeline-trim-summary{width:100%;height:100%;box-sizing:border-box;display:flex;align-content:flex-start;align-items:flex-start;flex-wrap:wrap;gap:8px;padding:12px;overflow:auto}.pipeline-trim-chip{display:inline-flex;align-items:center;padding:7px 9px;border:1px solid #c2cec3;background:#e9eee8;color:#143e34;font-size:12px;line-height:1.35}.pipeline-trim-empty{align-self:center;width:100%;text-align:center;color:#65736b;font-size:12px}.pipeline-trim-note{min-height:32px;margin:0;color:#65736b;font-size:12px!important;line-height:1.45}.pipeline-trim-select{border:1px solid #cbd6c9;background:#fff;color:#143e34;cursor:pointer}.pipeline-trim-select:hover{background:#f2f6ef}
.pipeline-carousel-controls{position:absolute;z-index:3;inset:0;display:flex;align-items:center;justify-content:space-between;padding:0 8px;pointer-events:none}.pipeline-carousel-controls button{pointer-events:auto;width:30px;min-width:30px;height:30px;min-height:30px;padding:0;border:0;border-radius:0;background:none;color:#fff;font-size:24px;line-height:1;text-shadow:0 1px 5px rgb(0 0 0 / .55)}.pipeline-carousel-controls button:hover{background:none;color:#fff;text-shadow:0 1px 7px rgb(0 0 0 / .75)}
.pipeline-live .pipeline-upload{display:flex;align-items:center;justify-content:center;min-height:40px;box-sizing:border-box;text-align:center;font-weight:500}.pipeline-upload input{display:block;margin-top:8px;font-size:11px;min-height:30px;padding:2px;border:0;max-width:100%}
.pipeline-live .pipeline-square>.media-empty-art{width:100%;height:100%;min-height:0;display:flex;align-items:center;justify-content:center;transform:scale(.7);margin:0;padding:0;background:transparent}
.pipeline-live .pipeline-media header{display:flex;min-height:48px;padding:0;gap:6px;flex-wrap:wrap;justify-content:space-between;align-content:start}.pipeline-live .pipeline-media header h3{font-size:13px;max-width:100%}.pipeline-live .pipeline-upload{position:relative;overflow:hidden}.pipeline-live .pipeline-upload input{position:absolute;inset:0;opacity:0;cursor:pointer;height:100%;width:100%;margin:0;padding:0}
.pipeline-live .pipeline-upload.is-dragover{background:#edf2e9;border-color:#8aa38d;outline:2px dashed #8aa38d;outline-offset:2px}
.pipeline-live .pipeline-warning{border:1px solid #e6dbc2;border-radius:6px}
.pipeline-checks{list-style:none;padding:0;margin:0}.pipeline-checks li{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #e1e7dd}.pipeline-checks span{color:#66786b;font-size:12px}
.pipeline-doc-checks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:20px;border-top:1px solid #d6ded5;padding-top:20px}.pipeline-doc-checks>div{min-width:0}.pipeline-doc-checks strong{display:block;margin-bottom:10px}
.pipeline-live [data-pipeline-inspection]>.production-inspection{padding:0;border:0;background:transparent}
.pipeline-order-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.pipeline-order-grid label{display:grid;grid-template-rows:24px 42px;gap:8px;font-size:13px;font-weight:600}
.pipeline-live .pipeline-order-grid input,.pipeline-live .pipeline-order-grid select,.pipeline-live .pipeline-order-grid output{box-sizing:border-box;height:42px;min-height:42px;max-height:42px;padding:9px 12px;margin:0;font-size:14px;line-height:22px;border:1px solid #cbd6c9;border-radius:6px}
.pipeline-order-grid output{display:block;background:#f6f7f1;font-variant-numeric:tabular-nums}.pipeline-order-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}.pipeline-order-footer small{max-width:70%}
.pipeline-fold{margin:0 0 20px;border-top:1px solid #d6ded5;padding:16px 0}.pipeline-fold summary{cursor:pointer;font-weight:600;min-height:28px}.pipeline-fold[open]>summary{margin-bottom:16px}.pipeline-brief{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:20px;background:white;border:1px solid #d6ded5;border-radius:8px}.pipeline-brief p{white-space:pre-wrap;font-size:13px;margin-top:8px}
.pipeline-history{list-style:none;margin:0;padding:0}.pipeline-history li{display:grid;grid-template-columns:1fr auto;gap:6px;padding:14px 0;border-bottom:1px solid #dfe6dc}.pipeline-history span{font-size:12px;color:#66786b}.pipeline-history p{grid-column:1/-1;white-space:pre-wrap;font-size:13px}
.pipeline-live dialog{width:min(600px,calc(100vw - 32px));max-height:85vh;overflow:auto;padding:28px;border:1px solid #d6ded5;border-radius:12px;color:#193f34;background:white}.pipeline-live dialog::backdrop{background:rgb(17 38 29 / .4)}.pipeline-live dialog form{display:grid;gap:18px}.pipeline-live dialog label{display:grid;gap:8px}.pipeline-live dialog form>div{display:flex;justify-content:end;gap:10px}.pipeline-live [data-image-dialog]{width:auto;max-width:96vw;max-height:96vh;overflow:visible;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.pipeline-live [data-image-dialog]::backdrop{background:transparent}.pipeline-live .pipeline-image-viewer{position:relative;display:block;max-width:96vw;max-height:96vh}.pipeline-live .pipeline-image-viewer>[data-image-prev],.pipeline-live .pipeline-image-viewer>[data-image-next]{position:absolute;top:50%;z-index:2;transform:translateY(-50%);width:40px;min-width:40px;height:40px;min-height:40px;padding:0;border:0;border-radius:0;background:none;color:#fff;font-size:34px;line-height:1;text-shadow:0 1px 6px rgb(0 0 0 / .65)}.pipeline-live .pipeline-image-viewer>[data-image-prev]:hover,.pipeline-live .pipeline-image-viewer>[data-image-next]:hover{background:none;color:#fff;text-shadow:0 1px 8px rgb(0 0 0 / .8)}.pipeline-live .pipeline-image-viewer>.pipeline-image-delete{position:absolute;top:16px;right:16px;z-index:3;margin:0;padding:7px 14px;border:0;border-radius:999px;background:rgb(17 38 29 / .55);color:#fff;font:inherit;font-size:13px;line-height:1;letter-spacing:.02em;cursor:pointer;box-shadow:0 1px 4px rgb(0 0 0 / .25)}.pipeline-live .pipeline-image-viewer>.pipeline-image-delete:hover{background:rgb(17 38 29 / .75);color:#fff}.pipeline-live .pipeline-image-viewer>.pipeline-image-delete[data-armed]{background:rgb(140 34 22 / .85)}.pipeline-live .pipeline-image-viewer>.pipeline-image-delete[disabled]{opacity:.55;cursor:default}.pipeline-live .pipeline-image-viewer>.pipeline-image-delete[hidden]{display:none}.pipeline-live [data-image-dialog] img{display:block;max-width:96vw;max-height:96vh;object-fit:contain;margin:auto;cursor:zoom-out}
/* Development media cards keep a stable footprint so a large source image cannot stretch the layout. */
.pipeline-live[data-pipeline-stage="development"] .pipeline-media-grid{grid-template-columns:repeat(3,minmax(0,300px));align-items:stretch;justify-content:start}
.pipeline-live[data-pipeline-stage="development"] .pipeline-media-grid.has-revision{grid-template-columns:repeat(5,minmax(0,300px))}
.pipeline-live[data-pipeline-stage="development"] .pipeline-media{width:100%;max-width:300px;height:600px;min-height:600px;overflow:visible}
.pipeline-live[data-pipeline-stage="development"] .pipeline-media .pipeline-square{flex:0 0 260px;height:260px;max-height:260px;aspect-ratio:auto}
.pipeline-live[data-pipeline-stage="development"] .pipeline-square>img{cursor:default}
.pipeline-live .pipeline-clickable-card>.pipeline-card-delete,.pipeline-live .pipeline-clickable-card>.pipeline-card-delete:hover{z-index:4;display:inline-flex;align-items:center;justify-content:center;pointer-events:auto;visibility:visible;opacity:1;white-space:nowrap;overflow:visible}
@media(max-width:1100px){.pipeline-live[data-pipeline-stage="development"] .pipeline-media-grid,.pipeline-live[data-pipeline-stage="development"] .pipeline-media-grid.has-revision{grid-template-columns:repeat(2,minmax(0,300px))}}
@media(max-width:650px){.pipeline-live[data-pipeline-stage="development"] .pipeline-media-grid,.pipeline-live[data-pipeline-stage="development"] .pipeline-media-grid.has-revision{grid-template-columns:minmax(0,300px)}}
@media(max-width:1000px){.pipeline-live{padding:18px}.pipeline-media-grid{gap:8px}.pipeline-media{padding:8px}.pipeline-media header{flex-direction:column}.pipeline-two.planning{grid-template-columns:1fr 1fr}.pipeline-order-grid{gap:10px}}
@media(max-width:1000px){.pipeline-media-grid.has-revision{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.pipeline-live{padding:12px}.pipeline-nav{gap:20px}.pipeline-heading{display:block}.pipeline-heading>span{display:block;text-align:left}.pipeline-live h1{font-size:23px}.pipeline-two,.pipeline-two.planning,.pipeline-brief{grid-template-columns:1fr;gap:0}.pipeline-panel{padding:16px}.pipeline-media-grid,.pipeline-media-grid.has-revision{grid-template-columns:repeat(2,minmax(0,1fr))}.pipeline-media header{flex-direction:row}.pipeline-steps{grid-template-columns:1fr}.pipeline-steps li{border-right:0;border-bottom:1px solid #d6ded5;padding:12px}.pipeline-doc-checks,.pipeline-order-grid{grid-template-columns:1fr 1fr}.pipeline-order-footer{align-items:start;flex-direction:column}.pipeline-order-footer small{max-width:100%}.pipeline-toolbar label{flex:1;min-width:110px}.pipeline-toolbar label:nth-child(2){min-width:200px}.pipeline-history{font-size:12px}.pipeline-history li{grid-template-columns:1fr}.pipeline-history p{grid-column:auto}}

.period-import{--import-ink:var(--forest,#123f34);--import-muted:var(--muted,#53665e);--import-line:var(--line,#cbd2c9);--import-paper:var(--paper-warm,#fbfbf7);--import-focus:var(--wine,#98263f);--import-gold:var(--gold,#bc9951);color:var(--import-ink);background:var(--import-paper);border:1px solid var(--import-line);padding:28px;margin:24px 0;font-size:15px;line-height:1.6;overflow-wrap:anywhere;scrollbar-color:#83938a #f4f4ef;caret-color:var(--import-focus)}
.period-import[hidden]{display:none}
.period-import ::selection{background:#eadcad;color:#123f34}
.period-import-heading,.period-selection,.period-confirm{display:flex;align-items:center;justify-content:space-between;gap:24px}
.period-import h3{font-size:25px;line-height:1.3;margin:0 0 8px;color:var(--import-ink)}
.period-import h4{font-size:18px;margin:24px 0 12px}
.period-import p{margin:6px 0;color:var(--import-muted);max-width:75ch}
.period-import small,.period-document-links small{display:block;font-size:13px;line-height:1.6;color:#53665e;margin-top:4px}
.period-import .button{font-size:15px;line-height:1.4;padding:10px 16px;min-height:44px;border-radius:0;white-space:normal;flex-shrink:0}
.period-import .button.secondary{background:#fbfbf7;color:#123f34;border:1px solid #b8c5bb}
.period-import .button.secondary:hover,.period-import .button.secondary[aria-pressed=true]{background:#f0ece2;color:#123f34;border-color:#123f34}
.period-import .button:disabled{opacity:.5;cursor:not-allowed}
.period-import :focus-visible,.period-document-links :focus-visible{outline:2px solid #98263f;outline-offset:3px}
.period-import-heading{align-items:flex-start;flex-wrap:nowrap;background:transparent;color:var(--import-ink);padding:0}
.period-steps{display:flex;flex-wrap:wrap;gap:12px 32px;padding:18px 0;margin:22px 0;border-top:1px solid var(--import-line);border-bottom:1px solid var(--import-line);list-style:none;font-weight:600}
.period-selection{align-items:flex-start}
.period-selection strong{font-size:17px}
.period-buttons{display:flex;gap:8px;flex-wrap:wrap}
.period-source{display:grid;gap:8px;margin:22px 0;font-weight:600}
.period-source input{width:100%;box-sizing:border-box;border:1px solid #a7b6ac;background:#fff;color:#163f35;padding:11px 12px;font:inherit;border-radius:0}
.period-source input::placeholder{color:#64736b;opacity:1}
.period-source span{font-size:13px;font-weight:400;color:#53665e}
.period-rules{border-block:1px solid var(--import-line);padding:12px 0}
.period-import summary,.period-document-links summary{cursor:pointer;min-height:24px}
.period-feedback{padding:16px 0;min-height:26px;font-weight:600}
.period-import p.period-feedback{color:#123f34}
.period-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
.period-table-wrap{max-height:510px;overflow:auto;border-block:1px solid var(--import-line)}
.period-table{width:100%;table-layout:fixed;border-collapse:collapse;text-align:left;font-size:14px}
.period-table th{background:#efefe7;color:#123f34;font-weight:600;position:sticky;top:0;z-index:1}
.period-table td,.period-table th{padding:14px 12px;border-bottom:1px solid var(--import-line);vertical-align:top;word-break:break-word}
.period-table th:first-child{width:40%}.period-table th:nth-child(2){width:32%}
.period-table td strong{font-weight:600}.period-table td details{margin-top:8px}
.period-path{overflow-wrap:anywhere;word-break:break-word;user-select:text}
.period-status{font-weight:700}.period-status.status-pending{color:#98263f}.period-status.status-updated{color:#765519}.period-status.status-ignored,.period-status.status-unchanged{color:#53665e}
.period-empty{padding:28px 0}
.period-confirm{padding-top:20px;margin-top:20px;border-top:1px solid var(--import-line)}
.period-confirm-dialog{box-sizing:border-box;position:fixed;z-index:1000;inset:0;width:min(560px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid var(--line-dark,var(--import-line));background:var(--import-paper);color:var(--import-ink);box-shadow:var(--shadow,0 18px 40px rgba(18,63,52,.08));overflow:auto}
.period-confirm-dialog:not([open]){display:none}
.period-confirm-dialog::backdrop{background:rgba(23,39,31,.58)}
.period-confirm-dialog-inner{padding:28px}
.period-confirm-dialog-heading{padding-bottom:20px;border-bottom:1px solid var(--import-line)}
.period-confirm-dialog h3{margin:0 0 8px;color:var(--import-ink);font-size:clamp(1.45rem,3vw,2rem);line-height:1.25;letter-spacing:-.03em}
.period-confirm-dialog p{margin:6px 0;color:var(--import-muted)}
.period-confirm-dialog-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:22px 0;border-block:1px solid var(--import-line)}
.period-confirm-dialog-facts>div{min-width:0;padding:14px 16px 14px 0}
.period-confirm-dialog-facts>div:nth-child(even){padding-left:16px;border-left:1px solid var(--import-line)}
.period-confirm-dialog-facts dt{color:var(--import-muted);font-size:13px}
.period-confirm-dialog-facts dd{margin:3px 0 0;color:var(--import-ink);font-size:18px;font-weight:800;overflow-wrap:anywhere}
.period-confirm-dialog-note{padding:14px 16px!important;border:1px solid var(--import-line);background:var(--paper,#f4f4ef)}
.period-confirm-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px;padding-top:20px;border-top:1px solid var(--import-line)}
.period-confirm-dialog :focus-visible{outline:2px solid var(--import-gold);outline-offset:3px}
.period-library{margin-top:28px;padding-top:18px;border-top:1px solid var(--import-line)}
.period-library>summary{font-weight:700;margin-bottom:16px}
.period-document-links{padding:14px 0;margin:18px 0;border-block:1px solid #cbd2c9}
.period-document-links ul{list-style:none;margin:8px 0;padding:0}
.period-document-links li{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #cbd2c9}
.period-document-links li:last-child{border:0}.period-document-links li>div{min-width:0}
.period-document-links .button{flex-shrink:0;min-height:44px}
.period-file-actions{display:flex;flex-wrap:wrap;gap:8px;flex-shrink:0}
.period-document-links .period-path{overflow-wrap:anywhere}
@media(max-width:700px){.period-import{padding:16px}.period-selection,.period-confirm{align-items:stretch;flex-direction:column;gap:12px}.period-import-heading{gap:12px}.period-import h3{font-size:21px}.period-steps{gap:8px;font-size:13px;justify-content:space-between}.period-buttons .button{flex:1}.period-table,.period-table tbody,.period-table tr,.period-table td{display:block}.period-table thead{display:none}.period-table td{padding:8px 0;border:0}.period-table tr{padding:12px 6px;border-bottom:1px solid #cbd2c9}.period-table td:first-child{font-size:15px}.period-table td:last-child{padding-top:0}.period-document-links li{align-items:flex-start;flex-direction:column;gap:8px}.period-confirm-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.period-confirm-dialog-inner{padding:20px}.period-confirm-dialog-facts{grid-template-columns:1fr}.period-confirm-dialog-facts>div,.period-confirm-dialog-facts>div:nth-child(even){padding:12px 0;border-left:0}.period-confirm-dialog-facts>div+div{border-top:1px solid var(--import-line)}.period-confirm-dialog-actions{flex-direction:column-reverse}.period-confirm-dialog-actions .button{width:100%}}

.stage-workbench[data-stage="customer_service"] > .stage-heading,
.stage-workbench[data-stage="customer_service"] > .stage-summary {
  display:none;
}

.customer-message-hub {
  --customer-line:#c7d1ca;
  --customer-soft:#f2f4ef;
  --customer-warm:#fffdf3;
  display:grid;
  gap:0;
  min-width:0;
  color:var(--ink);
}

.customer-message-hub button,
.customer-message-hub textarea { font:inherit; }

.customer-hub-header {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  min-height:118px;
  box-sizing:border-box;
  padding:22px 24px;
  border:0;
  border-bottom:1px solid var(--customer-line);
  background:transparent;
}

.customer-kicker {
  margin:0 0 7px;
  color:var(--wine);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.customer-hub-header h2 {
  margin:0 0 8px;
  color:var(--forest)!important;
  font-size:clamp(1.8rem,3vw,2.8rem);
  line-height:1.1;
}

.customer-hub-header > div:first-child > p:last-child {
  max-width:58ch;
  margin:0;
  color:var(--muted);
  font-size:.78rem;
}

.customer-hub-tools {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:9px;
}

.customer-hub-tools button,
.customer-channel-tabs button,
.customer-filter-row button {
  border:1px solid var(--customer-line);
  border-radius:0;
  background:#fff;
  color:var(--forest);
}

.customer-hub-tools button {
  min-height:42px;
  padding:9px 16px;
  font-size:.75rem;
  font-weight:750;
}

.customer-hub-tools button[aria-pressed="true"] {
  border-color:var(--wine);
  background:var(--wine);
  color:#fff;
}

.customer-sync-state {
  color:var(--muted);
  font-size:.7rem;
  white-space:nowrap;
}

.customer-sync-state.is-attention,
.customer-thread-state .is-attention { color:var(--wine); }
.customer-hub-header .customer-kicker { color:var(--wine); }
.customer-hub-header .customer-sync-state.is-attention { color:var(--wine); }

.customer-channel-tabs {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:18px;
  border:1px solid var(--customer-line);
}

.customer-channel-tabs button {
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:58px;
  padding:12px 18px;
  border:0;
  border-right:1px solid var(--customer-line);
  font-size:.8rem;
  font-weight:750;
}

.customer-channel-tabs button:last-child { border-right:0; }
.customer-channel-tabs button[aria-pressed="true"] { background:var(--forest); color:#fff; }
.customer-channel-tabs strong { font-variant-numeric:tabular-nums; }
.customer-channel-tab { display:flex; min-width:0; border-right:1px solid var(--customer-line); }
.customer-channel-tab:last-child { border-right:0; }
.customer-channel-tab button { border:0; }
.customer-channel-tab [data-customer-channel] { flex:1; }
.customer-channel-tab [data-customer-task-count] { flex:none; min-width:52px; justify-content:center; }
.customer-channel-tab[data-selected="true"] button { background:var(--forest); color:#fff; }
.customer-task-filters { display:flex; flex-wrap:wrap; gap:8px; margin:12px 0; }
.customer-task-filters [aria-pressed="true"] { background:var(--forest); color:#fff; }

.customer-summary {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  background:var(--customer-soft);
  border:1px solid var(--customer-line);
  border-top:0;
}

.customer-summary > div {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:14px;
  padding:12px 18px;
  border-right:1px solid var(--customer-line);
}

.customer-summary > div:last-child { border-right:0; }
.customer-summary span { color:var(--muted); font-size:.7rem; }
.customer-summary strong { color:var(--forest); font-size:1.1rem; font-variant-numeric:tabular-nums; }

.customer-hub-columns {
  display:grid;
  grid-template-columns:minmax(245px,.83fr) minmax(390px,1.28fr) minmax(300px,.94fr);
  min-height:640px;
  border:1px solid var(--customer-line);
  border-top:0;
  background:#fff;
}

.customer-conversation-list,
.customer-thread,
.customer-side-panel { min-width:0; }

.customer-conversation-list,
.customer-thread { border-right:1px solid var(--customer-line); }

.customer-conversation-list > header,
.customer-thread > header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  min-height:84px;
  box-sizing:border-box;
  padding:17px 18px;
  border-bottom:1px solid var(--customer-line);
  background:#fff;
}

.customer-conversation-list h3,
.customer-thread h3 {
  margin:0;
  color:var(--forest);
  font-size:1rem;
  line-height:1.35;
}

.customer-conversation-list > header > span,
.customer-thread-state { color:var(--muted); font-size:.68rem; text-align:right; }
.customer-thread-state span,.customer-thread-state small { display:block; }
.customer-thread-state small { margin-top:6px; }

.customer-filter-row {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border-bottom:1px solid var(--customer-line);
}

.customer-filter-row button {
  min-height:38px;
  border:0;
  border-right:1px solid var(--customer-line);
  font-size:.68rem;
}

.customer-filter-row button:last-child { border-right:0; }
.customer-filter-row button[aria-pressed="true"] { background:#e7eee7; font-weight:800; }
.customer-conversation-scroll { max-height:556px; overflow:auto; }

.customer-conversation {
  display:grid;
  gap:10px;
  width:100%;
  padding:17px 18px;
  border:0;
  border-bottom:1px solid var(--customer-line);
  border-radius:0;
  background:#fff;
  color:var(--ink);
  text-align:left;
}

.customer-conversation:hover { background:#f7f8f4; }
.customer-conversation.is-selected { box-shadow:inset 4px 0 0 var(--wine); background:var(--customer-warm); }
.customer-conversation-head,.customer-conversation-meta { display:flex; justify-content:space-between; gap:12px; }
.customer-conversation-head strong { color:var(--forest); font-size:.78rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.customer-conversation-head time,.customer-conversation-meta { color:var(--muted); font-size:.62rem; }
.customer-conversation-head { flex-wrap:wrap; row-gap:4px; }
.customer-conversation-head time { flex-basis:100%; text-align:right; overflow-wrap:anywhere; }
.customer-conversation-preview { overflow:hidden; color:var(--muted); font-size:.7rem; text-overflow:ellipsis; white-space:nowrap; }
.customer-empty,.customer-loading,.customer-load-error { padding:22px; color:var(--muted); font-size:.78rem; }

.customer-thread {
  display:grid;
  grid-template-rows:auto minmax(300px,420px) auto;
  align-self:start;
  background:#f8f8f4;
}

.customer-messages {
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:14px;
  overflow:auto;
  padding:20px;
}

.customer-message {
  align-self:flex-start;
  width:min(82%,480px);
  padding:13px 15px;
  border:1px solid var(--customer-line);
  background:#fff;
}

.customer-message.outgoing { align-self:flex-end; background:#e7eee7; border-color:#abc1b5; }
.customer-system-message { align-self:center; max-width:90%; padding:4px 12px; color:var(--muted); font-size:.68rem; text-align:center; overflow-wrap:anywhere; }
.customer-identity-note { display:block; margin-top:8px; color:var(--muted); font-size:.6rem; }
.customer-page-image { display:block; width:100%; height:auto; margin-top:10px; }
.customer-long-transcript { display:block; flex:none; width:100%; min-width:0; line-height:0; }
.customer-original-screen { width:100%; min-width:0; margin:0; padding:0; border:0; }
.customer-original-caption { margin:0 0 8px; color:var(--muted); font-size:.65rem; }
.customer-original-screen .customer-page-image { margin:0; }
.customer-original-screen.is-unavailable { padding:12px; line-height:1.6; color:var(--muted); font-size:.65rem; }
.customer-message header { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:4px 14px; min-height:0; margin:0 0 7px; padding:0; border:0; background:transparent; color:var(--forest); }
.customer-message header strong { min-width:0; overflow-wrap:anywhere; }
.customer-message header strong { color:var(--forest); font-size:.68rem; }
.customer-message header time { color:var(--muted); font-size:.61rem; }
.customer-message p { margin:0; font-size:.75rem; line-height:1.65; overflow-wrap:anywhere; white-space:pre-wrap; }
.customer-attachment { display:block; margin-top:8px; color:var(--muted); font-size:.65rem; }

.customer-reply-box {
  padding:16px 18px;
  border-top:1px solid var(--customer-line);
  background:#fff;
}

.customer-reply-box label { display:block; margin-bottom:7px; color:var(--forest); font-size:.7rem; font-weight:750; }
.customer-reply-box textarea { width:100%; min-height:86px; box-sizing:border-box; resize:vertical; padding:11px; border:1px solid var(--customer-line); border-radius:0; background:var(--customer-warm); color:var(--ink); font-size:.72rem; line-height:1.55; }
.customer-reply-box > div { display:flex; justify-content:flex-end; gap:9px; margin-top:9px; }
.customer-reply-box .button { min-height:38px; padding:8px 13px; font-size:.68rem; }
.customer-reply-box .button:disabled { cursor:not-allowed; opacity:.45; }
.customer-reply-box > p { margin:8px 0 0; color:var(--wine); font-size:.62rem; text-align:right; }

.customer-side-panel { background:#fff; }

.customer-work-region { min-width:0; }
.customer-work-region-header {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  padding:0 2px 12px;
}
.customer-work-region-header > div { display:flex; align-items:center; gap:12px; }
.customer-work-region-marker { width:3px; height:22px; border-radius:999px; background:var(--wine); }
.customer-work-region-header h3 { margin:0; color:var(--forest); font-size:1.05rem; }
.customer-work-region-header p { margin:0; color:var(--muted); font-size:.7rem; line-height:1.5; }

.customer-side-sections { display:grid; gap:0; }
.customer-side-sections > section { padding:17px 18px; border-bottom:1px solid var(--customer-line); }
.customer-side-sections h4 { margin:0 0 8px; color:var(--forest); font-size:.82rem; }
.customer-side-sections section > p:not(.customer-kicker) { margin:0; color:var(--muted); font-size:.68rem; line-height:1.65; }
.customer-side-sections dl { display:grid; gap:7px; margin:12px 0 0; }
.customer-side-sections dl > div { display:grid; grid-template-columns:70px 1fr; gap:9px; }
.customer-side-sections dt,.customer-side-sections dd { margin:0; font-size:.66rem; }
.customer-side-sections dt { color:var(--muted); }
.customer-side-sections dd { color:var(--forest); }
.customer-side-sections .button { min-height:38px; margin-top:12px; padding:8px 12px; font-size:.68rem; }

.customer-community-work-region {
  border:1px solid var(--customer-line);
  border-radius:6px;
  background:#fff;
  overflow:hidden;
}
.customer-community-work-region .customer-work-region-header { padding:18px; border-bottom:1px solid var(--customer-line); background:var(--customer-soft); }
.community-sections { grid-template-columns:repeat(6,minmax(0,1fr)); }
.community-sections > section:nth-child(-n+3) { grid-column:span 2; }
.community-sections > section:nth-child(4),
.community-sections > section:nth-child(5) { grid-column:span 3; }
.community-sections > section { border-right:1px solid var(--customer-line); }
.community-sections > section:nth-child(3),
.community-sections > section:nth-child(5) { border-right:0; }
.community-sections > .customer-process { grid-column:1 / -1; }
.customer-task-board { margin-top:20px; border:1px solid var(--customer-line); background:#fff; }
.customer-task-board > header { display:flex; flex-wrap:wrap; gap:10px; justify-content:space-between; padding:18px; border-bottom:1px solid var(--customer-line); background:var(--customer-soft); color:var(--forest); }
.customer-task-board h3 { margin:0; font-size:1rem; }
.customer-task-board > header span { font-size:.72rem; color:var(--muted); }
.customer-task-board > div { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr)); }
.customer-task { display:grid; gap:8px; padding:18px; min-width:0; border-bottom:1px solid var(--customer-line); overflow-wrap:anywhere; }
.customer-task strong { font-size:.8rem; color:var(--forest); }
.customer-task span,.customer-task p { margin:0; font-size:.7rem; line-height:1.6; color:var(--muted); white-space:pre-wrap; }
.customer-task .button { justify-self:start; font-size:.7rem; min-height:38px; padding:8px 12px; }
.customer-panel-back { margin:12px 18px; font-size:.7rem; }
.customer-message-hub button:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }

.customer-process {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:0;
  margin:0;
  padding:0;
  border-bottom:1px solid var(--customer-line);
  list-style:none;
}
.customer-process li { display:grid; gap:3px; padding:12px 6px; border-right:1px solid var(--customer-line); text-align:center; }
.customer-process li:last-child { border-right:0; }
.customer-process span { color:var(--gold); font-size:.62rem; font-weight:800; }
.customer-process strong { color:var(--forest); font-size:.66rem; }

.customer-thread-empty { display:grid; place-content:center; gap:8px; padding:30px; color:var(--muted); text-align:center; }
.customer-thread-empty p { margin:0; color:var(--forest); }
.customer-load-error { border:1px solid var(--wine); }
.customer-load-error strong { color:var(--wine); }

@media(max-width:1180px) {
  .customer-hub-columns { grid-template-columns:minmax(240px,.8fr) minmax(390px,1.2fr); }
  .customer-side-panel { grid-column:1 / -1; border-top:1px solid var(--customer-line); }
  .customer-side-sections:not(.community-sections) { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .customer-side-sections:not(.community-sections) > .customer-process { grid-column:1 / -1; }
  .community-sections { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .community-sections > section { grid-column:auto!important; }
  .community-sections > section:nth-child(odd) { border-right:1px solid var(--customer-line); }
  .community-sections > section:nth-child(even) { border-right:0; }
  .community-sections > section:nth-child(5) { grid-column:1 / -1!important; border-right:0; }
}

@media(max-width:760px) {
  .customer-hub-header { align-items:flex-start; flex-direction:column; }
  .customer-hub-tools { justify-content:flex-start; }
  .customer-channel-tabs,.customer-summary { grid-template-columns:repeat(2,1fr); }
  .customer-channel-tabs button:nth-child(2),.customer-summary > div:nth-child(2) { border-right:0; }
  .customer-channel-tabs button:nth-child(-n+2),.customer-summary > div:nth-child(-n+2) { border-bottom:1px solid var(--customer-line); }
  .customer-hub-columns { grid-template-columns:1fr; }
  .customer-conversation-list,.customer-thread { border-right:0; border-bottom:1px solid var(--customer-line); }
  .customer-thread { min-height:600px; }
  .customer-thread-empty { min-height:180px; grid-template-rows:auto auto; }
  .customer-conversation-scroll { max-height:300px; }
  .customer-work-region-header { align-items:flex-start; flex-direction:column; gap:7px; }
  .community-sections,.customer-side-sections:not(.community-sections) { grid-template-columns:1fr; }
  .community-sections > section,.customer-side-sections:not(.community-sections) > section { grid-column:1!important; border-right:0!important; }
  .customer-process { grid-column:1!important; }
}

/* Use the same hierarchy, tabs and card language as Intelligence and Launch. */
body.atelier .customer-message-hub {
  --customer-line:var(--line);
  --customer-soft:#f5f6f2;
  --customer-warm:#fbfbf7;
  gap:20px;
}

body.atelier .customer-hub-header {
  align-items:flex-start;
  min-height:0;
  margin:0;
  padding:0 0 20px;
  border-bottom:1px solid var(--line);
}

body.atelier .customer-hub-header h2 {
  margin:6px 0 10px;
  font-size:36px;
  line-height:1.25;
  font-weight:650;
}

body.atelier .customer-hub-header > div:first-child > p:last-child {
  max-width:70ch;
  font-size:14px;
  line-height:1.6;
}

body.atelier .customer-hub-tools {
  align-items:center;
  gap:8px;
}

body.atelier .customer-hub-tools button {
  min-height:36px;
  padding:7px 12px;
  border:1px solid var(--line);
  border-radius:4px;
  background:#fff;
  color:var(--forest);
  font-size:13px;
  font-weight:500;
}

body.atelier .customer-hub-tools button[aria-pressed="true"] {
  border-color:var(--line-dark);
  background:var(--atelier-surface-soft);
  color:var(--forest);
}

body.atelier .customer-overview-bands {
  display:grid;
  gap:0;
  min-width:0;
}

body.atelier .customer-channel-tabs {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  overflow:visible;
}

body.atelier .customer-overview-card {
  min-width:0;
  border:1px solid var(--line);
  border-radius:6px;
  background:#fff;
  overflow:hidden;
}

body.atelier .customer-channel-tab {
  position:relative;
  border:0;
  border-radius:0;
  background:#fff;
  overflow:hidden;
}

body.atelier .customer-channel-tabs button {
  min-height:44px;
  padding:8px 0 12px;
  border:0;
  border-radius:0;
  background:transparent!important;
  color:var(--muted)!important;
  font-size:14px;
  font-weight:500;
}

body.atelier .customer-channel-tab [data-customer-channel] {
  justify-content:flex-start;
}

body.atelier .customer-channel-tab [data-customer-channel] span {
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:9px;
}

body.atelier .customer-channel-tab[data-selected="true"] [data-customer-channel] {
  color:var(--forest)!important;
  font-weight:600;
}

body.atelier .customer-channel-tab[data-selected="true"] {
  background:var(--atelier-surface-soft);
}

body.atelier .customer-channel-tab[data-selected="true"]::after {
  content:none;
}

body.atelier .customer-channel-tab[data-selected="true"] [data-customer-channel] span::before {
  content:"";
  flex:0 0 auto;
  width:2px;
  height:14px;
  border-radius:999px;
  background:var(--wine);
}

body.atelier .customer-channel-tab [data-customer-task-count] {
  min-width:32px;
  justify-content:flex-end;
  color:var(--muted)!important;
}

body.atelier .customer-summary {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:14px;
  min-height:76px;
  box-sizing:border-box;
  margin:0;
  padding:15px 20px;
  border:0;
  border-top:1px solid var(--line);
  border-radius:0;
  background:#fff;
}

body.atelier .customer-summary span { font-size:13px; }
body.atelier .customer-summary strong { font-size:24px; font-weight:650; }

body.atelier .customer-hub-columns {
  box-sizing:border-box;
  margin:12px 0 0;
  border:1px solid var(--line);
  border-radius:6px;
  background:var(--atelier-surface);
  box-shadow:none;
  overflow:hidden;
}

body.atelier .customer-work-regions {
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(300px,.9fr);
  align-items:start;
  gap:14px;
  min-width:0;
}

body.atelier .customer-message-work-region {
  min-width:0;
  border:1px solid var(--line);
  border-radius:6px;
  background:#fff;
  overflow:hidden;
}

body.atelier .customer-message-work-region .customer-work-region-header {
  padding:18px 20px;
  border-bottom:1px solid var(--line);
  background:var(--atelier-surface-soft);
}

body.atelier .customer-message-work-region .customer-hub-columns {
  grid-template-columns:minmax(0,1fr);
  min-height:0;
  margin:0;
  border:0;
  border-radius:0;
}

body.atelier .customer-message-work-region :is(.customer-conversation-list,.customer-thread) {
  border-right:0;
  border-bottom:1px solid var(--line);
}

body.atelier .customer-work-regions .community-sections { grid-template-columns:minmax(0,1fr); }
body.atelier .customer-work-regions .community-sections > section {
  grid-column:1!important;
  border-right:0;
}

@media(max-width:900px) {
  body.atelier .customer-work-regions { grid-template-columns:minmax(0,1fr); }
}

body.atelier .customer-work-region-header {
  align-items:center;
  padding:0 2px 12px;
}

body.atelier .customer-work-region-header h3 {
  color:var(--forest);
  font-size:20px;
  line-height:1.4;
  font-weight:650;
}

body.atelier .customer-work-region-header p {
  max-width:64ch;
  color:var(--muted);
  font-size:13px;
}

body.atelier .customer-work-region-marker { width:3px; height:20px; }

body.atelier .customer-community-work-region {
  border-color:var(--line);
  border-radius:6px;
  background:#fff;
}

body.atelier .customer-community-work-region .customer-work-region-header {
  padding:18px 20px;
  border-bottom:1px solid var(--line);
  background:var(--atelier-surface-soft);
}

body.atelier .customer-community-work-region .customer-side-sections > section {
  min-height:156px;
  box-sizing:border-box;
  padding:20px;
}

body.atelier .customer-conversation-list > header,
body.atelier .customer-thread > header {
  min-height:76px;
  padding:16px 18px;
}

body.atelier .customer-filter-row {
  display:flex;
  justify-content:flex-start;
  align-items:center;
  gap:28px;
  min-height:72px;
  padding:0 18px;
  border:0;
  border-bottom:1px solid var(--line);
  overflow-x:auto;
}

body.atelier .customer-task-filters {
  display:flex;
  justify-content:flex-start;
  align-items:center;
  gap:32px;
  min-height:72px;
  margin:0;
  padding:0 18px;
  border-bottom:1px solid var(--line);
  overflow-x:auto;
}

body.atelier .customer-filter-row button,
body.atelier .customer-task-filters button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:13px;
  font-weight:500;
}

body.atelier :is(.customer-filter-row,.customer-task-filters) button {
  position:relative;
  flex:0 0 auto;
  min-height:58px;
  padding:0 9px;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--muted);
  white-space:nowrap;
}

body.atelier .customer-message-hub .customer-channel-tabs button:hover:not(:disabled):not([aria-pressed="true"]) {
  border-color:var(--line-dark);
  background:#eef3ed;
  color:var(--forest);
}

body.atelier .customer-message-hub :is(.customer-filter-row,.customer-task-filters) button:hover:not(:disabled):not([aria-pressed="true"]) {
  border-color:transparent;
  background:transparent;
  color:var(--forest);
}

body.atelier .customer-filter-row button[aria-pressed="true"],
body.atelier .customer-task-filters button[aria-pressed="true"] {
  background:var(--atelier-surface-soft);
  color:var(--forest);
  box-shadow:none;
}

body.atelier :is(.customer-filter-row,.customer-task-filters) button[aria-pressed="true"] {
  background:transparent;
  font-weight:650;
}

body.atelier .customer-message-hub :is(.customer-filter-row,.customer-task-filters) button[aria-pressed="true"]:hover:not(:disabled) {
  border-color:transparent;
  background:transparent;
  color:var(--forest);
}

body.atelier .customer-message-hub .customer-channel-tab[data-selected="true"] button:hover:not(:disabled) {
  border-color:transparent;
  background:transparent;
}

body.atelier :is(.customer-filter-row,.customer-task-filters) button[aria-pressed="true"]::after {
  content:"";
  position:absolute;
  right:9px;
  bottom:0;
  left:9px;
  height:3px;
  border-radius:999px;
  background:var(--wine);
}

body.atelier :is(.customer-filter-row,.customer-task-filters) button:focus-visible {
  outline:1px solid var(--line-dark);
  outline-offset:2px;
}

body.atelier .customer-message-hub .customer-process {
  display:flex;
  align-items:center;
  gap:0;
  padding:18px;
  border-bottom:0;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
}

body.atelier .customer-message-hub .customer-process li {
  display:flex;
  align-items:center;
  flex:1 0 126px;
  gap:8px;
  min-height:36px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  white-space:nowrap;
}

body.atelier .customer-message-hub .customer-process li:not(:last-child)::after {
  content:"";
  flex:1 1 32px;
  min-width:18px;
  height:1px;
  margin:0 12px;
  background:var(--line);
}

body.atelier .customer-message-hub .customer-process span {
  display:grid;
  place-items:center;
  flex:0 0 26px;
  width:26px;
  height:26px;
  border:1px solid #d6c394;
  border-radius:50%;
  background:#fff;
  color:var(--gold);
  font-size:11px;
  font-weight:700;
}

body.atelier .customer-message-hub .customer-process strong {
  font-size:14px;
  font-weight:600;
  color:var(--forest);
}

body.atelier .customer-message,
body.atelier .customer-reply-box textarea {
  border-radius:6px;
}

body.atelier .customer-task-board {
  margin-top:0;
  border:1px solid var(--line);
  border-radius:6px;
  overflow:hidden;
}

body.atelier .customer-task-board > header {
  background:var(--atelier-surface-soft);
}

body.atelier :is(.customer-reply-box .button,.customer-side-sections .button,.customer-task .button) {
  min-height:38px;
  padding:7px 12px;
  border:1px solid var(--line);
  border-radius:4px;
  background:#fff;
  color:var(--forest);
  font-size:13px;
  font-weight:500;
}

body.atelier .customer-work-regions .customer-work-region-header {
  align-items:flex-start;
  flex-direction:column;
  gap:5px;
  padding:14px 16px 12px;
}

body.atelier .customer-work-regions .customer-work-region-header h3 { font-size:18px; }
body.atelier .customer-work-regions .customer-work-region-header p { font-size:12px; line-height:1.45; }

body.atelier .customer-message-work-region .customer-thread > header {
  min-height:54px;
  padding:9px 14px;
}

body.atelier .customer-message-work-region .customer-conversation-toolbar {
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr) auto;
  align-items:center;
  gap:18px;
  min-height:72px;
  padding:0 16px;
  border:0;
  background:#fff;
}

body.atelier .customer-message-work-region .customer-conversation-title {
  display:flex;
  align-items:center;
  gap:10px;
  white-space:nowrap;
}

body.atelier .customer-message-work-region .customer-conversation-title h3 {
  margin:0;
  color:var(--forest);
  font-size:18px;
  line-height:1.2;
  font-weight:650;
}

body.atelier .customer-message-work-region .customer-current-channel {
  border-left:1px solid var(--line);
  padding-left:18px;
  color:var(--forest);
  font-size:15px;
  line-height:1.2;
  font-weight:650;
  white-space:nowrap;
}

body.atelier .customer-message-work-region .customer-filter-row {
  min-height:72px;
  padding:0;
  gap:22px;
  border:0;
}

body.atelier .customer-message-work-region .customer-filter-row button { min-height:48px; padding:0 7px; }
body.atelier .customer-message-work-region .customer-conversation-list { border-bottom:0; }
body.atelier .customer-conversation-status {
  color:var(--muted);
  font-size:12px;
  line-height:1.2;
  white-space:nowrap;
}
body.atelier .customer-work-regions .customer-side-sections > section { min-height:0; padding:15px 16px; }
body.atelier .customer-work-regions .customer-process { padding:12px 16px; }
body.atelier .customer-work-regions .customer-process li { flex-basis:108px; }

@media(max-width:640px) {
  body.atelier .customer-message-work-region .customer-conversation-toolbar {
    grid-template-columns:auto 1fr auto;
    gap:10px;
    min-height:0;
    padding:10px 14px 0;
  }
  body.atelier .customer-message-work-region .customer-current-channel { padding-left:12px; }
  body.atelier .customer-message-work-region .customer-filter-row {
    grid-column:1 / -1;
    min-height:44px;
    gap:18px;
  }
}

@media(max-width:760px) {
  body.atelier .customer-message-hub { gap:16px; }
  body.atelier .customer-hub-header { gap:14px; }
  body.atelier .customer-hub-header h2 { font-size:28px; }
  body.atelier .customer-channel-tabs {
    display:flex;
    gap:8px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
  }
  body.atelier .customer-overview-card { flex:0 0 232px; }
  body.atelier .customer-channel-tab { min-width:0; }
  body.atelier .customer-channel-tab button { border:0!important; }
  body.atelier :is(.customer-filter-row,.customer-task-filters) { gap:20px; }
}

.launch-material-section { margin-top:32px; border:1px solid var(--line); border-radius:16px; background:#fff; padding:24px; min-width:0; }
.launch-material-section > header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; padding:0 0 20px; background:transparent; color:var(--forest); }
.launch-material-section .launch-deliverable-header-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.launch-material-section .launch-deliverable-header-actions .button { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:36px; margin:0; padding:8px 12px; border:1px solid var(--forest,#154c3e); border-radius:8px; background:var(--forest,#154c3e); color:#fff; font:inherit; font-size:13px; font-weight:500; line-height:18px; cursor:pointer; }
.launch-material-section .launch-deliverable-header-actions .button.secondary { border-color:#d9dddc; background:#f2f3f3; color:var(--forest,#154c3e); }
.launch-material-section .launch-deliverable-header-actions .button:hover:not(:disabled) { filter:brightness(.96); }
.launch-material-section .launch-deliverable-header-actions .button:focus-visible { outline:2px solid var(--forest,#154c3e); outline-offset:3px; }
.launch-material-section .launch-deliverable-header-actions .button:disabled { opacity:.5; cursor:default; }
.launch-material-section .launch-deliverable-header-actions img { display:block; width:16px; height:16px; flex:none; }
.launch-material-section h3 { margin:0 0 8px; font-size:1.25rem; }
.launch-material-section header p:last-child,.launch-material-hint { margin:0; font-size:.76rem; line-height:1.6; color:var(--muted); }
.launch-photo-controls { display:grid; grid-template-columns:2fr 1fr; gap:16px; }
.launch-photo-controls label { display:grid; gap:8px; color:var(--forest); font-size:.8rem; font-weight:700; }
.launch-photo-controls select { width:100%; min-height:48px; min-width:0; border:1px solid var(--line); background:var(--paper); color:var(--ink); font:inherit; padding:10px; }
.launch-photo-actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:16px 0 12px; }
.launch-photo-actions .button,.launch-photo-drop { min-height:52px; margin:0; padding:10px; display:flex; align-items:center; justify-content:center; font-size:.76rem; box-sizing:border-box; }
.launch-photo-drop { position:relative; border:1px dashed var(--forest); background:var(--paper); color:var(--forest); cursor:pointer; }
.launch-photo-drop input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.launch-photo-drop:has(input:disabled) { opacity:.5; cursor:not-allowed; }
.launch-photo-drop:focus-within,.launch-photo-drop.is-dragging { outline:2px solid var(--gold); outline-offset:2px; }
.launch-photo-matrix { display:grid; gap:18px; margin-top:24px; }
.launch-product-material { min-width:0; border:1px solid var(--line); }
.launch-product-material h4 { margin:0; padding:14px 16px; background:var(--forest); color:#fff; font-size:.9rem; }
.launch-product-material > div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.launch-product-material section { padding:16px; min-width:0; border-right:1px solid var(--line); }
.launch-product-material section:last-child { border-right:0; }
.launch-product-material section > strong { display:block; font-size:.8rem; color:var(--forest); }
.launch-product-material section > span { display:block; margin:8px 0; font-size:.72rem; color:var(--muted); }
.launch-file-link,.launch-record-link { display:block; padding:6px 0; margin:5px 0; border:0; border-radius:0; background:transparent; color:var(--forest); text-decoration:underline; text-underline-offset:3px; font-size:.73rem; text-align:left; overflow-wrap:anywhere; max-width:100%; }
.launch-file-link:focus-visible,.launch-record-link:focus-visible { outline:2px solid var(--gold); outline-offset:2px; }
.launch-jobs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.launch-jobs > article { padding:20px; border:1px solid var(--line); min-width:0; }
.launch-jobs h4 { margin:0; color:var(--forest); }
.launch-jobs p { font-size:.76rem; color:var(--muted); overflow-wrap:anywhere; }
.launch-output-types { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin:0 0 20px; }
.launch-output-types button { display:grid; align-content:start; gap:10px; padding:16px 12px; background:var(--paper); border:1px solid var(--line); color:var(--forest); text-align:left; }
.launch-output-types strong { font-size:.82rem; }
.launch-output-types span { font-size:.7rem; color:var(--muted); }
@media(max-width:900px) { .launch-output-types { grid-template-columns:repeat(3,minmax(0,1fr)); } .launch-product-material > div { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .launch-material-section { padding:16px; } .launch-photo-controls,.launch-photo-actions,.launch-jobs { grid-template-columns:1fr; } .launch-output-types { grid-template-columns:repeat(2,minmax(0,1fr)); } .launch-product-material section { padding:12px; } }

.stage-workbench[data-stage="marketing"] .stage-summary,.stage-workbench[data-stage="marketing"] .stage-directions { display:none; }
.stage-workbench[data-stage="marketing"] > .stage-heading { margin-bottom:14px; padding-bottom:18px; }
.stage-workbench[data-stage="marketing"] > .stage-heading h2 { font-size:1.65rem; }
.mkt-admin { gap:18px; }
.mkt-admin .mkt-data { padding:22px; border-radius:10px; background:#f3f5f3; border:1px solid #dfe6e1; }
.mkt-admin .mkt-data > header { margin:0 0 18px; padding:0; border:0; background:transparent; color:var(--forest); align-items:center; }
.mkt-admin .mkt-data > header h3 { margin:0 0 5px; color:var(--forest); font-size:1.45rem; }
.mkt-admin .mkt-data > header p { color:#5f7168; font-size:.72rem; }
.mkt-admin .mkt-data > header .marketing-cost-button { min-height:36px; padding:8px 14px; color:var(--forest); background:#fff; border:1px solid var(--forest); border-radius:6px; font-size:.7rem; }
.mkt-tabs { display:flex; flex-wrap:wrap; gap:5px; padding:0 0 14px; border-bottom:1px solid #dfe6e1; margin-bottom:16px; }
.mkt-tabs button { border:0; background:transparent; color:#5f7168; border-radius:6px; padding:10px 18px; min-height:40px; font:inherit; font-size:.76rem; cursor:pointer; }
.mkt-tabs button[aria-pressed="true"] { background:var(--forest); color:#fff; font-weight:700; }
.mkt-tabs button:hover:not([aria-pressed="true"]) { background:#e8eee9; color:var(--forest); }
.mkt-toolbar { display:flex; justify-content:space-between; flex-wrap:wrap; align-items:center; gap:16px; margin-bottom:12px; }
.mkt-filters { display:grid; grid-template-columns:repeat(2,minmax(250px,300px)); gap:10px; }
.mkt-filters select { appearance:none; width:100%; height:44px; min-height:44px; margin:0; padding:0 44px 0 15px; background-color:#fff; background-image:linear-gradient(45deg,transparent 50%,#315a50 50%),linear-gradient(135deg,#315a50 50%,transparent 50%); background-position:calc(100% - 19px) 19px,calc(100% - 14px) 19px; background-size:5px 5px,5px 5px; background-repeat:no-repeat; border:1px solid #b9c9be; border-radius:5px; color:var(--forest); font-size:.78rem; font-weight:600; line-height:1; box-shadow:0 1px 0 rgba(20,63,52,.03); transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease; }
.mkt-filters select:hover { border-color:#7f9b8d; background-color:#fbfcfa; }
.mkt-filters select:focus-visible { outline:0; border-color:#315a50; box-shadow:0 0 0 3px rgba(49,90,80,.12); }
.mkt-sync-state { display:flex; gap:10px; color:#5f7168; font-size:.65rem; align-items:center; }
.mkt-sync-state strong { color:var(--forest); }
.mkt-sync-state > span { color:#816129; padding:4px 8px; border-radius:4px; background:#f4ebd7; }
.mkt-connection-note { margin:0 0 18px; font-size:.65rem; color:#63736c; line-height:1.6; }
.mkt-account-access { margin:0 0 18px; border:1px solid var(--rule,#dce3db); border-radius:6px; background:#fff; color:var(--forest,#143f34); }
.mkt-account-access>summary { padding:12px 16px; cursor:pointer; font-size:.75rem; font-weight:600; }
.mkt-account-access>summary:focus-visible { outline:2px solid #997a35; outline-offset:3px; }
.mkt-account-access>div { padding:0 16px 16px; }
.mkt-account-access p { margin:8px 0; font-size:.65rem; line-height:1.7; }
.mkt-account-login-links { display:flex; flex-wrap:wrap; gap:10px; margin:14px 0; }
.mkt-account-login-links a { white-space:normal; text-align:center; font-size:.7rem; }
.mkt-view-panel { min-width:0; display:grid; gap:18px; }
.mkt-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid #dfe6e1; background:#fff; border-radius:8px; padding:18px 0; margin:0; }
.mkt-kpis > div { padding:0 20px; border-right:1px solid #dfe6e1; }
.mkt-kpis > div:last-child { border:0; }
.mkt-kpis dt { font-size:.7rem; color:#5f7168; }
.mkt-kpis dd { font-size:1.8rem; font-weight:650; margin:2px 0; color:var(--forest); font-variant-numeric:tabular-nums; }
.mkt-kpis small { font-size:.6rem; color:#63736c; }
.mkt-overview-grid,.mkt-advice-layout { display:grid; grid-template-columns:minmax(0,1.8fr) minmax(250px,1fr); gap:18px; }
.mkt-analysis-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.mkt-panel { background:#fff; border:1px solid #dfe6e1; border-radius:8px; min-width:0; overflow:hidden; }
.mkt-panel-head { padding:18px 20px 12px; }
.mkt-panel-head h4 { font-size:.88rem; margin:0; color:var(--forest); }
.mkt-panel-head p { font-size:.63rem; margin:5px 0 0; line-height:1.6; color:#63736c; }
.mkt-platform-plots { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:20px; padding:0 20px 20px; }
.mkt-platform-plots h5 { font-size:.69rem; color:#5f7168; margin:8px 0 0; font-weight:600; }
.mkt-chart-empty { min-height:220px; position:relative; display:grid; place-items:center; margin:10px 20px 20px; text-align:center; }
.mkt-platform-plots .mkt-chart-empty { margin:10px 0 0; }
.mkt-chart-grid { position:absolute; inset:20px 0 22px; border-bottom:1px solid #e4eae5; border-left:1px solid #e4eae5; background:repeating-linear-gradient(to top,transparent 0,transparent calc(33.333% - 1px),#eef2ee calc(33.333% - 1px),#eef2ee 33.333%); }
.mkt-chart-empty > div:last-child { position:relative; background:#fff; padding:14px; }
.mkt-chart-empty strong { font-size:.76rem; display:block; color:#5f7168; font-weight:500; }
.mkt-chart-empty span { display:block; margin-top:6px; font-size:.63rem; color:#63736c; }
.mkt-advice-empty { padding:15px 20px 22px; }
.mkt-advice-empty strong { display:block; color:var(--forest); font-size:.92rem; margin-bottom:12px; }
.mkt-advice-empty p { color:#63736c; font-size:.7rem; line-height:1.8; margin:0 0 12px; max-width:65ch; }
.mkt-advice-empty .button { min-height:36px; margin-top:8px; font-size:.7rem; padding:8px 12px; border-radius:6px; }
.mkt-advice-large { padding-top:35px; padding-bottom:35px; }
.mkt-suggestion-fields { display:flex; flex-wrap:wrap; gap:9px; margin-top:25px; }
.mkt-suggestion-fields span { font-size:.63rem; padding:5px 9px; background:#f0f5f1; color:#5f7168; border-radius:4px; }
.mkt-admin .marketing-monitor-table { padding:0 20px 10px; }
.mkt-admin .marketing-monitor-table-head,.mkt-admin .marketing-monitor-row { min-width:820px; }
.mkt-admin .marketing-monitor-rows { border-top:1px solid #cbd5cd; }
.mkt-admin .marketing-monitor-row { padding:16px 0; }
.mkt-admin .marketing-monitor-action { border-radius:6px; }
.mkt-table-scroll { overflow:auto; }
.mkt-heat { border-collapse:collapse; width:100%; min-width:700px; font-size:.7rem; text-align:left; }
.mkt-heat th,.mkt-heat td { padding:13px 20px; border-bottom:1px solid #dfe6e1; }
.mkt-heat thead th { background:#f7f9f7; color:#63736c; font-weight:500; }
.mkt-heat tbody th { color:var(--forest); font-weight:600; }
.mkt-heat th small { display:block; font-size:.61rem; color:#63736c; font-weight:400; }
.mkt-heat td span { display:inline-block; min-width:50px; padding:6px; text-align:center; background:#f0f3f0; color:#63736c; border-radius:4px; }
.mkt-footnote { padding:12px 20px; color:#63736c; font-size:.64rem; margin:0; line-height:1.7; }
.mkt-work-counts { margin:0; padding:0 20px; }
.mkt-work-counts > div { display:flex; justify-content:space-between; padding:12px 0; border-bottom:1px solid #dfe6e1; }
.mkt-work-counts dt { font-size:.7rem; color:#5f7168; }
.mkt-work-counts dd { margin:0; font-size:.88rem; color:var(--forest); font-variant-numeric:tabular-nums; }
.mkt-work-title { margin:10px 0 0; }
.mkt-work-title h3 { font-size:1rem; margin:0 0 4px; color:var(--forest); }
.mkt-work-title p { color:#63736c; font-size:.7rem; margin:0; }
.mkt-admin :focus-visible { outline:2px solid var(--forest); outline-offset:3px; }
@media(max-width:1100px) { .mkt-overview-grid,.mkt-advice-layout { grid-template-columns:1fr; } }
@media(max-width:640px) { .mkt-admin .mkt-data { padding:14px; } .mkt-admin .mkt-data > header { flex-direction:row; gap:12px; } .mkt-admin .marketing-cost-button { width:auto; } .mkt-tabs button { flex:1; padding:9px 8px; font-size:.7rem; } .mkt-toolbar { align-items:stretch; } .mkt-filters { width:100%; grid-template-columns:1fr; gap:8px; } .mkt-filters select { min-width:0; } .mkt-sync-state { justify-content:flex-end; } .mkt-kpis { grid-template-columns:1fr 1fr; row-gap:18px; } .mkt-kpis > div:nth-child(2) { border:0; } .mkt-analysis-grid { grid-template-columns:1fr; } .mkt-chart-empty { min-height:180px; } }

/* Align the marketing surface with the Intelligence and Launch workspaces. */
body.atelier .stage-workbench[data-stage="marketing"] > .stage-heading {
  margin-bottom:22px;
  padding-bottom:20px;
}

body.atelier .stage-workbench[data-stage="marketing"] > .stage-heading h2 {
  font-size:36px;
}

body.atelier .mkt-admin {
  gap:24px;
}

body.atelier .mkt-admin .mkt-data {
  padding:22px;
  border:1px solid var(--line);
  border-radius:6px;
  background:var(--atelier-surface);
}

body.atelier .mkt-admin .mkt-data > header {
  margin:0 0 18px;
  padding:0 0 16px;
  border-bottom:1px solid var(--line);
}

body.atelier .mkt-tabs {
  gap:28px;
  margin:0 0 18px;
  padding:0;
  border-bottom:1px solid var(--line);
}

body.atelier .mkt-tabs button {
  position:relative;
  min-height:42px;
  padding:8px 0 12px;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--muted);
  font-size:14px;
  font-weight:500;
}

body.atelier .mkt-tabs button[aria-pressed="true"] {
  background:transparent;
  color:var(--forest);
  font-weight:600;
}

body.atelier .mkt-tabs button[aria-pressed="true"]::after {
  content:"";
  position:absolute;
  right:0;
  bottom:-1px;
  left:0;
  height:2px;
  border-radius:2px;
  background:var(--wine);
}

body.atelier .mkt-tabs button:hover:not([aria-pressed="true"]) {
  background:transparent;
  color:var(--forest);
}

body.atelier .mkt-kpis {
  padding:0;
  border:1px solid var(--line);
  border-radius:6px;
  background:#fff;
  overflow:hidden;
}

body.atelier .mkt-kpis > div {
  min-height:104px;
  padding:18px 20px;
  border-right:1px solid var(--line);
}

body.atelier .mkt-kpis > div:last-child {
  border-right:0;
}

body.atelier .mkt-work-title {
  margin:2px 0 -8px;
  padding:0 0 16px;
  border-bottom:1px solid var(--line);
}

body.atelier .mkt-work-title h3 {
  margin:0 0 6px;
  color:var(--forest);
  font-size:20px;
  line-height:1.4;
  font-weight:600;
}

body.atelier .mkt-work-title p {
  font-size:14px;
  line-height:1.6;
}

body.atelier .marketing-module-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}

body.atelier .marketing-module-card {
  padding:0;
  border:1px solid var(--line);
  border-radius:6px;
  background:var(--atelier-surface);
  overflow:hidden;
}

body.atelier .marketing-module-card > header {
  grid-template-columns:2.8rem minmax(0,1fr) auto;
  align-items:start;
  gap:12px;
  margin:0;
  padding:16px;
  border-bottom:1px solid var(--line);
}

body.atelier .marketing-module-index {
  align-self:start;
  display:flex;
  align-items:center;
  color:transparent;
  font-family:inherit;
  font-stretch:condensed;
  font-size:2.5rem;
  line-height:1;
  font-weight:900;
  font-variant-numeric:tabular-nums;
  -webkit-text-fill-color:transparent;
  -webkit-text-stroke:.6px var(--gold);
  text-shadow:none;
}

body.atelier .marketing-module-card h3 {
  color:var(--ink);
  font-size:18px;
  line-height:1.45;
  font-weight:600;
}

body.atelier .marketing-module-card header p {
  max-width:70ch;
  font-size:13px;
  line-height:1.55;
}

body.atelier .marketing-module-items {
  gap:0;
  padding:0 16px 16px;
}

body.atelier .marketing-subcard {
  padding:18px 0 0;
  border:0;
  background:transparent;
}

body.atelier .marketing-subcard + .marketing-subcard {
  margin-top:18px;
  border-top:1px solid var(--line);
}

body.atelier .marketing-subcard > header {
  padding:0 0 10px;
}

body.atelier .marketing-subcard h4 {
  color:var(--ink);
  font-size:18px;
  line-height:1.45;
  font-weight:600;
}

body.atelier .marketing-subcard .marketing-card-goal,
body.atelier .marketing-subcard > details > summary,
body.atelier .marketing-card-status,
body.atelier .marketing-card-records .stage-empty {
  font-size:13px;
  line-height:1.6;
}

body.atelier .marketing-subcard > .button {
  width:100%;
  min-width:0;
  min-height:40px;
  padding:9px 14px;
  border-radius:4px;
  font-size:14px;
}

@media(max-width:1180px) {
  body.atelier .marketing-module-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media(max-width:640px) {
  body.atelier .marketing-module-grid { grid-template-columns:minmax(0,1fr); }
}

@media(max-width:640px) {
  body.atelier .stage-workbench[data-stage="marketing"] > .stage-heading h2 { font-size:28px; }
  body.atelier .mkt-tabs { gap:20px; overflow-x:auto; }
  body.atelier .mkt-tabs button { flex:0 0 auto; padding-right:0; padding-left:0; }
  body.atelier .mkt-kpis { row-gap:0; }
  body.atelier .mkt-kpis > div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  body.atelier .mkt-kpis > div:nth-child(odd) { border-right:1px solid var(--line); }
  body.atelier .mkt-kpis > div:nth-child(even) { border-right:0; }
  body.atelier .marketing-module-card { padding:0; }
  body.atelier .marketing-module-card > header {
    grid-template-columns:3.25rem minmax(0,1fr);
    gap:12px;
    margin:0;
    padding:16px;
  }
  body.atelier .marketing-module-card > header > strong { grid-column:2; }
  body.atelier .marketing-module-index { grid-row:1 / span 2; font-size:2.5rem; }
  body.atelier .marketing-module-items { padding:0 16px 16px; }
  body.atelier .marketing-subcard > .button { width:100%; min-width:0; }
}

/* Scoped to intelligence; never changes other workbenches or shared controls. */
.stage-workbench[data-stage="intelligence"] > .stage-heading,
.stage-workbench[data-stage="intelligence"] > .stage-summary { display:none; }
.stage-workbench[data-stage="intelligence"] { --intel-ink:#203b30; --intel-muted:#65766d; --intel-rule:#dce3db; }
.intelligence-dashboard { color:var(--intel-ink); font-size:14px; line-height:1.6; }
.intelligence-dashboard *, .intel-forecast-input * { box-sizing:border-box; }
.intelligence-dashboard h2,.intelligence-dashboard h3,.intelligence-dashboard h4,.intelligence-dashboard p { margin:0; }
.intelligence-dashboard h2 { font-size:clamp(24px,2.3vw,34px); letter-spacing:-.04em; line-height:1.3; margin:8px 0; }
.intelligence-dashboard h3 { font-size:20px; line-height:1.5; letter-spacing:-.02em; }
.intelligence-dashboard h4 { font-size:15px; line-height:1.5; }
.intelligence-dashboard button { font:inherit; cursor:pointer; width:auto; min-height:36px; margin:0; padding:6px 12px; border-radius:5px; box-shadow:none; text-align:center; }
.intelligence-dashboard button:focus-visible,.intelligence-dashboard select:focus-visible,.intel-table-wrap:focus-visible { outline:2px solid #997a35; outline-offset:3px; }
.intelligence-dashboard .intel-button { background:#fff; border:1px solid #bac9bc; color:var(--intel-ink); white-space:nowrap; font-weight:600; }
.intelligence-dashboard .intel-button:hover { background:#f1f5ef; border-color:#6d8a74; }
.intelligence-dashboard .intel-link { color:#2e6d4f; border:0; background:transparent; padding:6px 0; text-align:left; font-weight:600; }
.intelligence-dashboard .intel-link:hover { text-decoration:underline; text-underline-offset:4px; }
.intel-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:8px 0 24px; }
.intel-kicker { color:#6c7c71; font-size:10px; font-weight:700; letter-spacing:.15em; display:block; margin-bottom:7px; }
.intel-heading p,.intel-panel header p,.intel-muted { color:var(--intel-muted); }
.intel-tabs { display:flex; gap:26px; border-bottom:1px solid var(--intel-rule); margin-bottom:16px; }
.intelligence-dashboard .intel-tabs button { color:var(--intel-muted); border:0; border-bottom:2px solid transparent; background:transparent; border-radius:0; padding:12px 0 14px; font-weight:600; }
.intelligence-dashboard .intel-tabs button[aria-pressed="true"] { color:var(--intel-ink); border-bottom-color:#2e6d4f; }
.intel-tabs span { display:inline-block; margin-left:8px; padding:0 6px; background:#eaf0e6; border-radius:4px; font-size:11px; }
.intel-connection { display:flex; gap:20px; align-items:center; padding:8px 0 22px; color:var(--intel-muted); font-size:12px; }
.intel-connection > span { display:flex; align-items:center; gap:8px; white-space:nowrap; }
.intel-connection i { width:6px; height:6px; background:#a79a78; border-radius:50%; }
.intel-overview-grid { display:grid; grid-template-columns:1.25fr 1fr 1fr; gap:20px; align-items:stretch; }
.intel-panel { min-width:0; padding:24px; border:1px solid var(--intel-rule); border-radius:14px; background:#fff; margin-bottom:20px; }
.intel-panel > header { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:22px; background:transparent; color:var(--intel-ink); padding:0; }
.intel-panel header .intel-button { font-size:12px; }
.intel-weather-alerts { display:flex; align-items:stretch; gap:16px; margin:14px 0 18px; }
.intel-weather-alerts .intel-warning { flex:1; margin:0!important; align-self:stretch; }
.intel-weather-alerts .intel-note-box { flex:1; align-self:stretch; color:#65766d; background:#f3f4f2; border-left:2px solid #b9c3bb; padding:12px 16px; font-size:13px; line-height:1.8; margin:0!important; overflow-wrap:anywhere; }
.intel-weather-status { display:block; }
.intel-weather-status .intel-warning-msg { display:block; margin-bottom:6px; }
.intel-weather-status .intel-status-line { display:block; font-size:10px; line-height:1.9; color:#8f9a94; }
.intel-weather-status .intel-status-line + .intel-status-line { margin-top:2px; }
.intel-weather-alerts .intel-note-box a { color:inherit; font-weight:600; }
@media(max-width:900px) { .intel-weather-alerts { flex-direction:column; } }
.intel-inline-label { display:flex; align-items:center; gap:12px; font-weight:400; color:var(--intel-muted); margin:0 0 12px; font-size:12px; }
.intelligence-dashboard select { width:auto; max-width:100%; min-height:34px; height:34px; padding:4px 24px 4px 9px; margin:0; font:inherit; color:var(--intel-ink); border:1px solid var(--intel-rule); border-radius:5px; background:#fff; }
.intel-empty { min-height:210px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; padding:22px 0; gap:10px; }
.intel-empty strong { font-size:16px; font-weight:500; }
.intel-empty p { max-width:35em; font-size:13px; color:var(--intel-muted); line-height:1.8; }
.intel-empty-line { height:2px; width:32px; background:#b6c9b1; margin-bottom:8px; }
.intel-weather-chart { width:100%; max-width:520px; margin:18px auto 0; }
.intel-weather-chart svg { display:block; width:100%; height:auto; }
.intel-weather-chart text { text-anchor:middle; font-size:12px; font-family:inherit; }
.intel-weather-chart .intel-high { fill:#2e5e43; font-weight:600; }
.intel-weather-chart .intel-low { fill:#8f7b47; }
.intel-weather-chart .intel-day { fill:#738177; font-size:10px; }
.intel-legend { display:flex; gap:18px; font-size:12px; color:var(--intel-muted); align-items:center; }
.intel-legend span { display:flex; align-items:center; gap:7px; }
.intel-legend i { display:block; width:20px; border-top:1px solid #2e6d4f; }
.intel-legend span:nth-child(2) i { border-top:1px dashed #a19064; }
.intel-events { list-style:none; margin:0; padding:0; }
.intel-events li { display:grid; grid-template-columns:46px minmax(0,1fr); gap:16px; padding:20px 0; border-bottom:1px solid #edf0eb; }
.intel-events li:first-child { padding-top:0; }
.intel-event-date { display:flex; flex-direction:column; color:#778674; font-size:11px; }
.intel-event-date strong { font-size:30px; font-weight:500; line-height:1.2; font-variant-numeric:tabular-nums; color:#416b48; }
.intel-events p { color:var(--intel-muted); font-size:12px; margin-top:5px; overflow-wrap:anywhere; }
.intel-footnote { color:var(--intel-muted); font-size:12px; margin-top:20px!important; }
.intel-advice > .intel-empty { min-height:110px; }
.intel-advice-row { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:20px 0; border-top:1px solid var(--intel-rule); margin-top:16px; }
.intel-advice-row h4 { margin:7px 0; }
.intel-tag { display:inline-block; color:#5a7255; background:#edf3e8; padding:3px 8px; font-size:11px; border-radius:4px; white-space:nowrap; }
.intel-tag[data-state="review"],.intel-warning { color:#806132; background:#f7f2e6; }
.intel-warning { border-left:2px solid #b49c61; padding:12px 16px; margin:16px 0!important; font-size:13px; }
.intel-tag[data-state="cancelled"] { color:#6c736d; background:#f0f1ef; }
.intel-timeline { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); list-style:none; padding:32px 0; margin:0; gap:0; }
.intel-timeline li { position:relative; padding:24px 16px 4px 0; border-top:1px solid #b9cbb4; display:flex; flex-direction:column; align-items:flex-start; gap:6px; }
.intel-timeline li:before { content:''; position:absolute; top:-4px; left:0; width:7px; height:7px; border-radius:50%; background:#688966; }
.intel-timeline strong { font-size:28px; font-weight:500; letter-spacing:-.05em; font-variant-numeric:tabular-nums; }
.intel-timeline small { color:var(--intel-muted); font-size:11px; }
.intel-timeline .intel-link { font-size:12px; }
.intel-assumptions { display:flex; flex-wrap:wrap; gap:12px 24px; padding:16px 0; border-block:1px solid var(--intel-rule); font-size:12px; color:var(--intel-muted); }
.intel-assumptions b { color:var(--intel-ink); margin-left:6px; font-weight:500; }
.intel-restock { background:#f7f9f5; }
.intel-restock p { margin:12px 0 18px; color:var(--intel-muted); }
.intel-actions { display:flex; gap:10px; flex-wrap:wrap; }
.intel-filters { display:flex; align-items:center; gap:18px; margin:12px 0 22px; }
.intel-filters label { display:flex; align-items:center; gap:10px; font-size:12px; font-weight:400; }
.intel-filters > span { margin-left:auto; color:var(--intel-muted); font-size:12px; }
.intel-table-wrap { overflow-x:auto; }
.intel-scroll-hint { display:none; }
@media(max-width:640px) { .intelligence-dashboard .intel-scroll-hint { display:block; color:var(--intel-muted); font-size:11px; padding:0 0 10px; } }
.intelligence-dashboard .intel-task-table { width:100%; border-collapse:collapse; font-size:13px; margin:0; }
.intel-task-table th { background:#f6f8f3; color:var(--intel-muted); font-size:11px; font-weight:500; letter-spacing:.05em; padding:12px; border-bottom:1px solid var(--intel-rule); text-align:left; }
.intel-task-table td { padding:20px 12px; vertical-align:top; border-bottom:1px solid #e9eee5; background:#fff; }
.intel-task-table td:first-child { width:54%; min-width:210px; }
.intel-task-table td small { display:block; margin-top:6px; color:var(--intel-muted); }
.intel-task-table td p { color:var(--intel-muted); font-size:12px; margin:5px 0; }
.intel-task-table .intel-link { white-space:nowrap; font-size:12px; }
.intel-evidence { margin:10px 0; font-size:12px; }
.intel-evidence summary { cursor:pointer; color:#527259; }
.intel-evidence dl { margin:14px 0; }
.intel-evidence dl > div { padding:7px 0; }
.intel-evidence dt { color:var(--intel-muted); }
.intel-evidence dd { margin:3px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; }
.intel-archive { padding-top:24px; font-size:12px; color:var(--intel-muted); }
.intel-archive article { border-bottom:1px solid var(--intel-rule); padding:15px 0; }
.intel-forecast-input { border:1px solid #dce3db; padding:12px; margin:15px 0; }
.intel-forecast-input > div { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:8px; }
.intel-forecast-input label { font-size:11px!important; min-width:0; }
.intel-forecast-input input { min-width:0; width:100%; }
@media(min-width:1700px) { .intel-panel { padding:30px; } }
@media(max-width:1100px) { .intel-overview-grid { grid-template-columns:1fr 1fr; } .intel-weather { grid-column:1/-1; } .intel-weather-chart { max-width:520px; } }
@media(max-width:640px) { .intel-heading { gap:12px; } .intel-heading p { font-size:12px; } .intel-tabs { gap:22px; } .intel-connection { flex-direction:column; align-items:flex-start; gap:6px; } .intel-overview-grid { display:block; } .intel-panel { padding:18px; border-radius:10px; } .intel-panel > header { flex-wrap:wrap; } .intel-timeline { grid-template-columns:1fr; gap:0; padding:24px 0; } .intel-timeline li { padding:0 0 28px 22px; border-top:0; border-left:1px solid #b9cbb4; } .intel-timeline li:before { left:-4px; top:8px; } .intel-timeline strong { font-size:24px; } .intel-filters { flex-wrap:wrap; gap:12px; } .intel-inline-label { flex-wrap:wrap; } .intel-advice-row { align-items:flex-start; flex-direction:column; } }
/* All observation cities share a single plot and scale. */
.intel-weather-toolbar {display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;}
.intel-weather-toolbar>.intel-muted {font-size:12px;}
.intel-weather-metrics {display:flex;gap:4px;padding:4px;background:#f2f5ef;border-radius:8px;}
.intel-weather-metrics button {font:inherit;font-size:12px;border:0;background:transparent;color:#66786c;border-radius:5px;padding:9px 18px;cursor:pointer;min-height:36px;}
.intel-weather-metrics button[aria-pressed=true] {background:#fff;color:#214b3a;box-shadow:0 1px 3px #213e2e18;}
.intel-weather-legend {display:flex;flex-wrap:wrap;gap:8px 24px;margin-bottom:18px;}
.intel-curve-city {display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;color:#354f41;font:inherit;font-size:13px;padding:5px 0;min-height:34px;cursor:pointer;}
.intel-curve-city::before {content:'';width:18px;height:3px;border-radius:2px;background:var(--curve-color);}
.intel-curve-city small {font-size:10px;color:#859086;}
.intel-curve-city[aria-pressed=false] {opacity:.5;text-decoration:line-through;}
.intel-weather-legend .intel-curve-city:hover {background:#f2f5ef;color:#214b3a;}
.intel-curve-city.color-0 {--curve-color:#2e7258;}.intel-curve-city.color-1 {--curve-color:#ad6639;}.intel-curve-city.color-2 {--curve-color:#557cad;}.intel-curve-city.color-3 {--curve-color:#966a9f;}.intel-curve-city.color-4 {--curve-color:#af8b28;}.intel-curve-city.color-5 {--curve-color:#548b93;}.intel-curve-city.color-6 {--curve-color:#af526d;}
.intel-weather-plot {width:100%;overflow-x:auto;}
.intel-weather-plot svg {display:block;width:100%;min-width:520px;max-height:360px;}
.intel-curve-grid {stroke:#edf0eb;stroke-width:.8;}
.intel-curve-axis {font:11px system-ui,sans-serif;fill:#7b887e;}
.intel-curve-line {fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;}
.intel-curve-point {opacity:0;pointer-events:all;stroke-width:1.5;vector-effect:non-scaling-stroke;}
.intel-curve-endpoint {opacity:1;}
.intel-curve-point:hover,.intel-curve-point:focus {opacity:1;r:5;outline:none;stroke-width:2;}
.intel-weather-caption {font-size:11px;color:#7b887e;margin:12px 0 20px;}
.intel-weather-empty {min-height:190px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(#f8faf6,#fff);border-bottom:1px solid #e6ece3;color:#66786c;padding:20px;}
.intel-weather-empty strong {font-weight:500;font-size:16px;}
.intel-weather-empty p {font-size:12px;line-height:1.8;margin-bottom:0;}
.intel-weather-details {border-top:1px solid #e6ece3;margin-top:12px;}
.intel-weather-city-data {margin-left:14px;border-bottom:1px solid #edf0ea;}
.intel-feed-columns {display:grid;grid-template-columns:1fr 1.25fr;gap:20px;align-items:start;}
.intel-feed-record {padding:17px 0;border-bottom:1px solid var(--intel-rule,#dce4da);overflow-wrap:anywhere;}
.intel-feed-record h4 {font-size:16px;margin:7px 0;}
.intel-feed-record p {font-size:12px;margin:5px 0;line-height:1.7;}
.intel-feed-meta {display:flex;gap:6px 12px;flex-wrap:wrap;font-size:10px;color:#68776d;}
.intel-record-text {white-space:pre-wrap;}
.intel-source-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.intel-brand-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:16px;}
.intelligence-dashboard .intel-brand-card {display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%;min-width:0;padding:20px;border:1px solid var(--intel-rule);border-radius:12px;background:#fff;color:var(--intel-ink);text-align:left;white-space:normal;overflow-wrap:anywhere;}
.intelligence-dashboard .intel-brand-card:hover {background:#f1f5ef;border-color:#6d8a74;}
.intel-brand-title {font-size:20px;font-weight:700;line-height:1.3;}
.intel-brand-count,.intel-brand-latest {font-size:12px;color:var(--intel-muted);}
.intel-brand-channels {display:flex;flex-wrap:wrap;gap:10px 20px;padding:12px 0;border-block:1px solid var(--intel-rule);}
.intel-brand-channels>span {display:flex;flex-direction:column;gap:3px;font-size:12px;}
.intel-brand-channels small {font-size:11px;color:var(--intel-muted);}
.intel-brand-entry {margin-top:auto;padding-top:4px;font-size:12px;font-weight:600;}
.intel-brand-heading {display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px;}
.intel-brand-filters {display:flex;flex-wrap:wrap;gap:8px;}
.intelligence-dashboard .intel-brand-filters button[aria-pressed="true"] {background:var(--intel-ink);border-color:var(--intel-ink);color:#fff;}
.intel-brand-detail h5 {font-size:14px;margin:24px 0 4px;}
.intel-source-status {padding:14px 0;border-bottom:1px solid var(--intel-rule,#dce4da);overflow-wrap:anywhere;}
.intel-source-status>div:first-child {display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.intel-source-status strong {font-size:13px;}
.intel-source-status p,.intel-source-status small {font-size:11px;color:#68776d;line-height:1.6;}
.intel-source-status .intel-actions {margin-top:10px;}
.intel-source-status .intel-button,.intel-feed-record .intel-button {font-size:11px;padding:6px 10px;min-height:32px;}
[data-intel-sources] details>summary {cursor:pointer;font-size:12px;padding:12px 0;color:var(--intel-ink,#204d3a);}
[data-intel-sources] .intel-actions {flex-wrap:wrap;}
.intel-empty-note {min-height:70px;color:#6a786f;font-size:13px;line-height:1.8;}
.intel-editor {width:min(640px,calc(100vw - 32px));max-height:85vh;box-sizing:border-box;border:1px solid #9dad9e;border-radius:10px;padding:28px;background:#fff;color:#214b3a;overflow:auto;}
.intel-editor::backdrop {background:rgb(22 44 33 / 40%);}
.intel-editor header {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;position:static;background:#fff;color:#214b3a;padding:0;}
.intel-editor header h3 {margin:0;font-size:23px;}
.intel-editor label {display:flex;flex-direction:column;gap:8px;font-size:13px;margin-bottom:16px;}
.intel-editor input:not([type=checkbox]),.intel-editor select,.intel-editor textarea {box-sizing:border-box;width:100%;min-width:0;border:1px solid #bccbbd;background:#fff;color:#213e2e;border-radius:4px;padding:10px;font:inherit;}
.intel-editor input[type=checkbox] {width:18px;height:18px;}
.intel-editor .intel-checkbox {flex-direction:row;align-items:center;}
.intel-form-columns {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.intel-primary {background:#28583f!important;color:#fff!important;}
.intel-form-status {color:#8b4e24;font-size:13px;}
.intel-editor p {font-size:13px;line-height:1.7;}
.intel-history-entry {border-bottom:1px solid #dce4da;padding:16px 0;font-size:12px;}
.intel-history-entry pre {white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;background:#f4f7f1;padding:14px;}
.intel-editor :focus-visible,[data-intel-sources] :focus-visible {outline:2px solid #3d7455;outline-offset:3px;}
@media(max-width:1200px){.intel-feed-columns{grid-template-columns:1fr 1fr;}.intel-source-grid{grid-template-columns:1fr;}}
@media(max-width:800px){.intel-feed-columns{grid-template-columns:1fr;}}
@media(max-width:480px){.intel-editor{padding:20px;}.intel-form-columns{grid-template-columns:1fr;}}

@media(max-width:480px){.intel-weather-toolbar{gap:8px;}.intel-weather-metrics button{padding:8px 12px;}.intel-weather-legend{gap:4px 16px;}.intel-weather-caption{line-height:1.8;}.intel-weather-empty{min-height:160px;}}

.intel-weather-scroll-hint{display:none;}
@media(max-width:480px){.intel-weather-plot svg{width:760px;min-width:760px;}.intel-curve-axis{font-size:15px;}.intel-weather-scroll-hint{display:block;font-size:11px;color:#7b887e;margin:8px 0;}}

.intel-curve-history{opacity:.65;}.intel-curve-trend{stroke-dasharray:5 4;opacity:.8;}.intel-curve-trend-zone{fill:#f7f8f4;}.intel-curve-today{stroke:#9aaa9d;stroke-width:1;stroke-dasharray:3 5;}

.intel-curve-reference{stroke-dasharray:1 5;opacity:.75;}.intel-curve-reference-zone{fill:#fbfaf5;}

.intel-weather-freshness{display:flex;flex-wrap:wrap;gap:6px 14px;color:#7b887e;font-size:11px;line-height:1.8;margin:4px 0 14px;}

/* 竞品卡片策略摘要 (competitor insights) */
.intel-brand-insights,.intel-brand-summary {display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--intel-ink);}
.intel-brand-summary {margin:0 0 18px;padding:12px 14px;border:1px solid var(--intel-rule);border-radius:8px;background:#fbfcfa;}
.intel-insight-row {display:flex;flex-wrap:wrap;align-items:center;gap:6px;}
.intel-insight-row small {color:var(--intel-muted);margin-right:2px;}
.intel-insight-strong {font-size:13px;font-weight:600;}
.intel-insight-muted {color:var(--intel-muted);}
.intel-signal-tag {display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;border:1px solid #cfdcd2;background:#eef4ee;color:#2e5c44;font-size:11px;font-weight:600;line-height:1.5;}
.intel-brand-title .intel-signal-tag {margin-left:8px;vertical-align:2px;}
.intel-signal-warn {border-color:#dcc9a8;background:#f7f1e4;color:#7a5c22;}

.schedule-basics { color:var(--forest); min-width:0; max-width:1400px; margin:auto; }
.schedule-basics .sb-heading { background:var(--forest); color:#fff; padding:28px 32px; }
.schedule-basics .sb-heading h2 { color:#fff; margin:8px 0 12px; font-size:1.8rem; }
.schedule-basics .sb-heading p { color:#fff; margin:0; line-height:1.7; }
.schedule-basics .sb-heading p:first-child { color:var(--gold,#bc9745); font-size:.75rem; letter-spacing:.1em; }
.schedule-basics .sb-toolbar { display:flex; gap:16px; align-items:end; flex-wrap:wrap; padding-top:24px; }
.schedule-basics .sb-toolbar label { flex:1; min-width:200px; }
.schedule-basics label { display:grid; gap:7px; min-width:0; font-size:.85rem; }
.schedule-basics :is(input,select,textarea) { width:100%; min-width:0; min-height:44px; padding:10px 12px; color:var(--forest); background:#fff; border:1px solid var(--line,#cbd4cd); font:inherit; box-sizing:border-box; }
.schedule-basics input::placeholder,.schedule-basics textarea::placeholder { color:#6b7770; opacity:1; }
.schedule-basics button { min-height:44px; padding:12px 18px; width:auto; }
.schedule-basics :is(button,input,textarea,select,summary):focus-visible { outline:2px solid var(--gold,#bc9745); outline-offset:3px; }
.schedule-basics button:disabled { opacity:.55; cursor:not-allowed; }
.schedule-basics fieldset { padding:0; border:0; min-width:0; margin:20px 0; }
.schedule-basics legend { font-size:1.1rem; font-weight:700; margin-bottom:18px; }
.schedule-basics .sb-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.schedule-basics .sb-message { min-height:24px; margin:16px 0; font-size:.85rem; }
.schedule-basics .sb-message.is-error { color:var(--wine,#902b3b); }
.schedule-basics .sb-notice { padding:16px; border:1px solid #e7dfc9; background:#fffdf3; font-size:.85rem; line-height:1.7; }
.schedule-basics .sb-rounds { display:flex; gap:18px; align-items:end; flex-wrap:wrap; margin:24px 0; }
.schedule-basics .sb-rounds span { padding-bottom:12px; font-size:.8rem; }
.schedule-basics .sb-group { border-top:1px solid var(--line,#cbd4cd); margin:0; }
.schedule-basics summary { cursor:pointer; line-height:1.6; padding:18px 0; font-weight:700; }
.schedule-basics .sb-group>summary>span { margin-left:16px; font-size:.76rem; color:#68766d; font-weight:400; }
.schedule-basics .sb-step { padding:18px; border:1px solid var(--line,#cbd4cd); background:#fff; margin-bottom:14px; }
.schedule-basics .sb-step-values { display:grid; grid-template-columns:minmax(160px,1.5fr) repeat(3,minmax(110px,1fr)); gap:16px; align-items:center; }
.schedule-basics .sb-step-values strong { font-size:.9rem; }
.schedule-basics .sb-evidence>summary { font-size:.78rem; font-weight:400; padding:12px 0 0; }
.schedule-basics .sb-evidence .sb-fields { margin:18px 0; }
.schedule-basics .sb-context { display:grid; gap:20px; padding:4px 0 24px; }
.schedule-basics .sb-save { margin-top:24px; width:100%; background:var(--forest); color:white; }
.schedule-basics .sb-history { border-top:1px solid var(--line,#cbd4cd); }
.schedule-basics pre { white-space:pre-wrap; overflow-wrap:anywhere; max-height:400px; overflow:auto; padding:16px; background:white; font-size:.75rem; }
@media(max-width:760px){
 .schedule-basics .sb-heading { padding:22px 18px; }
 .schedule-basics .sb-step-values { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .schedule-basics .sb-step-values strong { grid-column:1/-1; }
 .schedule-basics .sb-fields { grid-template-columns:1fr; }
 .schedule-basics .sb-group>summary>span { display:block; margin-left:18px; }
}

/* r21/r22: editable step cards — add / delete / reorder */
.schedule-basics .sb-step-tools { display:flex; gap:6px; justify-content:flex-end; padding-top:10px; }
.schedule-basics .sb-tool { width:26px; height:26px; padding:0; line-height:1; font-size:13px; border:1px solid var(--line,#cbd4cd); background:#fff; color:#5c6b61; cursor:pointer; border-radius:6px; display:inline-flex; align-items:center; justify-content:center; }
.schedule-basics .sb-tool:hover { border-color:#73867b; background:#f4f7f4; color:#20322b; }
.schedule-basics .sb-tool-danger { color:#a85566; }
.schedule-basics .sb-tool-danger:hover { background:#faf1f2; border-color:#c98a97; color:#95394e; }
.schedule-basics .sb-add-step { margin:2px 0 20px; }
/* r24: add-round button lives OUTSIDE the form card, top-right, compact */
.schedule-basics .sb-add-round-row { display:flex; justify-content:flex-end; margin:0 0 10px; }
.schedule-basics .sb-add-round-row .sb-add-round { margin:0; min-height:30px; padding:4px 12px; font-size:12px; line-height:1.4; }
.schedule-basics .sb-notice { margin:14px 0 0; }
.schedule-basics .sb-rounds-hint { color:#737b75; font-size:12px; }

.launch-calendar { --lc-line:#d2dbd3; --lc-ink:#123e33; color:var(--lc-ink); background:#fff; border:1px solid var(--lc-line); border-radius:14px; padding:24px; margin:0 0 24px; font-variant-numeric:tabular-nums; min-width:0; }
.launch-calendar ::selection { background:#d8e5dc; color:#123e33; }
.launch-calendar :is(input,select,textarea) { caret-color:#123e33; }
.launch-calendar :is(button,input,select,textarea,summary,a):focus-visible { outline:2px solid #b8903d; outline-offset:2px; }
.launch-calendar a { color:#245b43; text-underline-offset:3px; }
.launch-calendar button:disabled { opacity:.5; cursor:wait; }
.launch-calendar .lc-heading,.launch-calendar .lc-dialog-head { display:flex; justify-content:space-between; align-items:center; gap:16px; }
.launch-calendar h3 { margin:0 0 8px; font-size:22px; }
.launch-calendar .lc-heading p { color:#57695f; margin:0; font-size:13px; }
.launch-calendar .lc-actions,.launch-calendar .lc-month { display:flex; gap:8px; align-items:center; flex-wrap:wrap; }
.launch-calendar .lc-toolbar { display:flex; align-items:end; gap:16px; flex-wrap:wrap; margin:20px 0 12px; }
.launch-calendar label { display:grid; gap:4px; color:#425b4e; font-size:12px; }
.launch-calendar :is(select,input,textarea) { box-sizing:border-box; min-height:36px; padding:7px 10px; width:auto; max-width:100%; border:1px solid #bac9bc; background:#fff; color:#123e33; font:inherit; border-radius:4px; }
.launch-calendar textarea { width:100%; resize:vertical; }
.launch-calendar button { box-sizing:border-box; min-height:36px; height:auto; font:inherit; font-size:12px; border:1px solid #bac9bc; border-radius:4px; background:#fff; color:#123e33; padding:8px 12px; width:auto; cursor:pointer; }
.launch-calendar button:hover { background:#edf3ed; }
.launch-calendar .lc-month-input>span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.launch-calendar .lc-legend { display:flex; flex-wrap:wrap; align-items:center; gap:16px; margin:0 0 12px; color:#57695f; font-size:12px; }
.launch-calendar .lc-legend label { display:flex; align-items:center; gap:6px; }
.launch-calendar .lc-legend input { width:14px; height:14px; min-height:14px; margin:0; accent-color:#123e33; }
.launch-calendar .lc-grid { table-layout:fixed; width:100%; border-collapse:collapse; font-size:12px; }
.launch-calendar .lc-grid th { padding:8px 0; text-align:center; background:#edf3ed; color:#425b4e; font-weight:500; border-bottom:1px solid #bac9bc; }
.launch-calendar .lc-grid td { position:relative; height:44px; border-bottom:1px solid #e4eae5; padding:0; vertical-align:middle; }
.launch-calendar .lc-grid td.lc-outside { background:#f8f9f6; }
.launch-calendar .lc-outside .lc-day { color:#78847c; }
.launch-calendar .lc-grid td.lc-selected { background:#e8f0e8; }
.launch-calendar .lc-day { display:flex; justify-content:space-between; align-items:center; gap:4px; border:0; border-radius:0; background:transparent; padding:8px 12px; width:100%; min-height:44px; font-size:14px; }
.launch-calendar .lc-day small { font-size:11px; color:#546c5d; }
.launch-calendar .lc-day em { font-style:normal; font-size:10px; color:#765e30; }
.launch-calendar .lc-today .lc-day>span { background:#123e33; color:#fff; border-radius:50%; width:26px; line-height:26px; text-align:center; }
.launch-calendar .lc-hover { display:none; position:absolute; z-index:5; top:100%; left:0; width:280px; max-width:80vw; padding:16px; background:#fff; box-shadow:0 8px 24px #123e3326; border-radius:8px; }
.launch-calendar .lc-grid td:nth-child(n+5) .lc-hover { left:auto; right:0; }
.launch-calendar .lc-grid tr:nth-child(n+4) .lc-hover { top:auto; bottom:100%; }
@media(hover:hover){.launch-calendar .lc-grid td:hover>.lc-hover { display:block; }}
.launch-calendar .lc-grid td:focus-within>.lc-hover { display:block; }
.launch-calendar .lc-hover-list { max-height:224px; overflow:auto; padding-left:24px; margin:12px 0 0; scrollbar-color:#8ea796 #edf3ed; }
.launch-calendar .lc-hover-list li::marker,.launch-calendar .lc-day-list li::marker { color:#765e30; font-weight:600; }
.launch-calendar .lc-event { display:block; width:100%; border:0; border-radius:3px; font-size:12px; text-align:left; padding:8px; min-height:36px; margin:2px 0; overflow-wrap:anywhere; background:#f4f7f2; }
.launch-calendar .lc-reference { color:#765e30; background:#faf7ef; }
.launch-calendar .lc-event small { display:block; font-size:11px; line-height:1.7; margin-top:4px; color:#546c5d; }
.launch-calendar h4 { margin:0 0 12px; font-size:16px; overflow-wrap:anywhere; }
.launch-calendar dl { display:grid; grid-template-columns:96px minmax(0,1fr); gap:8px 12px; margin:16px 0; font-size:13px; }
.launch-calendar dt { color:#57695f; }
.launch-calendar dd { margin:0; overflow-wrap:anywhere; white-space:pre-wrap; }
.launch-calendar .lc-note,.launch-calendar .lc-empty { font-size:12px; line-height:1.8; color:#57695f; margin:12px 0; }
.launch-calendar .lc-warning { color:#902b3b; font-size:12px; }
.launch-calendar summary { cursor:pointer; padding:12px 0 0; font-size:12px; font-weight:600; }
.launch-calendar .lc-pending-row { padding:8px 0; border-bottom:1px solid #e1e7e0; }
.launch-calendar .lc-pending-row>span { font-size:12px; color:#57695f; }
.launch-calendar .lc-dialog { box-sizing:border-box; width:min(880px,calc(100vw - 32px)); max-width:none; max-height:85vh; padding:24px; border:1px solid #bac9bc; border-radius:12px; color:#123e33; background:#fff; overflow:auto; scrollbar-color:#8ea796 #edf3ed; }
.launch-calendar .lc-dialog::backdrop { background:#0e302b80; }
.launch-calendar .lc-dialog-head { margin-bottom:20px; }
.launch-calendar .lc-dialog-body { display:grid; grid-template-columns:minmax(180px,1fr) minmax(0,2fr); gap:24px; }
.launch-calendar .lc-day-list ol { padding-left:24px; margin:0; }
.launch-calendar .lc-edit-fields { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:12px; }
.launch-calendar .lc-edit-fields input { width:100%; }
.launch-calendar .lc-history { padding:0; list-style:none; }
.launch-calendar .lc-history li { border-top:1px solid #d2dbd3; padding:16px 0; font-size:12px; }
.launch-calendar .lc-history small { display:block; color:#57695f; margin-top:8px; }
.launch-calendar [data-lc-history-panel] h4 { margin-top:24px; }
.launch-calendar [data-lc-save-status] { font-size:12px; color:#902b3b; }
@media(max-width:700px){
 .launch-calendar{padding:16px}.launch-calendar .lc-heading{align-items:start;flex-direction:column}
 .launch-calendar .lc-toolbar{gap:8px}.launch-calendar .lc-toolbar>label{flex:1;min-width:80px}
 .launch-calendar .lc-day{flex-direction:column;justify-content:center;padding:4px;gap:0;min-height:48px}
 .launch-calendar .lc-legend{gap:8px}.launch-calendar .lc-dialog-body{grid-template-columns:1fr}
 .launch-calendar .lc-day-list{max-height:160px;overflow:auto}.launch-calendar .lc-dialog{padding:16px}
}

.intelligence-rules { color:#123e33; font-variant-numeric:tabular-nums; }
.intelligence-rules ::selection { background:#d8e5dc; color:#123e33; }
.intelligence-rules :is(button,summary,a,input,select,textarea):focus-visible { outline:2px solid #997a35; outline-offset:3px; }
.intelligence-rules .ir-heading,.intelligence-rules .ir-row { display:flex; justify-content:space-between; gap:16px; align-items:start; }
.intelligence-rules .ir-actions { display:flex; gap:8px; flex-wrap:wrap; margin:8px 0; }
.intelligence-rules button { min-height:36px; width:auto; height:auto; padding:8px 12px; border:1px solid #bac9bc; border-radius:4px; background:#fff; color:#123e33; font:inherit; font-size:12px; cursor:pointer; }
.intelligence-rules button:hover { background:#edf3ed; }.intelligence-rules button:disabled{opacity:.5;cursor:wait}
.intelligence-rules h3 { margin:0 0 8px; }.intelligence-rules h4{font-size:16px;margin:20px 0 12px}
.intelligence-rules .ir-row h4 { margin:0; }
.intelligence-rules .ir-note,.intelligence-rules small { font-size:12px; color:#53695c; line-height:1.8; }
.intelligence-rules small { display:block; }
.intelligence-rules summary { padding:12px 0; cursor:pointer; font-size:13px; }
.intelligence-rules .ir-suggestions,.intelligence-rules .ir-run-list { list-style:none; padding:0; margin:12px 0 24px; }
.intelligence-rules .ir-suggestion { padding:16px 0; border-bottom:1px solid #d2dbd3; font-size:13px; }
.intelligence-rules .ir-run-list li { padding:8px 0; font-size:12px; border-bottom:1px solid #e4eae5; }
.intelligence-rules .ir-table-wrap { overflow:auto; scrollbar-color:#8ea796 #edf3ed; }
.intelligence-rules table { width:100%; min-width:650px; border-collapse:collapse; font-size:12px; }
.intelligence-rules th { background:#edf3ed; color:#425b4e; text-align:left; padding:10px 12px; font-weight:500; }
.intelligence-rules td { border-bottom:1px solid #d2dbd3; padding:16px 12px; vertical-align:top; }
.intelligence-rules td:first-child { width:22%; }.intelligence-rules td:nth-child(3){width:36%}
.intelligence-rules .ir-dialog { width:min(660px,calc(100vw - 32px)); max-height:85vh; box-sizing:border-box; border:1px solid #bac9bc; border-radius:12px; padding:24px; color:#123e33; background:#fff; overflow:auto; scrollbar-color:#8ea796 #edf3ed; }
.intelligence-rules .ir-dialog::backdrop { background:#0e302b80; }
.intelligence-rules .ir-dialog-header { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.intelligence-rules form label { display:grid; gap:6px; margin:12px 0; font-size:13px; }
.intelligence-rules .ir-fields { display:grid; grid-template-columns:1fr 1fr; gap:0 16px; }
.intelligence-rules :is(input,select,textarea) { box-sizing:border-box; width:100%; max-width:100%; min-height:40px; border:1px solid #bac9bc; padding:8px; border-radius:4px; background:#fff; color:#123e33; caret-color:#123e33; font:inherit; }
.intelligence-rules textarea { resize:vertical; }
.intelligence-rules pre { white-space:pre-wrap; overflow-wrap:anywhere; max-height:320px; overflow:auto; font-size:12px; background:#f4f7f2; padding:12px; scrollbar-color:#8ea796 #edf3ed; }
.intelligence-rules [role=status] { font-size:13px; color:#902b3b; }
.intelligence-rules .ir-history { padding:16px 0; border-top:1px solid #d2dbd3; }
@media(max-width:650px){.intelligence-rules .ir-heading{flex-direction:column}.intelligence-rules .ir-fields{grid-template-columns:1fr}.intelligence-rules .ir-dialog{padding:16px}}

.trim-library { color:var(--forest); min-width:0; font-variant-numeric:tabular-nums; caret-color:var(--forest); }
.trim-picture-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-height:420px;overflow:auto;padding:4px;margin-top:14px}
.trim-library .trim-picture-option{display:flex;flex-direction:column;min-width:0;width:100%;justify-self:stretch;align-self:stretch;padding:10px;text-align:left;background:#fff;color:var(--forest);gap:7px}
.trim-library .trim-picture-option:hover{background:#fff;border-color:var(--wine)}
.trim-picture-option img{display:block;width:auto;height:auto;max-width:100%;max-height:115px;object-fit:contain;object-position:center;background:#fff;margin:0 auto}
.trim-picture-option strong{font-size:14px;line-height:1.4}
.trim-picture-option span{font-size:12px;color:#526259;line-height:1.4}
.trim-picture-selected{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,2fr);gap:24px}
.trim-picture-selected img{display:block;width:auto;height:auto;max-width:100%;max-height:185px;object-fit:contain;object-position:center;background:#fff;margin:0 auto 12px}
.trim-picture-selected label{margin-top:16px}
.trim-picture-selected [data-picture-choice]{color:var(--forest);font-weight:600}
.trim-inline-picker .trim-add-binding form{max-width:none}
@media(max-width:600px){.trim-picture-options{grid-template-columns:repeat(2,minmax(0,1fr));max-height:380px}.trim-picture-selected{grid-template-columns:minmax(0,1fr)}.trim-picture-selected img{height:150px}}
.trim-inline-picker{grid-column:1/-1;width:100%;min-width:0;border-top:1px solid var(--line);margin-top:8px;padding-top:8px}
.single-field-grid:has(.trim-inline-picker)>.single-field{grid-column:1/-1;min-width:0}
.trim-inline-picker .trim-tabs{margin:0}
.trim-inline-picker .trim-message{font-size:.75rem}
.trim-inline-picker .trim-form-pair{grid-template-columns:repeat(2,minmax(0,1fr))}
.trim-inline-picker .trim-production-pickers[hidden]{display:none!important}
@media(max-width:600px){.trim-inline-picker .trim-form-pair{grid-template-columns:minmax(0,1fr)}}
.trim-library ::selection { background:var(--forest); color:var(--paper); }
.trim-library [hidden] { display:none!important; }
.trim-heading { padding:0 0 24px; border-bottom:2px solid var(--forest); }
.trim-heading h2 { margin:0 0 14px; font-size:clamp(2rem,4vw,3.6rem); line-height:1.2; }
.trim-library p { max-width:75ch; font-size:.86rem; line-height:1.7; }
.trim-library h3 { margin:26px 0 16px; font-size:1.3rem; line-height:1.5; }
.trim-library h4 { margin:0 0 10px; font-size:1rem; line-height:1.5; }
.trim-library button,.trim-library input,.trim-library select,.trim-library textarea { font:inherit; border-radius:0; }
.trim-library button { cursor:pointer; min-height:44px; padding:10px 16px; color:var(--forest); border:1px solid var(--line); background:var(--paper-warm); font-size:.82rem; }
.trim-library button:hover { border-color:var(--forest); background:#e7eee7; }
.trim-library button[aria-pressed=true],.trim-library button[type=submit] { color:white; background:var(--forest); border-color:var(--forest); }
.trim-library button:disabled { opacity:.55; cursor:wait; }
.trim-library :is(button,input,select,textarea,summary):focus-visible { outline:3px solid var(--gold); outline-offset:3px; }
.trim-library :is(input,select,textarea) { width:100%; min-width:0; min-height:44px; padding:10px; border:1px solid var(--line); color:var(--forest); background:white; }
.trim-library input::placeholder,.trim-library textarea::placeholder { color:#64726b; opacity:1; }
.trim-library label { display:grid; gap:8px; font-size:.82rem; }
.trim-tabs,.trim-actions { display:flex; flex-wrap:wrap; gap:10px; }
.trim-tabs { margin:24px 0 0; }
.trim-tabs [data-trim-refresh] { margin-left:auto; }
.trim-message { min-height:24px; padding:12px 0; margin:0; }
.trim-filters { display:grid; grid-template-columns:2fr repeat(4,minmax(110px,1fr)); gap:14px; padding:14px 0; }
.trim-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; align-items:stretch; }
.trim-library .trim-card { display:flex; flex-direction:column; text-align:left; padding:0; overflow:hidden; }
.trim-picture { display:flex; align-items:center; justify-content:center; box-sizing:border-box; height:260px; padding:16px; background:white; overflow:hidden; }
.trim-picture img { display:block; min-width:0; min-height:0; width:auto; height:auto; max-width:100%; max-height:100%; object-fit:contain; object-position:center; margin:auto; }
.trim-card .trim-picture { width:100%; height:auto; aspect-ratio:1; }
.trim-card-content { display:grid; gap:8px; padding:18px; width:100%; }
.trim-card-content strong { font-size:1.05rem; }
.trim-card-content span { font-size:.76rem; line-height:1.6; }
.trim-detail { display:grid; grid-template-columns:minmax(240px,.85fr) minmax(0,1.15fr); gap:36px; margin:24px 0; align-items:start; }
.trim-detail .trim-picture { height:400px; border:1px solid var(--line); }
.trim-detail h3 { margin-top:0; }
.trim-caption { color:#53645b; }
.trim-table-wrap { overflow:auto; max-width:100%; margin:20px 0; scrollbar-color:var(--forest) var(--paper-warm); }
.trim-library table { width:100%; border-collapse:collapse; font-size:.8rem; text-align:left; }
.trim-library th { padding:12px 10px; border-bottom:1px solid var(--forest); white-space:nowrap; }
.trim-library td { padding:12px 10px; border-bottom:1px solid var(--line); vertical-align:top; overflow-wrap:anywhere; }
.trim-number { font-size:1.05rem; font-weight:700; }
.trim-ledger { grid-column:1 / -1; margin-top:12px; width:100%; min-width:0; }
.trim-ledger > h3 { margin:0; }
.trim-ledger > .trim-table-wrap { margin:12px 0 0; }
.trim-ledger table { min-width:640px; }
.trim-library summary { cursor:pointer; padding:14px 0; line-height:1.6; }
.trim-binding { padding:24px 0; border-bottom:1px solid var(--line); }
.trim-binding .trim-binding-state { font-weight:700; margin:10px 0; }
.trim-counts { display:flex; flex-wrap:wrap; gap:20px; margin:16px 0 20px; }
.trim-counts dt { font-size:.76rem; }
.trim-counts dd { margin:8px 0 0; font-size:1.35rem; font-weight:700; }
.trim-entry-form,.trim-add-binding form,.trim-library [data-trim-form=sizes] { display:grid; gap:18px; padding:24px; margin:24px 0; border:1px solid var(--forest); background:var(--paper-warm); max-width:780px; }
.trim-entry-form p { margin:0; }
.trim-library .trim-check { display:flex; align-items:center; }
.trim-check input { width:20px; min-height:20px; }
.trim-form-pair,.trim-production-pickers { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.trim-production-pickers { max-width:780px; margin:14px 0 24px; }
.trim-library .is-error { color:var(--wine); }
.trim-empty { padding:24px 0; }
@media(max-width:1100px) { .trim-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } .trim-filters { grid-template-columns:repeat(4,minmax(0,1fr)); }.trim-search { grid-column:1/-1; } }
@media(max-width:700px) { .trim-grid { grid-template-columns:repeat(2,minmax(0,1fr));gap:14px; }.trim-filters,.trim-form-pair { grid-template-columns:repeat(2,minmax(0,1fr)); }.trim-detail { grid-template-columns:1fr;gap:18px; }.trim-detail .trim-picture { height:290px; }.trim-entry-form { padding:16px; }.trim-tabs [data-trim-refresh] { margin-left:0; }.trim-production-pickers { grid-template-columns:1fr; }.trim-card-content { padding:12px; }.trim-card-content strong { font-size:.9rem; } }
.trim-chip-field { border:1px solid var(--line); padding:14px 16px 16px; margin:0; display:grid; gap:10px; }
.trim-chip-field legend { font-size:.78rem; color:var(--forest); padding:0 6px; }
.trim-chips { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.trim-chip { position:relative; margin:0; display:inline-flex; }
.trim-chip input { position:absolute; inset:0; opacity:0; margin:0; cursor:pointer; }
.trim-chip span { display:inline-block; padding:7px 14px; border:1px solid var(--line); background:#fff; color:var(--forest); font-size:.82rem; line-height:1.3; }
.trim-chip:hover span { border-color:var(--forest); }
.trim-chip input:checked+span { background:var(--forest); border-color:var(--forest); color:var(--paper-warm); }
.trim-chip input:focus-visible+span { outline:2px solid var(--wine); outline-offset:1px; }
.trim-chip-add { display:inline-flex; gap:6px; align-items:center; }
.trim-chip-add input { width:96px; min-height:34px; padding:6px 10px; border:1px dashed var(--line); background:#fff; font-size:.82rem; }
.trim-chip-add button { min-height:34px; padding:6px 12px; font-size:.78rem; }

/* Shared animated empty-media state. The video is decorative and never counts as uploaded media. */
body .media-empty-art {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  max-width:100%;
  min-width:0;
  margin:0;
  padding:16px 8px;
  background:transparent;
  color:#53665e;
  text-align:center;
  font-size:13px;
  line-height:1.6;
}

body .media-empty-visual {
  position:relative;
  width:min(640px,100%);
  height:88px;
  overflow:hidden;
  background:transparent;
}

body .media-empty-visual video,
body .media-empty-visual img {
  display:block;
  position:absolute;
  top:-179px;
  left:50%;
  width:672px;
  max-width:none;
  height:auto;
  transform:translateX(-50%);
  object-fit:contain;
  object-position:center;
  filter:grayscale(1);
  mix-blend-mode:multiply;
  opacity:.65;
  border:0;
  background:transparent;
  pointer-events:none;
}

body .media-empty-art > span { color:#53665e; }
.development-media-group .media-empty-art { margin-bottom:15px; }
.production-card-design .media-empty-art { width:100%; height:100%; }
.production-asset-previews > .media-empty-art { margin:0; padding:0; }

[data-production-workspace]{margin-top:32px;color:#143e34}
.production-shared{padding:20px 0;border-top:1px solid #cbd3ca;border-bottom:1px solid #cbd3ca}
.production-shared h3,.production-basis-heading h3,.production-inspection h3{margin:0;font-size:21px;line-height:1.35}
.production-shared-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:16px}
.production-shared-strip>details{min-width:0;padding:12px 16px;background:#fff;border:1px solid #d3d9d0}
.production-shared-strip summary{cursor:pointer;line-height:1.6}
.production-shared-strip>details>summary span{display:block;font-size:13px;color:#626f68;font-weight:400}
.production-source-line{display:grid;gap:6px;margin:12px 0;overflow-wrap:anywhere}
.production-source-line small{font-size:12px;color:#626f68;overflow-wrap:anywhere}
.production-basis-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin:28px 0}
.production-trim-selection-card{height:100%;box-sizing:border-box}
.production-trim-selection-card p{margin:0;color:#65736b;font-size:13px}
.production-trim-selected{display:flex;flex-wrap:wrap;gap:8px;min-height:215px;align-content:flex-start;align-items:flex-start}
.production-trim-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 10px;background:#e9eee8;border:1px solid #c2cec3;color:#143e34;font-size:13px}
.production-trim-chip-image{width:48px;height:48px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#fff;border:1px solid #d4d9d1;flex:0 0 48px}
.production-trim-chip-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.production-trim-chip-image .production-trim-image-placeholder{font-size:10px;color:#65736b;text-align:center;line-height:1.2}
.production-trim-empty{font-size:13px;color:#65736b}
.production-basis-card{min-width:0;padding:20px;background:#fbfbf8;border:1px solid #ccd4c9;display:flex;flex-direction:column;gap:20px}
.production-basis-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}
.production-basis-heading>span{font-size:12px;color:#65736b;white-space:nowrap}
.production-asset-previews{height:215px;overflow:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:max-content;gap:8px;align-content:start}
.production-asset-previews:has(>.media-empty-art){display:flex;align-items:center;justify-content:center}
.production-asset-previews>.media-empty-art{margin:0!important;padding:0!important;font-size:14px}
.production-preview-item{display:flex;flex-direction:column;gap:4px;min-width:0}
.production-small-preview{min-width:0!important;min-height:185px!important;height:auto!important;max-height:none!important;align-self:start;padding:8px!important;background:#fff!important;color:#143e34!important;border:1px solid #d4d9d1!important;text-align:left;cursor:zoom-in}
.production-small-preview:hover{border-color:#a3203a!important;background:#fff!important}
.production-small-preview img{display:block;width:100%;height:105px;object-fit:contain;object-position:center;background:#fff}
.production-small-preview span,.production-small-preview small{display:block;overflow-wrap:anywhere;margin-top:5px;font-size:12px;line-height:1.4}
.production-small-preview small{font-weight:400;color:#69766d;font-size:11px}
.production-media-delete{align-self:flex-start;border:0!important;background:transparent!important;color:#8e2638!important;padding:0!important;min-height:24px!important;font-size:12px!important;cursor:pointer}
.production-media-delete:hover{text-decoration:underline}
.production-note-field{display:grid;gap:7px}
.production-note-field textarea{min-height:72px;resize:vertical}
.production-note-save{align-self:flex-start}
.production-upload-actions{display:grid;gap:8px;margin-top:auto}
.production-drop-target{border:1px dashed #9ba99c;padding:13px 8px;text-align:center;font-size:13px;cursor:pointer;position:relative;background:#fff}
.production-drop-target:focus-within{outline:2px solid #a3203a;outline-offset:2px}
.production-drop-target input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
[data-production-workspace] .button{font-size:13px;min-height:40px;padding:9px 13px;line-height:1.4}
[data-production-workspace] .button.secondary:hover{background:#eeeee7;color:#143e34;border-color:#143e34}
[data-production-workspace] label{font-size:13px;color:#40564b}
[data-production-workspace] textarea,[data-production-workspace] input:not([type=file]),[data-production-workspace] select{box-sizing:border-box;width:100%;max-width:100%;border:1px solid #becabc;background:white;padding:10px;color:#143e34;font:inherit}
.production-form-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:auto}
.production-inspection{border:1px solid #cbd3c8;padding:24px;background:#fbfbf8}
.production-inspection-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}
.production-inspection-heading p{font-size:13px;color:#65736b;margin:8px 0 0}
.production-inspection-scroll{overflow-x:auto;margin-top:24px}
.production-inspection table{width:100%;border-collapse:collapse;text-align:left;font-size:13px}
.production-inspection th{font-weight:500;white-space:nowrap;color:#65736b}
.production-inspection th,.production-inspection td{padding:12px;border-bottom:1px solid #d3d9cf;vertical-align:top}
.production-inspection td{max-width:220px;overflow-wrap:anywhere}
.production-inspection-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:24px 0}
.production-inspection-fields label{display:grid;gap:7px;min-width:0}
.production-inspection [data-inspection-form]{margin-top:20px;border-top:1px solid #cbd3c8}
.production-workspace-feedback{font-size:14px;line-height:1.5;color:#8e2539;min-height:20px}
.production-recognition-dialog{width:min(600px,90vw);max-height:85vh;overflow:auto;padding:28px;border:1px solid #143e34;background:#fbfbf8;color:#143e34}
.production-recognition-dialog::backdrop{background:#142a2466}
.production-recognition-dialog li{overflow-wrap:anywhere;margin:10px 0}
.production-recognition-dialog .button{margin:8px 8px 0 0}
.production-trim-dialog{width:min(1180px,94vw);max-height:90vh;overflow:auto;padding:28px;border:1px solid #143e34;background:#fbfbf8;color:#143e34}
.production-trim-dialog::backdrop{background:#142a2466}
.production-trim-dialog form{display:grid;gap:14px}
.production-trim-dialog h3{margin:0;font-size:24px}
.production-trim-dialog p{margin:0;color:#65736b;line-height:1.5}
.production-trim-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.production-trim-filters label{display:grid;gap:6px;color:#40564b}
.production-trim-dialog [data-production-trim-options]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;max-height:58vh;overflow:auto;padding:4px}
.production-trim-option{display:grid;grid-template-rows:auto auto 1fr;gap:8px;min-width:0;padding:10px;background:#fff;border:1px solid #d3d9d0;cursor:pointer}
.production-trim-option:has(input:checked){border-color:#143e34;box-shadow:inset 0 0 0 1px #143e34}
.production-trim-option input{width:auto!important;margin:0;justify-self:start}
.production-trim-image-wrap{height:104px;display:flex!important;align-items:center;justify-content:center;background:#f7f8f4;border:1px solid #e1e5df;overflow:hidden}
.production-trim-image-wrap img{width:100%;height:100%;object-fit:contain;display:block}
.production-trim-image-placeholder{font-size:12px;color:#65736b}
.production-trim-copy{display:grid;gap:4px;min-width:0}
.production-trim-option small{color:#65736b;overflow-wrap:anywhere}
@media(max-width:1280px){.production-basis-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.production-trim-dialog [data-production-trim-options]{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1100px){.production-basis-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.production-trim-dialog [data-production-trim-options]{grid-template-columns:repeat(3,minmax(0,1fr))}.production-inspection-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.production-shared-strip,.production-basis-grid,.production-inspection-fields{grid-template-columns:minmax(0,1fr)}.production-basis-card,.production-inspection{padding:16px}.production-inspection-heading{align-items:flex-start}.production-inspection-heading h3{font-size:20px}.production-asset-previews{height:190px}}
@media(max-width:700px){.production-trim-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.production-trim-dialog [data-production-trim-options]{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.production-trim-filters{grid-template-columns:minmax(0,1fr)}.production-trim-dialog [data-production-trim-options]{grid-template-columns:minmax(0,1fr)}}

.inspection-quality{color:#193f34;margin-top:24px;font-size:14px;line-height:1.6}
.iq-overview,.iq-heading,.iq-actions,.iq-footnote,.iq-check,.iq-finding,.iq-dialog-heading,.iq-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:16px}
.iq-overview{padding:13px 16px;background:#edf2e9;border-radius:8px;font-size:13px}
.iq-section{padding:26px 0;border-bottom:1px solid #dce3da}
.iq-heading{margin-bottom:18px;align-items:flex-start}
.iq-heading h4{margin:0;font-size:19px;line-height:1.4;font-weight:650;color:#193f34}
.iq-heading h4 small{font-size:12px;font-weight:400;margin-left:8px;color:#617268}
.iq-heading p,.iq-footnote,.iq-check p{font-size:13px;color:#586b60;margin:7px 0 0}
.iq-actions{justify-content:flex-start;gap:8px;flex-wrap:wrap}
.inspection-quality .button,.iq-dialog .button{width:auto;min-height:36px;height:auto;margin:0;padding:7px 13px;font-size:13px;line-height:1.5;border-radius:7px;white-space:nowrap;color:#fff;background:#193f34;border:1px solid #193f34;cursor:pointer}
.inspection-quality .button.secondary,.iq-dialog .button.secondary{background:white;color:#193f34;border-color:#bccbbd}
.inspection-quality .button:hover,.iq-dialog .button:hover{filter:brightness(.95)}
.inspection-quality .button:disabled,.iq-dialog .button:disabled{opacity:.5;cursor:default}
.iq-table-scroll{overflow-x:auto;border:1px solid #dce3da;border-radius:8px}
.iq-table{border-collapse:collapse;width:100%;font-size:13px;font-variant-numeric:tabular-nums}
.production-inspection .iq-table th,.production-inspection .iq-table td{padding:12px 14px;text-align:left;border:0;border-bottom:1px solid #e8ede5;white-space:nowrap;color:#234437}
.production-inspection .iq-table th{background:#f4f6f0;font-weight:500;color:#55685b;font-size:12px}
.production-inspection .iq-table tr:last-child td{border-bottom:0}
.iq-table tbody tr:hover{background:#fafbf8}
.iq-status{display:inline-block;font-size:12px;line-height:1.5;padding:3px 9px;border-radius:5px;background:#f1f3ee;color:#5e6b62;white-space:nowrap}
.iq-pass,.iq-normal{background:#eaf3e9;color:#275439}
.iq-fail,.iq-problem{background:#fbebe7;color:#9c3c31}
.iq-footnote{margin-top:12px;align-items:flex-start;font-size:12px}
.iq-check{padding:17px 0;border-top:1px solid #e3e9df;align-items:flex-start}
.iq-check .iq-status{margin-left:12px}
.iq-check strong{font-size:15px}.iq-check small{display:block;color:#68786b;font-size:12px;margin-top:5px}
.iq-check p,.iq-reference{overflow-wrap:anywhere}
.iq-empty{padding:15px 0;color:#64766a;font-size:13px;margin:0}
.iq-finding{border:1px solid #e6dac7;border-radius:6px;background:#fbf8f0;padding:14px 16px;margin-top:10px;font-size:13px}
.iq-finding p{margin:4px 0 0;overflow-wrap:anywhere}
.iq-history{margin-top:18px;font-size:12px;color:#617166}.iq-history summary{cursor:pointer;font-weight:500}.iq-history p{padding:8px 0;border-bottom:1px solid #e4e9df}.iq-history small{display:block}
.iq-feedback{color:#963d37;font-size:13px;min-height:20px}.iq-warning{color:#885f27;background:#fbf5e8;padding:12px;border-radius:6px}
dialog.iq-dialog{box-sizing:border-box;position:fixed;inset:0;margin:auto;width:min(720px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:28px;border:1px solid #c8d4c6;border-radius:16px;background:#fcfcf9;color:#193f34;overflow:auto;box-shadow:0 18px 60px #112d3329;font-size:14px;line-height:1.6}
.iq-dialog::backdrop{background:#102d2860}
.iq-dialog h3{font-size:22px;margin:0}.iq-dialog h4{margin:18px 0 4px}.iq-dialog p{font-size:13px;color:#5d7164}.iq-dialog [role=status]{color:#983d34;min-height:20px}
.iq-dialog form{display:grid;gap:18px;margin-top:22px}
.iq-dialog label{display:grid;gap:7px;font-size:13px;color:#294e3f}
.iq-dialog input:not([type=hidden]),.iq-dialog textarea,.iq-dialog select{box-sizing:border-box;width:100%;min-height:42px;height:auto;padding:10px 12px;border:1px solid #bacabb;border-radius:7px;background:white;color:#234538;font:inherit;box-shadow:none;margin:0}
.iq-dialog textarea{resize:vertical;line-height:1.6;min-height:88px}
.iq-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.iq-dialog-footer{padding-top:18px;border-top:1px solid #dce4d8}.iq-dialog-footer span,.iq-dialog small{color:#65796a;font-size:12px}
.iq-library article{padding:18px 0;border-bottom:1px solid #dce4d8;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}.iq-library small{display:block}.iq-library p{margin:5px 0}
.iq-reference-image{display:block;max-width:160px;max-height:140px;object-fit:contain;margin-top:10px}.iq-modal-reference{display:block;max-width:100%;max-height:320px;object-fit:contain}
.inspection-quality :focus-visible,.iq-dialog :focus-visible{outline:2px solid #94743c;outline-offset:3px}
@media(max-width:700px){.iq-heading,.iq-footnote,.iq-dialog-footer{flex-direction:column;align-items:stretch}.iq-heading .button{align-self:flex-start}.iq-overview{flex-wrap:wrap}.iq-check,.iq-finding{gap:10px}.iq-dialog{padding:20px!important}.iq-library article{grid-template-columns:1fr}.iq-form-grid{grid-template-columns:1fr}.iq-dialog-footer .button{width:100%}}

:root {
  color-scheme: light;
  --forest: #123f34;
  --forest-deep: #0b2f27;
  --wine: #8e2638;
  --gold: #bc9951;
  --paper: #f4f4ef;
  --paper-warm: #fbfbf7;
  --ink: #17271f;
  --muted: #6d7971;
  --line: #cbd2c9;
  --line-dark: #315b4e;
  --success: #2d7053;
  --warning: #967125;
  --shadow: 0 18px 40px rgba(18, 63, 52, .08);
}

.ability-center { margin-top: 24px; }
.ability-controls { display:flex; flex-wrap:wrap; align-items:end; gap:16px; margin:24px 0; }
.ability-controls label { display:grid; gap:6px; flex:1 1 180px; color:var(--forest); margin:0; }
.ability-controls select, .ability-controls input { width:100%; min-height:44px; padding:8px; border:1px solid var(--line-dark); background:var(--paper-warm); color:var(--ink); }
.ability-center summary { cursor:pointer; padding:12px 0; color:var(--forest); }
.ability-list { border-top:1px solid var(--line); margin-top:20px; }
.ability-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px 24px; padding:24px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.ability-row > p, .ability-row > details { grid-column:1/-1; max-width:75ch; margin:0; }
.ability-row .pill { align-self:start; color:var(--forest); background:var(--paper-warm); border:1px solid var(--line); }
.ability-center :focus-visible { outline:2px solid var(--wine); outline-offset:3px; }
.ability-settings { max-width:760px; padding:24px 0; margin-bottom:32px; border-bottom:1px solid var(--line); }
.member-profile { max-width:760px; padding:24px 0; margin-bottom:24px; border-bottom:1px solid var(--line); }
.production-months[hidden] { display:none; }
.profile-avatar-row { display:flex; gap:24px; align-items:flex-start; margin:24px 0; }
.profile-avatar-preview { width:88px; height:88px; flex:0 0 88px; border-radius:50%; overflow:hidden; background:var(--forest); color:var(--paper-warm); display:grid; place-items:center; font-size:32px; }
.profile-avatar-preview img { width:100%; height:100%; object-fit:cover; }
.profile-fields { display:grid; grid-template-columns:minmax(0,1fr); gap:8px 24px; }
.profile-fields label { min-width:0; }
.profile-avatar-editor { min-width:0; flex:1; }
.profile-upload-controls { display:flex; gap:16px; align-items:stretch; }
.profile-avatar-dropzone { position:relative; display:grid; align-content:center; gap:2px; flex:1; min-width:0; min-height:88px; margin:0; padding:14px 18px; border:1px dashed var(--line-dark); border-radius:8px; background:var(--paper-warm); color:var(--forest); cursor:pointer; transition:border-color .15s ease,background .15s ease; }
.profile-avatar-dropzone:hover,.profile-avatar-dropzone.is-dragging { border-color:var(--gold); background:#fffdf6; }
.profile-avatar-dropzone:focus-within { outline:2px solid var(--wine); outline-offset:3px; }
.profile-avatar-dropzone strong { font-size:15px; }
.profile-avatar-dropzone span { color:var(--muted); font-size:13px; }
.profile-avatar-dropzone input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.profile-upload-controls [data-clear-avatar] { flex-shrink:0; margin:0; min-height:44px; align-self:center; }
.profile-avatar-row input { width:100%; }
.avatar-cropper { width:min(100%,420px); margin-top:18px; padding:18px; border:1px solid var(--line); border-radius:10px; background:var(--paper-warm); }
.avatar-cropper[hidden] { display:none; }
.avatar-cropper > p { display:grid; gap:2px; margin-bottom:14px; }
.avatar-cropper > p .muted { font-size:13px; }
.avatar-crop-stage { width:min(100%,320px); aspect-ratio:1; margin:0 auto 16px; overflow:hidden; border:3px solid var(--gold); border-radius:50%; background:#e5e7e2; cursor:grab; touch-action:none; user-select:none; }
.avatar-crop-stage:active { cursor:grabbing; }
.avatar-crop-stage canvas { display:block; width:100%; height:100%; }
.avatar-zoom-control { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:12px; margin:0 0 14px; color:var(--forest); font-weight:700; }
.avatar-zoom-control input { accent-color:var(--forest); }
.avatar-crop-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; }
.avatar-crop-actions .button { margin:0; }
.my-avatar { width:28px; height:28px; object-fit:cover; border-radius:50%; margin-right:8px; vertical-align:middle; }
#my-profile-summary { padding:12px 16px; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
#my-profile-summary p { margin:6px 0 0; font-size:13px; }
#my-profile-summary strong { color:var(--forest); font-size:18px; }
#token-section > details > summary { cursor:pointer; padding:12px 0; color:var(--forest); font-weight:700; }
@media(max-width:540px) { .profile-fields {grid-template-columns:1fr;} .profile-avatar-row {align-items:flex-start;gap:16px;flex-direction:column;} .profile-avatar-editor {width:100%;} .profile-upload-controls {flex-wrap:wrap;} .profile-avatar-dropzone {flex-basis:100%;} .profile-upload-controls [data-clear-avatar] {width:100%;} .avatar-cropper {padding:14px;} .avatar-crop-actions .button {flex:1 1 30%;padding-inline:10px;} }
.ability-settings label { display:grid; gap:8px; margin:18px 0 8px; }
.ability-settings input,.ability-settings select { min-height:44px; width:100%; }
.ability-settings button { margin:8px 12px 8px 0; }
.ability-pairing code { display:block; overflow-wrap:anywhere; }
.operation-notice { position:fixed; z-index:1000; right:24px; bottom:24px; width:min(440px,calc(100vw - 32px)); display:flex; gap:14px; align-items:flex-start; padding:18px; background:var(--paper-warm); color:var(--forest); border:1px solid var(--line-dark); border-radius:12px; animation:notice-enter .2s ease-out; }
.operation-notice > div { flex:1; min-width:0; }
.operation-notice strong { font-size:15px; }
.operation-notice p { font-size:14px; line-height:1.6; margin:6px 0 0; overflow-wrap:anywhere; }
.operation-notice button { background:transparent; color:inherit; padding:6px; min-height:32px; border:0; margin:0; }
.operation-notice[data-state=error],.operation-notice[data-state=partial] { color:var(--wine); border-color:var(--wine); }
.operation-indicator { width:18px; height:18px; flex:0 0 18px; margin-top:2px; border-radius:50%; background:currentColor; }
.operation-notice[data-state=pending] .operation-indicator { background:transparent; border:2px solid var(--line); border-top-color:var(--forest); animation:notice-spin .8s linear infinite; }
@keyframes notice-spin { to {transform:rotate(360deg);} }
@keyframes notice-enter { from {transform:translateY(8px);} to {transform:translateY(0);} }
@media(prefers-reduced-motion:reduce) { .operation-notice,.operation-notice[data-state=pending] .operation-indicator { animation:none; } }
@media(max-width:540px) { .operation-notice { right:16px; bottom:16px; } }
/* Capability catalog is its own surface, not an operating dashboard. */
body.ability-mode #workspace .view:not(#systems),
body.ability-mode .workspace-strip, body.ability-mode .workflow-rail,
body.ability-mode #systems > .page-heading, body.ability-mode #systems > .notice { display:none !important; }
body.ability-mode #systems { margin-top:32px; }
body.ability-mode #operating-detail { padding:0; border:0; background:transparent; box-shadow:none; }
body.ability-mode #operating-detail > .detail-close { display:none; }
.ability-center > h2 { font-size:clamp(1.8rem,3vw,2.5rem); letter-spacing:-.02em; margin-bottom:10px; }
.ability-center > .muted, .ability-center > [role=status] { color:var(--line-dark); font-size:.88rem; }
.ability-sections { display:flex; flex-wrap:wrap; gap:8px; margin:24px 0 16px; }
.ability-sections button { min-height:44px; border:1px solid var(--line); border-radius:8px; background:var(--paper-warm); color:var(--forest); padding:9px 18px; font-weight:700; }
.ability-sections button[aria-pressed=true] { background:var(--forest); border-color:var(--forest); color:var(--paper-warm); }
.ability-sections button:hover { border-color:var(--forest); }
.ability-sections button:active { transform:translateY(1px); }
.ability-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:minmax(370px,auto); gap:18px; border:0; align-items:stretch; }
.ability-row { display:flex; flex-direction:column; gap:10px; padding:22px; border:1px solid var(--line); border-radius:12px; background:var(--paper-warm); min-width:0; min-height:370px; }
.ability-row h3, .ability-description { display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden; -webkit-line-clamp:3; }
.ability-row h3 { -webkit-line-clamp:2; }
.ability-controls .ability-refresh { height:44px; min-height:44px; margin:0; padding:8px 18px; background:var(--wine); border:1px solid var(--wine); color:var(--paper-warm); white-space:nowrap; }
.ability-controls input, .ability-controls select { height:44px; box-sizing:border-box; }
.ability-refresh:disabled { opacity:.65; cursor:wait; }
.ability-center > details input { display:block; min-height:44px; margin:8px 0; }
.ability-center > details button { margin:8px 12px 8px 0; }
.ability-center > details code { display:block; overflow-wrap:anywhere; }
.ability-row h3 { font-size:1.1rem; line-height:1.4; margin:0 0 8px; }
.ability-row .muted { color:var(--line-dark); font-size:.82rem; }
.ability-row > p { font-size:.9rem; line-height:1.65; }
.ability-row .pill { order:-1; font-size:.75rem; }
.ability-row details { border-top:1px solid var(--line); width:100%; margin-top:auto; }
.ability-row summary { font-size:.86rem; font-weight:700; }
@media(max-width:1000px) { .ability-list {grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:767px) { .ability-list {grid-template-columns:1fr;} .ability-sections {gap:6px;} .ability-sections button {padding:8px 12px;} }
@media(max-width:540px) { .ability-controls {display:grid;grid-template-columns:1fr;} .ability-row {gap:8px;} }

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 15px/1.65 -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", sans-serif; }
button, input, select { font: inherit; }
button { cursor: pointer; }
h1, h2, h3, p { margin-top: 0; }
h1 { margin-bottom: 15px; font-size: clamp(2.55rem, 5.1vw, 4.7rem); line-height: 1.04; letter-spacing: -.065em; font-weight: 820; }
h2 { font-size: 2rem; line-height: 1.12; letter-spacing: -.045em; }
h3 { margin: 8px 0 4px; }

.topbar { position: relative; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 20px; min-height: 158px; padding: 18px clamp(24px, 6vw, 96px) 15px; background: #0f2d27; border-bottom: 1px solid #315b4e; }
.topbar {--header-textile:url('assets/header-woven-green.png');background-image:linear-gradient(rgba(15,45,39,.72),rgba(15,45,39,.72)),var(--header-textile);background-size:auto,420px 420px;background-repeat:repeat;}
body[data-unified] .topbar {--header-textile:url('/hub-ui/header-woven-green.png?v=test-report-upload-20261111-r2');}
.topbar .brand-logo {mix-blend-mode:normal;filter:url(#brand-ink-only);}
.topbar-meta { display: grid; gap: 5px; align-self: end; padding-bottom: 4px; }
.meta-kicker { color: #fff; font-size: .75rem; font-weight: 850; letter-spacing: .15em; }
.meta-caption { color: #b8d0c1; font-size: .77rem; }
.brand-center { display: grid; justify-items: center; gap: 8px; text-align: center; }
.topbar button.brand-center { border:0; padding:0; background:transparent; border-radius:0; }
.topbar button.brand-center:focus-visible { outline:2px solid var(--gold); outline-offset:6px; }
.brand-logo { display: block; width: min(430px, 48vw); height: auto; max-height: 122px; object-fit: contain; }
.brand-context { display: flex; justify-content: center; gap: 14px; color: #c8d9ce; font-size: .68rem; letter-spacing: .15em; }
.brand-context span:first-child { color: #d1ae60; font-weight: 850; }
.topbar-tools { display: flex; flex-wrap: wrap; min-width: 0; justify-content: flex-end; align-items: center; gap: 12px 22px; align-self: end; padding-bottom: 4px; }
.topbar-tools .workspace-meta { flex-shrink: 0; white-space: nowrap; }
.topbar-tools .personal-menu { min-width: 0; max-width: 100%; }
.topbar-tools #my-menu-trigger { display: flex; align-items: center; max-width: 100%; }
.topbar-tools #identity { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 12em; }
.topbar-tools .my-avatar { flex-shrink: 0; }
.workspace-meta { display: grid; gap: 2px; text-align: right; color: #b8d0c1; font-size: .74rem; }
.workspace-meta strong { color: #fff; font-size: .9rem; }
.status { border: 1px solid #6f9680; border-radius: 999px; padding: 6px 12px; background: rgba(255, 255, 255, .06); color: #d5e7da; font-size: .74rem; white-space: nowrap; }
.status.ok { background: rgba(182, 219, 192, .13); color: #d8efdf; }
.status.warn { background: rgba(228, 199, 131, .16); border-color: #b8944b; color: #f4ddb1; }
.status.error { background: #fae2de; border-color: #dfaaa1; color: #7c251b; }

.shell { max-width: 1440px; margin: 0 auto; padding: 0 clamp(22px, 6vw, 96px) 96px; }
.tabs { position: relative; z-index: 20; display: flex; flex-wrap: wrap; gap: 0 27px; align-items: center; min-height: 58px; border-bottom: 1px solid var(--line); overflow: visible; }
.tab { position: relative; flex: 0 0 auto; border: 0; padding: 16px 0 14px; background: transparent; color: var(--muted); font-size: .84rem; font-weight: 800; white-space: nowrap; }
.tabs > .tab { font-size: 1.1rem; padding-block: 20px 18px; }
.tabs > .nav-menu:first-of-type { margin-left: auto; }
.tab::after { content: ""; position: absolute; right: 0; bottom: -1px; left: 0; height: 3px; background: transparent; }
.tab:hover, .tab:focus-visible { color: var(--forest); outline: none; }
.tab.is-active { color: var(--forest); }
.tab.is-active::after { background: var(--wine); }
.nav-menu { position: relative; flex: 0 0 auto; }
.menu-trigger { display: inline-flex; align-items: center; gap: 5px; }
.menu-trigger > span { color: var(--gold); font-size: .78rem; transition: transform .18s ease; }
.nav-menu:not(.is-dismissed):hover .menu-trigger, .nav-menu:focus-within .menu-trigger, .nav-menu.is-open .menu-trigger { color: var(--forest); }
.nav-menu:not(.is-dismissed):hover .menu-trigger > span, .nav-menu:focus-within .menu-trigger > span, .nav-menu.is-open .menu-trigger > span { transform: rotate(180deg); }
.menu-panel { position: absolute; z-index: 30; top: calc(100% - 1px); left: -16px; display: grid; min-width: 250px; border: 1px solid var(--line); background: var(--paper-warm); box-shadow: var(--shadow); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-6px); transition: opacity .16s ease, transform .16s ease, visibility .16s ease; }
.nav-menu:nth-last-child(-n + 2) .menu-panel { right: -16px; left: auto; }
.nav-menu:not(.is-dismissed):hover .menu-panel, .nav-menu:focus-within .menu-panel, .nav-menu.is-open .menu-panel { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.menu-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 5px 18px; align-items: center; width: 100%; border: 0; border-bottom: 1px solid var(--line); padding: 13px 15px; background: transparent; color: var(--forest); text-align: left; }
.menu-item:last-child { border-bottom: 0; }
.menu-item:hover, .menu-item:focus-visible, .menu-item.is-selected { background: var(--forest); color: #fff; outline: none; }
.menu-item strong { font-size: .8rem; }
.menu-item span { color: var(--wine); font-size: .65rem; font-weight: 850; white-space: nowrap; }
.menu-item:hover span, .menu-item:focus-visible span, .menu-item.is-selected span { color: var(--gold); }

.workspace-strip { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 24px; align-items: center; margin-top: 25px; padding: 19px 24px; background: var(--forest); color: #fff; }
.strip-label { display: block; margin-bottom: 3px; color: #b8d0c1; font-size: .67rem; letter-spacing: .16em; }
.workspace-strip strong { font-size: 1.02rem; letter-spacing: -.01em; }
.strip-facts { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 17px; color: #d7e8dc; font-size: .76rem; }

.workflow-rail { display: grid; grid-template-columns: minmax(168px, .22fr) minmax(0, 1fr); align-items: stretch; margin: 34px 0 38px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: rgba(251, 251, 247, .42); }
.rail-heading { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; gap: 2px; padding: 17px 18px 17px 0; border-right: 1px solid var(--line); }
.rail-heading .eyebrow { margin-bottom: 1px; }
.rail-heading strong { color: var(--forest); font-size: .86rem; font-weight: 760; letter-spacing: -.01em; }
.eyebrow { margin: 0 0 8px; color: var(--wine); font-size: .66rem; letter-spacing: .16em; font-weight: 850; text-transform: uppercase; }
.workflow-stage-list { border-left: 0; }
.workflow-stage-list .map-node-stage { min-height: 84px; padding: 18px 3px 16px; border-right: 0; background: transparent; text-align: center; }
.workflow-stage-list .map-node-stage .map-node-copy { justify-items: center; gap: 4px; }
.workflow-stage-list .map-node-stage strong { white-space: nowrap; }
.workflow-stage-list .map-node-stage .map-node-stage-en { min-height: 0; color: var(--gold); font-size: .5rem; font-weight: 760; line-height: 1.2; letter-spacing: .1em; text-transform: uppercase; white-space: nowrap; }
.workflow-stage-list .map-node-stage.is-selected .map-node-stage-en { color: var(--gold); }
.workflow-stage-list .map-node-stage::after { content: ""; position: absolute; right: 14px; bottom: -1px; left: 14px; height: 2px; background: var(--wine); opacity: 0; transform: scaleX(.35); transition: opacity .18s ease, transform .24s cubic-bezier(.22, 1, .36, 1); }
.workflow-stage-list .map-node-stage:hover, .workflow-stage-list .map-node-stage:focus-visible, .workflow-stage-list .map-node-stage.is-selected { background: transparent; color: var(--forest); }
.workflow-stage-list .map-node-stage.is-selected::after { opacity: 1; transform: scaleX(1); }
.workflow-stage-list .map-node-stage:focus-visible { outline: 2px solid var(--gold); outline-offset: -5px; }

.view { display: none; }
.view.is-visible { display: block; }
.page-frame { min-height: 420px; padding: 0; background: transparent; }
.section-heading { display: flex; justify-content: space-between; gap: 30px; }
.page-heading { align-items: flex-end; padding-bottom: 28px; border-bottom: 1px solid var(--line); }
.heading-copy { max-width: 760px; }
.page-heading .muted { max-width: 650px; font-size: .95rem; }
.heading-meta { display: flex; align-items: center; gap: 15px; padding-bottom: 3px; color: var(--muted); font-size: .79rem; white-space: nowrap; }
.heading-meta > span { color: var(--forest); font-weight: 800; }
.muted { margin-bottom: 0; color: var(--muted); }
.page-status { display: inline-flex; align-items: center; padding: 6px 0 5px 15px; border-left: 2px solid var(--gold); color: var(--forest); font-size: .78rem; white-space: nowrap; }

.today-layout { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(240px, .55fr); gap: clamp(35px, 7vw, 100px); margin-top: 44px; }
.section-caption { display: flex; align-items: center; gap: 10px; margin: 0 0 14px; color: var(--forest); font-size: .79rem; font-weight: 850; }
.section-caption > span:last-child { color: var(--muted); font-size: .7rem; font-weight: 500; }
.caption-rule { flex: 1; height: 1px; background: var(--line); }
.cards, .list { display: grid; gap: 0; }
.card, .task { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding: 19px 0; border-top: 1px solid var(--line); background: transparent; }
.card:last-child, .task:last-child { border-bottom: 1px solid var(--line); }
.card h3 { margin-top: 7px; font-size: 1.04rem; }
.card p, .task p { margin-bottom: 0; color: var(--muted); font-size: .8rem; }
.card.overdue { border-left: 0; }
.card.blocked { border-left: 0; background: #f8f0d9; padding-right: 12px; padding-left: 12px; }
.side-note { align-self: start; padding: 4px 0 0 26px; border-left: 2px solid var(--wine); }
.note-label { display: block; margin-bottom: 14px; color: var(--wine); font-size: .68rem; font-weight: 850; letter-spacing: .15em; }
.side-note strong { display: block; color: var(--forest); font-size: 1.45rem; line-height: 1.18; letter-spacing: -.035em; }
.side-note p { margin: 15px 0 18px; color: var(--muted); font-size: .82rem; }
.today-heading { display: flex; justify-content: space-between; align-items: flex-end; gap: 30px; }
.today-heading h1 { margin-bottom: 10px; }
.today-heading-tools { display: contents; }
#today, #tasks, #work { position:relative; }
#today > .today-heading, #tasks > .page-heading, #work > .heading { position:relative; height:158px; min-height:158px; align-items:flex-end; padding-bottom:28px; border-bottom:1px solid var(--line); }
#work > .heading { margin-bottom:24px; }
#work > .heading h1 { margin-bottom:10px; }
#work > .heading p { margin-bottom:0; }
#tasks .today-switch-host > .page-status { align-self:flex-start; }
.today-view-switch { display: flex; border: 1px solid var(--line); border-radius:6px; overflow:hidden; background: var(--paper-warm); }
.today-switch-host .today-view-switch { position:absolute; right:86px; bottom:28px; margin:0; }
.today-page-refresh { position:absolute; right:0; bottom:28px; min-width:74px; min-height:40px; margin:0; border:1px solid var(--wine); border-radius:6px; padding:8px 14px; background:var(--wine); color:#fff; font-size:.76rem; font-weight:850; }
.today-page-refresh:hover, .today-page-refresh:focus-visible { border-color:var(--wine); background:#712032; color:#fff; outline:2px solid var(--gold); outline-offset:3px; }
.today-page-refresh:active { transform:translateY(1px); }
.today-view-switch button { position:relative; min-height: 40px; border: 0; border-radius:0; padding: 8px 14px; background: transparent; color: var(--muted); font-size: .76rem; font-weight: 850; white-space:nowrap; }
.today-view-switch button:not(:last-child)::after { content:''; position:absolute; right:0; top:10px; bottom:10px; width:1px; background:var(--line); }
.today-view-switch button:last-child { border-right: 0; }
.today-view-switch button:hover, .today-view-switch button:focus-visible { color: var(--forest); outline: 2px solid var(--gold); outline-offset: -3px; }
.today-view-switch button.is-active { background: var(--forest); color: #fff; }
.today-view-switch button.is-active::after { display:none; }
.today-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 26px 0 42px; border-top: 1px solid var(--forest); border-bottom: 1px solid var(--line); }
.today-summary-item { display: grid; gap: 2px; min-height: 84px; padding: 15px 18px 14px 0; }
.today-summary-item + .today-summary-item { padding-left: 18px; border-left: 1px solid var(--line); }
.today-summary-item span { color: var(--muted); font-size: .68rem; font-weight: 760; letter-spacing: .08em; }
.today-summary-item strong { color: var(--forest); font-size: 1.6rem; line-height: 1.1; font-variant-numeric: tabular-nums; }
.today-summary-item small { color: var(--muted); font-size: .68rem; }
.today-summary.is-over-capacity { border-top-color: var(--wine); }
.today-summary.is-over-capacity .today-summary-item:first-child strong { color: var(--wine); }
.today-ledger { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(280px, .72fr); gap: clamp(34px, 6vw, 76px); }
.today-main-column, .today-side-column { display: grid; align-content: start; gap: 42px; }
.today-block > header { display: flex; justify-content: space-between; align-items: center; min-height: 44px; padding:16px; background:var(--forest); border-bottom: 2px solid var(--forest); }
.today-block > header h2, .today-block > header .ledger-index, .today-block > header .ledger-count { color:var(--paper-warm); }
.today-block > header > div { display: flex; align-items: baseline; gap: 12px; }
.today-block h2 { margin: 0; color: var(--forest); font-size: 1.02rem; letter-spacing: -.015em; }
.ledger-index { color: var(--wine); font: 850 .67rem ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .08em; }
.ledger-count { min-width: 28px; color: var(--muted); font: 750 .76rem ui-monospace, SFMono-Regular, Menlo, monospace; text-align: right; }
.today-confirmation-block > header { border-bottom-color: var(--wine); }
.today-completed-block > header { border-bottom-color: var(--gold); }
.today-list { display: grid; }
.today-entry { border-bottom: 1px solid var(--line); }
.today-entry-primary { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 7px 18px; align-items: start; padding: 16px 0 13px; }
.today-entry-kicker { display: flex; flex-wrap: wrap; gap: 7px 12px; color: var(--wine); font-size: .66rem; font-weight: 850; }
.today-entry h3 { margin: 0; color: var(--ink); font-size: .94rem; letter-spacing: -.012em; }
.today-entry-meta { grid-column: 1; margin: 0; color: var(--muted); font-size: .72rem; }
.today-entry-actions { grid-column: 2; grid-row: 1 / span 3; display: flex; align-items: flex-start; gap: 7px; }
.today-entry-actions button { min-height: 34px; padding: 6px 9px; border: 1px solid var(--line); background: transparent; color: var(--forest); font-size: .68rem; font-weight: 850; }
.today-entry-actions button.today-primary-action { border-color: var(--forest); background: var(--forest); color: #fff; }
.today-entry-actions button:hover, .today-entry-actions button:focus-visible { border-color: var(--forest); outline: 2px solid var(--gold); outline-offset: 2px; }
.today-entry details { margin: 0; padding: 0 0 12px; }
.today-entry summary { width: fit-content; padding: 0; color: var(--muted); font-size: .68rem; font-weight: 760; }
.today-entry dl { display: grid; grid-template-columns: 88px minmax(0, 1fr); gap: 7px 11px; margin: 12px 0 0; font-size: .72rem; }
.today-entry dt { color: var(--muted); }
.today-entry dd { margin: 0; color: var(--ink); overflow-wrap: anywhere; }
.today-empty { margin: 0; padding: 22px 0; border-bottom: 1px solid var(--line); color: var(--muted); font-size: .76rem; }
.today-capacity { padding: 19px 20px; border: 1px solid var(--forest); background: var(--paper-warm); }
.today-capacity > span { display: block; color: var(--wine); font-size: .66rem; font-weight: 850; letter-spacing: .11em; }
.today-capacity strong { display: block; margin: 6px 0 3px; color: var(--forest); font-size: 1.72rem; font-variant-numeric: tabular-nums; }
.today-capacity p { margin: 0 0 15px; color: var(--muted); font-size: .71rem; }
.today-capacity-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.today-capacity-actions .button { flex: 1 1 150px; white-space: nowrap; }
.today-capacity.is-full { border-color: var(--wine); }
.today-capacity.is-full strong { color: var(--wine); }
.today-switch-host { align-self: flex-end; }
.today-switch-host .today-view-switch { margin-left: auto; }
#new-form input[type="checkbox"] { width: auto; min-width: 0; margin-right: 7px; accent-color: var(--forest); }
.text-link { padding: 0; border: 0; background: transparent; color: var(--wine); font-size: .8rem; font-weight: 850; }
.text-link:hover, .text-link:focus-visible { color: var(--forest); outline: none; }
.button { border: 1px solid var(--forest); border-radius: 0; padding: 10px 15px; background: var(--forest); color: #fff; font-size: .79rem; font-weight: 850; transition: background .22s ease, transform .22s ease; }
.button:hover, .button:focus-visible { background: var(--forest-deep); outline: 2px solid rgba(188, 153, 81, .55); outline-offset: 3px; }
.button:active { transform: translateY(1px); }
.button.secondary { border-color: var(--line); background: transparent; color: var(--forest); box-shadow: none; }
.button.secondary:hover, .button.secondary:focus-visible { border-color: var(--forest); background: #e8eee8; }

.metric-grid { display: grid; gap: 0; }
.series-heading { padding-bottom: 31px; }
.series-toolbar { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.series-toolbar label { display: grid; gap: 7px; min-width: 210px; color: var(--forest); font-size: .68rem; font-weight: 850; letter-spacing: .08em; }
.series-toolbar select { min-height: 42px; padding: 8px 36px 8px 12px; border: 1px solid var(--forest); border-radius: 0; background: var(--paper-warm); color: var(--forest); font-family: inherit; font-size: .78rem; font-weight: 800; }
.series-filter { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 0; }
.series-filter button { min-height: 42px; padding: 8px 13px; border: 1px solid var(--line); border-right-width: 0; background: transparent; color: var(--muted); font-size: .72rem; font-weight: 800; }
.series-filter button:last-child { border-right-width: 1px; }
.series-filter button.is-active { border-color: var(--forest); background: var(--forest); color: #fff; }
.series-filter button.is-active + button { border-left-color: var(--forest); }
.series-filter button:focus-visible, .series-toolbar select:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.series-metrics { grid-template-columns: repeat(4, 1fr); margin: 0 0 45px; border-bottom: 1px solid var(--line); }
.metric-grid article { min-height: 132px; padding: 21px 26px 22px 0; }
.metric-grid article + article { padding-left: 25px; border-left: 1px solid var(--line); }
.metric-grid span { display: block; color: var(--muted); font-size: .77rem; }
.metric-grid strong { display: block; margin-top: 9px; color: var(--forest); font-size: 1.37rem; letter-spacing: -.035em; }
.metric-grid small { display: block; margin-top: 10px; color: var(--muted); font-size: .74rem; }
.series-board { padding: 0; background: transparent; color: var(--ink); }
.series-board .section-caption { margin-bottom: 17px; color: var(--forest); }
.series-board .section-caption > span:last-child { color: var(--muted); }
.series-board .caption-rule { background: var(--line); }
.series-card-grid,.pipeline-style-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); align-items: start; gap: 14px; }
.pipeline-style-grid { align-items: stretch; }
.series-product-card { position:relative; min-width: 0; overflow:hidden; border: 1px solid var(--line); border-radius:0; background: var(--paper-warm); box-shadow: 0 0 0 rgba(18, 63, 52, 0); transition: transform .2s ease, border-color .2s ease; }
.series-product-card::after { content:""; position:absolute; inset:0; z-index:1; background:rgba(0,0,0,.16); opacity:0; pointer-events:none; transition:opacity .16s ease; }
.series-product-card:hover { transform: translateY(-2px); border-color: var(--line); box-shadow:none; }
.series-product-card.is-related-hover::after,.series-product-card.is-related-open::after { opacity:1; }
.series-product-card > * { position:relative; z-index:2; }
.series-product-card > button { display: grid; grid-template-rows: auto auto; align-content: start; width: 100%; height: auto; padding: 0; border: 0; background: transparent; color: inherit; text-align: left; cursor: pointer; }
.series-product-card > button:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
.series-product-image { position: relative; display: grid; place-items: center; aspect-ratio: 4 / 3; overflow: hidden; background: #fff; }
.series-product-image img { width: 100%; height: 100%; object-fit: contain; object-position: center; }
.product-white-frame,.pipeline-live .product-white-frame { position:relative;display:block;width:100%;aspect-ratio:1;min-height:0;overflow:hidden;background:#fff; }
.series-product-image.product-white-frame { width:calc(100% - 20px); margin:10px 10px 0; aspect-ratio:4 / 3; }
.product-white-frame>img,.pipeline-live .product-white-frame>img { position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;max-width:none;max-height:none;margin:0;object-fit:contain;object-position:center; }
.product-white-frame>img[data-white-fitted],.pipeline-live .product-white-frame>img[data-white-fitted] { inset:auto;width:var(--white-width);height:var(--white-height);left:var(--white-left);top:var(--white-top); }
.series-product-image em { position: absolute; top: 11px; left: 11px; padding: 5px 8px; background: rgba(244, 244, 239, .94); color: var(--forest); font-size: .63rem; font-style: normal; font-weight: 850; letter-spacing: .06em; }
.series-image-empty { display: grid; width: 100%; min-height: 100%; place-items: center; padding: 20px; background: #e7e7df; color: var(--muted); font-size: .72rem; }
.series-product-copy { display: grid; align-content: start; min-height: 0; padding: 10px 12px 0; }
.series-product-index { color: var(--wine); font: 850 .64rem ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .07em; }
.series-product-copy > strong { margin-top: 4px; color: var(--forest); font-size: .94rem; line-height: 1.25; }
.series-product-copy > small { min-height: 0; margin-top: 3px; color: var(--muted); font-size: .68rem; line-height: 1.35; }
.series-product-status { width: fit-content; margin-top: 8px; padding: 3px 6px; border: 1px solid #9bc5a7; background: #e0f0e3; color: var(--success); font-size: .61rem; font-weight: 850; }
.series-product-blocker { min-height: 0; margin-top: 6px; color: var(--wine); font-size: .64rem; line-height: 1.35; }
.series-product-open { display: flex; align-items: center; justify-content: space-between; margin: 8px -12px 0; padding: 9px 12px 10px; border-top: 1px solid var(--line); color: var(--forest); font-size: .64rem; font-weight: 850; }
.series-product-open b { color: var(--gold); font-size: 1rem; }
.series-empty { grid-column: 1 / -1; padding: 46px 20px; border: 1px solid var(--line); color: var(--muted); text-align: center; }
.series-product-detail { margin-top: 7px; }
.series-product-detail > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 28px; padding: 24px 0 25px; border-bottom: 2px solid var(--forest); background: transparent; color: var(--ink); }
.series-product-detail > header .eyebrow { color: var(--wine); }
.series-product-detail h2 { margin: 8px 0 5px; color: var(--forest); font-size: clamp(2rem, 4vw, 3.6rem); letter-spacing: -.045em; }
.series-product-detail header p { margin: 0; color: var(--muted); }
.series-detail-summary { display: flex; justify-content: space-between; gap: 20px; padding: 15px 0; border-bottom: 1px solid var(--line); font-size: .74rem; }
.series-detail-summary span { color: var(--success); font-weight: 850; }
.series-detail-summary strong { color: var(--wine); }
.series-detail-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-bottom: 1px solid var(--line); }
.series-detail-facts > div { min-height: 105px; padding: 20px 22px 18px 0; }
.series-detail-facts > div:not(:nth-child(3n + 1)) { padding-left: 22px; border-left: 1px solid var(--line); }
.series-detail-facts > div:nth-child(n + 4) { border-top: 1px solid var(--line); }
.series-detail-facts dt, .series-record-grid span { color: var(--muted); font-size: .68rem; }
.series-detail-facts dd { margin: 9px 0 0; color: var(--ink); font-size: .82rem; line-height: 1.5; overflow-wrap: anywhere; }
.series-record-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 31px 0 46px; background: var(--forest); color: #fff; }
.series-record-grid section { min-height: 100px; padding: 20px; border-right: 1px solid var(--line-dark); }
.series-record-grid section:last-child { border-right: 0; }
.series-record-grid span { color: #bfd4c3; }
.series-record-grid strong { display: block; margin-top: 10px; color: #fff; font-size: .82rem; overflow-wrap: anywhere; }
.series-detail-media > .section-caption { margin-bottom: 14px; }
.series-media-group { padding: 20px 0 30px; border-top: 1px solid var(--line); }
.series-media-group h4 { display: flex; align-items: center; gap: 8px; margin: 0 0 14px; color: var(--forest); font-size: .82rem; }
.series-media-group h4 span { color: var(--wine); font: 850 .66rem ui-monospace, SFMono-Regular, Menlo, monospace; }
.series-media-group > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.series-media-group figure { margin: 0; border: 1px solid var(--line); background: var(--paper-warm); }
.series-media-group img { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; background: #e7e7df; }
.series-media-group figcaption { display: grid; gap: 4px; padding: 12px; }
.series-media-group figcaption strong { color: var(--forest); font-size: .72rem; }
.series-media-group figcaption small { color: var(--muted); font-size: .65rem; line-height: 1.45; }

.operating-map { display: grid; gap: 18px; margin-top: 34px; }
.map-layer { min-width: 0; border: 1px solid var(--line); background: rgba(251, 251, 247, .64); }
.map-layer-heading { display: flex; justify-content: space-between; align-items: baseline; gap: 18px; min-height: 62px; padding: 16px 19px 15px; border-bottom: 1px solid var(--line); }
.map-layer-heading span { color: var(--wine); font-size: .66rem; font-weight: 850; letter-spacing: .16em; }
.map-layer-heading h2 { margin: 0; color: var(--forest); font-size: 1rem; letter-spacing: -.02em; }
.capability-layer { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.operating-stages { display: grid; grid-template-columns: repeat(7, minmax(116px, 1fr)); overflow-x: auto; scrollbar-color: var(--gold) transparent; }
.workflow-rail .workflow-stage-list { grid-template-columns: repeat(8, minmax(0, 1fr)); overflow: visible; }
.topbar-tools .personal-menu { order: 10; }
.topbar-tools #my-menu-trigger { color: #fff; border: 1px solid #668578; padding: 10px 14px; border-radius: 20px; }
.personal-menu .menu-panel { right: 0; left: auto; }
body:not([data-member]) .personal-menu { display: none; }
.tabs [data-map-id].is-selected { color: var(--forest); box-shadow: inset 0 -3px var(--wine); }
.module-subnav { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 24px; }
.module-subnav button { padding: 10px 18px; border: 1px solid var(--line); background: var(--paper-warm); color: var(--forest); cursor: pointer; }
.module-subnav button[aria-pressed="true"] { background: var(--forest); color: white; }
.knowledge-layer { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); }
.map-node { position: relative; display: grid; align-content: space-between; gap: 16px; min-width: 0; min-height: 132px; padding: 18px; border: 0; border-right: 1px solid var(--line); background: transparent; color: var(--ink); text-align: left; transition: background .2s ease, color .2s ease, transform .2s ease; }
.map-node:last-child { border-right: 0; }
.map-node:hover { background: #e7ede6; color: var(--forest); }
.map-node:focus-visible { z-index: 2; outline: 3px solid var(--gold); outline-offset: -3px; }
.map-node.is-selected { background: var(--forest); color: #fff; }
.map-node-stage { min-height: 78px; }
.map-node-stage .map-node-copy { align-self: center; }
.map-node-copy { display: grid; gap: 7px; align-self: end; }
.map-node-copy strong { color: inherit; font-size: 1rem; letter-spacing: -.02em; }
.map-node-copy small { min-height: 3.8em; color: var(--muted); font-size: .69rem; line-height: 1.45; }
.map-node.is-selected .map-node-copy small { color: #c8ddd0; }
.map-node-meta { color: var(--wine); font-size: .65rem; font-weight: 850; }
.map-node.is-selected .map-node-meta { color: var(--gold); }
.map-lower-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(250px, .75fr); gap: 18px; }
.support-layer { min-height: 132px; }
.support-node { display: grid; gap: 11px; padding: 20px; }
.support-node strong { color: var(--forest); font-size: 1rem; }
.support-node p { margin: 0; color: var(--muted); font-size: .78rem; }
.support-node span { width: fit-content; border-bottom: 1px solid var(--gold); color: var(--wine); font-size: .67rem; font-weight: 850; }
.operating-detail { margin-top: 18px; padding: 24px; border: 1px solid var(--forest); background: var(--paper-warm); box-shadow: var(--shadow); }
.operating-detail[hidden] { display: none; }
.knowledge-detail { display: grid; gap: 22px; }
.knowledge-detail-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.knowledge-detail-actions { display: flex; align-items: flex-start; gap: 18px; flex-shrink: 0; }
.knowledge-review-action { border: 1px solid var(--forest); padding: 8px 15px; background: var(--forest); color: #fff; font-size: .72rem; font-weight: 850; }
.knowledge-review-action:hover, .knowledge-review-action:focus-visible { background: var(--forest-deep); outline: 2px solid var(--gold); outline-offset: 2px; }
.knowledge-detail-header h2 { margin: 0 0 8px; color: var(--forest); font-size: clamp(1.75rem, 3vw, 2.65rem); letter-spacing: -.04em; }
.knowledge-detail-header p:last-child { max-width: 68ch; margin: 0; color: var(--muted); line-height: 1.65; }
.knowledge-boundary { display: grid; grid-template-columns: auto 1fr auto; gap: 15px; align-items: center; padding: 16px 18px; border-left: 3px solid var(--gold); background: #edf1e9; }
.knowledge-boundary > span { color: var(--wine); font-size: .66rem; font-weight: 850; letter-spacing: .12em; }
.knowledge-boundary p { margin: 0; color: var(--forest); font-size: .76rem; line-height: 1.55; }
.knowledge-handoff { border: 0; border-bottom: 1px solid var(--wine); padding: 3px 0; background: transparent; color: var(--wine); font-size: .68rem; font-weight: 850; cursor: pointer; white-space: nowrap; }
.knowledge-guide-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.knowledge-guide-grid.brand-guide-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.knowledge-guide-card { min-height: 190px; padding: 18px; border: 1px solid var(--line); background: rgba(251, 251, 247, .7); }
.knowledge-guide-card header { display: flex; gap: 12px; align-items: flex-start; padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.knowledge-guide-card header > span { color: var(--wine); font: 850 .68rem ui-monospace, SFMono-Regular, Menlo, monospace; }
.knowledge-guide-card h3 { margin: 0; color: var(--forest); font-size: .9rem; }
.knowledge-guide-card header p { margin: 4px 0 0; color: var(--muted); font-size: .68rem; line-height: 1.45; }
.knowledge-guide-card ul { display: grid; gap: 8px; margin: 16px 0 0; padding: 0; list-style: none; }
.knowledge-guide-card li { position: relative; padding-left: 14px; color: var(--ink); font-size: .72rem; line-height: 1.45; }
.knowledge-guide-card li::before { position: absolute; top: .5em; left: 0; width: 5px; height: 5px; border-radius: 50%; background: var(--gold); content: ''; }
.knowledge-sources { border: 1px solid var(--line); background: rgba(251, 251, 247, .7); }
.knowledge-sources > header { display: flex; justify-content: space-between; align-items: end; gap: 20px; padding: 15px 18px; border-bottom: 1px solid var(--line); }
.knowledge-sources h3 { margin: 3px 0 0; color: var(--forest); font-size: .96rem; }
.knowledge-sources > header > span { color: var(--muted); font-size: .68rem; }
.knowledge-sources ul { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.knowledge-sources li { display: grid; grid-template-columns: 86px 1fr auto; gap: 12px; align-items: center; padding: 13px 18px; border-bottom: 1px solid var(--line); color: var(--ink); font-size: .72rem; }
.knowledge-sources li:last-child { border-bottom: 0; }
.knowledge-topic-id { color: var(--wine); font: 850 .64rem ui-monospace, SFMono-Regular, Menlo, monospace; }
.knowledge-topic-state { color: var(--muted); font-size: .62rem; font-weight: 850; letter-spacing: .05em; }
.knowledge-topic-state-verified, .knowledge-topic-state-recorded { color: var(--forest); }
.knowledge-topic-state-to_validate { color: var(--warning); }
.knowledge-source-empty { grid-template-columns: 1fr !important; color: var(--muted) !important; }
.knowledge-event-note { margin: 0; padding: 12px 18px 14px; border-top: 1px dashed var(--line); color: var(--muted); font-size: .68rem; }
.knowledge-tools { margin-top: 0; padding-top: 4px; }
.operating-detail.product-data-page { padding: 0; overflow: visible; border-color: transparent; box-shadow: none; background:#fff !important; background-color:#fff !important; }
.operating-detail.product-data-page > .page-heading { display:none !important; }
.operating-detail.product-data-page .product-data-heading { background:transparent !important; }
.product-data-loading, .product-data-error { min-height: 240px; display: grid; place-items: center; padding: 32px; color: var(--muted); background: var(--paper-warm); }
.product-data-error { color: var(--wine); }
.product-data-native { --product-card-radius: 12px; position: relative; padding: clamp(26px, 3vw, 42px); background: transparent; color: var(--ink); }
.product-data-heading { display:flex; justify-content:space-between; align-items:center; gap:32px; padding:0 0 26px; border-bottom:1px solid var(--line); }
.product-data-heading h2 { margin:6px 0 8px; color:var(--forest); font-size:clamp(1.9rem,3vw,2.65rem); letter-spacing:-.04em; }
.product-data-heading p:not(.product-data-eyebrow) { margin:0; max-width:62ch; color:var(--muted); font-size:.82rem; line-height:1.6; }
.product-data-eyebrow { margin:0; color:var(--wine); font:850 .65rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace; letter-spacing:.08em; }
.product-data-heading-meta { display:flex; align-items:center; gap:16px; color:var(--muted); font-size:.7rem; white-space:nowrap; }
.product-data-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:22px 0 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.product-data-metric { min-width:0; padding:17px 18px 16px 0; }
.product-data-metric + .product-data-metric { padding-left:18px; border-left:1px solid var(--line); }
.product-data-metric span,.product-data-metric small { display:block; color:var(--muted); font-size:.68rem; }
.product-data-metric strong { display:block; margin:6px 0 3px; color:var(--forest); font-size:1.55rem; letter-spacing:-.04em; }
.product-data-controls { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,220px) minmax(240px,1.25fr); gap:18px; align-items:end; padding:22px 0; border-bottom:1px solid var(--line); }
.product-data-view-tabs { display:flex; gap:22px; align-items:center; min-height:42px; }
.product-data-view-tabs button { position:relative; border:0; padding:9px 0 12px; background:transparent; color:var(--muted); font-size:.76rem; font-weight:850; }
.product-data-view-tabs button::after { content:""; position:absolute; right:0; bottom:0; left:0; height:2px; background:transparent; }
.product-data-view-tabs button.is-active { color:var(--forest); }
.product-data-view-tabs button.is-active::after { background:var(--wine); }
.product-data-view-tabs button:focus-visible,.product-data-close:focus-visible { outline:2px solid var(--gold); outline-offset:4px; }
.product-data-select,.product-data-search { display:grid; gap:6px; color:var(--muted); font-size:.68rem; font-weight:850; }
.product-data-select select,.product-data-search input { width:100%; border:1px solid var(--line); border-radius:8px; padding:10px 11px; background:var(--paper-warm); color:var(--ink); }
.product-data-select select:focus,.product-data-search input:focus { border-color:var(--forest); outline:2px solid rgba(188,153,81,.34); outline-offset:2px; }
.product-data-result-bar { display:flex; justify-content:space-between; gap:18px; padding:16px 0; color:var(--muted); font-size:.7rem; }
.product-data-result-bar span:first-child { color:var(--forest); font-weight:850; }
.product-data-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:14px; }
.product-data-card { position:relative; display:grid; grid-template-rows:auto auto auto; min-width:0; padding:0; overflow:hidden; border:1px solid var(--line); border-radius:var(--product-card-radius); background:var(--paper-warm); color:inherit; text-align:left; cursor:pointer; transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease; }
.product-data-card:is(:hover,:focus,:focus-visible,:active,.is-selected) { background:var(--paper-warm); }
.product-data-card:hover,.product-data-card:focus-visible { border-color:var(--forest); box-shadow:0 8px 22px rgba(18,63,52,.08); outline:none; transform:translateY(-2px); }
.product-data-card-top { display:flex; justify-content:space-between; gap:8px; padding:12px 13px 0; color:var(--muted); font:850 .62rem/1.2 ui-monospace,SFMono-Regular,Menlo,monospace; }
.product-data-code { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.product-data-hot { color:var(--wine); letter-spacing:.08em; }
.product-data-image { display:grid; place-items:center; width:100%; aspect-ratio:1 / 1; min-width:0; min-height:0; overflow:hidden; padding:10px; }
.product-data-image img { display:block; width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; object-position:center; }
.product-data-image-empty { color:var(--muted); font-size:.72rem; }
.product-data-card-body { display:grid; align-content:start; min-height:0; gap:6px; padding:12px 14px 16px; }
.product-data-card-body strong { overflow:hidden; color:var(--forest); font-size:.9rem; line-height:1.35; text-overflow:ellipsis; white-space:nowrap; }
.product-data-card-body > span:not(.product-data-card-meta) { color:var(--muted); font-size:.68rem; }
.product-data-card-meta { color:var(--ink); font-size:.68rem; line-height:1.45; }
.product-data-empty { grid-column:1 / -1; padding:48px 0; color:var(--muted); text-align:center; }
.product-data-drawer { position:fixed; z-index:20; inset:0; display:flex; justify-content:flex-end; background:rgba(23,35,31,.18); }
.product-data-drawer[hidden] { display:none; }
.product-data-drawer-content { width:min(680px,92vw); height:100%; overflow:auto; padding:30px; background:var(--paper); box-shadow:-12px 0 30px rgba(23,35,31,.12); }
.product-data-drawer-head { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; padding-bottom:20px; border-bottom:1px solid var(--line); }
.product-data-drawer-head h3 { margin:6px 0 6px; color:var(--forest); font-size:1.35rem; }
.product-data-drawer-head p { margin:0; color:var(--muted); font-size:.72rem; }
.product-data-close { border:0; border-bottom:1px solid var(--wine); padding:3px 0; background:transparent; color:var(--wine); font-size:.72rem; font-weight:850; }
.product-data-detail-hero { display:grid; grid-template-columns:200px 1fr; gap:24px; padding:24px 0; border-bottom:1px solid var(--line); }
.product-data-detail-image { display:grid; place-items:center; height:220px; padding:12px; border:1px solid var(--line); background:var(--paper-warm); }
.product-data-detail-image img { width:100%; height:100%; object-fit:contain; object-position:center; }
.product-data-detail-image span { color:var(--muted); font-size:.72rem; }
.product-data-detail-facts { display:grid; align-content:start; gap:14px; }
.product-data-detail-facts div { display:grid; gap:4px; }
.product-data-detail-facts span { color:var(--muted); font-size:.67rem; }
.product-data-detail-facts strong { color:var(--forest); font-size:.8rem; line-height:1.45; }
.product-data-detail-section { padding:20px 0; border-bottom:1px solid var(--line); }
.product-data-detail-section h4 { margin:0 0 10px; color:var(--forest); font-size:.86rem; }
.product-data-detail-section p { margin:6px 0; color:var(--muted); font-size:.74rem; line-height:1.6; }
.product-data-table-wrap { overflow:auto; border:1px solid var(--line); }
.product-data-table { width:100%; border-collapse:collapse; font-size:.68rem; }
.product-data-table th,.product-data-table td { padding:9px 10px; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
.product-data-table th { color:var(--muted); font-weight:850; background:var(--paper-warm); }
.product-data-table td { color:var(--ink); }
.product-data-detail-empty { padding:12px 0; }
.operating-detail-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 24px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.operating-detail-header h2 { margin: 0 0 8px; color: var(--forest); font-size: clamp(1.75rem, 3vw, 2.65rem); }
.operating-detail-header p:last-child { max-width: 58ch; margin: 0; color: var(--muted); }
.detail-close { border: 0; border-bottom: 1px solid var(--wine); padding: 3px 0; background: transparent; color: var(--wine); font-size: .72rem; font-weight: 850; }
.detail-close:hover, .detail-close:focus-visible { color: var(--forest); outline: 2px solid var(--gold); outline-offset: 4px; }
.detail-facts { display: flex; flex-wrap: wrap; gap: 9px 24px; padding: 16px 0; color: var(--muted); font-size: .72rem; }
.detail-tools { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.detail-tools h3 { grid-column: 1 / -1; margin: 5px 0 7px; color: var(--forest); font-size: .82rem; letter-spacing: .04em; }
.detail-tasks { margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--line); }
.detail-tasks h3 { margin: 0; color: var(--forest); font-size: .82rem; letter-spacing: .04em; }
.control-page-tabs { display: flex; width: min(440px, 100%); margin-bottom: 20px; border: 1px solid var(--line); }
.control-page-tabs button, .control-scope-tabs button { min-height: 42px; border: 0; border-right: 1px solid var(--line); padding: 10px 24px; background: transparent; color: var(--muted); font-weight: 850; cursor: pointer; }
.control-page-tabs button:last-child, .control-scope-tabs button:last-child { border-right: 0; }
.control-page-tabs button[aria-pressed="true"], .control-scope-tabs button[aria-pressed="true"] { background: var(--forest); color: #fff; }
.control-detail-header { align-items: end; }
.control-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 18px 0 0; }
.control-scope-tabs { display: flex; border: 1px solid var(--line); }
.control-scope-tabs button { min-width: 104px; }
.control-toolbar > p { display: flex; gap: 15px; margin: 0; color: var(--muted); font-size: .72rem; }
.control-toolbar > p strong { color: var(--forest); }
.control-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 22px 0 26px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.control-metrics article { min-width: 0; padding: 18px 22px 17px; }
.control-metrics article:first-child { padding-left: 0; }
.control-metrics article + article { border-left: 1px solid var(--line); }
.control-metrics span, .control-metrics small { display: block; color: var(--muted); font-size: .68rem; }
.control-metrics strong { display: block; margin: 7px 0 5px; color: var(--forest); font-size: 1.55rem; letter-spacing: -.04em; }
.sales-control-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(390px, .95fr); gap: 18px; align-items: start; }
.sales-ledgers { display: grid; gap: 18px; }
.control-ledger, .product-watch { border: 1px solid var(--line); background: rgba(251, 251, 247, .7); }
.control-ledger > header, .product-watch > header, .single-product-detail > header { display: flex; justify-content: space-between; align-items: end; gap: 20px; padding: 16px 18px; border-bottom: 1px solid var(--line); background: var(--paper-warm); color: var(--ink); }
.control-ledger h3, .product-watch h3, .single-product-detail h3 { margin: 3px 0 0; color: var(--forest); font-size: 1rem; }
.control-ledger > header > span, .single-product-detail > header > span { color: var(--muted); font-size: .67rem; }
.ledger-columns { display: grid; grid-template-columns: minmax(190px, 1.6fr) repeat(4, minmax(72px, .7fr)) minmax(66px, .55fr); gap: 12px; padding: 10px 18px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: .64rem; }
.ledger-row { display: grid; grid-template-columns: 28px minmax(150px, 1.45fr) repeat(4, minmax(72px, .7fr)) minmax(66px, .55fr); gap: 12px; align-items: center; padding: 15px 18px; }
.ledger-row > b { color: var(--wine); font-size: .75rem; }
.ledger-row div strong { color: var(--forest); font-size: .77rem; }
.ledger-row div p { margin: 3px 0 0; color: var(--muted); font-size: .66rem; }
.ledger-row > span { color: var(--muted); font-size: .67rem; }
.ledger-row > em { width: fit-content; padding: 3px 7px; background: #f5ead4; color: var(--warning); font-size: .64rem; font-style: normal; font-weight: 850; }
.ledger-empty { padding: 24px 18px; }
.ledger-empty strong { color: var(--forest); font-size: .84rem; }
.ledger-empty p { margin: 6px 0 0; color: var(--muted); font-size: .72rem; }
.text-action { border: 0; border-bottom: 1px solid var(--wine); padding: 2px 0; background: transparent; color: var(--wine); font-size: .7rem; font-weight: 850; }
.product-selector { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 12px; align-items: center; padding: 13px 18px; border-bottom: 1px solid var(--line); }
.product-selector strong { color: var(--forest); font-size: .78rem; }
.product-selector span { color: var(--muted); font-size: .68rem; }
.product-selector button { border: 0; border-bottom: 1px solid var(--forest); padding: 2px 0; background: transparent; color: var(--forest); font-size: .67rem; font-weight: 850; }
.single-product-detail > header { padding: 14px 18px; background: #edf1e9; }
.product-module { padding: 0 18px 13px; }
.product-module + .product-module { border-top: 1px solid var(--line); }
.product-module > header { display: grid; grid-template-columns: 25px minmax(0, 1fr) auto; gap: 8px; align-items: center; padding: 12px 0 9px; background: transparent; color: var(--ink); }
.product-module > header span { color: var(--wine); font: 850 .62rem ui-monospace, SFMono-Regular, Menlo, monospace; }
.product-module h4 { margin: 0; color: var(--forest); font-size: .78rem; }
.product-module > header b { color: var(--warning); font-size: .62rem; }
.product-module dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.product-module dl div { min-width: 0; padding: 7px 8px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.product-module dt { color: var(--muted); font-size: .58rem; }
.product-module dd { margin: 3px 0 0; overflow-wrap: anywhere; color: var(--ink); font-size: .64rem; }
.control-placeholder { display: grid; grid-template-columns: minmax(220px, .65fr) minmax(0, 1.35fr); gap: 42px; margin-top: 24px; padding: 28px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.control-placeholder h3 { margin: 7px 0; color: var(--forest); font-size: 1.2rem; }
.control-placeholder p { margin: 0; color: var(--muted); font-size: .77rem; }
.control-section-index { color: var(--wine); font: 850 .68rem ui-monospace, SFMono-Regular, Menlo, monospace; }
.control-placeholder dl { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.control-placeholder dl div { padding: 13px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.control-placeholder dt { color: var(--muted); font-size: .66rem; }
.control-placeholder dd { margin: 5px 0 0; color: var(--forest); font-size: .76rem; font-weight: 850; }
.control-related-tools { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.control-related-tools h3 { margin: 0 0 10px; color: var(--forest); font-size: .76rem; }
.control-related-tools > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.system-entry { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 4px 15px; align-items: center; min-width: 0; padding: 13px 15px; border: 1px solid var(--line); background: var(--paper-warm); color: var(--ink); text-decoration: none; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.system-entry:hover, .system-entry:focus-visible { border-color: var(--forest); background: #fff; outline: none; transform: translateY(-1px); }
.system-primary { border-color: var(--forest); background: var(--forest); color: #fff; }
.system-primary:hover, .system-primary:focus-visible { border-color: var(--forest); background: #194c3e; color: #fff; }
.system-entry-title { min-width: 0; overflow: hidden; color: inherit; font-size: .92rem; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; }
.system-entry-meta { grid-column: 1; color: var(--muted); font-size: .7rem; }
.system-primary .system-entry-meta { color: #c8ddd0; }
.system-entry-open { grid-column: 2; grid-row: 1 / span 2; color: var(--wine); font-size: .71rem; font-weight: 850; white-space: nowrap; }
.system-primary .system-entry-open { color: #e4c783; }
.system-variants { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.system-variants .system-entry { padding: 10px 11px; }
.system-variants .system-entry-title { font-size: .77rem; }
.system-variants .system-entry-meta { font-size: .66rem; }
.system-variants .system-entry-open { font-size: .64rem; }
.system-entry.is-missing { border-style: dashed; background: transparent; color: var(--muted); }
.system-entry-missing { grid-column: 2; grid-row: 1 / span 2; color: var(--warning); font-size: .7rem; font-weight: 850; white-space: nowrap; }

.task-list, .evidence-list { margin-top: 37px; }
.task strong { color: var(--forest); font-size: .97rem; }
.task .pill, .card .pill { flex: 0 0 auto; }
.notice { margin-top: 23px; padding: 16px 18px; border-left: 2px solid var(--gold); background: #eef2e9; color: var(--forest); font-size: .81rem; }
.empty { padding: 28px 0; color: var(--muted); }

.employee-metrics { grid-template-columns: repeat(5, 1fr); margin: 37px 0 28px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.employee-metrics article { min-height: 108px; padding: 17px 15px 16px 0; }
.employee-metrics article + article { padding-left: 15px; }
.employee-metrics strong { font-size: 1.58rem; }
.employee-groups { display: flex; gap: 22px; margin: 0 0 20px; border-bottom: 1px solid var(--line); }
.group-tab { position: relative; border: 0; padding: 10px 0 12px; background: transparent; color: var(--muted); font-size: .82rem; font-weight: 850; }
.group-tab::after { content: ""; position: absolute; right: 0; bottom: -1px; left: 0; height: 2px; background: transparent; }
.group-tab.is-active { color: var(--forest); }
.group-tab.is-active::after { background: var(--wine); }
.directory-toolbar { display: grid; grid-template-columns: minmax(220px, 2fr) repeat(3, minmax(135px, 1fr)); gap: 14px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.directory-toolbar label { display: grid; gap: 6px; color: var(--muted); font-size: .74rem; font-weight: 850; }
.directory-toolbar input, .directory-toolbar select { width: 100%; border: 1px solid var(--line); border-radius: 0; padding: 10px 11px; background: var(--paper-warm); color: var(--ink); }
.directory-toolbar input:focus, .directory-toolbar select:focus { border-color: var(--forest); outline: 2px solid rgba(188, 153, 81, .38); outline-offset: 2px; }
.directory-result { margin: 18px 0 4px; color: var(--muted); font-size: .82rem; }
.employee-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 36px; }
.employee-card { display: grid; gap: 14px; padding: 23px 0 24px; border-bottom: 1px solid var(--line); }
.employee-card-header { display: flex; justify-content: space-between; align-items: start; gap: 16px; }
.employee-card h3 { margin: 7px 0 3px; font-size: 1.05rem; }
.employee-card-header p { margin: 0; color: var(--muted); font-size: .8rem; }
.employee-id { color: var(--wine); font: 850 .73rem/1.2 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .06em; }
.status-chip { display: inline-flex; align-items: center; padding: 3px 8px; border: 1px solid var(--line); color: var(--muted); font-size: .7rem; font-weight: 850; white-space: nowrap; }
.status-active { border-color: #9bc5a7; background: #e0f0e3; color: var(--success); } .status-idle { background: #edf0f6; color: #4a628d; } .status-notLoaded { background: #f0ece8; color: #75665b; } .status-archived { background: #ece8e2; color: #75685d; }
.employee-responsibility { margin: 0; color: var(--ink); font-size: .88rem; }
.employee-details { display: grid; gap: 9px; margin: 0; }
.employee-details div { display: grid; gap: 3px; }
.employee-details dt { color: var(--muted); font-size: .7rem; }
.employee-details dd { margin: 0; }
.employee-details code { display: block; overflow-wrap: anywhere; color: #405047; font: .7rem/1.45 ui-monospace, SFMono-Regular, Menlo, monospace; }
.employee-badges, .actions { display: flex; flex-wrap: wrap; gap: 7px; }
.pill { display: inline-block; border-radius: 999px; padding: 3px 9px; background: #e6f0e8; color: var(--success); font-size: .7rem; font-weight: 850; }
.pill.pending, .pill.inferred, .pill.to_validate { background: #fff0d0; color: var(--warning); }
.link-button.is-disabled { opacity: .55; cursor: not-allowed; }

@media (max-width: 1050px) {
  .topbar { grid-template-columns: 1fr auto; }
  .brand-center { grid-column: 1 / -1; grid-row: 1; }
  .topbar-meta { grid-column: 1; grid-row: 2; }
  .topbar-tools { grid-column: 2; grid-row: 2; }
  .today-layout { grid-template-columns: minmax(0, 1fr) 250px; gap: 44px; }
  .today-ledger { grid-template-columns: minmax(0, 1.45fr) minmax(250px, .75fr); gap: 42px; }
  .employee-metrics { grid-template-columns: repeat(3, 1fr); }
  .sales-control-grid { grid-template-columns: 1fr; }
  .series-card-grid, .pipeline-style-grid, .series-media-group > div { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .knowledge-guide-grid.brand-guide-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  h1 { font-size: clamp(2.5rem, 12vw, 4.1rem); }
  .topbar { display: grid; grid-template-columns: 1fr; min-height: 0; gap: 14px; padding: 24px 20px 20px; }
  .brand-center, .topbar-meta, .topbar-tools { grid-column: 1; grid-row: auto; justify-self: center; }
  .brand-logo { width: min(320px, 82vw); max-height: 98px; }
  .brand-context { font-size: .63rem; }
  .topbar-meta { justify-self: start; }
  .topbar-tools { width: 100%; justify-content: space-between; align-items: flex-start; }
  .workspace-meta { text-align: left; }
  .shell { padding-inline: 20px; }
  .tabs { gap: 0 21px; padding-block: 4px; }
  .tabs > .tab { font-size: 1rem; }
  .tabs::before { content: ''; order: 1; flex-basis: 100%; }
  .tabs > .nav-menu { order: 2; }
  .menu-panel, .nav-menu:nth-last-child(-n + 2) .menu-panel { position: fixed; top: var(--menu-top, 0); right: 20px; left: 20px; width: auto; min-width: 0; }
  .workspace-strip { grid-template-columns: 1fr; gap: 14px; padding: 18px; }
  .strip-facts { justify-content: flex-start; gap: 8px 14px; }
  .workflow-rail { grid-template-columns: 1fr; margin-top: 38px; margin-bottom: 41px; }
  .rail-heading { gap: 3px; padding: 15px 0 13px; border-right: 0; border-bottom: 1px solid var(--line); }
  .page-heading, .section-heading { align-items: flex-start; flex-direction: column; gap: 19px; }
  .page-heading { padding-bottom: 26px; }
  .heading-meta { width: 100%; justify-content: space-between; }
  .page-status { padding-left: 0; border-left: 0; }
  .today-layout { grid-template-columns: 1fr; gap: 39px; margin-top: 35px; }
  .today-heading { align-items: flex-start; flex-direction: column; width: 100%; }
  .today-view-switch { width: 100%; }
  #today > .today-heading, #tasks > .page-heading, #work > .heading { height:260px; min-height:260px; }
  .today-switch-host .today-view-switch { position:absolute; right:86px; bottom:28px; left:0; width:auto; }
  .today-page-refresh { bottom:28px; }
  .today-view-switch button { flex: 1; min-width:0; padding-inline:5px; font-size:.68rem; }
  .today-switch-host { align-self: stretch; width: 100%; }
  .today-switch-host .today-view-switch { margin-left: 0; }
  .today-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-bottom: 34px; }
  .today-summary-item:nth-child(3) { padding-left: 0; border-top: 1px solid var(--line); border-left: 0; }
  .today-summary-item:nth-child(4) { border-top: 1px solid var(--line); }
  .today-ledger { grid-template-columns: 1fr; gap: 42px; }
  .today-entry-primary { grid-template-columns: minmax(0, 1fr); }
  .today-entry-actions { grid-column: 1; grid-row: auto; padding-top: 4px; }
  .side-note { padding: 22px 0 0; border-top: 2px solid var(--wine); border-left: 0; }
  .series-toolbar { align-items: stretch; flex-direction: column; }
  .series-toolbar label { min-width: 0; }
  .series-filter { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .series-filter button, .series-filter button:last-child { border: 1px solid var(--line); }
  .series-filter button.is-active { border-color: var(--forest); }
  .series-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .metric-grid article, .metric-grid article + article { min-height: 0; padding: 17px 0; border-left: 0; }
  .metric-grid article + article { border-top: 1px solid var(--line); }
  .series-metrics article:nth-child(even) { padding-left: 16px; border-left: 1px solid var(--line); }
  .series-card-grid, .pipeline-style-grid, .series-media-group > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .series-product-detail > header, .series-detail-summary { align-items: flex-start; flex-direction: column; }
  .series-detail-facts { grid-template-columns: 1fr; }
  .series-detail-facts > div, .series-detail-facts > div:not(:nth-child(3n + 1)), .series-detail-facts > div:nth-child(n + 4) { min-height: 0; padding: 16px 0; border-top: 1px solid var(--line); border-left: 0; }
  .series-detail-facts > div:first-child { border-top: 0; }
  .series-record-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .series-record-grid section:nth-child(2) { border-right: 0; }
  .series-record-grid section:nth-child(n + 3) { border-top: 1px solid var(--line-dark); }
  .capability-layer, .knowledge-layer, .map-lower-grid { grid-template-columns: 1fr; }
  .operating-stages { grid-template-columns: 1fr; overflow: visible; }
  .workflow-rail .workflow-stage-list { grid-template-columns: repeat(8, minmax(96px, 1fr)); overflow-x: auto; scroll-snap-type: x proximity; }
  .map-node { min-height: 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .map-node:last-child { border-bottom: 0; }
  .map-node-stage { grid-template-columns: 1fr; align-items: center; min-height: 64px; }
  .workflow-stage-list .map-node-stage { min-height: 62px; border-bottom: 0; scroll-snap-align: start; }
  .map-node-stage .map-node-copy { align-self: center; }
  .map-node-stage .map-node-copy small { min-height: 0; }
  .operating-detail { padding: 18px; }
  .knowledge-detail-header { flex-direction: column; }
  .knowledge-boundary { grid-template-columns: 1fr; gap: 9px; }
  .knowledge-handoff { justify-self: start; white-space: normal; text-align: left; }
  .knowledge-guide-grid, .knowledge-guide-grid.brand-guide-grid { grid-template-columns: 1fr; }
  .knowledge-guide-card { min-height: 0; }
  .knowledge-sources li { grid-template-columns: 74px 1fr; }
  .knowledge-topic-state { grid-column: 2; }
  .operating-detail-header { gap: 18px; }
  .detail-tools { grid-template-columns: 1fr; }
  .control-page-tabs, .control-scope-tabs { width: 100%; overflow-x: auto; }
  .control-page-tabs button, .control-scope-tabs button { flex: 1 0 auto; min-width: 98px; padding-inline: 14px; }
  .control-toolbar { align-items: stretch; flex-direction: column; gap: 10px; }
  .control-metrics { grid-template-columns: repeat(2, 1fr); }
  .control-metrics article:nth-child(3) { border-top: 1px solid var(--line); border-left: 0; }
  .control-metrics article:nth-child(4) { border-top: 1px solid var(--line); }
  .ledger-columns { display: none; }
  .ledger-row { grid-template-columns: 24px 1fr auto; }
  .ledger-row > span { display: none; }
  .product-module dl, .control-placeholder dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .control-placeholder { grid-template-columns: 1fr; gap: 20px; }
  .employee-metrics { grid-template-columns: repeat(2, 1fr); }
  .employee-grid { grid-template-columns: 1fr; }
  .directory-toolbar { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .series-card-grid, .pipeline-style-grid, .series-media-group > div { grid-template-columns: 1fr; }
}
@media (max-width: 1280px) {
  .product-data-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
}
@media (max-width: 900px) {
  .product-data-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .product-data-native { padding:20px; }
  .product-data-heading { align-items:flex-start; flex-direction:column; gap:16px; }
  .product-data-heading-meta { width:100%; justify-content:space-between; }
  .product-data-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .product-data-metric + .product-data-metric { padding-left:14px; }
  .product-data-metric:nth-child(3) { padding-left:0; border-top:1px solid var(--line); border-left:0; }
  .product-data-metric:nth-child(4) { border-top:1px solid var(--line); }
  .product-data-controls { grid-template-columns:1fr; align-items:stretch; }
  .product-data-view-tabs { gap:18px; }
  .product-data-result-bar { align-items:flex-start; flex-direction:column; gap:6px; }
  .product-data-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .product-data-detail-hero { grid-template-columns:1fr; }
  .product-data-detail-image { height:260px; }
}
@media (max-width: 480px) {
  .product-data-grid { grid-template-columns:1fr; }
  .product-data-summary { grid-template-columns:1fr 1fr; }
  .product-data-drawer-content { width:100%; padding:22px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
.series-image-viewer{max-width:96vw;max-height:96vh;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible;}
.series-image-viewer::backdrop{background:rgba(0,0,0,.78);}
.series-image-viewer>img{display:block;max-width:96vw;max-height:96vh;width:auto;height:auto;object-fit:contain;margin:0;cursor:zoom-out;}
.series-image-viewer>.gw-viewer-close{position:absolute;top:14px;right:14px;z-index:3;width:36px;min-width:36px;height:36px;min-height:36px;margin:0;padding:0;border:0;border-radius:50%;background:rgb(17 38 29/.55);color:#fff;font:inherit;font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;}
.series-image-viewer>.gw-viewer-close:hover{background:rgb(17 38 29/.75);}
.series-image-viewer>.gw-viewer-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:40px;min-width:40px;height:40px;min-height:40px;margin:0;padding:0;border:0;border-radius:0;background:none;color:#fff;font:inherit;font-size:34px;line-height:1;display:flex;align-items:center;justify-content:center;text-shadow:0 1px 6px rgb(0 0 0/.65);cursor:pointer;}
.series-image-viewer>.gw-viewer-nav:hover{background:none;color:#fff;text-shadow:0 1px 8px rgb(0 0 0/.8);}
.series-image-viewer>.gw-viewer-nav.prev{left:16px;}
.series-image-viewer>.gw-viewer-nav.next{right:16px;}
.series-image-viewer>.gw-viewer-nav[hidden]{display:none;}
.series-image-viewer>.gw-viewer-caption{position:absolute;left:0;right:0;bottom:0;z-index:2;margin:0;padding:34px 20px 14px;background:linear-gradient(transparent,rgb(0 0 0/.55));color:#fff;font-size:14px;line-height:1.4;text-align:left;pointer-events:none;}
.team-profile-strip{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:24px;}
.team-profile-person{display:flex;align-items:center;gap:10px;min-width:100px;}
.team-profile-strip .team-profile-avatar{width:38px;height:38px;flex-shrink:0;border-radius:50%;object-fit:cover;background:#e7ede4;color:#143e34;display:grid;place-items:center;font-weight:700;}
.team-profile-strip strong{display:block;color:#fff;font-size:14px;}
.team-profile-strip small{display:block;color:#d9e7dd;font-size:12px;max-width:160px;overflow-wrap:anywhere;}
@media(max-width:640px){.team-profile-strip{justify-content:flex-start;gap:16px;}.team-profile-person{min-width:0;}}
