/* ==========================================================================
   workshop-method-plan — NEW LIBRARY TEMPLATE CANDIDATE
   Process-flow diagram: start terminal -> 7-station spine with control markers
   and feedback-loop bracket -> end terminal, beside a stacked output dossier.
   ========================================================================== */
.workshop-method-plan{position:relative;isolation:isolate;scroll-margin-top:var(--hdr-h);padding-block:var(--section-padding-y);background:var(--deep);color:var(--on-dark)}
.workshop-method-plan__in{width:var(--shell);margin:0 auto}
.workshop-method-plan__head{display:flex;flex-direction:column;gap:22px;margin-bottom:56px}
.workshop-method-plan__head > *{width:var(--title-description-width);max-width:100%}
.workshop-method-plan__kicker{color:var(--gold);margin-bottom:18px}
.workshop-method-plan__title{color:var(--paper)}
.workshop-method-plan__support{color:var(--on-sage)}

.workshop-method-plan__diagram{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(40px,5vw,72px);align-items:start}

.workshop-method-plan__terminal{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 18px;align-items:center;padding:18px 22px;border:1px solid rgba(255,255,255,.28);background:rgba(24,24,24,.18)}
.workshop-method-plan__terminal-tag{grid-row:span 2;display:grid;place-items:center;min-width:64px;height:44px;padding:0 10px;background:var(--paper);color:var(--ink);font-family:var(--display);font-size:18px;letter-spacing:.08em}
.workshop-method-plan__terminal--end .workshop-method-plan__terminal-tag{background:var(--gold)}
.workshop-method-plan__terminal-label{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--on-sage-dim)}
.workshop-method-plan__terminal-text{font-size:var(--fs-body);line-height:1.45;color:var(--paper)}
.workshop-method-plan__terminal--end{border-color:var(--gold)}

.workshop-method-plan__spine{position:relative;margin:0 0 0 31px;padding:8px 0}
.workshop-method-plan__spine::before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,rgba(255,255,255,.3),var(--gold));transform:translateX(-1px)}
.workshop-method-plan__step{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:6px;padding:20px 0 20px 44px}
.workshop-method-plan__node{position:absolute;left:0;top:20px;display:grid;place-items:center;width:34px;height:34px;transform:translateX(-50%);background:var(--deep);border:1px solid rgba(255,255,255,.55);font-family:var(--mono);font-size:12px;color:var(--paper)}
.workshop-method-plan__step--control .workshop-method-plan__node{border-color:var(--gold);color:var(--gold)}
.workshop-method-plan__step-title{font-family:var(--display);font-size:22px;font-weight:400;line-height:1.2;color:var(--paper);padding-top:4px}
.workshop-method-plan__step-text{font-size:var(--fs-body);line-height:1.5;color:var(--on-sage)}
.workshop-method-plan__control{display:inline-flex;align-self:start;justify-self:start;align-items:center;gap:10px;margin-top:6px;padding:7px 12px 7px 10px;background:rgba(212,175,55,.14);border-left:2px solid var(--gold);font-size:var(--fs-small);line-height:1.3;color:var(--paper)}
.workshop-method-plan__control::before{content:"";width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
.workshop-method-plan__control b{font-family:var(--mono);font-size:11px;font-weight:400;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}

.workshop-method-plan__loop{position:relative;margin-right:0}
.workshop-method-plan__loop::after{content:"";position:absolute;right:0;top:14px;bottom:14px;width:18px;border:1px dashed rgba(212,175,55,.75);border-left:0}
.workshop-method-plan__loop .workshop-method-plan__step{padding-right:48px}
.workshop-method-plan__loop-label{position:absolute;right:-6px;top:50%;transform:translate(50%,-50%) rotate(90deg);transform-origin:center;white-space:nowrap;padding:4px 10px;background:var(--deep);font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}

.workshop-method-plan__plan{position:sticky;top:calc(var(--hdr-h) + 24px)}
.workshop-method-plan__sheet{position:relative;background:var(--paper);color:var(--ink);box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}
.workshop-method-plan__sheet::before,.workshop-method-plan__sheet::after{content:"";position:absolute;inset:0;z-index:-1;background:var(--cream);border:1px solid rgba(24,24,24,.08)}
.workshop-method-plan__sheet::before{transform:translate(10px,10px)}
.workshop-method-plan__sheet::after{transform:translate(20px,20px);opacity:.6}
.workshop-method-plan__sheet-head{padding:26px 28px 22px;border-bottom:1px solid var(--rule)}
.workshop-method-plan__sheet-label{display:flex;justify-content:space-between;gap:12px;margin-bottom:14px;font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--bronze)}
.workshop-method-plan__sheet-title{font-family:var(--display);font-size:var(--fs-content-card-title);font-weight:400;line-height:var(--lh-tight);color:var(--deep)}
.workshop-method-plan__sheet-micro{margin-top:10px;font-size:15px;line-height:1.5;color:var(--grey-mid)}
.workshop-method-plan__outputs{padding:6px 28px 10px}
.workshop-method-plan__output{display:grid;grid-template-columns:18px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rule)}
.workshop-method-plan__output:last-child{border-bottom:0}
.workshop-method-plan__output-mark{width:14px;height:18px;border:1.5px solid var(--deep);position:relative}
.workshop-method-plan__output-mark::after{content:"";position:absolute;left:2px;right:2px;top:5px;height:1.5px;background:var(--deep);box-shadow:0 4px 0 var(--deep)}
.workshop-method-plan__output-title{font-size:17px;font-weight:700;line-height:1.3;color:var(--ink)}
.workshop-method-plan__output-num{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--grey-mid)}
.workshop-method-plan__legend{display:flex;flex-wrap:wrap;gap:10px 22px;padding:16px 28px;background:var(--gold-10);border-top:1px solid var(--rule);font-size:13px;line-height:1.3;color:var(--ink)}
.workshop-method-plan__legend span{display:inline-flex;align-items:center;gap:8px}
.workshop-method-plan__legend-diamond{width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
.workshop-method-plan__legend-loop{width:12px;height:10px;border:1px dashed var(--bronze);border-left:0}

@media (max-width:1040px){
  .workshop-method-plan__diagram{grid-template-columns:1fr}
  .workshop-method-plan__head > *{width:100%}
  .workshop-method-plan__plan{position:relative;top:auto;margin-right:20px}
}
@media (max-width:600px){
  .workshop-method-plan__spine{margin-left:18px}
  .workshop-method-plan__step{padding-left:34px}
  .workshop-method-plan__node{width:30px;height:30px}
  .workshop-method-plan__loop .workshop-method-plan__step{padding-right:36px}
  .workshop-method-plan__output{grid-template-columns:18px minmax(0,1fr)}
  .workshop-method-plan__output-num{display:none}
}
