/* ============================================================
   IronMind Blueprint — document styles
   Extends assets/site.css (loaded first). Palette, fonts and
   panel geometry are inherited; nothing here overrides the
   shared site rules used by the other pages.
   ============================================================ */

:root{
  --track-p:#00B4FF;                 /* personal track accent */
  --track-o:#8fa9c4;                 /* professional / organizational track accent */
  --paper:rgba(10,25,41,.72);
}

/* ============ document masthead ============ */
.doc-meta{margin-top:20px;color:var(--muted);font-size:13px;letter-spacing:.12em;
  font-family:var(--disp);font-weight:700}
.doc-meta span{color:var(--bright)}
.confidential{display:inline-block;margin-top:22px;padding:6px 16px;border:1px solid var(--line);
  font-family:var(--disp);font-weight:700;letter-spacing:.24em;font-size:11.5px;color:var(--muted)}

/* ============ table of contents ============ */
.toc{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:1px;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));background:var(--line)}
.toc li{background:var(--card)}
.toc a{display:flex;align-items:baseline;gap:14px;padding:14px 18px;text-decoration:none;
  color:var(--light);transition:background .15s ease,color .15s ease}
.toc a:hover{background:rgba(26,143,227,.14);color:#fff}
.toc .k{font-family:var(--disp);font-weight:700;letter-spacing:.14em;font-size:12.5px;
  color:var(--bright);flex:0 0 96px}
.toc .t{font-size:14.5px;line-height:1.35}

/* ============ section rhythm ============ */
.sec{padding:52px 0 0;scroll-margin-top:24px}
.sec h3{font-family:var(--disp);font-weight:700;letter-spacing:.05em;
  font-size:clamp(19px,2.4vw,23px);margin:34px 0 14px;color:#fff}
.sec h4{font-family:var(--disp);font-weight:700;letter-spacing:.16em;font-size:13px;
  margin:28px 0 12px;color:var(--bright)}
.sec > .lede{margin-bottom:22px}

/* ============ pull quote / coach voice ============ */
.voice{margin:30px 0 0;padding:24px 28px;background:linear-gradient(160deg,rgba(26,143,227,.12),rgba(10,25,41,.9) 45%);
  border-left:3px solid var(--bright)}
.voice .by{font-family:var(--disp);font-weight:700;letter-spacing:.2em;font-size:12.5px;
  color:var(--bright);margin-bottom:10px}
.voice p{margin:0;color:var(--light);font-size:15.5px}

/* ============ two-track split (personal | professional) ============ */
.tracks{display:grid;gap:22px;grid-template-columns:1fr 1fr;margin-top:20px}
.track{background:var(--paper);border:1px solid var(--line);padding:24px 26px;
  clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px)}
.track > .hd{font-family:var(--disp);font-weight:700;letter-spacing:.18em;font-size:13px;
  padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid var(--line)}
.track.p{border-top:2px solid var(--track-p)}
.track.p > .hd{color:var(--track-p)}
.track.o{border-top:2px solid var(--track-o)}
.track.o > .hd{color:var(--track-o)}

/* ============ item lists (bold lead-in + body) ============ */
.items{list-style:none;margin:0;padding:0}
.items li{margin:0 0 20px;padding:0 0 0 18px;border-left:1px solid rgba(148,163,184,.22)}
.items li:last-child{margin-bottom:0}
.items b{display:block;color:#fff;font-weight:600;font-size:15px;line-height:1.45;margin-bottom:6px}
.items span{display:block;color:var(--muted);font-size:14.5px;line-height:1.62}
.items.plain li{color:var(--light);font-size:14.5px;line-height:1.62}

/* ============ identity upgrade cards ============ */
.upgrade{background:var(--paper);border:1px solid var(--line);padding:26px 28px;margin-top:20px;
  clip-path:polygon(18px 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%,0 18px)}
.upgrade > .hd{font-family:var(--disp);font-weight:700;letter-spacing:.18em;font-size:13.5px;
  color:var(--bright);margin-bottom:18px}
.shift{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin-bottom:22px}
.shift .cell{padding:16px 18px;border:1px solid var(--line);background:rgba(4,11,20,.6);font-size:14.5px;line-height:1.5}
.shift .cell .lbl{display:block;font-family:var(--disp);font-weight:700;letter-spacing:.2em;
  font-size:11.5px;margin-bottom:8px}
.shift .from{color:var(--muted)}
.shift .from .lbl{color:#64748b}
.shift .to{color:#fff}
.shift .to .lbl{color:var(--bright)}
.shift .arrow{font-family:var(--disp);font-size:26px;color:var(--accent);line-height:1}
.statement{padding:22px 24px;background:rgba(26,143,227,.1);border:1px solid var(--line);
  font-family:var(--disp);font-weight:700;letter-spacing:.02em;
  font-size:clamp(18px,2.6vw,24px);line-height:1.24;color:#fff}
.statement .lbl{display:block;font-size:11.5px;letter-spacing:.2em;color:var(--bright);margin-bottom:12px}
.anchor{margin-top:18px}
.anchor .lbl{font-family:var(--disp);font-weight:700;letter-spacing:.18em;font-size:12px;
  color:var(--bright);display:block;margin-bottom:8px}
.anchor p{margin:0;color:var(--light);font-size:15px}

/* ============ daily ritual blocks ============ */
.ritual{border:1px solid var(--line);background:var(--paper);margin-top:18px}
.ritual > .hd{display:flex;flex-wrap:wrap;align-items:baseline;gap:14px;padding:14px 22px;
  background:rgba(26,143,227,.12);border-bottom:1px solid var(--line);
  font-family:var(--disp);font-weight:700;letter-spacing:.18em;font-size:13.5px;color:#fff}
.ritual > .hd .when{color:var(--bright);font-size:12px;letter-spacing:.14em}
.ritual .bd{padding:22px 24px}

/* ============ tables ============ */
.tbl{width:100%;border-collapse:collapse;margin-top:18px;font-size:14.5px}
.tbl caption{text-align:left;font-family:var(--disp);font-weight:700;letter-spacing:.16em;
  font-size:12.5px;color:var(--bright);padding-bottom:10px}
.tbl th{text-align:left;font-family:var(--disp);font-weight:700;letter-spacing:.14em;font-size:12.5px;
  color:var(--bright);padding:12px 16px;background:rgba(26,143,227,.12);
  border:1px solid var(--line);vertical-align:bottom}
.tbl td{padding:14px 16px;border:1px solid rgba(26,143,227,.2);color:var(--light);
  vertical-align:top;line-height:1.55;background:rgba(10,25,41,.5)}
.tbl td b{color:#fff;font-weight:600}
.tbl tr:hover td{background:rgba(26,143,227,.07)}
.tbl .h{font-family:var(--disp);font-weight:700;letter-spacing:.12em;font-size:14px;color:#fff;white-space:nowrap}
.tbl .yes{color:var(--bright);font-weight:600}

/* ============ high-impact moves ============ */
.moves{counter-reset:mv;margin-top:20px}
.move{position:relative;display:grid;grid-template-columns:74px 1fr;gap:22px;align-items:start;
  padding:22px 24px 22px 0;border-top:1px solid rgba(26,143,227,.2)}
.move:last-child{border-bottom:1px solid rgba(26,143,227,.2)}
.move .no{counter-increment:mv;font-family:var(--disp);font-weight:700;font-size:40px;line-height:.9;
  background:var(--steel-grad);-webkit-background-clip:text;background-clip:text;color:transparent;
  padding-left:12px}
.move .no:before{content:counter(mv,decimal-leading-zero)}
.move .tag{display:inline-block;margin-bottom:10px;padding:4px 12px;background:var(--accent);
  font-family:var(--disp);font-weight:700;letter-spacing:.16em;font-size:11px;color:#fff}
.move b{display:block;color:#fff;font-weight:600;font-size:16px;margin-bottom:7px;line-height:1.4}
.move p{margin:0;color:var(--muted);font-size:14.5px;line-height:1.62}
.move.lead{background:linear-gradient(160deg,rgba(26,143,227,.13),transparent 60%)}

/* ============ questions (prerequisite + closing ask) ============ */
.qs{list-style:none;margin:20px 0 0;padding:0;counter-reset:q}
.qs li{counter-increment:q;padding:20px 0;border-top:1px solid rgba(26,143,227,.2)}
.qs li:last-child{border-bottom:1px solid rgba(26,143,227,.2)}
.qs .q{display:block;color:#fff;font-weight:600;font-size:15.5px;line-height:1.45;margin-bottom:8px}
.qs .q:before{content:"Q" counter(q) ".";color:var(--bright);font-family:var(--disp);
  letter-spacing:.1em;margin-right:10px}
.qs p{margin:0;color:var(--muted);font-size:14.5px;line-height:1.62}
.asks{list-style:none;margin:20px 0 0;padding:0;counter-reset:a}
.asks li{counter-increment:a;display:grid;grid-template-columns:52px 1fr;gap:18px;
  padding:20px 0;border-top:1px solid rgba(26,143,227,.2)}
.asks li:last-child{border-bottom:1px solid rgba(26,143,227,.2)}
.asks .ltr{font-family:var(--disp);font-weight:700;font-size:26px;color:var(--accent);line-height:1}
.asks .ltr:before{content:counter(a,upper-alpha)}
.asks b{display:block;color:#fff;font-weight:600;font-size:15.5px;margin-bottom:7px;line-height:1.4}
.asks p{margin:0;color:var(--muted);font-size:14.5px;line-height:1.62}

/* ============ signature block ============ */
.sign{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:30px}
.sign .box{border:1px solid var(--line);background:rgba(4,11,20,.55);padding:22px 24px}
.sign .role{font-family:var(--disp);font-weight:700;letter-spacing:.18em;font-size:12px;
  color:var(--bright);margin-bottom:14px}
.sign .who{color:#fff;font-size:16px;margin-bottom:4px}
.sign .sub{color:var(--muted);font-size:13.5px}
.sign .line{margin-top:20px;padding-top:9px;border-top:1px solid rgba(148,163,184,.35);
  color:#64748b;font-size:12.5px;letter-spacing:.1em}

/* ============ back to top ============ */
.totop{display:inline-block;margin-top:26px;font-family:var(--disp);font-weight:700;
  letter-spacing:.16em;font-size:12px;color:var(--muted);text-decoration:none}
.totop:hover{color:var(--bright)}

/* ============ responsive ============ */
@media (max-width:820px){
  .tracks,.sign{grid-template-columns:1fr}
  .shift{grid-template-columns:1fr;gap:12px}
  .shift .arrow{transform:rotate(90deg);justify-self:center}
  .move{grid-template-columns:52px 1fr;gap:14px;padding-right:0}
  .move .no{font-size:30px;padding-left:0}
  .tbl{font-size:13.5px}
  .tbl th,.tbl td{padding:11px 12px}
  .tbl .h{white-space:normal}
}

/* ============ premise chips (readiness vocabulary) ============ */
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.chip{padding:7px 16px;border:1px solid var(--line);background:rgba(4,11,20,.6);
  font-family:var(--disp);font-weight:700;letter-spacing:.18em;font-size:11.5px;color:var(--muted)}
.chip.on{border-color:var(--bright);color:var(--bright);background:rgba(26,143,227,.12)}

/* ============ support channels ============ */
.channels{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:1px;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr));background:var(--line)}
.channels li{background:var(--card);padding:20px 22px}
.channels .nm{display:block;font-family:var(--disp);font-weight:700;letter-spacing:.12em;
  font-size:14.5px;color:#fff;margin-bottom:9px}
.channels .nm a{color:var(--bright);text-decoration:none}
.channels .nm a:hover{text-decoration:underline}
.channels .dsc{display:block;color:var(--muted);font-size:14.5px;line-height:1.6}

/* ============ always-on fallback (crisis line) ============ */
.crisis{margin-top:22px;padding:22px 26px;border:1px solid rgba(255,176,32,.45);
  border-left:3px solid #ffb020;background:rgba(255,176,32,.07)}
.crisis .lbl{display:block;font-family:var(--disp);font-weight:700;letter-spacing:.2em;
  font-size:11.5px;color:#ffb020;margin-bottom:10px}
.crisis .num{display:block;font-family:var(--disp);font-weight:700;letter-spacing:.04em;
  font-size:clamp(20px,3vw,27px);line-height:1.15;color:#fff;margin-bottom:8px}
.crisis .num a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,176,32,.6)}
.crisis p{margin:0;color:var(--light);font-size:14.5px;line-height:1.6}

/* ============ print / save-as-PDF ============ */
@media print{
  body{background:#fff;color:#111}
  .page{background:#fff}
  .page:before,.topnav,.totop,.btnrow{display:none !important}
  .wrap{max-width:none;padding:0 12mm}
  .sec{page-break-inside:avoid;padding-top:26px}
  .logo-1,.logo-2{-webkit-text-fill-color:#111;color:#111;filter:none;background:none}
  .track,.upgrade,.panel,.ritual,.voice,.statement,.sign .box,.channels li,.chip{background:#fff;border:1px solid #bbb;clip-path:none}
  .items b,.move b,.asks b,.qs .q,h2,.sec h3{color:#111}
  .items span,.move p,.asks p,.qs p,.voice p,.anchor p,.lede,.tbl td,.channels .dsc,.crisis p{color:#333}
  .channels{background:none;gap:8px}
  .channels .nm,.crisis .num{color:#111}
  .crisis{background:#fff;border:1px solid #111}
  .crisis .lbl,.chip{color:#111}
  .tbl th{background:#eee;color:#111}
  .tbl td{background:#fff}
}
