/* Persona themes (lp1–lp4) for stash.multify.co and public profiles.
   Applied via html[data-persona]. lp3 (sticker shop) is the default — its
   structure tokens live in stash.css :root; this file re-points those tokens
   per persona and adds the handful of component treatments tokens can't carry.

   Selector conventions:
   - Structure tokens (fonts, borders, radii, shadows): html[data-persona="lpX"].
   - Palette tokens: guarded with :not(.mf-custom-theme) and duplicated with
     [data-theme] so a persona beats the public profile's OS dark-mode block —
     unless the owner picked an explicit color theme (mf-custom-theme).
   - Profile fonts (--app-font/--app-font-display): guarded with
     :not(.mf-custom-font) so an owner's font pick still wins. */

/* ════════════════════════ lp1 · Editorial ════════════════════════ */

html[data-persona="lp1"] {
  --paper: #FAF6EE;
  --plate: #FFFDF7;
  --blue: #002FA7;
  --hairline: #D8D2C4;
  --muted: #5C574B;
  --font-body: 'Archivo', sans-serif;
  --font-display: 'Anton', sans-serif;
  --display-weight: 400;
  --display-weight-soft: 400;
  --display-transform: uppercase;
  --display-spacing: 0.01em;
  --display-line: 0.98;
  --bw: 2px;
  --bw-thin: 1px;
  --border-strong: #141414;
  --rs: 0;
  --radius-pill: 0;
  --focus: #002FA7;
  --shadow-pop: 12px 12px 0 rgba(20, 20, 20, 0.07);
  --shadow-card: 12px 12px 0 rgba(20, 20, 20, 0.07);
  --shadow-step: 8px 8px 0 rgba(20, 20, 20, 0.06);
  --shadow-tile: 8px 8px 0 rgba(20, 20, 20, 0.06);
  --shadow-sm: none;
  --shadow-btn: none;
  --shadow-xs: none;
  --press: none;
  --press-sm: none;
  --press-shadow: none;
}
html[data-persona="lp1"]:not(.mf-custom-theme),
html[data-persona="lp1"][data-theme]:not(.mf-custom-theme) {
  --white: #FFFDF7;
  --red: #002FA7;
  --yellow: #FFFDF7;
  --sky: #002FA7;
  --pink: #002FA7;
  --ink: #141414;
  --cream: #FAF6EE;
  --bg-primary: #FAF6EE;
  --bg-secondary: #FFFDF7;
  --bg-tertiary: #FFFDF7;
  --text-primary: #141414;
  --text-secondary: #5C574B;
  --border: #D8D2C4;
  --accent: #002FA7;
  --accent-fg: #ffffff;
  --accent-hover: #00227D;
  --link: #002FA7;
  --success: #002FA7;
  --error: #9B2915;
}
html[data-persona="lp1"]:not(.mf-custom-font) {
  --app-font: 'Archivo', sans-serif;
  --app-font-display: 'Anton', sans-serif;
}
html[data-persona="lp1"] a:not(.st-btn):not(.btn-sc):hover { color: var(--blue); }
html[data-persona="lp1"] .st-header,
html[data-persona="lp1"] .sp-topbar {
  background: var(--plate);
  border-bottom: 1px solid var(--hairline);
}
html[data-persona="lp1"] .st-nav a,
html[data-persona="lp1"] .st-btn,
html[data-persona="lp1"] .btn-sc {
  background: transparent;
  border-color: var(--hairline);
  font-weight: 600;
}
html[data-persona="lp1"] .st-btn-yellow { background: transparent; border-color: var(--ink); }
html[data-persona="lp1"] .st-btn-red,
html[data-persona="lp1"] .st-btn-sky,
html[data-persona="lp1"] .btn-sc-primary,
html[data-persona="lp1"] .btn-sc-danger {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-size: 0.8rem;
}
html[data-persona="lp1"] .st-btn-red:hover,
html[data-persona="lp1"] .st-btn-sky:hover,
html[data-persona="lp1"] .btn-sc-primary:hover {
  background: var(--blue);
  border-color: var(--blue);
}
html[data-persona="lp1"] input.st-input,
html[data-persona="lp1"] textarea.st-input,
html[data-persona="lp1"] .sc-input {
  background: transparent;
  border: none;
  border-bottom: 2px solid var(--ink);
  border-radius: 0;
  padding-left: 0.1rem;
  font-weight: 600;
}
html[data-persona="lp1"] input.st-input:focus,
html[data-persona="lp1"] textarea.st-input:focus {
  outline: none;
  border-bottom-color: var(--blue);
}
html[data-persona="lp1"] .st-claim-field {
  background: transparent;
  border: none;
  border-bottom: 2px solid var(--ink);
  border-radius: 0;
}
html[data-persona="lp1"] .st-muted {
  font-family: 'Instrument Serif', serif;
  font-style: italic;
  font-size: 0.98rem;
}
html[data-persona="lp1"] .st-step {
  background: var(--plate);
  color: var(--ink);
  border: none;
  border-top: 1px solid var(--hairline);
  border-radius: 0;
  box-shadow: none;
  padding-left: 0;
  padding-right: 0;
}
html[data-persona="lp1"] .st-step-num {
  background: transparent;
  border: none;
  width: auto;
  height: auto;
  color: var(--blue);
  font-size: 2.4rem;
  line-height: 1;
}
html[data-persona="lp1"] .st-step h3 {
  font-family: var(--font-body);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-size: 0.95rem;
}
html[data-persona="lp1"] .st-step p { color: var(--muted); font-weight: 400; }
html[data-persona="lp1"] .tilt {
  background: transparent;
  color: var(--blue);
  box-shadow: none;
  transform: none;
  padding: 0;
  border-radius: 0;
}
html[data-persona="lp1"] .st-phone-lead,
html[data-persona="lp1"] .st-lead { font-weight: 400; color: var(--muted); }
html[data-persona="lp1"] .st-phone-mock { transform: none; }
html[data-persona="lp1"] .st-mock-badge {
  background: var(--plate);
  color: var(--blue);
  border: 1px solid var(--hairline);
  font-family: 'Instrument Serif', serif;
  font-style: italic;
  transform: none;
  box-shadow: none;
}
html[data-persona="lp1"] .st-bubble { border-width: 1px; border-color: var(--hairline); }
html[data-persona="lp1"] .st-bubble.out {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
}
html[data-persona="lp1"] .st-mock-caption {
  font-family: 'Instrument Serif', serif;
  font-style: italic;
  font-size: 1rem;
}
html[data-persona="lp1"] .st-textnum {
  background: var(--plate);
  border: 1px solid var(--hairline);
  box-shadow: none;
}
html[data-persona="lp1"] .st-textnum strong { color: var(--blue); }
html[data-persona="lp1"] .st-num-row { background: var(--plate); border: 1px solid var(--hairline); }
html[data-persona="lp1"] .st-msg { border: 1px solid var(--hairline); box-shadow: none; }
html[data-persona="lp1"] .st-msg.user {
  background: var(--ink);
  color: var(--paper);
  border-color: var(--ink);
}
html[data-persona="lp1"] .st-chat-context {
  background: var(--plate);
  border: 1px solid var(--hairline);
  box-shadow: none;
}
html[data-persona="lp1"] .st-chat-context-open,
html[data-persona="lp1"] .st-chat-context-x,
html[data-persona="lp1"] .st-widget-icon,
html[data-persona="lp1"] .st-modal-close,
html[data-persona="lp1"] .st-mention-chip-x {
  background: var(--plate);
  border-color: var(--hairline);
  box-shadow: none;
}
html[data-persona="lp1"] .st-widget-head {
  background: var(--ink);
  color: var(--paper);
}
html[data-persona="lp1"] .st-mention-chip { background: var(--plate); border-color: var(--hairline); }
html[data-persona="lp1"] .st-mention-menu { box-shadow: none; border-width: 1px; }
html[data-persona="lp1"] .st-mention-item { border-bottom-width: 1px; }
html[data-persona="lp1"] .st-theme-card { border: 1px solid var(--hairline); box-shadow: none; }
html[data-persona="lp1"] .st-theme-card.is-on { background: var(--plate); border: 2px solid var(--blue); }
html[data-persona="lp1"] .st-ad { background: var(--plate); color: var(--ink); border: 1px solid var(--hairline); }
html[data-persona="lp1"] .st-ad a { color: var(--blue); }
html[data-persona="lp1"] .st-toast { box-shadow: none; }
html[data-persona="lp1"] .st-or::before,
html[data-persona="lp1"] .st-or::after { background: var(--hairline); opacity: 1; }
html[data-persona="lp1"] .stsh-item { box-shadow: none; }
/* profile */
html[data-persona="lp1"] .sp-name,
html[data-persona="lp1"] .sp-itempage-title,
html[data-persona="lp1"] .sp-404 h1,
html[data-persona="lp1"] .sp-how-title {
  text-transform: uppercase;
  letter-spacing: 0.01em;
  font-weight: 400;
}
html[data-persona="lp1"] .sp-cta,
html[data-persona="lp1"] .sp-follow,
html[data-persona="lp1"] .sp-how-cta,
html[data-persona="lp1"] .sp-summarize {
  background: #141414;
  color: #FAF6EE;
  border: none;
  border-radius: 0;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
html[data-persona="lp1"] .sp-cta:hover,
html[data-persona="lp1"] .sp-follow:hover,
html[data-persona="lp1"] .sp-how-cta:hover,
html[data-persona="lp1"] .sp-summarize:hover { background: var(--blue, #002FA7); filter: none; }
html[data-persona="lp1"] .sp-follow.following { background: transparent; color: #141414; border: 1px solid #D8D2C4; }
html[data-persona="lp1"] .sp-note {
  font-family: 'Instrument Serif', serif;
  font-style: italic;
  font-size: 1rem;
  color: #5C574B;
}
html[data-persona="lp1"] .sc-chat { border-radius: 0; }

/* ════════════════════════ lp2 · Scrapbook ════════════════════════ */

html[data-persona="lp2"] {
  --paper: #F6EFDF;
  --card: #FFFBF0;
  --tomato: #E5372B;
  --tape: #F5D547;
  --muted: #6E655A;
  --soft: rgba(43, 38, 34, 0.18);
  --font-body: 'Karla', sans-serif;
  --font-display: 'Fraunces', serif;
  --display-weight: 900;
  --display-weight-soft: 900;
  --display-transform: none;
  --display-spacing: -0.01em;
  --display-line: 1.02;
  --bw: 2px;
  --bw-thin: 1px;
  --border-strong: #2B2622;
  --rs: 0;
  --radius-pill: 0;
  --focus: #E5372B;
  --shadow-pop: 8px 10px 0 rgba(43, 38, 34, 0.18);
  --shadow-card: 6px 8px 0 rgba(43, 38, 34, 0.18);
  --shadow-step: 4px 5px 0 rgba(43, 38, 34, 0.18);
  --shadow-tile: 4px 5px 0 rgba(43, 38, 34, 0.18);
  --shadow-sm: 3px 3px 0 rgba(43, 38, 34, 0.18);
  --shadow-btn: 3px 3px 0 #2B2622;
  --shadow-xs: 2px 2px 0 rgba(43, 38, 34, 0.18);
  --press-shadow: 1px 1px 0 #2B2622;
}
html[data-persona="lp2"]:not(.mf-custom-theme),
html[data-persona="lp2"][data-theme]:not(.mf-custom-theme) {
  --white: #FFFBF0;
  --red: #E5372B;
  --yellow: #F5D547;
  --sky: #E5372B;
  --pink: #E5372B;
  --ink: #2B2622;
  --cream: #F6EFDF;
  --bg-primary: #F6EFDF;
  --bg-secondary: #FFFBF0;
  --bg-tertiary: #FFFBF0;
  --text-primary: #2B2622;
  --text-secondary: #6E655A;
  --border: rgba(43, 38, 34, 0.25);
  --accent: #E5372B;
  --accent-fg: #ffffff;
  --accent-hover: #C42A1F;
  --link: #E5372B;
  --success: #2F7D46;
  --error: #E5372B;
}
html[data-persona="lp2"]:not(.mf-custom-font) {
  --app-font: 'Karla', sans-serif;
  --app-font-display: 'Fraunces', serif;
}
html[data-persona="lp2"] body {
  background-image: repeating-linear-gradient(180deg, transparent 0, transparent 46px, rgba(43, 38, 34, 0.035) 46px, rgba(43, 38, 34, 0.035) 47px);
}
html[data-persona="lp2"] .st-header {
  background: var(--card);
  border-bottom: 1px solid rgba(43, 38, 34, 0.25);
}
html[data-persona="lp2"] .st-card,
html[data-persona="lp2"] .sc-card {
  position: relative;
  transform: rotate(-0.4deg);
}
html[data-persona="lp2"] .st-card::before {
  content: '';
  position: absolute;
  top: -13px;
  left: 26px;
  width: 90px;
  height: 26px;
  background: rgba(245, 213, 71, 0.85);
  transform: skewX(-10deg) rotate(-3deg);
  box-shadow: 1px 1px 2px rgba(43, 38, 34, 0.12);
  pointer-events: none;
}
html[data-persona="lp2"] #st-chat-widget .st-card::before,
html[data-persona="lp2"] .st-modal-dialog::before { content: none; }
html[data-persona="lp2"] #st-chat-widget,
html[data-persona="lp2"] .st-modal-dialog { transform: none; }
html[data-persona="lp2"] .st-step { background: var(--card); }
html[data-persona="lp2"] .st-step:nth-child(odd) { transform: rotate(-1.2deg); }
html[data-persona="lp2"] .st-step:nth-child(even) { transform: rotate(1.2deg); }
html[data-persona="lp2"] .st-step.c2,
html[data-persona="lp2"] .st-step.c3 { background: var(--card); color: var(--ink); }
html[data-persona="lp2"] .st-step-num {
  background: transparent;
  border: none;
  width: auto;
  height: auto;
  font-family: 'Caveat', cursive;
  font-weight: 600;
  font-size: 2rem;
  color: var(--tomato);
  line-height: 1;
}
html[data-persona="lp2"] .st-step p { color: var(--muted); font-weight: 400; }
html[data-persona="lp2"] .tilt {
  background: var(--tape);
  color: var(--ink);
  border-radius: 0;
  box-shadow: 2px 2px 0 var(--soft);
  transform: rotate(-2deg);
}
html[data-persona="lp2"] .st-phone-lead,
html[data-persona="lp2"] .st-lead { font-weight: 400; color: var(--muted); }
html[data-persona="lp2"] .st-mock-badge {
  background: var(--tape);
  color: var(--ink);
  border: none;
  font-family: 'Caveat', cursive;
  font-size: 1.15rem;
  box-shadow: 2px 2px 0 var(--soft);
}
html[data-persona="lp2"] .st-mock-avatar { transform: rotate(-4deg); }
html[data-persona="lp2"] .st-bubble.in { background: var(--paper); }
html[data-persona="lp2"] .st-mock-caption {
  font-family: 'Caveat', cursive;
  font-weight: 600;
  font-size: 1.3rem;
}
html[data-persona="lp2"] .st-btn-red,
html[data-persona="lp2"] .btn-sc-primary { background: var(--tomato); color: #fff; }
html[data-persona="lp2"] .st-btn-yellow { background: var(--tape); }
html[data-persona="lp2"] a:not(.st-btn):not(.btn-sc) { color: var(--tomato); }
html[data-persona="lp2"] .wordmark, html[data-persona="lp2"] .sp-wordmark { color: var(--ink); }
html[data-persona="lp2"] .st-theme-card.is-on { background: var(--tape); }
html[data-persona="lp2"] .st-ad { background: var(--card); color: var(--ink); border-color: var(--ink); }
html[data-persona="lp2"] .st-ad a { color: var(--tomato); }
html[data-persona="lp2"] .st-toast { box-shadow: 3px 3px 0 var(--soft); }
/* profile */
html[data-persona="lp2"] .sp-topbar { background: var(--card, #FFFBF0); }
html[data-persona="lp2"] .sp-note {
  font-family: 'Caveat', cursive;
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.25;
  color: #E5372B;
}
html[data-persona="lp2"] .sp-cta,
html[data-persona="lp2"] .sp-follow,
html[data-persona="lp2"] .sp-how-cta,
html[data-persona="lp2"] .sp-summarize {
  background: #E5372B;
  color: #fff;
  border: 2px solid #2B2622;
  border-radius: 0;
  box-shadow: 3px 3px 0 #2B2622;
  font-weight: 700;
}
html[data-persona="lp2"] .sp-cta:hover,
html[data-persona="lp2"] .sp-follow:hover,
html[data-persona="lp2"] .sp-how-cta:hover,
html[data-persona="lp2"] .sp-summarize:hover {
  transform: translate(2px, 2px);
  box-shadow: 1px 1px 0 #2B2622;
  background: #E5372B;
  filter: none;
}
html[data-persona="lp2"] .sp-follow.following {
  background: transparent;
  color: #2B2622;
  box-shadow: none;
}
html[data-persona="lp2"] .sp-item { border-bottom: 2px dashed rgba(43, 38, 34, 0.25); }
html[data-persona="lp2"] .sp-avatar { border: 2px solid #2B2622; transform: rotate(-3deg); }
html[data-persona="lp2"] .sp-tag,
html[data-persona="lp2"] .sp-fpill { background: rgba(245, 213, 71, 0.5); border-color: rgba(43, 38, 34, 0.35); }
html[data-persona="lp2"] .sp-fpill.active { background: #E5372B; color: #fff; }
html[data-persona="lp2"] .sc-chat { border-radius: 0; }

/* ════════════════════ lp3 · Sticker shop (default) ════════════════════ */
/* Structure tokens are the stash.css :root defaults; restate the palette here
   (guarded + dark-beating) so the public profile keeps the look in OS dark mode. */

html[data-persona="lp3"]:not(.mf-custom-theme),
html[data-persona="lp3"][data-theme]:not(.mf-custom-theme) {
  --white: #FFFFFF;
  --red: #FF2E00;
  --yellow: #FFC931;
  --sky: #37B0FF;
  --pink: #FF5EA0;
  --ink: #141414;
  --cream: #FFF6E8;
  --bg-primary: #FFF6E8;
  --bg-secondary: #FFFFFF;
  --bg-tertiary: #FFC931;
  --text-primary: #141414;
  --text-secondary: #3a3a3a;
  --border: #141414;
  --accent: #FF2E00;
  --accent-fg: #ffffff;
  --accent-hover: #D92700;
  --link: #141414;
  --success: #128a3e;
  --error: #FF2E00;
}
html[data-persona="lp3"]:not(.mf-custom-font) {
  --app-font: 'Nunito', sans-serif;
  --app-font-display: 'Fredoka', sans-serif;
}
/* profile */
html[data-persona="lp3"] .sp-topbar { background: #FFFFFF; border-bottom: 3px solid #141414; }
html[data-persona="lp3"] .sp-cta,
html[data-persona="lp3"] .sp-follow,
html[data-persona="lp3"] .sp-how-cta,
html[data-persona="lp3"] .sp-summarize {
  border: 2px solid #141414;
  box-shadow: 3px 3px 0 #141414;
  border-radius: 999px;
  font-weight: 800;
}
html[data-persona="lp3"] .sp-cta:hover,
html[data-persona="lp3"] .sp-follow:hover,
html[data-persona="lp3"] .sp-how-cta:hover,
html[data-persona="lp3"] .sp-summarize:hover {
  transform: translate(2px, 2px);
  box-shadow: 1px 1px 0 #141414;
  filter: none;
}
html[data-persona="lp3"] .sp-follow.following { background: #FFFFFF; color: #141414; }
html[data-persona="lp3"] .sp-avatar { border: 3px solid #141414; border-radius: 16px; }
html[data-persona="lp3"] .sp-thumb { border: 2px solid #141414; border-radius: 12px; }
html[data-persona="lp3"] .sp-name { font-weight: 700; }
html[data-persona="lp3"] .sp-note { font-weight: 700; }
html[data-persona="lp3"] .sp-tag,
html[data-persona="lp3"] .sp-fpill { border: 2px solid #141414; border-radius: 999px; background: #FFFFFF; }
html[data-persona="lp3"] .sp-fpill.active { background: #FF2E00; border-color: #141414; }
html[data-persona="lp3"] .sp-item { border-bottom: 2px solid rgba(20, 20, 20, 0.15); }
html[data-persona="lp3"] .sp-how-dialog,
html[data-persona="lp3"] .sc-chat { border: 3px solid #141414; border-radius: 22px; }
html[data-persona="lp3"] .sp-more { border: 2px solid #141414; border-radius: 999px; font-weight: 800; }

/* ════════════════════════ lp4 · Neon arcade ════════════════════════ */

html[data-persona="lp4"] {
  --bg: #0A0C0A;
  --panel: #121512;
  --lime: #B6FF2E;
  --cyan: #2EF2FF;
  --orange: #FF6B1A;
  --text: #E8F0E4;
  --dim: #7C857A;
  --line: #263026;
  --font-body: 'IBM Plex Sans', sans-serif;
  --font-display: 'Chakra Petch', sans-serif;
  --display-weight: 700;
  --display-weight-soft: 600;
  --display-transform: uppercase;
  --display-spacing: 0.02em;
  --display-line: 1.08;
  --bw: 1px;
  --bw-thin: 1px;
  --border-strong: #263026;
  --rs: 0;
  --radius-pill: 2px;
  --focus: #B6FF2E;
  --shadow-pop: 0 0 30px rgba(46, 242, 255, 0.08);
  --shadow-card: 0 0 30px rgba(46, 242, 255, 0.06);
  --shadow-step: none;
  --shadow-tile: none;
  --shadow-sm: none;
  --shadow-btn: none;
  --shadow-xs: none;
  --press: none;
  --press-sm: none;
  --press-shadow: none;
}
html[data-persona="lp4"]:not(.mf-custom-theme),
html[data-persona="lp4"][data-theme]:not(.mf-custom-theme) {
  --white: #121512;
  --red: #B6FF2E;
  --yellow: #2EF2FF;
  --sky: #2EF2FF;
  --pink: #B6FF2E;
  --ink: #E8F0E4;
  --cream: #0A0C0A;
  --bg-primary: #0A0C0A;
  --bg-secondary: #121512;
  --bg-tertiary: #121512;
  --text-primary: #E8F0E4;
  --text-secondary: #7C857A;
  --border: #263026;
  --accent: #B6FF2E;
  --accent-fg: #0A0C0A;
  --accent-hover: #A3E529;
  --link: #2EF2FF;
  --success: #B6FF2E;
  --error: #FF6B1A;
}
html[data-persona="lp4"]:not(.mf-custom-font) {
  --app-font: 'IBM Plex Sans', sans-serif;
  --app-font-display: 'Chakra Petch', sans-serif;
}
html[data-persona="lp4"] body { position: relative; }
html[data-persona="lp4"] body::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  background: repeating-linear-gradient(180deg, transparent 0, transparent 3px, rgba(232, 240, 228, 0.022) 3px, rgba(232, 240, 228, 0.022) 4px);
  z-index: 2147483000;
}
html[data-persona="lp4"] a:not(.st-btn):not(.btn-sc) { color: var(--cyan); }
html[data-persona="lp4"] a:not(.st-btn):not(.btn-sc):hover { color: var(--lime); }
html[data-persona="lp4"] .wordmark, html[data-persona="lp4"] .sp-wordmark { color: var(--text); }
html[data-persona="lp4"] .st-handle,
html[data-persona="lp4"] .st-mock-sub,
html[data-persona="lp4"] .st-mock-caption { font-family: 'IBM Plex Mono', monospace; }
html[data-persona="lp4"] .st-header { background: var(--panel); }
html[data-persona="lp4"] .st-nav a,
html[data-persona="lp4"] .st-btn,
html[data-persona="lp4"] .btn-sc {
  font-family: var(--font-display);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.8rem;
  background: transparent;
  color: var(--text);
}
html[data-persona="lp4"] .st-nav a:hover,
html[data-persona="lp4"] .st-btn:hover { border-color: var(--cyan); color: var(--cyan); }
html[data-persona="lp4"] .st-btn-red,
html[data-persona="lp4"] .btn-sc-primary,
html[data-persona="lp4"] .btn-sc-danger {
  background: transparent;
  color: var(--lime);
  border-color: var(--lime);
}
html[data-persona="lp4"] .st-btn-red:hover,
html[data-persona="lp4"] .btn-sc-primary:hover {
  background: var(--lime);
  color: var(--bg);
  box-shadow: 0 0 22px rgba(182, 255, 46, 0.4);
}
html[data-persona="lp4"] .st-btn-yellow,
html[data-persona="lp4"] .st-btn-sky {
  background: transparent;
  color: var(--cyan);
  border-color: var(--cyan);
}
html[data-persona="lp4"] .st-btn-yellow:hover,
html[data-persona="lp4"] .st-btn-sky:hover {
  background: var(--cyan);
  color: var(--bg);
}
html[data-persona="lp4"] input.st-input,
html[data-persona="lp4"] textarea.st-input,
html[data-persona="lp4"] .sc-input,
html[data-persona="lp4"] .st-claim-field {
  background: var(--bg);
  color: var(--text);
  border-color: var(--line);
  font-weight: 400;
}
html[data-persona="lp4"] input.st-input:focus,
html[data-persona="lp4"] textarea.st-input:focus {
  outline: none;
  border-color: var(--lime);
  box-shadow: 0 0 0 1px rgba(182, 255, 46, 0.35), 0 0 18px rgba(182, 255, 46, 0.12);
}
html[data-persona="lp4"] .st-card,
html[data-persona="lp4"] .sc-card,
html[data-persona="lp4"] #st-chat-widget,
html[data-persona="lp4"] .st-modal-dialog {
  background: var(--panel);
  color: var(--text);
}
html[data-persona="lp4"] .st-step { background: var(--panel); }
html[data-persona="lp4"] .st-step.c2,
html[data-persona="lp4"] .st-step.c3 { background: var(--panel); color: var(--text); }
html[data-persona="lp4"] .st-step-num {
  background: transparent;
  border: 1px solid var(--line);
  color: var(--lime);
  text-shadow: 0 0 8px rgba(182, 255, 46, 0.4);
}
html[data-persona="lp4"] .st-step p { color: var(--dim); font-weight: 400; }
html[data-persona="lp4"] .st-phone-lead,
html[data-persona="lp4"] .st-lead { font-weight: 400; color: var(--dim); }
html[data-persona="lp4"] .tilt {
  background: transparent;
  color: var(--lime);
  text-shadow: 0 0 14px rgba(182, 255, 46, 0.45);
  box-shadow: none;
  transform: none;
  padding: 0;
}
html[data-persona="lp4"] .st-phone-mock {
  border-color: var(--cyan);
  box-shadow: 0 0 30px rgba(46, 242, 255, 0.08);
  transform: none;
}
html[data-persona="lp4"] .st-mock-badge {
  background: transparent;
  border: 1px solid var(--cyan);
  color: var(--cyan);
  font-family: 'IBM Plex Mono', monospace;
  font-size: 0.78rem;
  text-transform: lowercase;
  transform: none;
  box-shadow: none;
}
html[data-persona="lp4"] .st-mock-avatar {
  background: var(--bg);
  border-color: var(--lime);
  color: var(--lime);
  text-shadow: 0 0 8px rgba(182, 255, 46, 0.5);
}
html[data-persona="lp4"] .st-mock-head { border-bottom: 1px solid var(--line); }
html[data-persona="lp4"] .st-bubble.out {
  background: transparent;
  border-color: var(--lime);
  color: var(--lime);
}
html[data-persona="lp4"] .st-bubble.in {
  background: var(--bg);
  border-color: var(--line);
  color: var(--text);
}
html[data-persona="lp4"] .st-bubble-linkcard {
  background: var(--panel);
  border-color: var(--line);
  color: var(--text);
}
html[data-persona="lp4"] .st-bubble-linkcard .d { color: var(--cyan); font-family: 'IBM Plex Mono', monospace; }
html[data-persona="lp4"] .st-textnum {
  background: var(--panel);
  border-color: var(--cyan);
  color: var(--text);
  box-shadow: none;
}
html[data-persona="lp4"] .st-textnum strong { color: var(--cyan); font-family: 'IBM Plex Mono', monospace; }
html[data-persona="lp4"] .st-num-row { background: var(--panel); }
html[data-persona="lp4"] .st-num-row .st-num-check { color: var(--lime); }
html[data-persona="lp4"] .st-msg { box-shadow: none; }
html[data-persona="lp4"] .st-msg.user {
  background: transparent;
  border-color: var(--lime);
  color: var(--lime);
}
html[data-persona="lp4"] .st-msg.assistant { background: var(--panel); color: var(--text); }
html[data-persona="lp4"] .st-chat-context {
  background: var(--panel);
  color: var(--text);
  box-shadow: none;
}
html[data-persona="lp4"] .st-chat-context-thumb { background: var(--bg); }
html[data-persona="lp4"] .st-chat-context-open,
html[data-persona="lp4"] .st-chat-context-x,
html[data-persona="lp4"] .st-widget-icon,
html[data-persona="lp4"] .st-modal-close,
html[data-persona="lp4"] .st-mention-chip-x {
  background: var(--bg);
  color: var(--cyan);
  border-color: var(--line);
  box-shadow: none;
}
html[data-persona="lp4"] .st-widget-head {
  background: var(--panel);
  color: var(--text);
  border-bottom: 1px solid var(--line);
}
html[data-persona="lp4"] .st-widget-label { color: var(--lime); }
html[data-persona="lp4"] .st-mention-chip {
  background: var(--panel);
  border-color: var(--cyan);
  color: var(--cyan);
  font-family: 'IBM Plex Mono', monospace;
}
html[data-persona="lp4"] .st-mention-menu { background: var(--panel); box-shadow: none; }
html[data-persona="lp4"] .st-mention-item:hover { background: var(--bg); color: var(--lime); }
html[data-persona="lp4"] .st-theme-card { background: var(--panel); color: var(--text); box-shadow: none; }
html[data-persona="lp4"] .st-theme-card.is-on {
  background: var(--panel);
  border-color: var(--lime);
  box-shadow: 0 0 14px rgba(182, 255, 46, 0.25);
}
html[data-persona="lp4"] .st-ad { background: var(--panel); color: var(--text); border-color: var(--line); }
html[data-persona="lp4"] .st-ad a { color: var(--cyan); }
html[data-persona="lp4"] .st-toast {
  background: var(--panel);
  color: var(--text);
  border: 1px solid var(--lime);
  box-shadow: 0 0 18px rgba(182, 255, 46, 0.25);
}
html[data-persona="lp4"] .st-snippet { background: var(--bg); color: var(--text); }
html[data-persona="lp4"] .st-or::before,
html[data-persona="lp4"] .st-or::after { background: var(--line); opacity: 1; }
html[data-persona="lp4"] .stsh-item { background: var(--panel) !important; box-shadow: none; }
/* profile */
html[data-persona="lp4"] .sp-topbar { background: #121512; }
html[data-persona="lp4"] .sp-handle,
html[data-persona="lp4"] .sp-count,
html[data-persona="lp4"] .sp-meta,
html[data-persona="lp4"] .sp-itempage-owner-handle,
html[data-persona="lp4"] .sp-foot { font-family: 'IBM Plex Mono', monospace; }
html[data-persona="lp4"] .sp-handle { color: #2EF2FF; }
html[data-persona="lp4"] .sp-note { font-family: 'IBM Plex Mono', monospace; font-size: 0.82rem; color: #2EF2FF; }
html[data-persona="lp4"] .sp-note::before { content: '> '; }
html[data-persona="lp4"] .sp-cta,
html[data-persona="lp4"] .sp-follow,
html[data-persona="lp4"] .sp-how-cta,
html[data-persona="lp4"] .sp-summarize {
  background: transparent;
  color: #B6FF2E;
  border: 1px solid #B6FF2E;
  border-radius: 0;
  font-family: 'Chakra Petch', sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
html[data-persona="lp4"] .sp-cta:hover,
html[data-persona="lp4"] .sp-follow:hover,
html[data-persona="lp4"] .sp-how-cta:hover,
html[data-persona="lp4"] .sp-summarize:hover {
  background: #B6FF2E;
  color: #0A0C0A;
  box-shadow: 0 0 22px rgba(182, 255, 46, 0.4);
  filter: none;
}
html[data-persona="lp4"] .sp-follow.following { color: #E8F0E4; border-color: #263026; }
html[data-persona="lp4"] .sp-avatar { border: 1px solid #B6FF2E; background: #0A0C0A; }
html[data-persona="lp4"] .sp-item:hover { border-color: #B6FF2E; }
html[data-persona="lp4"] .sp-tag,
html[data-persona="lp4"] .sp-fpill { font-family: 'IBM Plex Mono', monospace; }
html[data-persona="lp4"] .sp-fpill.active { color: #0A0C0A; }
html[data-persona="lp4"] .sc-chat { border-radius: 0; }
html[data-persona="lp4"] .sc-chat { box-shadow: 0 0 30px rgba(46, 242, 255, 0.12); }

/* ── chat history + settings TOC per persona ── */
html[data-persona="lp1"] .st-history-panel { border-left: 1px solid var(--hairline); }
html[data-persona="lp1"] .st-history-head { border-bottom: 1px solid var(--hairline); }
html[data-persona="lp1"] .st-history-item.is-current {
  background: var(--plate);
  box-shadow: inset 3px 0 0 var(--blue);
}
html[data-persona="lp1"] .st-history-del { background: var(--plate); border-color: var(--hairline); }
html[data-persona="lp4"] .st-history-panel { background: var(--panel); }
html[data-persona="lp4"] .st-history-item:hover { background: var(--bg); }
html[data-persona="lp4"] .st-history-item.is-current {
  background: var(--bg);
  box-shadow: inset 3px 0 0 var(--lime);
}
html[data-persona="lp4"] .st-history-del:hover { background: var(--lime); color: var(--bg); }
html[data-persona="lp4"] .st-toc a.is-active { color: var(--lime); }
@media (max-width: 991px) {
  html[data-persona="lp1"] .st-toc a { background: var(--plate); border-color: var(--hairline); }
  html[data-persona="lp1"] .st-toc a.is-active { border-color: var(--blue); color: var(--blue); background: var(--plate); }
  html[data-persona="lp4"] .st-toc a.is-active { background: transparent; border-color: var(--lime); color: var(--lime); }
}
html[data-persona="lp4"] .st-mention-item .s { color: var(--cyan); font-family: 'IBM Plex Mono', monospace; }
html[data-persona="lp2"] .st-history-time,
html[data-persona="lp2"] .st-mention-item .s { color: var(--muted); }

/* ── browser mock (extension page) ── */
html[data-persona="lp1"] .st-browser-bar { border-bottom: 1px solid var(--hairline); }
html[data-persona="lp1"] .st-ctx-menu { transform: none; }
html[data-persona="lp1"] .st-stashed-chip {
  background: var(--plate);
  color: var(--blue);
  border: 1px solid var(--hairline);
  transform: none;
  font-family: 'Instrument Serif', serif;
  font-style: italic;
  font-weight: 400;
}
html[data-persona="lp2"] .st-stashed-chip {
  background: var(--tape);
  font-family: 'Caveat', cursive;
  font-weight: 600;
  font-size: 1.1rem;
  box-shadow: 2px 2px 0 var(--soft);
}
html[data-persona="lp4"] .st-browser-bar { border-bottom: 1px solid var(--line); }
html[data-persona="lp4"] .st-browser-media { background: var(--bg); color: var(--lime); }
html[data-persona="lp4"] .st-browser-url { background: var(--bg); font-family: 'IBM Plex Mono', monospace; font-weight: 500; }
html[data-persona="lp4"] .st-browser-dots i { border-color: var(--line); }
html[data-persona="lp4"] .st-ctx-menu { background: var(--panel); transform: none; box-shadow: none; }
html[data-persona="lp4"] .st-stashed-chip {
  background: transparent;
  color: var(--lime);
  border: 1px solid var(--lime);
  transform: none;
  box-shadow: 0 0 14px rgba(182, 255, 46, 0.2);
  font-family: 'IBM Plex Mono', monospace;
  font-weight: 500;
}
