/* Manufacturing (scripts/v47/pages/solutions--manufacturing.py). Olive/green accent, the
   shift board in the context section, capabilities under gauge ticks. */
#af-mock .af-scope{--mfg-accent:#8fa85c;--mfg-rule:#dfe3d4}

/* Context: paragraph left, board right, both starting on the same line. */
#af-mock .story-context{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:4.5vw;align-items:start}
#af-mock .story-context>p{font-size:clamp(22px,2vw,27px);max-width:19em}

/* The shift board. */
#af-mock .mfg-board{border:1px solid var(--line,#e2e5e9);background:#fff;border-radius:4px;overflow:hidden}
#af-mock .mfg-board header{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:13px 18px;background:#f2f4ea;border-bottom:1px solid var(--mfg-rule)}
#af-mock .mfg-board header .eyebrow{margin:0;font-size:9.5px}
#af-mock .mfg-board header>span+span{font:9.5px 'IBM Plex Mono',monospace;letter-spacing:.14em;color:#8d9480}
#af-mock .mfg-board ol{list-style:none;margin:0;padding:0}
#af-mock .mfg-board li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 14px;padding:13px 18px;border-bottom:1px dashed var(--mfg-rule)}
#af-mock .mfg-board b{font:500 11px 'IBM Plex Mono',monospace;letter-spacing:.1em;color:#0a0a0a}
#af-mock .mfg-board em{justify-self:end;font-style:normal;font:9.5px 'IBM Plex Mono',monospace;letter-spacing:.1em;text-transform:uppercase;color:#6f7a5c}
#af-mock .mfg-board li[data-verdict=hold] em{color:#8a7522}
#af-mock .mfg-board li[data-verdict=no] em{color:#9a6a45}
#af-mock .mfg-board .mfg-what{grid-column:1/-1;font-size:12.5px;line-height:1.55;color:#5a6072}
#af-mock .mfg-board .mfg-track{grid-column:1/-1;position:relative;display:block;height:12px;background:repeating-linear-gradient(90deg,#eceee6 0 1px,transparent 1px 25%);border-bottom:1px solid var(--mfg-rule)}
#af-mock .mfg-board .mfg-track i{position:absolute;top:2px;bottom:2px;left:var(--s);width:var(--w);background:var(--mfg-accent);border-radius:2px}
#af-mock .mfg-board li[data-verdict=hold] .mfg-track i{background:repeating-linear-gradient(45deg,#e0df93 0 4px,#f1efc4 4px 8px)}
#af-mock .mfg-board li[data-verdict=no] .mfg-track i{background:transparent;border:1px dashed #c9a887}
#af-mock .mfg-board .mfg-tool{grid-column:1/-1;display:inline-flex;align-items:center;gap:6px;font:10px 'IBM Plex Mono',monospace;letter-spacing:.06em;color:#8b9080}
#af-mock .mfg-board .mfg-tool img{display:block;width:14px;height:14px;object-fit:contain}
#af-mock .mfg-scale{display:flex;justify-content:space-between;padding:8px 18px;font:9px 'IBM Plex Mono',monospace;letter-spacing:.1em;color:#a3a99a;border-bottom:1px solid var(--mfg-rule)}
#af-mock .mfg-board footer{padding:12px 18px;font:10.5px/1.6 'IBM Plex Mono',monospace;color:#9a9c93;background:#fafbf6}

/* What changes: three columns under gauge ticks, tighter type. */
#af-mock .story-capabilities{gap:0 44px}
#af-mock .story-capabilities article{border-top:0;padding:0 0 30px}
#af-mock .story-capabilities article:before{content:'';display:block;height:9px;background:repeating-linear-gradient(90deg,#c3cdb0 0 1px,transparent 1px 14px);border-top:1px solid #c3cdb0}
#af-mock .story-capabilities article>span{display:block;margin-top:16px;font:10px 'IBM Plex Mono',monospace;letter-spacing:.16em;color:var(--mfg-accent)}
#af-mock .story-capabilities h3{font-size:20px;line-height:1.32;margin:12px 0 10px}
#af-mock .story-capabilities p{font-size:13.5px;max-width:42ch}
#af-mock .story-capabilities .cap-thread{height:16px}

/* Workflows: numbered in the same olive; closing leans green. */
#af-mock .story-workflows summary>span{color:var(--mfg-accent)}
#af-mock .story-closing{background:linear-gradient(105deg,#e3ecd6,#eef0da 60%,#f3ead0)}

@media(max-width:700px){#af-mock .story-context{grid-template-columns:1fr}}

/* "In practice": the plant hierarchy, walked as far as one engineer's authority reaches
   (scripts/v47/pages/solutions--manufacturing.py). */
#af-mock .mfg-tree{border:1px solid var(--line,#e2e5e9);border-radius:12px;background:#fff;overflow:hidden}
#af-mock .mfg-tree-head{
  display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;
  padding:17px 26px;border-bottom:1px solid var(--line,#e2e5e9);
  font:11px 'IBM Plex Mono',monospace;letter-spacing:.04em;color:#8a927c;
}
#af-mock .mfg-tree-head .eyebrow{margin:0;font-size:11px;letter-spacing:.14em;color:#48513a}

#af-mock .mfg-tree > .mfg-branch{margin:0;padding:26px 30px 30px;list-style:none}
#af-mock .mfg-branch .mfg-branch{list-style:none;margin:0;padding:0 0 0 30px}
#af-mock .mfg-branch li{position:relative;padding:5px 0}
#af-mock .mfg-branch .mfg-branch > li{padding-left:28px}
#af-mock .mfg-branch .mfg-branch > li:before{
  content:'';position:absolute;left:0;top:-5px;bottom:0;border-left:1px solid #dfe3d5;
}
#af-mock .mfg-branch .mfg-branch > li:last-child:before{bottom:auto;height:33px}
#af-mock .mfg-branch .mfg-branch > li:after{
  content:'';position:absolute;left:0;top:28px;width:20px;border-top:1px solid #dfe3d5;
}
#af-mock .mfg-item{
  display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:18px;row-gap:6px;align-items:baseline;
  border:1px solid var(--line,#e2e5e9);border-radius:9px;background:#fff;padding:13px 16px;
}
#af-mock .mfg-item b{grid-column:1;font:500 15px 'DM Sans',sans-serif;color:#0a0a0a}
#af-mock .mfg-item em{
  grid-column:2;grid-row:1;justify-self:end;font:normal 9.5px 'IBM Plex Mono',monospace;
  letter-spacing:.13em;text-transform:uppercase;padding:5px 10px;border-radius:30px;white-space:nowrap;
}
#af-mock .mfg-item .mfg-what{grid-column:1;font:13px/1.65 'DM Sans',sans-serif;color:#69707c;max-width:74ch}
#af-mock .mfg-item .mfg-tool{
  grid-column:2;grid-row:2;justify-self:end;display:inline-flex;align-items:center;gap:6px;
  padding:4px 10px;border:1px solid var(--line,#e2e5e9);border-radius:30px;background:#fff;white-space:nowrap;
  font:9.5px 'IBM Plex Mono',monospace;letter-spacing:.06em;color:#8b9080;
}
#af-mock .mfg-item .mfg-tool img{display:block;width:14px;height:14px;object-fit:contain}
#af-mock .mfg-branch li[data-state=in] > .mfg-item{background:#fbfcf8;border-style:solid}
#af-mock .mfg-branch li[data-state=in] > .mfg-item b{font-family:Georgia,serif;font-size:17px}
#af-mock .mfg-branch li[data-state=ok] > .mfg-item{border-left:3px solid #c3d9a0}
#af-mock .mfg-branch li[data-state=ok] em{background:#e6f0d4;color:#3f5d1e;border:1px solid #b9cf94}
#af-mock .mfg-branch li[data-state=hold] > .mfg-item{border-left:3px solid #e0df93;background:#fdfbf1}
#af-mock .mfg-branch li[data-state=hold] em{background:#f6efcf;color:#6e5a12;border:1px solid #e2d290}
#af-mock .mfg-branch li[data-state=no] > .mfg-item{
  border-style:dashed;border-color:#e0d3c6;
  background:repeating-linear-gradient(135deg,#fdfbf9,#fdfbf9 7px,#f8f3ee 7px,#f8f3ee 14px);
}
#af-mock .mfg-branch li[data-state=no] > .mfg-item b{color:#8a7f70;text-decoration:line-through;text-decoration-color:#d9c9ba}
#af-mock .mfg-branch li[data-state=no] em{background:#f8e3d6;color:#8a4420;border:1px solid #e3b59a}
#af-mock .mfg-sign{
  grid-column:1/-1;display:flex;align-items:flex-end;gap:12px;margin-top:6px;
  font:9.5px 'IBM Plex Mono',monospace;letter-spacing:.13em;color:#9a9378;
}
#af-mock .mfg-sign i{display:block;flex:1;max-width:230px;border-bottom:1px solid #c9bd92}
#af-mock .mfg-tree-foot{
  margin:0;padding:14px 26px;border-top:1px solid var(--line,#e2e5e9);background:#fbfbf8;
  font:10.5px/1.6 'IBM Plex Mono',monospace;color:#9a9c93;
}

@media(max-width:860px){
  #af-mock .mfg-tree > .mfg-branch{padding:18px 16px 20px}
  #af-mock .mfg-branch .mfg-branch{padding-left:16px}
  #af-mock .mfg-branch .mfg-branch > li{padding-left:16px}
  #af-mock .mfg-branch .mfg-branch > li:after{width:10px}
  #af-mock .mfg-item{grid-template-columns:minmax(0,1fr)}
  #af-mock .mfg-item em,#af-mock .mfg-item .mfg-tool{grid-column:1;grid-row:auto;justify-self:start}
}
