/* AuditPack theme: loaded after mapper.css, overrides the accent and adds page-specific parts */
:root{
  --g1:#5b2bd0; --g2:#8a63e6; --g3:#c4b0f3;      /* stepped statement: violet */
  --gold:#d9a43a; --violet:#7c4dff;
  --full:#2fbf71; --part:#f0a23b; --insuf:#e5484d;
}
@media (prefers-color-scheme:dark){
  :root{--g1:#b9a0ff;--g2:#8d6be0;--g3:#5a43a0;--gold:#e8b94f}
}
.stage{background:
  radial-gradient(800px 520px at 10% 8%,rgba(124,77,255,.20),transparent 60%),
  radial-gradient(700px 480px at 92% 92%,rgba(217,164,58,.14),transparent 60%),var(--stage)}

/* evidence -> controls art */
.art{width:100%;height:auto;display:block}
.art .doc{fill:#14112b;stroke:#322b63;stroke-width:1.2}
.art .doc-t{fill:#d8d3f5;font:500 12px var(--body)}
.art .doc-s{fill:#8d86bd;font:400 10px var(--body)}
.art .ln{fill:none;stroke-width:1.4;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset 1.4s cubic-bezier(.2,.7,.2,1)}
.art.on .ln{stroke-dashoffset:0}
.art .plug-a{fill:#7c4dff}.art .plug-b{fill:#d9a43a}.art .plug-c{fill:#2a2350}
.art .ctl-id{fill:#efeaff;font:600 15px var(--display);letter-spacing:-.02em}
.art .ctl-t{fill:#8d86bd;font:400 11px var(--body)}
.art .pulse{opacity:0;transition:opacity .6s 1.2s}
.art.on .pulse{opacity:1}

/* sample output */
.sample{margin-top:44px;background:var(--stage);border-radius:var(--r);padding:clamp(16px,3vw,34px);border:1px solid var(--line);
  background-image:radial-gradient(700px 400px at 90% 0%,rgba(124,77,255,.16),transparent 60%)}
.sample .tag{color:var(--on-stage-muted);font-size:.78rem;margin:0 0 16px}
.ctrl{display:grid;grid-template-columns:96px 1fr auto;gap:18px;align-items:center;background:#0d1512;border:1px solid #1d2b26;border-radius:14px;padding:16px 20px;margin-top:10px;color:var(--on-stage)}
.ctrl code{background:transparent;border:0;color:var(--on-stage-muted);padding:0;font-size:.85rem}
.ctrl b{font:600 1.1rem var(--display);letter-spacing:-.02em;display:block}
.ctrl small{color:var(--on-stage-muted);font-size:.85rem}
.cov{font-size:.78rem;font-weight:600;border-radius:99px;padding:5px 13px;border:1px solid;white-space:nowrap}
.cov.f{color:var(--full);border-color:rgba(47,191,113,.45);background:rgba(47,191,113,.1)}
.cov.p{color:var(--part);border-color:rgba(240,162,59,.45);background:rgba(240,162,59,.1)}
.cov.i{color:var(--insuf);border-color:rgba(229,72,77,.45);background:rgba(229,72,77,.1)}

/* numbered steps reuse .sev */
.num{font:600 .85rem var(--body);color:var(--g2);letter-spacing:.06em;margin-bottom:10px;display:block}

/* who for: two-up */
.src.two{grid-template-columns:1fr 1fr}

/* evidence grid */
.ev{display:grid;grid-template-columns:repeat(4,1fr);margin-top:44px;border-top:1px solid var(--line)}
.ev div{padding:22px 20px 22px 0;border-bottom:1px solid var(--line)}
.ev b{font:600 1.05rem var(--display);letter-spacing:-.02em;display:block}
.ev span{color:var(--muted);font-size:.9rem}

.steps-list{margin:22px 0 0;padding:0;list-style:none;display:grid;gap:10px;color:var(--muted)}
.steps-list li{padding-left:34px;position:relative}
.steps-list li::before{content:counter(i);counter-increment:i;position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:var(--ink);color:var(--paper);font:600 .75rem var(--body);display:grid;place-items:center}
.steps-list{counter-reset:i}

@media (prefers-reduced-motion:reduce){.art .ln{transition:none;stroke-dashoffset:0}.art .pulse{transition:none;opacity:1}}
@media (max-width:900px){
  .src.two{grid-template-columns:1fr}
  .ev{grid-template-columns:1fr 1fr}
  .ctrl{grid-template-columns:1fr auto}
  .ctrl code{grid-column:1/-1}
  .hm{padding:22px 14px 4px}
}
