/* ═══════════════════════════════════════════════════════════════════════
   AI Mindset Applied Studio - V3 design layer
   Loaded LAST on every page (end of body), after shared.css and page styles.

   Two jobs:
   1. THE GRAMMAR SWAP - remove the twelve AI-template tells site-wide and
      replace each with the house move (see v3-lab/DESIGN-RULES.md):
      flat navy instead of glow+mesh · hover sharpens instead of levitating ·
      sentence-case kickers instead of uppercase eyebrows · round = pressable ·
      no decorative icons · no loops · one light source · craft kept (B0).
   2. THE SHEET LIBRARY - the ownable components (.v3-*): the guide's voice
      band, the work sheet with title block, station rows, the promise pin,
      ink notes, ruled answer lists. Used by Welcome and adoptable anywhere.

   !important appears only where page-level styles would otherwise win;
   each use is a deliberate override of a removed tell.
   ═══════════════════════════════════════════════════════════════════════ */

:root {
  --v3-ease: cubic-bezier(0.16, 1, 0.3, 1);
  --v3-due: #C13B3B;
  --v3-kept: #2E6B4F;
  --v3-sheet: #FFFDF9;
  --v3-warm: #FAF8F4;
  /* soften the shadow system into one modelled light (B0), don't delete it */
  --shadow-sm: 0 1px 2px rgba(14,24,38,.05), 0 10px 24px -16px rgba(14,24,38,.18);
  --shadow-md: 0 2px 6px rgba(14,24,38,.06), 0 20px 44px -24px rgba(14,24,38,.28);
  --shadow-lg: 0 24px 60px -28px rgba(14,24,38,.4);
  --shadow-accent: 0 8px 24px -8px rgba(240,138,28,.5);
}

/* ── 1 · atmosphere: the navy carries itself ──────────────────────────── */
.aim-hero-navy { background: var(--navy) !important; }
.aim-hero-navy::before { display: none !important; }
.aim-tool-card.featured { background: var(--navy) !important; }
.cp-reinvent-band, .dc2-intro { background-image: none !important; }

/* ── 2 · motion: nothing loops; hover sharpens, never levitates ───────── */
.aim-nav-pill-dot, .aim-nav-companion .dot,
.cp-nav-badge-dot, .rr-nav-badge .dot, .rt-nav-badge .dot { animation: none !important; }

.aim-tool-card, .welcome-path, .wb-item, .action-card, .cl-case, .lf-case, .eb-study {
  transition: border-color 0.16s, box-shadow 0.25s var(--v3-ease) !important;
}
.aim-tool-card:hover, .welcome-path:hover, .wb-item:hover, .action-card:hover {
  transform: none !important;
  border-color: var(--orange) !important;
  box-shadow: var(--shadow-md) !important;
}
.aim-tool-card::before, .welcome-path::before { display: none !important; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
}

/* ── 3 · labels: sentence case + the orange square ────────────────────── */
.aim-eyebrow, .aim-hero-eyebrow, .wb-resume-eyebrow, .wb-item .k,
.aim-tool-card .subtitle, .action-card .level,
.rr-hiw-label, .rr-snap-eye, .rr-sc-eye, .rr-tracker-eye, .rr-drawer-eye, .rr-close-eye,
.rt-map-col-eye, .de-trail-lbl, .dc2-eye,
.cl-case .stat-lbl, .lf-case .stat-lbl, .eb-num .lbl {
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
}
.aim-eyebrow::before, .aim-hero-eyebrow::before {
  width: 10px !important; height: 10px !important;
  background: var(--orange) !important;
}

/* ── 4 · round = pressable; facts are flat tags ───────────────────────── */
.preview-chip, .aim-chip, .welcome-path-chips span {
  border-radius: 2px !important;
  background: transparent !important;
  border: 1px solid var(--border) !important;
  color: var(--text-muted) !important;
}
.aim-tool-card.featured .preview-chip {
  border-color: rgba(255,255,255,0.28) !important;
  color: rgba(255,255,255,0.8) !important;
}
.aim-library-tag { border-radius: 2px !important; }

/* ── 5 · containers: no decorative icons, no ribbon, calmer radii ─────── */
.aim-tool-icon, .welcome-path-icon { display: none !important; }
.aim-tool-card.program::after { display: none !important; }
:root { --radius-xl: 8px; }

/* ── 6 · AI presence: shown, not announced ────────────────────────────── */
.cp-drawer-tailored, .rr-drawer-tailored {
  background: transparent !important;
  border: none !important; box-shadow: none !important; filter: none !important;
  animation: none !important; transform: none !important;
  color: var(--text-muted) !important;
  padding: 0 !important; font-weight: 600 !important;
}
.cp-drawer-tailored::before, .rr-drawer-tailored::before { content: none !important; }

/* the companion: a doorway, not a beacon - quiet until needed */
.aim-nav-companion {
  background: var(--navy) !important;
  border: 1px solid rgba(255,255,255,0.35) !important;
  box-shadow: 0 8px 24px -10px rgba(14,24,38,0.5) !important;
}
.aim-nav-companion:hover { border-color: #fff !important; }

/* ── 7 · the confidentiality line earns full weight (report Fix 2) ────── */
.aim-export-sensitive, .cp-sensitive-line {
  font-size: 0.92rem !important;
  color: var(--text) !important;
  font-weight: 600 !important;
  opacity: 1 !important;
}

/* ═══ THE SHEET LIBRARY - the ownable components ══════════════════════ */

/* the guide's voice: navy band, one thought at a time */
.v3-voice {
  background: var(--navy);
  color: #fff; border-radius: 16px; padding: 26px 30px 24px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.09), 0 22px 44px -26px rgba(18,32,52,0.5);
}
.v3-voice .v3-mo { font-size: 0.78rem; font-weight: 700; color: rgba(255,255,255,0.84); margin-bottom: 10px; }
.v3-voice p, .v3-voice h1, .v3-voice h2 { color: #fff; }
.v3-voice .v3-q { color: rgba(255,255,255,0.84); font-weight: 300; }
.v3-voice a { color: #FFA23A; background: linear-gradient(transparent 78%, rgba(240,138,28,0.32) 78%); border-radius: 2px; text-decoration: none; }
.v3-voice a:hover { color: #FFC985; }

/* the work sheet: title block + paper */
.v3-sheet {
  background: var(--v3-sheet); color: var(--text);
  border: 1px solid var(--border); border-radius: 8px;
  padding: 26px 30px 24px; box-shadow: var(--shadow-md); position: relative;
}
.v3-sheet-head { display: flex; justify-content: space-between; align-items: baseline; gap: 14px; flex-wrap: wrap; border-bottom: 2px solid var(--text); padding-bottom: 11px; margin-bottom: 6px; }
.v3-sheet-head h2, .v3-sheet-head h3 { font-size: 1.1rem; font-weight: 900; letter-spacing: -0.01em; margin: 0; }
.v3-sheet-meta { font-size: 0.76rem; font-weight: 600; color: var(--text-muted); }

/* station rows: the drawn process */
.v3-stn { display: grid; grid-template-columns: 30px 190px 1fr; gap: 0 16px; padding: 11px 0; border-bottom: 1px solid var(--border); align-items: baseline; }
.v3-stn:last-child { border-bottom: none; }
.v3-stn .n { font-size: 0.76rem; font-weight: 800; color: var(--text-subtle); }
.v3-stn .t { font-weight: 800; font-size: 0.93rem; }
.v3-stn .d { font-size: 0.85rem; color: var(--text-muted); font-style: italic; }
.v3-stn.rev { background: rgba(240,138,28,0.08); border: 2px solid var(--orange); padding: 9px 12px; margin: 2px -13px; border-radius: 8px; }
.v3-stn.rev .n, .v3-stn.rev .t { color: var(--orange-600, #C06F0F); }
.v3-stn.rev .t::after { content: "  · the AI goes here"; font-weight: 700; font-size: 0.74rem; letter-spacing: 0.02em; }
.v3-stn.human { background: repeating-linear-gradient(-45deg, transparent 0 7px, rgba(20,36,58,0.03) 7px 8px); }
.v3-stn.human .d::after { content: "  Stays yours."; font-style: normal; font-weight: 700; color: var(--text); }

/* the promise pin */
.v3-pin {
  display: inline-block; background: var(--v3-due); color: #fff;
  font-size: 0.74rem; font-weight: 800; letter-spacing: 0.02em;
  padding: 6px 12px; border-radius: 4px;
  box-shadow: var(--shadow-sm);
}
.v3-pin.kept { background: var(--v3-kept); }

/* the ink note: the consultant's hand */
.v3-ink { display: flex; gap: 12px; align-items: flex-start; margin-top: 18px; }
.v3-ink p { font-size: 0.94rem; font-style: italic; font-weight: 500; color: var(--orange-600, #C06F0F); max-width: 52ch; margin: 0; }

/* ruled answer list - never a chip row; always ends with a write-in */
.v3-answers { border-top: 1px solid var(--border); display: flex; flex-direction: column; max-width: 520px; }
.v3-answers > button, .v3-answers > a {
  text-align: left; font-size: 0.95rem; font-weight: 600; color: var(--text);
  background: none; border: none; border-bottom: 1px solid var(--border);
  padding: 12px 4px; display: flex; align-items: center; gap: 12px;
  cursor: pointer; text-decoration: none;
  transition: color 0.15s, padding-left 0.2s var(--v3-ease);
}
.v3-answers > button::before, .v3-answers > a::before {
  content: ""; width: 8px; height: 8px; flex-shrink: 0; background: var(--navy-200, #95ACC6);
  transition: background 0.15s;
}
.v3-answers > button:hover, .v3-answers > a:hover { color: var(--orange-600, #C06F0F); padding-left: 12px; }
.v3-answers > button:hover::before, .v3-answers > a:hover::before { background: var(--orange); }
.v3-own { display: flex; align-items: center; gap: 12px; padding: 9px 4px; border-bottom: 1px solid var(--border); }
.v3-own::before { content: ""; width: 8px; height: 8px; flex-shrink: 0; background: var(--navy-200, #95ACC6); }
.v3-own input { flex: 1; background: transparent; border: none; outline: none; color: var(--text); font-family: inherit; font-size: 0.95rem; font-style: italic; font-weight: 400; min-width: 120px; }
.v3-own input::placeholder { color: var(--text-subtle); }

/* signed echo - never a bubble */
.v3-you { font-size: 0.9rem; font-style: italic; color: var(--text-muted); }
.v3-you::before { content: " - "; color: var(--orange-600, #C06F0F); font-style: normal; font-weight: 700; }

/* the contextual page brief (injected by aim-v3.js on reference pages) */
.v3-brief {
  max-width: 1100px; margin: 18px auto 0; padding: 12px 2px 14px;
  border-bottom: 1px solid var(--border);
  font-size: 0.93rem; color: var(--text);
}
.v3-brief::before { content: ""; display: inline-block; width: 10px; height: 10px; background: var(--orange); margin-right: 10px; }
.v3-brief b { font-weight: 700; }
.v3-brief-wrap { padding: 0 28px; }

/* the personal door card on leader pages (report Fix 1) */
.v3-personal-door {
  max-width: 1100px; margin: 26px auto 0; display: flex; justify-content: space-between;
  align-items: center; gap: 18px; flex-wrap: wrap;
  background: var(--v3-sheet); border: 1px solid var(--border);
  border-radius: 8px; padding: 18px 22px; box-shadow: var(--shadow-sm);
}
.v3-personal-door .t { font-weight: 800; font-size: 1.02rem; color: var(--text); }
.v3-personal-door .t::before { content: ""; display: inline-block; width: 10px; height: 10px; background: var(--orange); margin-right: 10px; }
.v3-personal-door .d { font-size: 0.88rem; color: var(--text-muted); margin-top: 2px; }
.v3-personal-door a { font-weight: 700; font-size: 0.92rem; color: var(--orange-600, #C06F0F); text-decoration: none; white-space: nowrap; }
.v3-personal-door a:hover { color: var(--orange); }

@media (max-width: 680px) {
  .v3-stn { grid-template-columns: 24px 1fr; }
  .v3-stn .d { grid-column: 2; }
  .v3-sheet { padding: 20px 18px; }
  .v3-voice { padding: 20px 20px 18px; }
}


/* ── 8 · nothing is a capsule: one shape language, 4-8px, product-wide ── */
.aim-mywork-link, .aim-ctx-chip, .aim-nav-pill { border-radius: 6px !important; }

/* ── 9 · page-local rails and uppercase labels V2 pages carry in their own
   CSS (found after the first hunt; the sweep continues) ── */
.rt-how-it-works { border: 1px solid rgba(240,138,28,0.3) !important; border-radius: 8px !important; }
.rt-hiw-label, .rt-fromrole-eye, .rt-thread-num, .rt-step-label,
.rr-step-label, .rr-step-pill, .cp-step-label, .cp-step-pill,
.de-progress-label, .dc2-progress-label {
  text-transform: none !important;
  letter-spacing: 0 !important;
}


/* ═══ THE CONOR LAYER (20 Aug feedback) ═══════════════════════════════ */

/* 1+2 · type up: "beautiful but unwelcoming" - one global lift plus floors
   for the micro-label classes; button labels never below ~0.95rem */
html { font-size: 18px; }
.aim-btn-primary, .aim-btn-ghost, .aim-btn-ghost-dark { font-size: 0.95rem !important; }
.pb-btn, .cp-sugg, .dc2-chip, .de-chip, .rr-quickpick { font-size: 0.9rem !important; }
.pb-item .tool, .pb-day-cell .cap, .wb-item .k, .rt-fromrole-eye, .rt-thread-num,
.rr-drawer-eye, .cp-nav-badge, .rr-nav-badge, .rt-nav-badge { font-size: 0.8rem !important; }
.pb-item .when { font-size: 0.85rem !important; }

/* 3 · contrast: important lines are not grey whispers */
:root { --text-muted: #46586C; --text-subtle: #5B6B7D; }

/* 6 · headings are one colour; kickers are plain bold text, unornamented */
.aim-hero-title .accent, .aim-section-title .accent, .welcome-path-title .accent,
h1 .accent, h2 .accent, h3 .accent { color: inherit !important; }
.aim-eyebrow::before, .aim-hero-eyebrow::before { display: none !important; }
.v3-brief::before, .v3-personal-door .t::before { display: none !important; }
.v3-brief b { margin-right: 0; }

/* 7 · step labels are text, not boxed pills ("step one doesn't need its
   own box - maybe the claudiest thing of all") */
.rt-step-label, .rr-step-label, .cp-step-label, .rr-step-pill, .cp-step-pill {
  border: none !important; background: transparent !important;
  padding: 0 !important; box-shadow: none !important;
  font-size: 0.85rem !important;
}


/* 10 · the context chip never truncates-and-wraps (persona-report defect);
   capsule flattened (it used 100px radius, dodging the 999px sweep) */
.aim-ctx-chip { max-width: 260px; border-radius: 6px !important; flex-wrap: nowrap !important; white-space: nowrap; }
.aim-ctx-chip > span:first-child, .aim-ctx-chip .ctx-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 150px; }
@media (max-width: 900px) { .aim-ctx-chip { max-width: 150px; } .aim-ctx-chip > span:first-child { max-width: 90px; } }
