/* Layout: field-guide pages. Sticky trail-sign header, two tracks (team / leader), one view at a time, narrow reading column. */
:root{
  --bg:#EDF1EE; --surface:#FFFFFF; --soft:#E1EAE4; --ink:#15221B; --muted:#55665C; --line:#D0DAD3;
  --accent:#1B6A51; --accent-ink:#FFFFFF; --blaze:#E1A01A;
  --good:#1E7A4C; --warn:#A86400; --crit:#B23A2E;
  --display:"Barlow Condensed","Arial Narrow",Arial,sans-serif;
  --body:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --bg:#0F1713; --surface:#17221C; --soft:#1E2C25; --ink:#E3EBE5; --muted:#99AD9F; --line:#2A3931;
  --accent:#63C7A5; --accent-ink:#0C1912; --blaze:#F1B83A; --good:#5CC48A; --warn:#E4A23D; --crit:#EC7E70; color-scheme:dark}}
:root[data-theme="dark"]{
  --bg:#0F1713; --surface:#17221C; --soft:#1E2C25; --ink:#E3EBE5; --muted:#99AD9F; --line:#2A3931;
  --accent:#63C7A5; --accent-ink:#0C1912; --blaze:#F1B83A; --good:#5CC48A; --warn:#E4A23D; --crit:#EC7E70; color-scheme:dark}

*{box-sizing:border-box}
body{background:var(--bg);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.55}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:10;background:var(--surface)}
a{color:var(--accent)}
:focus-visible{outline:3px solid var(--blaze);outline-offset:2px}

.gutter{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.wrap{max-width:780px;margin:0 auto}

header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:9;background:var(--surface);border-bottom:1px solid var(--line)}
.top-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:10px}
.brand{font-family:var(--display);font-weight:700;font-size:1.35rem;letter-spacing:.06em;text-transform:uppercase;display:flex;align-items:center;gap:10px;white-space:nowrap}
.blaze{display:inline-block;width:9px;height:16px;background:var(--blaze);border-radius:1px;flex:none}
.track{display:flex;background:var(--soft);border-radius:8px;padding:3px;gap:2px}
.track button{font:600 .95rem/1 var(--display);letter-spacing:.05em;text-transform:uppercase;border:0;background:transparent;color:var(--muted);padding:8px 12px;border-radius:6px;cursor:pointer}
.track button[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink)}
.chips{display:flex;gap:6px;overflow-x:auto;padding-block:0 10px;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chips a{flex:none;text-decoration:none;font-size:.9rem;color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:5px 12px;background:var(--bg)}
.chips a[aria-current="page"]{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}

main{padding-block:28px 56px}
section.view{display:flex;flex-direction:column;gap:28px}
.eyebrow{font:500 .75rem/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
h1,h2,h3{font-family:var(--display);line-height:1.05;text-wrap:balance;margin:0}
h1{font-size:clamp(2.6rem,9vw,4.2rem);font-weight:700;text-transform:uppercase;letter-spacing:.01em}
h2{font-size:1.9rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;display:flex;align-items:center;gap:10px}
h3{font-size:1.3rem;font-weight:600;letter-spacing:.02em}
p{margin:0;max-width:65ch}
.lede{font-size:1.15rem;color:var(--ink)}
.muted{color:var(--muted)}
.stack{display:flex;flex-direction:column;gap:12px}
.stack-lg{display:flex;flex-direction:column;gap:18px}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:18px}
.note{border-left:4px solid var(--blaze);background:var(--soft);padding:12px 14px;border-radius:0 8px 8px 0}
.small{font-size:.9rem}
ul.plain{margin:0;padding-left:1.1em;display:flex;flex-direction:column;gap:6px}
.src{font-size:.85rem;color:var(--muted)}

/* trail of five habits */
.trail{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.trail li{display:grid;grid-template-columns:34px 1fr;gap:12px;position:relative;padding-bottom:18px}
.trail li::before{content:"";position:absolute;left:16px;top:26px;bottom:0;border-left:2px dashed var(--line)}
.trail li:last-child::before{display:none}
.trail .n{width:34px;height:26px;background:var(--blaze);color:#1d1606;font:700 1rem/26px var(--display);text-align:center;border-radius:2px}
.trail .t{font-family:var(--display);font-weight:600;font-size:1.25rem;letter-spacing:.03em;text-transform:uppercase}
.trail .t span{color:var(--muted);font-weight:500;text-transform:none;letter-spacing:0;font-family:var(--body);font-size:.95rem}

/* habit detail */
.habit{display:grid;gap:10px}
.habit .head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.kv{display:grid;grid-template-columns:110px 1fr;gap:6px 14px;font-size:.98rem}
.kv dt{font:500 .72rem/1.9 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.kv dd{margin:0;min-width:0}
.say{font-style:italic}
@media (max-width:520px){.kv{grid-template-columns:1fr;gap:2px}.kv dd{margin-bottom:8px}}

.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
table{border-collapse:collapse;width:100%;min-width:560px;font-size:.95rem}
th,td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line)}
th{font:500 .72rem/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--soft)}
tr:last-child td{border-bottom:0}

/* tabs */
.tabs{display:flex;gap:6px;flex-wrap:wrap}
.tabs button{font:600 1rem/1 var(--display);letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--line);background:var(--surface);color:var(--ink);padding:10px 14px;border-radius:8px;cursor:pointer}
.tabs button[aria-selected="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.fact{background:var(--soft);border-radius:8px;padding:12px}
.fact b{display:block;font-family:var(--display);font-size:1.5rem;line-height:1.1;letter-spacing:.02em}
.line-card{border:1px solid var(--line);background:var(--surface);border-radius:10px;padding:14px 16px;display:grid;gap:6px}
.tag{font:500 .7rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:4px 7px;border-radius:4px;width:max-content}
.tag.p{background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent)}
.tag.e{background:color-mix(in srgb,var(--crit) 14%,transparent);color:var(--crit)}
.tag.s{background:color-mix(in srgb,var(--blaze) 22%,transparent);color:var(--warn)}
.tag.x{background:var(--soft);color:var(--muted)}
.quote{font-size:1.08rem;font-style:italic}
.qa{display:grid;gap:4px}
.qa b{font-weight:700}

/* drill */
.drill{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px;display:grid;gap:14px}
.drill .scene{font-size:1.12rem}
.choices{display:flex;gap:8px;flex-wrap:wrap}
.btn{font:600 1rem/1 var(--display);letter-spacing:.05em;text-transform:uppercase;border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:11px 14px;border-radius:8px;cursor:pointer}
.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
.btn[data-state="right"]{background:var(--good);border-color:var(--good);color:#fff}
.btn[data-state="wrong"]{border-color:var(--crit);color:var(--crit)}
.reveal{border-top:1px dashed var(--line);padding-top:12px;display:grid;gap:8px}
.score{font:500 .8rem/1 var(--mono);color:var(--muted);letter-spacing:.06em}

/* calculator */
.calc{display:grid;gap:12px}
.calc-row{display:grid;grid-template-columns:120px repeat(4,minmax(0,1fr));gap:8px;align-items:end}
.calc-row .lbl{font-family:var(--display);font-weight:600;font-size:1.1rem;text-transform:uppercase;letter-spacing:.03em;padding-bottom:8px}
label.f{display:grid;gap:4px;font:500 .68rem/1.2 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);min-width:0}
input[type=number]{width:100%;font:500 1rem var(--mono);padding:9px 8px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--ink);font-variant-numeric:tabular-nums}
@media (max-width:620px){.calc-row{grid-template-columns:repeat(2,minmax(0,1fr))}.calc-row .lbl{grid-column:1/-1;padding:6px 0 0}}
.results{display:grid;gap:10px}
.res{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;align-items:start;background:var(--surface);border:1px solid var(--line);border-left-width:5px;border-radius:8px;padding:12px 14px}
.res[data-q="ok"]{border-left-color:var(--good)}
.res[data-q="reluctant"]{border-left-color:var(--blaze)}
.res[data-q="connect"]{border-left-color:var(--accent)}
.res[data-q="start"]{border-left-color:var(--crit)}
.res .m{font-family:var(--display);font-weight:700;font-size:1.2rem;text-transform:uppercase}
.res .nums{font:500 .85rem var(--mono);color:var(--muted);font-variant-numeric:tabular-nums}
.res .q{grid-column:1/-1;font-weight:700}
.res .do{grid-column:1/-1}
.chart-wrap{overflow-x:auto}
svg text{font-family:var(--body)}

/* timeline */
.weeks{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.week{display:grid;grid-template-columns:72px 1fr;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:14px}
.week .wk{font-family:var(--display);font-weight:700;text-transform:uppercase;line-height:1}
.week .wk small{display:block;font:500 .7rem/1 var(--mono);letter-spacing:.1em;color:var(--muted);margin-bottom:4px}
.week .wk b{font-size:2.4rem}
.week h3{margin-bottom:6px}
@media (max-width:460px){.week{grid-template-columns:1fr}.week .wk b{font-size:1.6rem}.week .wk small{display:inline;margin-right:6px}}

.steps{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:s}
.steps li{display:grid;grid-template-columns:34px 1fr;gap:12px;counter-increment:s}
.steps li::before{content:counter(s);width:34px;height:26px;background:var(--ink);color:var(--bg);font:700 1rem/26px var(--display);text-align:center;border-radius:2px}
.steps li > div{display:grid;gap:4px;min-width:0}

.loop{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.loop div{background:var(--soft);border-radius:8px;padding:12px;display:grid;gap:4px}
.loop b{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;font-size:1.1rem}
@media (max-width:600px){.loop{grid-template-columns:repeat(2,minmax(0,1fr))}}

.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:600px){.two{grid-template-columns:1fr}}
.do-dont div{border-radius:10px;padding:14px;border:1px solid var(--line);background:var(--surface)}
.do-dont h3{font-size:1.05rem;text-transform:uppercase;margin-bottom:8px}
.do-dont .yes h3{color:var(--good)} .do-dont .no h3{color:var(--crit)}

footer{border-top:1px solid var(--line);padding-block:20px 32px}
@media (prefers-reduced-motion:no-preference){.view{animation:in .25s ease-out}@keyframes in{from{transform:translateY(6px)}to{transform:none}}}

/* Base reset (the artifact host supplied this before) */
body{margin:0}
img{max-width:100%}
[hidden]{display:none!important}
:root{padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
.track a{font:600 .95rem/1 var(--display);letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:var(--muted);padding:8px 12px;border-radius:6px}
.track a[aria-current="page"]{background:var(--accent);color:var(--accent-ink)}
@media (max-width:440px){
  .brand{font-size:1.1rem;gap:8px}
  .track a,.track button{padding:8px 9px}
}

/* ---------- Additions ---------- */
.brand a{color:inherit;text-decoration:none}
.blank{display:inline-block;border:1.5px dashed var(--muted);color:var(--muted);border-radius:4px;padding:0 6px;font-style:normal;font-size:.92em;line-height:1.5}
.modes{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.mode{display:grid;gap:10px;align-content:start;text-decoration:none;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;border-top:6px solid var(--blaze)}
.mode.on{border-top-color:var(--accent)}
.mode:hover{border-color:var(--ink)}
.mode h2{font-size:2rem}
.mode .go{font:600 1rem/1 var(--display);letter-spacing:.05em;text-transform:uppercase;color:var(--accent)}
.mark{font-family:var(--display);font-weight:700;font-size:clamp(3rem,13.5vw,6.5rem);line-height:.9;letter-spacing:-.01em}
.mark span{color:var(--blaze)}
.quiet-link{font-size:.85rem;color:var(--muted)}

/* ---------- Leader framework ---------- */
:root{--sys:#2F5F8A;--per:#1B6A51;--you:#8A4A2F}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){--sys:#7FB3E0;--per:#63C7A5;--you:#E3A07E}}
:root[data-theme="dark"]{--sys:#7FB3E0;--per:#63C7A5;--you:#E3A07E}
.mode.lead{border-top-color:var(--sys)}
.lenses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media (max-width:640px){.lenses{grid-template-columns:1fr}}
.lens{display:grid;gap:6px;align-content:start;text-decoration:none;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-left:6px solid var(--per);border-radius:10px;padding:14px 16px}
.lens.sys{border-left-color:var(--sys)} .lens.you{border-left-color:var(--you)}
.lens:hover{border-color:var(--ink)}
.tag.sys{background:color-mix(in srgb,var(--sys) 16%,transparent);color:var(--sys)}
.tag.per{background:color-mix(in srgb,var(--per) 16%,transparent);color:var(--per)}
.tag.you{background:color-mix(in srgb,var(--you) 16%,transparent);color:var(--you)}
.flow{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.flow li{display:grid;grid-template-columns:34px 1fr;gap:12px;position:relative;padding-bottom:16px}
.flow li::before{content:"";position:absolute;left:16px;top:28px;bottom:0;border-left:2px solid var(--line)}
.flow li:last-child::before{display:none}
.fn{width:34px;height:28px;background:var(--ink);color:var(--bg);font:700 1.05rem/28px var(--display);text-align:center;border-radius:2px}
.fb{display:grid;gap:4px;min-width:0}
.fh{display:flex;align-items:center;gap:8px;flex-wrap:wrap}

.checklist{display:grid;gap:12px}
.cl-head{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:6px}
.cl-count{font:500 .8rem/1 var(--mono);color:var(--muted);font-variant-numeric:tabular-nums}
.cl-count[data-state="gap"]{color:var(--crit)} .cl-count[data-state="ok"]{color:var(--good)}
.cl-group{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:10px 14px 12px;margin:0;display:grid;gap:4px;min-width:0}
.cl-group legend{font:500 .72rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:0 6px}
.cl-group label{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;padding:8px 0;border-bottom:1px solid var(--line);cursor:pointer}
.cl-group label:last-child{border-bottom:0}
.cl-group input{width:18px;height:18px;margin:3px 0 0;accent-color:var(--accent)}
.cl-group label:has(input:checked){color:var(--muted)}
.cl-actions{display:flex;justify-content:flex-end}

.tree{display:grid;gap:12px}
.trail-q{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.trail-q li{font-size:.9rem;color:var(--muted);display:grid;grid-template-columns:auto 1fr;gap:8px}
.trail-q li b{font:500 .72rem/1.6 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.tree-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px;display:grid;gap:10px}
.tree-card .end{border-left:5px solid var(--accent);padding-left:12px;display:grid;gap:8px}
.tree-card .end[data-lens="sys"]{border-left-color:var(--sys)}
.tree-card .end[data-lens="you"]{border-left-color:var(--you)}
/* Three mode links: let the switcher drop below the brand on narrow screens */
.top-row{flex-wrap:wrap;row-gap:8px}
.track{margin-left:auto}
.track a{white-space:nowrap}
@media (max-width:360px){.track a{padding:8px 7px;font-size:.85rem;letter-spacing:.02em}}
h1{overflow-wrap:break-word;hyphens:auto}
@media (max-width:360px){h1{font-size:2.2rem}}
