:root{
  --ink:#1c2118; --slate:#3a3f36; --muted:#6b6f63; --line:#e7e5db; --line2:#d8d6cb;
  --bg:#f5f4ee; --card:#ffffff; --accent:#3b6d11; --accent-d:#27500a; --accent-soft:#eef3e6;
  --paper:#fbf8f0; --paper-line:#ece6d4; --navy:#21455c; --amber:#8a5a0b;
  --sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --serif:Georgia,"Times New Roman",serif;
  --radius:12px; --radius-sm:8px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);line-height:1.58;-webkit-font-smoothing:antialiased}
a{color:var(--accent-d)}
.wrap{max-width:980px;margin:0 auto;padding:0 22px}

/* nav */
.topnav{position:sticky;top:0;z-index:20;background:rgba(245,244,238,.9);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.topnav .inner{max-width:980px;margin:0 auto;padding:12px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;letter-spacing:-.01em;color:var(--ink);text-decoration:none;font-size:15px}
.brand .dot{width:11px;height:11px;border-radius:50%;background:var(--accent)}
.navlinks{display:flex;gap:18px;flex-wrap:wrap}
.navlinks a{font-size:14px;color:var(--slate);text-decoration:none}
.navlinks a:hover{color:var(--accent-d)}

/* hero */
.hero{padding:52px 0 26px}
.kicker{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-d);font-weight:700}
h1{font-size:38px;line-height:1.1;letter-spacing:-.02em;margin:10px 0 14px;font-weight:750}
.lede{font-size:19px;color:var(--slate);max-width:720px;margin:0 0 8px}
.hero .meta{font-size:13px;color:var(--muted);margin-top:14px}

/* sections */
section{padding:30px 0}
h2{font-size:25px;letter-spacing:-.01em;margin:0 0 6px;font-weight:700}
h3{font-size:17px;margin:0 0 6px;font-weight:650}
.section-sub{color:var(--muted);max-width:680px;margin:0 0 22px}

/* triage */
.triage{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tri{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 18px}
.tri .tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:20px;margin-bottom:10px}
.tag.delete{background:#f7e9e7;color:#8c3a23}
.tag.automate{background:var(--accent-soft);color:var(--accent-d)}
.tag.keep{background:#e9eef2;color:var(--navy)}
.tri p{margin:6px 0 0;font-size:14px;color:var(--slate)}

/* demo cards */
.demo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.demo-card{display:block;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;text-decoration:none;color:inherit;transition:border-color .15s,transform .15s}
.demo-card:hover{border-color:var(--accent);transform:translateY(-2px)}
.demo-card .num{font-size:12px;color:var(--muted);font-weight:600}
.demo-card h3{margin:8px 0 6px;font-size:19px}
.demo-card p{margin:0;color:var(--slate);font-size:14px}
.demo-card .go{margin-top:12px;font-size:13px;font-weight:600;color:var(--accent-d)}
.pill{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--amber);background:#f8efdd;padding:2px 8px;border-radius:20px;margin-left:8px;vertical-align:middle}

/* steps */
.step{display:grid;grid-template-columns:42px 1fr;gap:16px;padding:22px 0;border-top:1px solid var(--line)}
.step:first-of-type{border-top:none}
.step .n{width:34px;height:34px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}
.step .body{min-width:0}
.step h3{font-size:18px;margin:4px 0 8px}
.step p{margin:0 0 10px;color:var(--slate)}

/* form */
.field{margin:10px 0}
label{display:block;font-size:13px;color:var(--muted);margin:0 0 4px;font-weight:600}
input,select,textarea{width:100%;font:inherit;font-size:14px;padding:9px 11px;border:1px solid var(--line2);border-radius:var(--radius-sm);background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
textarea{resize:vertical;min-height:46px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.btns{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
button{font:inherit;font-size:14px;font-weight:600;padding:10px 18px;border-radius:9px;cursor:pointer;border:1px solid var(--accent);transition:background .15s}
.primary{background:var(--accent);color:#fff}
.primary:hover{background:var(--accent-d)}
.ghost{background:#fff;color:var(--accent-d)}
.ghost:hover{background:var(--accent-soft)}

/* document output */
.doc{background:var(--paper);border:1px solid var(--paper-line);border-left:4px solid var(--accent);border-radius:var(--radius-sm);padding:18px 20px;font-family:var(--serif);font-size:15px;line-height:1.62;color:#2a2a22;text-align:justify;min-height:120px}
.doc .seal{font-family:var(--sans);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-d);font-weight:700;margin-bottom:9px}
.doc .placeholder{color:#9a9788;font-style:italic;text-align:left}
.doc.plain{font-family:var(--serif)}
.docmeta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;font-size:12.5px;color:var(--muted)}
.docmeta button{font-size:12px;font-weight:600;padding:6px 12px;border-radius:7px;border:1px solid var(--line2);background:#fff;color:var(--ink)}

/* facts / today panel */
.today{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:6px 0 4px}
.today .f{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 14px}
.today .f b{display:block;font-size:18px}
.today .f span{font-size:12.5px;color:var(--muted)}

/* audit / guardrail */
.audit{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px 16px;font-size:13.5px}
.audit .row{display:flex;gap:10px;padding:6px 0;border-top:1px dashed var(--line)}
.audit .row:first-child{border-top:none}
.audit .k{color:var(--muted);min-width:120px}
.callout{background:var(--accent-soft);border:1px solid #d4e3c2;border-left:4px solid var(--accent);border-radius:var(--radius-sm);padding:14px 16px;font-size:14px;color:var(--slate)}
.callout b{color:var(--ink)}
.warn{background:#fbf3e6;border-color:#ecdcc0;border-left-color:var(--amber)}

/* footer */
footer{border-top:1px solid var(--line);margin-top:30px;padding:26px 0 60px;color:var(--muted);font-size:13px}
.backlink{display:inline-block;margin:22px 0 0;font-size:14px;font-weight:600;color:var(--accent-d);text-decoration:none}

/* two-problem split */
.two-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.prob{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 20px 18px}
.prob-a{border-top:4px solid #8c3a23}
.prob-b{border-top:4px solid var(--accent)}
.prob .tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 9px;border-radius:20px;margin-bottom:10px}
.prob h3{font-size:19px;margin:0 0 8px}
.prob p{margin:0 0 10px;font-size:14px;color:var(--slate)}
.prob .prob-lede{color:var(--ink)}
.prob .prob-verdict{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line);margin-bottom:0}

/* triage lists */
.tri ul{margin:10px 0 0;padding-left:18px;font-size:13.5px;color:var(--slate)}
.tri ul li{margin:4px 0}

/* demo card states */
.muted-card{cursor:default}
.muted-card:hover{border-color:var(--line);transform:none}
.hard-card{cursor:default;border-style:dashed;border-color:var(--line2);background:#fdfbf5}
.hard-card:hover{border-color:var(--line2);transform:none}
.pill.hard{color:#8c3a23;background:#f7e9e7}
.tag.hardtag{background:#f8efdd;color:var(--amber)}
.num-foot{margin-top:12px;padding-top:10px;border-top:1px dashed var(--line);font-size:12.5px;color:var(--muted);font-variant-numeric:tabular-nums}

/* impact table */
table.impact{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;font-size:14px}
table.impact th{background:var(--accent-soft);color:var(--accent-d);text-align:left;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;padding:10px 14px}
table.impact td{padding:11px 14px;border-top:1px solid var(--line);vertical-align:top;font-variant-numeric:tabular-nums}
table.impact td.anchor{background:#fbf8f0;font-size:13.5px;color:var(--slate)}
table.impact td.caveat{background:#fbf3e6;font-size:12.5px;color:var(--slate)}

/* fine print */
.finenote{font-size:12.5px;color:var(--muted);margin:8px 0 0}

/* fact-check panel */
.factcheck{border:1px solid var(--line);border-radius:var(--radius-sm);background:#fff;overflow:hidden}
.fc-empty{padding:14px 16px;font-size:13.5px;color:var(--muted);font-style:italic}
.fc-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 16px;border-top:1px solid var(--line)}
.fc-row:first-child{border-top:none}
.fc-t{font-size:13.5px;color:var(--slate);min-width:0}
.fc-label{font-weight:650;color:var(--ink)}
.fc-src{color:var(--muted)}
.fc-warn{color:#8c3a23;font-weight:650}
.fc-fixed{color:var(--accent-d);font-weight:650}
.fc-missing{background:#fbf3e6}
.confirmbtn,.fixbtn{flex:none;font-size:12.5px;font-weight:600;padding:7px 12px;border-radius:7px;cursor:pointer;background:#fff;border:1px solid var(--accent);color:var(--accent-d)}
.confirmbtn:hover{background:var(--accent-soft)}
.confirmbtn.done{background:var(--accent);color:#fff;cursor:default}
.fixbtn{border-color:#8c3a23;color:#8c3a23}
.fixbtn:hover{background:#f7e9e7}
button:disabled{opacity:.45;cursor:not-allowed}

/* fact marks in the draft */
.doc mark{background:transparent;border-bottom:2px dotted var(--accent);color:inherit;padding:0 1px}
.doc mark.ok{border-bottom-color:var(--accent);background:var(--accent-soft)}
.doc mark.off{border-bottom:2px solid #8c3a23;background:#f7e9e7}
.doc mark.missing{background:#f7e9e7;color:#8c3a23;font-family:var(--sans);font-size:13px;font-weight:600;border-bottom:none;padding:1px 5px;border-radius:4px}

@media(max-width:760px){
  h1{font-size:30px}
  .triage,.demo-grid,.today,.two-grid{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr 1fr}
  .fc-row{flex-direction:column;align-items:flex-start}
}


/* ============ v3 visual components ============ */

/* growth chart */
.growth{margin:26px 0 0;max-width:640px}
.growth-row{display:grid;grid-template-columns:78px 1fr 92px;align-items:center;gap:12px;margin:9px 0}
.gl{font-size:12.5px;color:var(--muted);font-weight:600;text-align:right}
.gbar{height:22px;background:#eceadf;border-radius:5px;overflow:hidden}
.gfill{display:block;height:100%;background:var(--accent);border-radius:5px}
.gfill.hot{background:#8c3a23}
.gfill.ghost-fill{background:repeating-linear-gradient(45deg,#cfccbe,#cfccbe 5px,#e2dfd2 5px,#e2dfd2 10px)}
.gbar.unknown{background:transparent;border:1px dashed var(--line2);display:flex;align-items:center;padding:0 10px}
.unk-lab{font-size:11.5px;color:var(--muted);font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gv.q{color:var(--muted)}
.gv{font-size:13px;font-weight:650;font-variant-numeric:tabular-nums}
.growth-row.ref .gl,.growth-row.ref .gv{color:var(--muted);font-weight:600}
.growth-cap{font-size:12.5px;color:var(--muted);margin:12px 0 0;max-width:600px}
a.cite{font-size:10px;vertical-align:super;margin-left:2px;text-decoration:none;color:var(--accent-d);font-weight:700}

/* two problems */
.prob-icon{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;margin-bottom:10px;color:#fff}
.prob-a .prob-icon{background:#8c3a23}
.prob-b .prob-icon{background:var(--accent)}

/* legend */
.legend{display:flex;gap:18px;flex-wrap:wrap;margin:0 0 16px}
.lg{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--muted);font-weight:600}
.sw{width:11px;height:11px;border-radius:3px;display:inline-block}
.sw.ok{background:var(--accent)}
.sw.scoped{background:#c99a2e}
.sw.blocked{background:#8c3a23}

/* task cards */
.task-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.task{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px 20px;display:flex;flex-direction:column}
.task.t-ok{border-top:3px solid var(--accent)}
.task.t-scoped{border-top:3px solid #c99a2e}
.task.t-blocked{border-top:3px solid #8c3a23;background:#fdfbf5}
.task-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
.task-kicker{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700}
.task-head h3{margin:4px 0 0;font-size:19px}
.status{flex:none;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 9px;border-radius:20px;white-space:nowrap}
.status.ok{background:var(--accent-soft);color:var(--accent-d)}
.status.scoped{background:#f8efdd;color:#8a5a0b}
.status.blocked{background:#f7e9e7;color:#8c3a23}
dl.spec{margin:0 0 14px;display:grid;grid-template-columns:104px 1fr;gap:7px 12px;font-size:13.5px}
dl.spec dt{color:var(--muted);font-weight:650;font-size:11.5px;letter-spacing:.03em;text-transform:uppercase;padding-top:2px}
dl.spec dd{margin:0;color:var(--slate)}
.conf{display:inline-flex;align-items:center;gap:7px;font-weight:700;font-variant-numeric:tabular-nums;margin-right:6px}
.conf-bar{width:52px;height:7px;background:#eceadf;border-radius:4px;overflow:hidden;display:inline-block}
.conf-bar i{display:block;height:100%;background:var(--accent);border-radius:4px}
.conf-bar i.red{background:#8c3a23}
.impact-line{margin-top:auto;padding-top:12px;border-top:1px dashed var(--line)}
.ib{display:grid;grid-template-columns:62px 1fr 74px;align-items:center;gap:10px;margin:5px 0}
.ib-lab{font-size:11.5px;color:var(--muted);font-weight:650}
.ib-bar{height:12px;background:#eceadf;border-radius:4px;overflow:hidden}
.ib-bar i{display:block;height:100%;background:var(--accent);border-radius:4px}
.ib-bar i.hot{background:#8c3a23}
.ib-val{font-size:12.5px;font-weight:650;font-variant-numeric:tabular-nums;text-align:right}
.task-cta{margin-top:12px;font-size:13.5px;font-weight:700;color:var(--accent-d);text-decoration:none}
.task-cta:hover{text-decoration:underline}
.task-note{margin:auto 0 0;padding-top:12px;border-top:1px dashed var(--line);font-size:13px;color:var(--muted)}

/* anchor stat */
.anchor-stat{display:flex;align-items:center;gap:26px;background:var(--card);border:1px solid var(--line);border-left:5px solid var(--accent);border-radius:var(--radius);padding:22px 26px}
.as-num{font-size:56px;font-weight:750;letter-spacing:-.03em;color:var(--accent-d);line-height:1;font-variant-numeric:tabular-nums}
.as-lab{font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:6px}
.as-body p{margin:0;font-size:14px;color:var(--slate)}

/* estimates */
.est-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.est{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}
.est-bar{height:8px;background:#eceadf;border-radius:4px;overflow:hidden;margin-bottom:12px}
.est-bar i{display:block;height:100%;background:var(--accent);border-radius:4px}
.est-n{font-size:27px;font-weight:750;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.est-l{font-size:12.5px;color:var(--muted);margin-top:3px}

/* guards */
.guard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.guard{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:border-color .15s}
.guard[open]{border-color:var(--accent)}
.guard summary{list-style:none;cursor:pointer;padding:16px 18px;display:grid;grid-template-columns:34px 1fr 20px;gap:4px 12px;align-items:center}
.guard summary::-webkit-details-marker{display:none}
.g-num{grid-row:1/3;font-size:20px;font-weight:750;color:var(--line2);font-variant-numeric:tabular-nums}
.g-title{font-size:17.5px;font-weight:700;letter-spacing:-.01em}
.g-tease{grid-column:2;font-size:13px;color:var(--muted)}
.g-chev{grid-row:1/3;grid-column:3;font-size:20px;color:var(--accent);font-weight:400;text-align:center;transition:transform .18s}
.guard[open] .g-chev{transform:rotate(45deg)}
.guard:hover{border-color:var(--accent)}
.g-body{padding:0 18px 18px;border-top:1px solid var(--line);margin-top:2px;padding-top:14px}
.g-body p{margin:0 0 10px;font-size:13.5px;color:var(--slate)}
.g-body p:last-child{margin-bottom:0}
.g-body b{color:var(--ink)}
.g-src{padding-top:10px;border-top:1px dashed var(--line);color:var(--muted) !important}

/* sources */
ol.srcs{font-size:13.5px;color:var(--slate);line-height:1.62;padding-left:22px;max-width:840px}
ol.srcs li{margin:7px 0}

@media(max-width:760px){
  .task-grid,.guard-grid,.est-grid{grid-template-columns:1fr}
  .anchor-stat{flex-direction:column;align-items:flex-start;gap:14px}
  .as-num{font-size:44px}
  .growth-row{grid-template-columns:64px 1fr 80px}
  dl.spec{grid-template-columns:1fr}
  dl.spec dt{padding-top:6px}
}


/* ===== featured live card ===== */
.task.t-ok{border:2px solid var(--accent);background:linear-gradient(180deg,#f2f7ea 0%,#ffffff 60%);box-shadow:0 4px 18px rgba(59,109,17,.12)}
.task.t-ok:hover{box-shadow:0 6px 22px rgba(59,109,17,.18)}
.status.ok{background:var(--accent);color:#fff}
.status.ok .dotp{display:inline-block;width:6px;height:6px;border-radius:50%;background:#fff;margin-right:6px;vertical-align:middle;animation:pulse 1.9s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}
.btn-cta{display:inline-block;background:var(--accent);color:#fff !important;padding:12px 22px;border-radius:9px;text-decoration:none;font-weight:700;font-size:14.5px;margin-top:14px;transition:background .15s,transform .15s;box-shadow:0 2px 8px rgba(59,109,17,.25)}
.btn-cta:hover{background:var(--accent-d);transform:translateY(-1px)}
.sw.ok{background:var(--accent);box-shadow:0 0 0 3px rgba(59,109,17,.18)}

/* ===== demo usability ===== */
.quickstart{background:var(--accent-soft);border:1px solid #d4e3c2;border-radius:var(--radius-sm);padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 16px}
.quickstart p{margin:0;font-size:14px;color:var(--slate)}
.quickstart b{color:var(--ink)}
input.err,textarea.err{border-color:#8c3a23;background:#fdf6f5}
.errmsg{color:#8c3a23;font-size:13px;font-weight:600;margin:10px 0 0}
.doc[contenteditable="true"]{cursor:text}
.doc[contenteditable="true"]:hover{box-shadow:inset 0 0 0 1px var(--line2)}
.doc[contenteditable="true"]:focus{outline:none;box-shadow:inset 0 0 0 2px var(--accent)}
.edithint{font-size:12.5px;color:var(--muted);font-style:italic;margin:8px 0 0}
.prog{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:1px solid var(--line);border-bottom:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;font-size:13.5px;font-weight:650}
.prog-bar{flex:1;height:9px;background:#eceadf;border-radius:5px;overflow:hidden}
.prog-bar i{display:block;height:100%;width:0;background:var(--accent);border-radius:5px;transition:width .28s ease}
.prog-n{font-variant-numeric:tabular-nums;color:var(--muted);white-space:nowrap}
.factcheck.has-prog{border-radius:0 0 var(--radius-sm) var(--radius-sm)}
.payoff{margin-top:14px;background:linear-gradient(180deg,#f2f7ea,#fff);border:2px solid var(--accent);border-radius:var(--radius);padding:20px 22px;display:none}
.payoff.show{display:block}
.payoff h4{margin:0 0 10px;font-size:19px}
.payoff .pstat{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:14px 0}
.payoff .ps{background:#fff;border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 14px}
.payoff .ps b{display:block;font-size:21px;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.payoff .ps span{font-size:12px;color:var(--muted)}
.payoff p{margin:0;font-size:14px;color:var(--slate)}
.payoff .btns{margin-top:14px}
@media(max-width:760px){.payoff .pstat{grid-template-columns:1fr}}


/* ===== tutorial signposting ===== */
.flowstrip{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;margin:0 0 8px}
.flow-head{font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:700;margin:0 0 12px}
.flow-head span{color:var(--accent-d)}
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.fl{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--slate);font-weight:600}
.fl i{flex:none;width:23px;height:23px;border-radius:50%;background:var(--accent-soft);color:var(--accent-d);font-style:normal;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.fl.you i{background:var(--accent);color:#fff}
.fl small{display:block;font-size:11px;font-weight:600;color:var(--accent-d);letter-spacing:.04em;text-transform:uppercase}

/* step labels + states */
.step-label{display:inline-block;font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:3px 9px;border-radius:20px;margin-bottom:8px;background:#eceadf;color:var(--muted)}
.step-label.act{background:var(--accent);color:#fff}
.step.pending{opacity:.45;transition:opacity .3s}
.step.pending .n{background:var(--line2)}
.step.done .n{background:var(--accent-d)}
.step.done .n::after{content:"✓";font-size:15px}
.step.done .n span{display:none}
.waitnote{font-size:12.5px;color:var(--muted);font-style:italic;margin:2px 0 0}

/* do-this instruction */
.dothis{background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:var(--radius-sm);padding:12px 15px;margin:0 0 14px;font-size:14px;color:var(--slate)}
.dothis b{color:var(--ink)}
.dothis .dt-ico{color:var(--accent);font-weight:800;margin-right:7px}
.dothis kbd{background:var(--accent-soft);border:1px solid #d4e3c2;border-radius:5px;padding:1px 7px;font:inherit;font-size:13px;font-weight:700;color:var(--accent-d)}
@media(max-width:760px){.flow{grid-template-columns:1fr 1fr}}


/* hero start line + footer */
.startline{margin:26px 0 0;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.startline .btn-cta{margin-top:0}
.startline span{font-size:13.5px;color:var(--muted)}
footer p{margin:0 0 8px;max-width:760px}
footer p:last-child{margin-bottom:0}
