/* VecNine public type pages — shared stylesheet.
   Extracted S145 from the (byte-identical) inline <style> that lived in
   type1.html..type9.html; one source of truth for all nine. */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}

html,body{background:var(--bg);color:var(--w);font-family:var(--fb);font-weight:300;margin:0;padding:0;}
.type-hero{margin-top:56px;padding:64px 40px 48px;max-width:1080px;margin-left:auto;margin-right:auto;}
.type-eyebrow{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;margin-bottom:16px;opacity:.65;}
.type-n{font-family:var(--fd);font-size:120px;font-weight:200;line-height:1;margin-bottom:0;}
.type-name{font-family:var(--fd);font-size:42px;font-weight:300;line-height:1.1;margin-bottom:20px;}
.type-q{font-family:var(--fd);font-size:18px;font-style:italic;color:rgba(255,255,255,.55);line-height:1.75;max-width:620px;margin-bottom:40px;border-left:2px solid rgba(255,255,255,.1);padding-left:20px;}
.type-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:1080px;margin:0 auto 32px;padding:0 40px;}
.type-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:24px 28px;}
.type-card-lbl{font-size:8.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.28);margin-bottom:8px;}
.type-card-val{font-family:var(--fd);font-size:24px;font-weight:300;color:rgba(255,255,255,.82);}
.type-growth{max-width:1080px;margin:0 auto 48px;padding:0 40px;}
.type-growth-hd{font-size:9px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.28);margin-bottom:14px;}
.type-growth-text{font-size:14px;color:rgba(255,255,255,.5);line-height:1.85;margin-bottom:16px;}
.type-cta{max-width:1080px;margin:0 auto 80px;padding:32px 40px;background:rgba(232,105,42,.06);border:1px solid rgba(232,105,42,.18);border-radius:16px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:20px;}
.type-cta-text{font-size:14px;color:rgba(255,255,255,.55);line-height:1.6;}
.type-cta-text strong{color:rgba(255,255,255,.8);display:block;font-size:18px;margin-bottom:4px;}
.type-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:8px;background:linear-gradient(135deg,#E8692A,#C0501A);color:#fff;font-size:13px;font-weight:600;text-decoration:none;letter-spacing:.03em;}
.type-nav-row{max-width:1080px;margin:0 auto 32px;padding:0 40px;display:flex;align-items:center;justify-content:space-between;}
.type-nav-link{display:flex;align-items:center;gap:8px;color:rgba(255,255,255,.35);font-size:12px;text-decoration:none;transition:color .13s;}
.type-nav-link:hover{color:rgba(255,255,255,.7);}
.type-nav-n{font-family:var(--fd);font-size:22px;font-weight:300;}
@media(max-width:700px){.type-grid{grid-template-columns:1fr;padding:0 20px;}.type-hero,.type-growth,.type-cta,.type-nav-row{padding-left:20px;padding-right:20px;}.type-n{font-size:80px;}}

@keyframes starPulse {
  0%, 100% { opacity:.55; text-shadow: none; }
  50% { opacity:1; text-shadow: 0 0 8px rgba(201,169,110,.9), 0 0 16px rgba(201,169,110,.4); }
}

.tc-section{max-width:1080px;margin:0 auto 48px;padding:0 40px;}
.tc-divider{border:none;border-top:1px solid rgba(255,255,255,.06);margin:0 40px 48px;}
.tc-eyebrow{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(232,105,42,.6);margin-bottom:12px;}
.tc-heading{font-size:26px;font-weight:300;color:rgba(255,255,255,.85);margin-bottom:8px;line-height:1.2;}
.tc-sub{font-size:13px;color:rgba(255,255,255,.38);line-height:1.7;margin-bottom:28px;}
.tc-mini-wrap{max-width:500px;}

#tc-esys-root{background:transparent!important;}
#tc-esys-root .esys-input-row{background:rgba(255,255,255,.04)!important;border-color:rgba(255,255,255,.1)!important;}
#tc-esys-root .esys-input-row:focus-within{border-color:rgba(232,105,42,.5)!important;}
#tc-esys-root .esys-input-field{color:rgba(255,255,255,.8)!important;}
#tc-esys-root .esys-result{border-color:rgba(255,255,255,.08)!important;}
#tc-esys-root .esys-result-head{background:rgba(0,0,0,.3)!important;}
#tc-esys-root .esys-result-body{background:rgba(255,255,255,.03)!important;color:rgba(255,255,255,.7)!important;}
#tc-esys-root .esys-dom-tag-name{color:rgba(255,255,255,.8)!important;}
#tc-esys-root .esys-dom-tag-sub{color:rgba(255,255,255,.35)!important;}
#tc-esys-root .esys-demark-line{background:rgba(255,255,255,.08)!important;}
#tc-esys-root .esys-demark-label,.tc-esys-root .esys-miss-note{color:rgba(255,255,255,.35)!important;}
#tc-esys-root .esys-sec-chip.high{background:rgba(255,255,255,.12)!important;color:rgba(255,255,255,.7)!important;border:none!important;}
#tc-esys-root .esys-sec-chip.mid{background:rgba(255,255,255,.05)!important;color:rgba(255,255,255,.5)!important;border-color:rgba(255,255,255,.1)!important;}
#tc-esys-root .esys-sec-chip.low{background:transparent!important;color:rgba(255,255,255,.3)!important;border-color:rgba(255,255,255,.07)!important;}
#tc-esys-root .esys-miss-chip{color:rgba(255,255,255,.25)!important;border-color:rgba(255,255,255,.12)!important;}
.tc-result-insight{display:none;margin-top:20px;padding:16px 18px;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);border-radius:10px;font-size:13px;color:rgba(255,255,255,.45);line-height:1.7;}
.tc-result-insight.show{display:block;}
.tc-result-insight strong{color:rgba(255,255,255,.72);display:block;margin-bottom:4px;}
@media(max-width:700px){.tc-section{padding:0 20px;}}

#esys-root {
  --purple:        #1A0930;
  --purple-mid:    #2C1250;
  --purple-light:  #3D1A6E;
  --orange:        #E8692A;
  --orange-dim:    #C0501A;
  --orange-ter:    #7A3610;
  --white:         #FFFFFF;
  --grey-light:    #EFEFED;
  --grey-mid:      #D0CECC;
  --grey-dark:     #2A2826;
  --grey-faint:    #A0A09E;
  --result-head-bg:#1C1C1C;

  font-family: 'Outfit', system-ui, sans-serif;
  max-width: 600px;
  margin: 0 auto;
  padding: 32px 24px 48px;
  color: var(--white);
  background: transparent;
}
#esys-root * { box-sizing: border-box; margin: 0; padding: 0; }

.esys-eyebrow {
  font-size: 11px; font-weight: 500; letter-spacing: .2em;
  text-transform: uppercase; color: var(--orange); margin-bottom: 12px;
}
.esys-title {
  font-family: 'Outfit',system-ui,sans-serif;
  font-size: 38px; font-weight: 300; line-height: 1.1;
  color: #0a0a0a; margin-bottom: 10px;
}
.esys-sub {
  font-size: 14px; font-weight: 300; color: var(--grey-faint);
  line-height: 1.65; margin-bottom: 36px; max-width: 480px;
}
.esys-input-row {
  display: flex; align-items: stretch;
  border: 1.5px solid var(--purple-light); border-radius: 10px;
  overflow: hidden; background: var(--purple-mid);
  margin-bottom: 10px; transition: border-color .2s;
}
.esys-input-row:focus-within { border-color: var(--orange); }
.esys-input-field {
  border: none; background: transparent;
  font-family: 'Outfit', sans-serif; font-size: 17px; font-weight: 400;
  color: var(--white); text-align: center; padding: 15px 0;
  width: 72px; outline: none; -moz-appearance: textfield;
}
.esys-input-field::-webkit-outer-spin-button,
.esys-input-field::-webkit-inner-spin-button { -webkit-appearance: none; }
.esys-input-field::placeholder { color: rgba(255,255,255,0.38); }
.esys-input-field.yr { width: 106px; }
.esys-slash {
  display: flex; align-items: center;
  color: rgba(255,255,255,0.25); font-size: 22px; font-weight: 300;
  user-select: none; padding: 0 2px;
}
.esys-divider-v { width: 1.5px; background: var(--purple-light); flex-shrink: 0; }
.esys-btn {
  flex: 1; background: var(--orange); color: var(--white); border: none;
  font-family: 'Outfit', sans-serif; font-size: 12px; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase; cursor: pointer;
  padding: 0 30px; transition: background .15s; white-space: nowrap;
}
.esys-btn:hover { background: var(--orange-dim); }
.esys-err { font-size: 12px; color: #e06060; min-height: 18px; margin-bottom: 6px; }

@keyframes esysResultIn {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes esysDraw {
  to { stroke-dashoffset: 0; }
}

@keyframes esysDotIn {
  from { opacity: 0; transform: scale(0.2); }
  to   { opacity: 1; transform: scale(1); }
}

@keyframes esysLabelIn {
  from { opacity: 0; }
  to   { opacity: 1; }
}

.esys-result {
  display: none; margin-top: 28px; border-radius: 14px;
  overflow: hidden; border: 1.5px solid #333;
  animation: esysResultIn 0.45s cubic-bezier(0.4,0,0.2,1) both;
}
.esys-result-head {
  background: var(--result-head-bg); border-bottom: 1.5px solid #333;
  padding: 34px 40px 30px;
}
.esys-stack-label {
  font-size: 11px; font-weight: 500; letter-spacing: .18em;
  text-transform: uppercase; color: var(--orange); margin-bottom: 14px;
}
.esys-stack-display {
  font-family: 'Outfit',system-ui,sans-serif;
  font-size: 56px; font-weight: 300; letter-spacing: .12em;
  color: var(--white); line-height: 1.15; word-break: break-all;
}
.esys-stack-display .esys-top2      { opacity: 1; }
.esys-stack-display .esys-extra-dom { opacity: .88; }
.esys-stack-display .esys-mid       { opacity: .72; }
.esys-stack-display .esys-lower     { opacity: .42; }
.esys-stack-display .esys-pipe      { opacity: .3; font-size: 40px; margin: 0 4px; }
.esys-stack-display .esys-missing   { opacity: .22; }

.esys-chart-wrap {
  margin-top: 32px; display: flex; align-items: center;
  justify-content: center; gap: 36px; flex-wrap: wrap;
}
.esys-chart-legend { display: flex; flex-direction: column; gap: 12px; }
.esys-legend-item {
  display: flex; align-items: center; gap: 10px;
  font-size: 13px; font-weight: 400; color: rgba(255,255,255,0.65);
  letter-spacing: 0.02em;
}
.esys-legend-dot { width: 10px; height: 10px; border-radius: 50%; flex-shrink: 0; }

.esys-result-body { background: var(--grey-light); padding: 28px 40px 36px; }
.esys-dom-label {
  font-size: 11px; font-weight: 500; letter-spacing: .18em;
  text-transform: uppercase; color: var(--grey-faint); margin-bottom: 14px;
}
.esys-dom-row { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; margin-bottom: 4px; }
.esys-dom-chip { display: flex; align-items: center; gap: 10px; }
.esys-dom-num {
  width: 48px; height: 48px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-family: 'Outfit',system-ui,sans-serif;
  font-size: 24px; font-weight: 400; flex-shrink: 0;
}
.esys-dom-num.primary   { background: var(--orange);    color: var(--white); }
.esys-dom-num.secondary { background: var(--orange-dim); color: var(--white); }
.esys-dom-num.super     { background: var(--orange);    color: var(--white); }
.esys-dom-num.tertiary  { background: var(--orange-ter); color: var(--white); }
.esys-dom-tag { display: flex; flex-direction: column; }
.esys-dom-tag-name { font-size: 13px; font-weight: 500; color: var(--grey-dark); line-height: 1.2; }
.esys-dom-tag-sub  { font-size: 11px; font-weight: 300; color: var(--grey-faint); margin-top: 2px; }

.esys-demark {
  display: flex; align-items: center; gap: 12px; margin: 22px 0 14px;
}
.esys-demark-line { flex: 1; height: 1px; background: var(--grey-mid); }
.esys-demark-label {
  font-size: 10px; font-weight: 500; letter-spacing: .18em;
  text-transform: uppercase; color: var(--grey-faint); white-space: nowrap;
}

.esys-sec-row { display: flex; gap: 10px; flex-wrap: wrap; }
.esys-sec-chip {
  width: 40px; height: 40px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-family: 'Outfit',system-ui,sans-serif; font-size: 20px; font-weight: 400;
}
.esys-sec-chip.high { background: var(--grey-dark);  color: var(--grey-mid); }
.esys-sec-chip.mid  { background: var(--grey-light); color: var(--grey-dark); border: 1.5px solid var(--grey-mid); }
.esys-sec-chip.low  { background: var(--grey-light); color: var(--grey-faint); border: 1.5px solid #ddd; }

.esys-miss-row { display: flex; gap: 10px; flex-wrap: wrap; }
.esys-miss-chip {
  width: 40px; height: 40px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-family: 'Outfit',system-ui,sans-serif; font-size: 20px; font-weight: 400;
  background: transparent; color: #c0bebb; border: 1.5px dashed #ccc;
}
.esys-miss-note {
  font-size: 11px; font-weight: 300; color: var(--grey-faint);
  margin-top: 8px; font-style: italic;
}

.site-footer {
  margin-top: 60px;
  padding: 16px 28px;
  border-top: 1px solid rgba(255,255,255,.06);
  background: rgba(0,0,0,.18);
  font-size: 11.5px;
  color: rgba(255,255,255,.45);
  line-height: 1.6;
}

.go-deeper-banner {
  max-width: 720px;
  margin: 32px auto;
  padding: 22px 28px;
  border: 1px solid rgba(232,105,42,.22);
  background: linear-gradient(135deg, rgba(232,105,42,.05), rgba(201,169,110,.04));
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}
.go-deeper-text {
  flex: 1 1 300px;
}
.go-deeper-eye {
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: rgba(232,105,42,.85);
  margin-bottom: 8px;
}
.go-deeper-h {
  font-family: 'Outfit',system-ui,sans-serif;
  font-size: 22px;
  font-weight: 300;
  color: rgba(255,255,255,.92);
  margin-bottom: 6px;
  line-height: 1.25;
}
.go-deeper-h em { color: rgba(201,169,110,.95); font-style: italic; }
.go-deeper-sub {
  font-size: 13px;
  color: rgba(255,255,255,.55);
  line-height: 1.6;
}
.go-deeper-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 11px 18px;
  background: rgba(232,105,42,.12);
  border: 1px solid rgba(232,105,42,.4);
  border-radius: 6px;
  color: rgba(232,105,42,.95);
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .02em;
  transition: all .14s;
  flex-shrink: 0;
}
.go-deeper-btn:hover {
  background: rgba(232,105,42,.22);
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(232,105,42,.25);
}

.tc-traits-wrap{max-width:1080px;margin:0 auto 48px;padding:0 40px;}
.tc-traits-h{font-size:9px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:rgba(232,105,42,.6);margin-bottom:14px;}
.tc-traits-list{list-style:none;padding:0;margin:0;}
.tc-traits-list li{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.06);font-size:13.5px;line-height:1.65;color:rgba(255,255,255,.55);}
.tc-traits-list li:last-child{border-bottom:none;}
.tc-traits-list strong{color:rgba(255,255,255,.85);font-weight:500;}
.tc-traits-list em{color:#c9a96e;font-style:italic;}
.tc-traits-deeper{font-size:11.5px;color:rgba(255,255,255,.32);margin-top:14px;font-style:italic;}
.tc-traits-deeper a{color:rgba(232,105,42,.8);border-bottom:1px solid rgba(232,105,42,.3);}
@media(max-width:700px){.tc-traits-wrap{padding:0 20px;}}

/* Expanded-content sections */
.type-card-note { font-size: 11.5px; color: rgba(255,255,255,.5); line-height: 1.55; margin-top: 8px; font-weight: 300; }
.tp-section { max-width: 760px; margin: 48px auto 0; padding: 0 8px; }
.tp-h2 { font-family: var(--fd); font-size: 22px; font-weight: 300; color: rgba(255,255,255,.85); margin-bottom: 18px; letter-spacing: -.005em; }
.tp-h2::before { content: ""; display: inline-block; width: 28px; height: 1px; background: rgba(232,105,42,.45); vertical-align: middle; margin-right: 14px; margin-bottom: 4px; }
.tp-prose-p { font-size: 14.5px; color: rgba(255,255,255,.72); line-height: 1.75; margin-bottom: 14px; font-weight: 300; }
.tp-prose-p:last-child { margin-bottom: 0; }
.tp-patterns-grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
@media (min-width: 720px) { .tp-patterns-grid { grid-template-columns: 1fr 1fr; gap: 16px; } }
.tp-pattern { padding: 16px 20px; border: 1px solid rgba(255,255,255,.07); border-radius: 8px; background: rgba(255,255,255,.015); }
.tp-pattern-h { font-size: 13px; font-weight: 600; color: rgba(232,105,42,.85); margin-bottom: 6px; letter-spacing: .005em; }
.tp-pattern-body { font-size: 13.5px; color: rgba(255,255,255,.65); line-height: 1.7; font-weight: 300; }
.tp-states-row { display: grid; grid-template-columns: 1fr; gap: 12px; }
@media (min-width: 720px) { .tp-states-row { grid-template-columns: 1fr 1fr 1fr; gap: 14px; } }
.tp-state { padding: 16px 18px; border-radius: 8px; border: 1px solid rgba(255,255,255,.07); background: rgba(255,255,255,.015); }
.tp-state-balanced { border-color: rgba(201,169,110,.22); background: rgba(201,169,110,.03); }
.tp-state-neutral { border-color: rgba(255,255,255,.08); }
.tp-state-imbalanced { border-color: rgba(196,112,80,.22); background: rgba(196,112,80,.03); }
.tp-state-lbl { font-size: 9px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; color: rgba(255,255,255,.48); margin-bottom: 8px; }
.tp-state-balanced .tp-state-lbl { color: rgba(201,169,110,.7); }
.tp-state-imbalanced .tp-state-lbl { color: rgba(196,112,80,.75); }
.tp-state-body { font-size: 13px; color: rgba(255,255,255,.66); line-height: 1.7; font-weight: 300; }
.tp-confused-grid { display: grid; grid-template-columns: 1fr; gap: 12px; }
.tp-confused-card { padding: 18px 22px; border: 1px solid rgba(255,255,255,.07); border-radius: 8px; background: rgba(255,255,255,.015); }
.tp-confused-hd { margin-bottom: 8px; }
.tp-confused-link { color: rgba(255,255,255,.85); text-decoration: none; font-family: var(--fd); font-size: 16px; font-weight: 300; transition: color .15s; }
.tp-confused-link:hover { color: rgba(232,105,42,.95); }
.tp-confused-n { font-weight: 600; margin-right: 4px; }
.tp-confused-name { color: rgba(255,255,255,.85); }
.tp-confused-body { font-size: 13.5px; color: rgba(255,255,255,.65); line-height: 1.72; font-weight: 300; }

/* How they sound (lexicon) section */
.tp-phrases-cloud { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0; padding: 18px 20px; border-radius: 8px; background: rgba(255,255,255,.02); border: 1px solid rgba(255,255,255,.06); }
.tp-phrase { display: inline-block; padding: 5px 11px; background: rgba(232,105,42,.06); border: 1px solid rgba(232,105,42,.18); border-radius: 14px; font-family: var(--fd); font-size: 12.5px; font-style: italic; color: rgba(255,255,255,.72); line-height: 1.4; font-weight: 300; }
.tp-phrase-note { font-size: 13px; color: rgba(255,255,255,.55); font-style: italic; margin-top: 12px; padding-left: 14px; border-left: 2px solid rgba(232,105,42,.25); }


/* ════════════════════════════════════════════════════════════════════
   S145 — public type-page enhancements (hero mark, at-a-glance, in the wild)
   ════════════════════════════════════════════════════════════════════ */
.type-hero{position:relative;}
.type-mark{position:absolute;top:40px;right:40px;width:132px;height:132px;opacity:.92;pointer-events:none;}
.type-mark svg{width:100%;height:100%;display:block;}

.type-glance{display:flex;flex-direction:column;gap:13px;margin-top:4px;max-width:620px;}
.type-coredrive{font-size:13.5px;color:rgba(255,255,255,.52);line-height:1.6;}
.type-coredrive-lbl{font-size:8.5px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.34);margin-right:10px;}
.type-chips{display:flex;flex-wrap:wrap;gap:8px;}
.type-chip{font-size:11px;font-weight:500;letter-spacing:.02em;color:rgba(255,255,255,.62);background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.1);border-radius:999px;padding:5px 13px;}

.tp-wild-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.tp-wild-card{background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.07);border-radius:10px;padding:18px 20px;font-size:13.5px;color:rgba(255,255,255,.6);line-height:1.6;}
.tp-wild-card::before{content:"";display:block;width:18px;height:1px;background:rgba(255,255,255,.2);margin-bottom:12px;}

@media(max-width:760px){
  .type-mark{top:14px;right:14px;width:80px;height:80px;}
  .tp-wild-grid{grid-template-columns:1fr;}
}

/* ── S145 r2 — "Doesn't resonate?" helper (countertype / instincts / position) ── */
.tp-notfit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.tp-notfit-card{display:block;background:rgba(255,255,255,.025);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:18px 20px;text-decoration:none;transition:border-color .15s,background .15s;}
.tp-notfit-card:hover{border-color:rgba(255,255,255,.2);background:rgba(255,255,255,.045);}
.tp-notfit-h{font-family:var(--fd);font-size:15px;font-weight:400;color:rgba(255,255,255,.84);margin-bottom:8px;line-height:1.3;}
.tp-notfit-b{font-size:12.5px;color:rgba(255,255,255,.5);line-height:1.6;margin-bottom:12px;}
.tp-notfit-go{font-size:11px;font-weight:600;letter-spacing:.02em;color:rgba(255,255,255,.4);transition:color .15s;}
.tp-notfit-card:hover .tp-notfit-go{color:var(--orange);}
@media(max-width:760px){.tp-notfit-grid{grid-template-columns:1fr;}}
