#heyresume-internal-app{
  --rte-bar:56px;
  --rte-rail:440px;
  position:fixed; inset:0;
  display:flex; flex-direction:column;
  background:var(--bg); color:var(--text-body);
  font-family:var(--font);
}

/* ---- Top bar ---- */
#heyresume-internal-app .rte-bar{
  height:var(--rte-bar); flex:0 0 auto;
  display:flex; align-items:center; gap:16px;
  padding:0 20px;
  background:var(--card); border-bottom:1px solid var(--line);
}
#heyresume-internal-app .rte-bar__logo{
  display:inline-flex; align-items:center; gap:9px;
  text-decoration:none;
  transition:opacity var(--dur,200ms) var(--ease,ease);
}
#heyresume-internal-app .rte-bar__logo:hover{ opacity:.82; }
#heyresume-internal-app .rte-bar__logo:focus-visible{
  outline:2px solid var(--blue); outline-offset:4px; border-radius:8px;
}
/* "Workspace" is an environment label — visually subordinate to the logo */
#heyresume-internal-app .rte-bar__context{
  align-self:center;
  padding-left:12px; margin-left:2px;
  border-left:1px solid var(--line-subtle);
  font-size:0.78rem; font-weight:500; color:var(--text-muted); letter-spacing:0;
}
#heyresume-internal-app .rte-bar__spacer{ flex:1; }

/* mode flag — class is fully swapped by app.js (mode-flag mode-mock|mode-live) */
#heyresume-internal-app .mode-flag{
  display:inline-flex; align-items:center; gap:7px;
  background:var(--card); border:1px solid var(--line-subtle);
  padding:6px 12px; border-radius:100px;
  font-size:0.7rem; font-weight:700; color:var(--text-ink);
  box-shadow:0 6px 16px rgba(12,17,48,.08);
}
#heyresume-internal-app .mode-flag .dot{ width:7px; height:7px; border-radius:2px; background:var(--blue); }
#heyresume-internal-app .mode-mock .dot{ background:var(--gold); }
#heyresume-internal-app .mode-live .dot{ background:var(--green); }

/* ---- Workspace grid ---- */
#heyresume-internal-app .rte-work{
  flex:1 1 auto; min-height:0;
  display:grid;
  grid-template-columns:var(--rte-rail) 1fr;
  grid-template-areas:"rail stage";
}

/* Left rail = scrolling body + pinned action bar */
#heyresume-internal-app .rte-rail{
  grid-area:rail; min-height:0;
  display:grid; grid-template-rows:1fr auto;
  border-right:1px solid var(--line);
  background:var(--card);
}
#heyresume-internal-app .rte-rail__scroll{ overflow-y:auto; padding:20px 20px 8px; }
#heyresume-internal-app .rte-block{ padding:18px 0; border-bottom:1px solid var(--line-subtle); }
#heyresume-internal-app .rte-block:first-child{ padding-top:2px; }
#heyresume-internal-app .rte-block:last-child{ border-bottom:none; }

/* dropzone reuses .resume-upload primitives; only drag-state added */
#heyresume-internal-app .resume-upload__drop.drag{ border-color:var(--blue); background:var(--blue-xfaint); }
#heyresume-internal-app .file-state{ display:none; margin-top:12px; }
#heyresume-internal-app .file-state.on{ display:block; }
#heyresume-internal-app .file-state .v2-file-chip{ max-width:100%; }
#heyresume-internal-app .file-state .v2-file-chip b{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* pinned action bar */
#heyresume-internal-app .rte-actions{
  display:grid; grid-template-columns:1fr 1fr; gap:8px;
  padding:14px 20px;
  border-top:1px solid var(--line);
  background:var(--card);
}
#heyresume-internal-app .rte-actions .rte-gen{ grid-column:1 / -1; }
#heyresume-internal-app .rte-actions .btn{ width:100%; font-size:0.86rem; }
/* secondary variant: no such primitive exists in styles.css, so a
   layout-only neutral button built strictly from existing tokens */
#heyresume-internal-app .btn--flat{
  background:var(--card); color:var(--text-body);
  border:1.5px solid var(--line); padding:12px 18px;
}
#heyresume-internal-app .rte-actions .btn,
#heyresume-internal-app .rte-read{
  transition:background 180ms var(--ease,ease), border-color 180ms var(--ease,ease),
             color 180ms var(--ease,ease), box-shadow 180ms var(--ease,ease), transform 120ms var(--ease,ease);
}
#heyresume-internal-app .btn--flat:hover{
  border-color:var(--blue); color:var(--blue);
  background:var(--blue-xfaint);
}
#heyresume-internal-app .btn--primary:hover{ box-shadow:0 6px 20px rgba(27,47,212,.24); }
#heyresume-internal-app .rte-actions .btn:active,
#heyresume-internal-app .rte-read:active{ transform:translateY(1px); }
#heyresume-internal-app .btn:focus-visible{
  outline:none; box-shadow:0 0 0 3px rgba(27,47,212,.18);
}
#heyresume-internal-app .btn:disabled{ opacity:.45; cursor:not-allowed; pointer-events:none; }

/* full-width read button (was an inline style) */
#heyresume-internal-app .rte-read{ width:100%; margin-top:12px; }
/* generate row + message span the action grid (was an inline style) */
#heyresume-internal-app .rte-actions .msg.rte-gen{ grid-column:1 / -1; }

/* ---- Right stage (preview) ---- */
#heyresume-internal-app .rte-stage{
  grid-area:stage; min-height:0; overflow-y:auto;
  background:var(--bg-tint);
  display:flex; flex-direction:column;
}
#heyresume-internal-app .rte-stage__bar{
  position:sticky; top:0; z-index:2;
  display:flex; align-items:center; gap:12px;
  padding:11px 22px;
  background:rgba(240,240,250,.86); backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line-subtle);
  font-size:0.67rem; font-weight:700; letter-spacing:.11em; text-transform:uppercase; color:var(--text-muted);
}
#heyresume-internal-app .spinner{ display:none; align-items:center; gap:8px; margin-left:auto; text-transform:none; letter-spacing:0; font-weight:500; color:var(--text-muted); }
#heyresume-internal-app .spinner.on{ display:inline-flex; }
#heyresume-internal-app .spinner i{ width:13px; height:13px; border:2px solid var(--line); border-top-color:var(--blue); border-radius:50%; animation:rte-spin .7s linear infinite; }
@keyframes rte-spin{ to{ transform:rotate(360deg); } }

#heyresume-internal-app .rte-stage__body{ flex:1; padding:26px; overflow-x:auto; }
#heyresume-internal-app .empty-preview{
  height:100%; min-height:52vh;
  display:grid; place-items:center; text-align:center; color:var(--text-muted);
}
#heyresume-internal-app .empty-preview b{ color:var(--text-body); font-weight:700; }
#heyresume-internal-app .empty-preview p{ font-size:0.86rem; margin-top:4px; }

/* status messages (built from in-system tokens, not a new color system) */
#heyresume-internal-app .msg{ display:none; margin-top:12px; font-size:0.82rem; padding:9px 12px; border-radius:var(--radius-sm); line-height:1.5; }
#heyresume-internal-app .msg.on{ display:block; }
#heyresume-internal-app .msg.ok{ color:var(--green); background:var(--green-l); border:1px solid rgba(26,138,92,.22); }
#heyresume-internal-app .msg.warn{ color:#9A6000; background:#FFF8E6; border:1px solid rgba(232,150,10,.28); }
#heyresume-internal-app .msg.err{ color:rgba(168,72,72,.95); background:#fffafa; border:1px solid rgba(168,72,72,.4); }

#heyresume-internal-app .req::after{ content:" *"; color:rgba(168,72,72,.9); }

/* ---- Real page canvases (816x1056), overflow hidden, active-margin inner ---- */
#heyresume-internal-app .rte-page{
  position:relative;
  width:816px; min-height:1056px;
  margin:0 auto 22px;
  background:#fff;
  box-shadow:0 2px 6px rgba(12,17,48,.08), 0 14px 40px rgba(12,17,48,.10);
  overflow:visible;
  color:#1a1d24;
  font-family:Georgia,Cambria,'Times New Roman',serif;
}
#heyresume-internal-app .rte-page__inner{ position:relative; inset:0; overflow:visible; }
#heyresume-internal-app .rte-page--normal .rte-page__inner{ padding:72px; }   /* 0.75in */
#heyresume-internal-app .rte-page--dense  .rte-page__inner{ padding:48px; }   /* 0.5in */
#heyresume-internal-app .rte-page__no{ position:absolute; right:12px; bottom:8px; font:600 10px system-ui,sans-serif; color:#9aa2b1; letter-spacing:.04em; }
#heyresume-internal-app .rte-page--empty .rte-page__inner::after{
  content:"Page 2 workspace — empty (not exported)";
  position:absolute; left:0; right:0; bottom:36px; text-align:center;
  font:500 12px system-ui,sans-serif; color:#c3c8d4; pointer-events:none;
}
/* Isolate studio preview .resume from global brand card styles */
#heyresume-internal-app .resume {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
  width: 100% !important;
}

#heyresume-internal-app .resume * {
  box-sizing: border-box !important;
}

#heyresume-internal-app .resume .r-name{ font-size:24pt; font-weight:700; text-align:center; line-height:1.1; margin:0 0 2pt; }
#heyresume-internal-app .resume .r-headline{ font-size:11pt; font-weight:400; text-align:center; line-height:1.0; margin:0 0 6pt; }
#heyresume-internal-app .resume .r-contact{ font-size:9.5pt; font-weight:400; text-align:center; line-height:1.0; margin:0 0 14pt; }
#heyresume-internal-app .resume .r-contact span+span::before{ content:"   •   "; color:#555; }

#heyresume-internal-app .resume .r-sec-title{ font-size:11pt; font-weight:700; text-transform:uppercase; line-height:1.0; border-bottom:0.75pt solid #000; margin:14pt 0 4pt; padding:0 0 1pt; }
#heyresume-internal-app .resume .r-body{ font-size:10pt; font-weight:400; line-height:1.35; text-align:left; margin:0 0 3pt; }
#heyresume-internal-app .resume .r-inline{ font-size:10pt; line-height:1.35; margin:0 0 3pt; }

#heyresume-internal-app .resume ul.r-bullets{ margin:0; padding-left:16pt; list-style:disc; }
#heyresume-internal-app .resume ul.r-bullets li{ font-size:10pt; font-weight:400; line-height:1.35; margin:0 0 3pt; text-align:left; }

#heyresume-internal-app .resume .r-exp{ margin:0 0 6pt; }
#heyresume-internal-app .resume .r-exp.r-cont{ margin-top:0; }
#heyresume-internal-app .resume .r-row{ display:table; width:100%; table-layout:fixed; }
#heyresume-internal-app .resume .r-row>div{ display:table-cell; vertical-align:baseline; }
#heyresume-internal-app .resume .r-row>div:last-child{ text-align:right; white-space:nowrap; width:1.6in; }
#heyresume-internal-app .resume .r-exp .r-title{ font-size:10.5pt; font-weight:700; line-height:1.25; }
#heyresume-internal-app .resume .r-exp .r-co{ font-size:10pt; }
#heyresume-internal-app .resume .r-exp .r-dates{ font-size:9.5pt; color:#555; }
#heyresume-internal-app .resume .r-scope{ font-size:9.5pt; font-style:italic; color:#333; line-height:1.35; margin:0 0 3pt; }
#heyresume-internal-app .resume .r-context{ font-size:9.5pt; color:#333; line-height:1.35; margin:0 0 3pt; }

/* ================= ARCHITECTURE LAYOUT PROFILES ==================== */
/* Each profile is self-contained: it declares its own borders, spacing, */
/* and type so changing one archetype cannot regress another.            */

/* shared structural primitives (grid / matrix / scope band / company) */
#heyresume-internal-app .resume .r-grid{ display:table; width:100%; table-layout:fixed; margin:0 0 4pt; }
#heyresume-internal-app .resume .r-grid__i{ display:inline-block; width:33%; vertical-align:top; font-size:10pt; line-height:1.5; padding-right:8pt; }
#heyresume-internal-app .resume .r-grid__i::before{ content:"▪ "; color:#26324a; }
#heyresume-internal-app .resume .r-matrix{ display:table; width:100%; margin:0 0 4pt; }
#heyresume-internal-app .resume .r-matrix__r{ display:table-row; }
#heyresume-internal-app .resume .r-matrix__k{ display:table-cell; width:1.5in; font-weight:700; font-size:10pt; padding:1pt 8pt 1pt 0; white-space:nowrap; }
#heyresume-internal-app .resume .r-matrix__v{ display:table-cell; font-size:10pt; line-height:1.4; padding:1pt 0; }
#heyresume-internal-app .resume .r-company{ display:table; width:100%; margin:6pt 0 1pt; }
#heyresume-internal-app .resume .r-company__n{ display:table-cell; font-weight:700; font-size:11.5pt; letter-spacing:.04em; text-transform:uppercase; }
#heyresume-internal-app .resume .r-company__l{ display:table-cell; text-align:right; font-size:9.5pt; color:#555; }
#heyresume-internal-app .resume .r-scopeband{ margin:2pt 0 3pt; }
#heyresume-internal-app .resume .r-scopeband__c{ display:inline-block; font-size:9pt; color:#26324a; background:#f3f4f8; padding:1pt 6pt; margin:0 4pt 2pt 0; border-radius:2px; }
#heyresume-internal-app .resume .r-scopeband__c b{ text-transform:uppercase; letter-spacing:.04em; font-size:8pt; }
#heyresume-internal-app .resume .r-context{ font-size:9.5pt; font-style:italic; color:#333; line-height:1.4; margin:0 0 3pt; }

/* ---------- EMERGING (UGA / early-tier) : compact, education-led -------- */
#heyresume-internal-app .resume.layout-emerging{ font-family:Georgia,Cambria,'Times New Roman',serif; }
#heyresume-internal-app .resume.layout-emerging .r-name{ font-size:20pt; font-weight:700; text-align:center; letter-spacing:.06em; margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-emerging .r-sec-title{ font-size:11pt; font-weight:700; text-transform:uppercase; border-bottom:0.75pt solid #000; margin:11pt 0 3pt; padding:0 0 1pt; background:transparent; }
#heyresume-internal-app .resume.layout-emerging .r-body{ margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-emerging ul.r-bullets li{ margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-emerging .r-exp{ margin:0 0 5pt; }
#heyresume-internal-app .resume.layout-emerging .r-exp .r-title{ font-size:10.5pt; }

/* ---------- CORPORATE-SENIOR (Francis / Snowe / Jones) ----------------- */
#heyresume-internal-app .resume.layout-corporate_senior{ font-family:Georgia,Cambria,'Times New Roman',serif; }
#heyresume-internal-app .resume.layout-corporate_senior .r-name{ font-size:24pt; font-weight:700; text-align:center; margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-corporate_senior .r-sec-title{ font-size:11pt; font-weight:700; text-transform:uppercase; letter-spacing:.08em; border-bottom:1.25pt solid #26324a; margin:15pt 0 5pt; padding:0 0 2pt; background:transparent; }
#heyresume-internal-app .resume.layout-corporate_senior .r-body{ margin:0 0 4pt; }
#heyresume-internal-app .resume.layout-corporate_senior ul.r-bullets li{ margin:0 0 4pt; }
#heyresume-internal-app .resume.layout-corporate_senior .r-exp{ margin:0 0 9pt; }
#heyresume-internal-app .resume.layout-corporate_senior .r-exp .r-title{ font-size:11pt; }

/* ---------- TECHNICAL (GWU page-5) : dense sans, shaded titles --------- */
#heyresume-internal-app .resume.layout-technical{ font-family:Arial,Helvetica,'Segoe UI',sans-serif; }
#heyresume-internal-app .resume.layout-technical .r-name,
#heyresume-internal-app .resume.layout-technical .r-headline,
#heyresume-internal-app .resume.layout-technical .r-contact,
#heyresume-internal-app .resume.layout-technical .r-body,
#heyresume-internal-app .resume.layout-technical .r-context,
#heyresume-internal-app .resume.layout-technical ul.r-bullets li,
#heyresume-internal-app .resume.layout-technical .r-matrix__k,
#heyresume-internal-app .resume.layout-technical .r-matrix__v,
#heyresume-internal-app .resume.layout-technical .r-exp .r-title{ font-family:Arial,Helvetica,sans-serif; }
#heyresume-internal-app .resume.layout-technical .r-name{ font-size:20pt; font-weight:700; text-align:center; margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-technical .r-sec-title{ font-size:10pt; font-weight:700; text-transform:uppercase; letter-spacing:.03em; border-bottom:1pt solid #26324a; background:#f4f5f7; margin:10pt 0 3pt; padding:3pt 6pt; }
#heyresume-internal-app .resume.layout-technical .r-body{ margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-technical ul.r-bullets li{ margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-technical .r-exp{ margin:0 0 5pt; }
#heyresume-internal-app .resume.layout-technical .r-exp .r-title{ font-size:10pt; }

/* ---------- EXECUTIVE (Enelow–Kursmark board/C-suite) : masthead ------- */
#heyresume-internal-app .resume.layout-executive{ font-family:Georgia,Cambria,'Times New Roman',serif; }
#heyresume-internal-app .resume.layout-executive .rx-mast{ margin:0 0 8pt; }
#heyresume-internal-app .resume.layout-executive .rx-name{ font-size:20pt; font-weight:700; text-align:center; letter-spacing:.18em; text-transform:uppercase; margin:0 0 3pt; }
#heyresume-internal-app .resume.layout-executive .rx-title{ font-size:11pt; font-weight:700; text-align:center; margin:0 0 6pt; }
#heyresume-internal-app .resume.layout-executive .rx-id{ display:table; width:100%; border-top:1.5pt solid #000; border-bottom:1.5pt solid #000; padding:4pt 0; }
#heyresume-internal-app .resume.layout-executive .rx-id__l{ display:table-cell; text-align:left; font-size:9.5pt; line-height:1.35; }
#heyresume-internal-app .resume.layout-executive .rx-id__r{ display:table-cell; text-align:right; font-size:9.5pt; line-height:1.35; }
#heyresume-internal-app .resume.layout-executive .r-sec-title{ font-size:12pt; font-weight:700; text-align:center; text-transform:uppercase; letter-spacing:.16em; border-bottom:1.5pt solid #26324a; background:transparent; margin:16pt 0 6pt; padding:0 0 3pt; }
#heyresume-internal-app .resume.layout-executive .r-body{ margin:0 0 6pt; }
#heyresume-internal-app .resume.layout-executive .r-inline{ text-align:center; }
#heyresume-internal-app .resume.layout-executive ul.r-bullets{ padding-left:16pt; }
#heyresume-internal-app .resume.layout-executive ul.r-bullets li{ margin:0 0 6pt; }
#heyresume-internal-app .resume.layout-executive .r-exp{ margin:0 0 12pt; }
#heyresume-internal-app .resume.layout-executive .rx-emp{ display:table; width:100%; margin:8pt 0 1pt; }
#heyresume-internal-app .resume.layout-executive .rx-emp__n{ display:table-cell; font-weight:700; font-size:11pt; }
#heyresume-internal-app .resume.layout-executive .rx-emp__d{ display:table-cell; text-align:right; font-size:9.5pt; color:#333; white-space:nowrap; }
#heyresume-internal-app .resume.layout-executive .rx-role{ display:table; width:100%; margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-executive .rx-role__t{ display:table-cell; font-weight:700; font-size:10.5pt; }
#heyresume-internal-app .resume.layout-executive .rx-role__d{ display:table-cell; text-align:right; font-size:9.5pt; color:#333; white-space:nowrap; }
#heyresume-internal-app .resume.layout-executive .rx-contactline{ text-align:center; font-size:9.5pt; color:#444; margin:0 0 6pt; }
#heyresume-internal-app .resume.layout-executive .rx-band{ border-top:1.5pt solid #000; border-bottom:1.5pt solid #000; padding:6pt 0; text-align:center; }
#heyresume-internal-app .resume.layout-executive .rx-band .rx-desig{ font-size:12pt; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-executive .rx-band .rx-subdesig{ font-size:9.5pt; color:#333; margin:0; }
#heyresume-internal-app .resume.layout-executive .rx-desig{ font-size:11pt; font-weight:700; text-align:center; text-transform:uppercase; letter-spacing:.08em; margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-executive .rx-subdesig{ font-size:9.5pt; text-align:center; color:#333; margin:0 0 6pt; }
#heyresume-internal-app .resume.layout-executive .rx-affil{ text-align:center; column-count:3; column-gap:16pt; margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-executive .rx-affil__i{ display:block; font-size:9.5pt; line-height:1.5; break-inside:avoid; }
#heyresume-internal-app .resume.layout-executive .rx-cgroup{ font-size:9.5pt; line-height:1.4; margin:0 0 4pt; text-align:left; }
#heyresume-internal-app .resume.layout-executive .rx-cgroup__k{ font-weight:700; }
#heyresume-internal-app .resume.layout-executive .rx-emp__x{ font-weight:400; font-size:9.5pt; color:#333; }
#heyresume-internal-app .resume.layout-executive .rx-chi{ font-size:9.5pt; line-height:1.4; margin:0 0 3pt; }
#heyresume-internal-app .resume.layout-executive .rx-chi__k{ font-weight:700; }
#heyresume-internal-app .resume.layout-executive .rx-rsum{ font-size:9.5pt; line-height:1.4; margin:0 0 3pt; }
#heyresume-internal-app .resume.layout-executive .rx-kalabel{ font-size:9.5pt; font-weight:700; font-style:italic; margin:2pt 0 1pt; }
#heyresume-internal-app .resume.layout-executive .rx-appt{ display:table; width:100%; margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-executive .rx-appt__t{ display:table-cell; font-weight:700; font-size:10pt; }
#heyresume-internal-app .resume.layout-executive .rx-appt__d{ display:table-cell; text-align:right; font-size:9.5pt; color:#333; }

/* ---------- Universal page-2+ continuity header (all archetypes) -------- */
#heyresume-internal-app .resume .rx-run{ display:table; width:100%; border-bottom:0.75pt solid #000; padding:0 0 3pt; margin:0 0 10pt; }
#heyresume-internal-app .resume .rx-run__n{ display:table-cell; font-weight:700; font-size:9.5pt; }
#heyresume-internal-app .resume .rx-run__p{ display:table-cell; text-align:right; font-style:italic; font-size:9.5pt; }
#heyresume-internal-app .resume.layout-executive .rx-run__n{ letter-spacing:.04em; }

/* ---------- HYBRID (Stanford Berry) : objective + transferable --------- */
#heyresume-internal-app .resume.layout-hybrid{ font-family:Georgia,Cambria,'Times New Roman',serif; }
#heyresume-internal-app .resume.layout-hybrid .r-name{ font-size:22pt; font-weight:700; text-align:center; margin:0 0 2pt; }
#heyresume-internal-app .resume.layout-hybrid .r-sec-title{ font-size:11pt; font-weight:700; text-transform:uppercase; letter-spacing:.06em; border-bottom:0.75pt solid #000; border-left:3pt solid #26324a; margin:13pt 0 4pt; padding:0 0 1pt 6pt; background:transparent; }
#heyresume-internal-app .resume.layout-hybrid .r-body{ margin:0 0 4pt; }
#heyresume-internal-app .resume.layout-hybrid ul.r-bullets li{ margin:0 0 3pt; }
#heyresume-internal-app .resume.layout-hybrid .r-exp{ margin:0 0 7pt; }

@media (max-width:900px){
  #heyresume-internal-app .rte-work{ grid-template-columns:1fr; grid-template-areas:"rail" "stage"; }
  #heyresume-internal-app .rte-rail{ border-right:none; border-bottom:1px solid var(--line); }
}

/* ================= COMPONENT SWAP PANEL (writer controls) ============= */
#heyresume-internal-app .rv-panel{ display:none; position:static; margin:0 0 14px; padding:10px 12px; background:#f7f8fc; border:1px solid var(--line); border-radius:10px; }
#heyresume-internal-app .rv-panel.on{ display:block; }
#heyresume-internal-app .intake-note{ font-size:11px; color:#8a93ab; font-style:italic; margin-top:4px; }
#heyresume-internal-app .rv-head{ font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#5a6b8c; margin:0 0 8px; }
#heyresume-internal-app .rv-row{ display:flex; align-items:center; gap:10px; margin:0 0 6px; }
#heyresume-internal-app .rv-row:last-child{ margin-bottom:0; }
#heyresume-internal-app .rv-row__k{ flex:0 0 84px; font-size:12px; font-weight:600; color:#2a3350; }
#heyresume-internal-app .rv-chips{ display:flex; flex-wrap:wrap; gap:6px; }
#heyresume-internal-app .rv-chip{ font:inherit; font-size:12px; padding:5px 10px; border:1px solid #cdd4e6; border-radius:999px; background:#fff; color:#3a4670; cursor:pointer; transition:all .12s ease; }
#heyresume-internal-app .rv-chip:hover{ border-color:#1B2FD4; }
#heyresume-internal-app .rv-chip--on{ background:#1B2FD4; border-color:#1B2FD4; color:#fff; }
#heyresume-internal-app .rv-note{ font-size:12px; color:#8a93ab; font-style:italic; }

/* ================= EXECUTIVE FRANCIS SPLIT-ID VARIANT ================= */
#heyresume-internal-app .resume.layout-executive .rf-mast{ margin:0 0 8pt; }
#heyresume-internal-app .resume.layout-executive .rf-top{ display:table; width:100%; border-bottom:1pt solid #000; padding:0 0 3pt; }
#heyresume-internal-app .resume.layout-executive .rf-name{ display:table-cell; font-size:20pt; font-weight:700; letter-spacing:.1em; text-transform:uppercase; vertical-align:bottom; }
#heyresume-internal-app .resume.layout-executive .rf-ct{ display:table-cell; text-align:right; font-size:9pt; line-height:1.35; vertical-align:bottom; color:#333; }
#heyresume-internal-app .resume.layout-executive .rf-desig{ font-size:11pt; font-weight:700; letter-spacing:.1em; text-transform:uppercase; margin:6pt 0 2pt; }
#heyresume-internal-app .resume.layout-executive .rf-sub{ font-size:9.5pt; font-style:italic; color:#333; margin:0 0 4pt; }
#heyresume-internal-app .resume.layout-executive .rx-cdesc{ font-size:9.5pt; font-style:italic; color:#333; line-height:1.4; margin:0 0 3pt; }

/* Intake: restore top spacing on the first label after the 2x2 select grid */
#heyresume-internal-app .intake-row-2 + .intake-label{ margin-top:18px; }

/* ================= CREATIVE ROLE — clean sans-serif treatment ========= */
#heyresume-internal-app .resume.role-creative,
#heyresume-internal-app .resume.role-creative .r-name,
#heyresume-internal-app .resume.role-creative .r-headline,
#heyresume-internal-app .resume.role-creative .r-contact,
#heyresume-internal-app .resume.role-creative .r-sec-title,
#heyresume-internal-app .resume.role-creative .r-body,
#heyresume-internal-app .resume.role-creative .r-context,
#heyresume-internal-app .resume.role-creative ul.r-bullets li,
#heyresume-internal-app .resume.role-creative .r-exp .r-title{
  font-family:Helvetica,Arial,"Helvetica Neue",sans-serif;
}
#heyresume-internal-app .resume.role-creative .r-name{ letter-spacing:-.01em; font-weight:800; }
#heyresume-internal-app .resume.role-creative .r-sec-title{ letter-spacing:.02em; font-weight:800; border-bottom:1.5pt solid #111; }
#heyresume-internal-app .resume.role-creative .r-exp .r-title{ font-weight:700; }

/* ================= EMERGING TIERS ==================================== */
/* Entry: no headline element rendered (handled in JS); tighten name→contact */
#heyresume-internal-app .resume.tier-emerging_entry .r-head{ margin-bottom:6pt; }
#heyresume-internal-app .resume.tier-emerging_entry .r-name{ margin-bottom:2pt; }
/* Early: skills/experience-forward — a touch more lead room on sections */
#heyresume-internal-app .resume.tier-emerging_early .r-sec-title{ margin-top:12pt; }

/* ================= 3-5 SUMMARY MASTHEAD (interchangeable) ============= */
#heyresume-internal-app .resume .rm-mast{ text-align:center; margin:0 0 10pt; }
#heyresume-internal-app .resume .rm-name{ font-size:19pt; font-weight:700; letter-spacing:.02em; margin:0 0 3pt; }
#heyresume-internal-app .resume .rm-contact{ font-size:9pt; color:#444; margin:0 0 6pt; }
#heyresume-internal-app .resume .rm-summary{ font-size:9.5pt; line-height:1.45; color:#333; border-top:0.75pt solid #000; padding-top:6pt; margin:0; text-align:center; }

/* ================= SMITS BRANDED MASTHEAD + LAYOUT =================== */
#heyresume-internal-app .resume .rs-mast{ margin:0 0 10pt; }
#heyresume-internal-app .resume .rs-row{ display:table; width:100%; }
#heyresume-internal-app .resume .rs-name{ display:table-cell; font-size:20pt; font-weight:800; letter-spacing:.02em; }
#heyresume-internal-app .resume .rs-ct{ display:table-cell; text-align:right; vertical-align:bottom; font-size:9pt; color:#444; }
#heyresume-internal-app .resume .rs-row2{ font-size:9pt; color:#444; border-bottom:1.25pt solid #111; padding:1pt 0 4pt; margin:0 0 5pt; }
#heyresume-internal-app .resume .rs-brand{ font-size:11.5pt; font-weight:800; letter-spacing:.12em; text-transform:uppercase; text-align:center; margin:4pt 0 2pt; }
#heyresume-internal-app .resume .rs-sub{ font-size:9pt; font-style:italic; color:#333; text-align:center; margin:0 0 4pt; }
#heyresume-internal-app .resume .rs-grid{ column-count:2; column-gap:26pt; margin:0 0 4pt; }
#heyresume-internal-app .resume .rs-grid__i{ display:block; font-size:9.5pt; line-height:1.6; break-inside:avoid; }
#heyresume-internal-app .resume .rs-grid__i::before{ content:"\2611  "; }
#heyresume-internal-app .resume .rs-emp{ display:table; width:100%; margin:8pt 0 1pt; }
#heyresume-internal-app .resume .rs-emp__n{ display:table-cell; font-weight:800; font-size:10.5pt; letter-spacing:.03em; }
#heyresume-internal-app .resume .rs-emp__d{ display:table-cell; text-align:right; font-size:9pt; color:#333; white-space:nowrap; }
#heyresume-internal-app .resume .rs-cdesc{ font-size:9pt; font-style:italic; color:#555; margin:0 0 2pt; }
#heyresume-internal-app .resume .rs-role{ display:table; width:100%; margin:2pt 0 1pt; }
#heyresume-internal-app .resume .rs-role__t{ display:table-cell; font-weight:700; font-size:10pt; }
#heyresume-internal-app .resume .rs-role__d{ display:table-cell; text-align:right; font-size:9pt; color:#333; }
#heyresume-internal-app .resume .rs-lead{ font-size:9.5pt; font-style:italic; color:#333; line-height:1.4; margin:1pt 0 3pt; }
#heyresume-internal-app .resume ul.r-subbullets{ list-style:none; padding-left:14pt; margin:2pt 0 0; }
#heyresume-internal-app .resume ul.r-subbullets li{ position:relative; font-size:9.5pt; line-height:1.4; margin:0 0 2pt; }
#heyresume-internal-app .resume ul.r-subbullets li::before{ content:"\2013"; position:absolute; left:-12pt; }


/* ---- Micro-interaction polish (presentation only) ---- */
#heyresume-internal-app .intake-input,
#heyresume-internal-app .intake-select,
#heyresume-internal-app .intake-textarea{
  transition:border-color 180ms var(--ease,ease), box-shadow 180ms var(--ease,ease), background 180ms var(--ease,ease);
}
#heyresume-internal-app .intake-input:hover,
#heyresume-internal-app .intake-select:hover,
#heyresume-internal-app .intake-textarea:hover{ border-color:var(--line); }
#heyresume-internal-app .intake-input:focus,
#heyresume-internal-app .intake-select:focus,
#heyresume-internal-app .intake-textarea:focus{
  outline:none; border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(27,47,212,.12);
}
#heyresume-internal-app .intake-select:disabled{ opacity:.55; cursor:not-allowed; }

/* dropzone: gentle lift on hover, clear drag affordance */
#heyresume-internal-app .resume-upload__drop{
  transition:border-color 200ms var(--ease,ease), background 200ms var(--ease,ease), box-shadow 200ms var(--ease,ease);
}
#heyresume-internal-app .resume-upload__drop:hover{
  border-color:var(--blue); background:var(--blue-xfaint);
}

/* component chips: smoother, less abrupt */
#heyresume-internal-app .rv-chip{
  transition:background 160ms var(--ease,ease), border-color 160ms var(--ease,ease), color 160ms var(--ease,ease);
}
#heyresume-internal-app .rv-chip:active{ transform:translateY(1px); }
#heyresume-internal-app .rv-chip:focus-visible{
  outline:none; box-shadow:0 0 0 3px rgba(27,47,212,.18);
}

/* status messages + preview settle in softly */
#heyresume-internal-app .msg{ animation:rte-fade 200ms var(--ease,ease) both; }
#heyresume-internal-app .rte-page{ animation:rte-rise 240ms var(--ease,ease) both; }
@keyframes rte-fade{ from{ opacity:0; } to{ opacity:1; } }
@keyframes rte-rise{ from{ opacity:0; transform:translateY(4px); } to{ opacity:1; transform:none; } }

@media (prefers-reduced-motion: reduce){
  #heyresume-internal-app *,
  #heyresume-internal-app *::before,
  #heyresume-internal-app *::after{
    animation-duration:1ms !important; transition-duration:1ms !important;
  }
}
