:root {
  --ink: #0b1736;
  --muted: #63708a;
  --line: #e5eaf4;
  --blue: #123c91;
  --blue-2: #1f69d5;
  --cyan: #69d8f2;
  --purple: #9b7cf7;
  --soft-purple: #f3efff;
  --bg: #f7faff;
  --card: #ffffff;
  --shadow: 0 20px 60px rgba(18, 60, 145, 0.12);
  --radius: 24px;
  --page-x: clamp(18px, 4vw, 60px);
  --section-y: clamp(52px, 6vw, 76px);
  --grid-gap: clamp(16px, 2vw, 24px);
  --resume-card-preview-height: clamp(340px, 25vw, 430px);
  --resume-card-preview-padding: 12px;
  color-scheme: light;
}

:root[data-theme="dark"] {
  --ink: #edf5ff;
  --muted: #aab8cf;
  --line: rgba(163, 183, 220, 0.2);
  --blue: #78a9ff;
  --blue-2: #69d8f2;
  --cyan: #7de7f7;
  --purple: #b79cff;
  --soft-purple: rgba(155, 124, 247, 0.16);
  --bg: #081124;
  --card: #101b34;
  --shadow: 0 24px 70px rgba(0, 0, 0, 0.36);
  color-scheme: dark;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  overflow-x: clip;
  font-family: "Inter", Arial, sans-serif;
  color: var(--ink);
  background: var(--bg);
}

button,
input,
textarea,
select {
  font: inherit;
}

a {
  color: inherit;
  text-decoration: none;
}

.icon {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
}

.public-shell {
  min-height: 100vh;
  background:
    radial-gradient(circle at 15% 12%, rgba(105, 216, 242, 0.22), transparent 30%),
    radial-gradient(circle at 80% 8%, rgba(155, 124, 247, 0.22), transparent 28%),
    linear-gradient(180deg, #ffffff 0%, #f7faff 40%, #ffffff 100%);
}

.home-shell {
  background:
    linear-gradient(115deg, rgba(238, 247, 255, 0.86), transparent 28%),
    linear-gradient(205deg, rgba(243, 239, 255, 0.78), transparent 34%),
    repeating-linear-gradient(90deg, rgba(18, 60, 145, 0.035) 0 1px, transparent 1px 118px),
    linear-gradient(180deg, #ffffff 0%, #f7faff 44%, #ffffff 100%);
}

html:has(.home-shell),
body:has(.home-shell),
html:has(.summary-tool-page),
body:has(.summary-tool-page) {
  scrollbar-width: none;
  -ms-overflow-style: none;
}

html:has(.home-shell)::-webkit-scrollbar,
body:has(.home-shell)::-webkit-scrollbar,
html:has(.summary-tool-page)::-webkit-scrollbar,
body:has(.summary-tool-page)::-webkit-scrollbar {
  width: 0;
  height: 0;
}

:root[data-theme="dark"] .public-shell {
  background:
    radial-gradient(circle at 15% 12%, rgba(105, 216, 242, 0.12), transparent 30%),
    radial-gradient(circle at 80% 8%, rgba(155, 124, 247, 0.14), transparent 28%),
    linear-gradient(180deg, #081124 0%, #0c1730 44%, #081124 100%);
}

.site-header,
.dashboard-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  min-height: 58px;
  padding: 8px var(--page-x);
  background: rgba(255, 255, 255, 0.82);
  border-bottom: 1px solid rgba(229, 234, 244, 0.8);
  backdrop-filter: blur(18px);
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
}

:root[data-theme="dark"] .site-header,
:root[data-theme="dark"] .dashboard-topbar {
  background: rgba(10, 18, 36, 0.84);
  border-color: var(--line);
}

.brand {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  color: var(--ink);
  letter-spacing: 0;
}

.brand-mark {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 16px;
  overflow: hidden;
  color: #fff;
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(239, 247, 255, 0.82));
  box-shadow: 0 14px 30px rgba(18, 60, 145, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.82);
}

.brand-mark svg {
  display: block;
  width: 38px;
  height: 38px;
  filter: drop-shadow(0 7px 12px rgba(31, 105, 213, 0.2));
}

.brand-logo-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: scale(0.96);
  filter: drop-shadow(0 8px 14px rgba(31, 105, 213, 0.2));
  transition: transform 0.22s cubic-bezier(0.22, 1, 0.36, 1), filter 0.22s ease;
}

.brand-word {
  font-family: "Manrope", "Inter", Arial, sans-serif;
  font-size: 19.5px;
  font-weight: 800;
  letter-spacing: 0.01em;
  line-height: 1;
}

.brand:hover .brand-mark {
  box-shadow: 0 18px 42px rgba(18, 60, 145, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.brand:hover .brand-logo-image {
  transform: translateY(-1px) scale(1);
  filter: drop-shadow(0 10px 18px rgba(31, 105, 213, 0.26));
}

.brand:hover .brand-word {
  color: #102f75;
}

:root[data-theme="dark"] .brand:hover .brand-word {
  color: #c9dcff;
}

.public-nav {
  grid-column: 2 / 4;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(18px, 2.6vw, 42px);
  color: #34415c;
  font-size: 13.5px;
  font-weight: 600;
}

.public-nav-center,
.public-nav-actions {
  display: flex;
  align-items: center;
  gap: clamp(10px, 1.2vw, 16px);
}

.public-nav-center {
  justify-content: center;
  flex: 1;
}

.public-nav-actions {
  justify-content: flex-end;
  gap: 10px;
}

:root[data-theme="dark"] .public-nav {
  color: #d2def2;
}

.public-nav a:not(.primary-button):not(.ghost-button):hover {
  color: var(--blue-2);
}

.nav-preferences {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 38px;
  padding: 3px;
  border: 1px solid rgba(214, 223, 239, 0.88);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.76);
  box-shadow: 0 8px 22px rgba(18, 60, 145, 0.06);
}

.language-switch {
  display: inline-flex;
  min-height: 30px;
  padding: 2px;
  border: 0;
  border-radius: 999px;
  background: rgba(238, 245, 255, 0.72);
}

.theme-toggle {
  width: 30px;
  height: 30px;
  border-radius: 999px;
  border: 0;
  color: #31517e;
  background: transparent;
}

.theme-toggle .icon {
  width: 15px;
  height: 15px;
}

.language-switch button {
  min-width: 31px;
  min-height: 26px;
  padding: 0 7px;
  border: 0;
  border-radius: 999px;
  color: var(--muted);
  background: transparent;
  cursor: pointer;
  font-size: 11.5px;
  font-weight: 800;
}

.language-switch .active {
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2));
  box-shadow: 0 6px 14px rgba(31, 105, 213, 0.2);
}

.compact button {
  min-width: 34px;
  padding: 6px 8px;
}

.primary-button,
.secondary-button,
.ghost-button,
.google-button,
.icon-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-width: 0;
  border: 0;
  cursor: pointer;
  text-align: center;
  white-space: nowrap;
  transition: transform 0.22s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.22s ease, border-color 0.22s ease, background 0.22s ease, color 0.22s ease;
}

.primary-button,
.secondary-button,
.ghost-button,
.google-button {
  max-width: 100%;
  line-height: 1.15;
}

.primary-button {
  min-height: 46px;
  padding: 0 22px;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2) 55%, var(--purple));
  box-shadow: 0 16px 36px rgba(31, 105, 213, 0.29);
  font-weight: 800;
}

.primary-button:hover,
.secondary-button:hover,
.ghost-button:hover,
.google-button:hover,
.icon-button:hover {
  transform: translateY(-2px);
}

.primary-button:focus-visible,
.secondary-button:focus-visible,
.ghost-button:focus-visible,
.google-button:focus-visible,
.icon-button:focus-visible,
.language-switch button:focus-visible,
.template-switch button:focus-visible,
.document-format-switch button:focus-visible,
.builder-mobile-tabs button:focus-visible,
.template-filter-row button:focus-visible {
  outline: 3px solid rgba(31, 105, 213, 0.22);
  outline-offset: 3px;
}

.primary-button:disabled,
.secondary-button:disabled,
.ghost-button:disabled,
.google-button:disabled {
  cursor: wait;
  opacity: 0.72;
  transform: none;
}

.secondary-button,
.ghost-button,
.google-button {
  min-height: 46px;
  padding: 0 19px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.88);
  color: var(--ink);
  font-weight: 800;
}

:root[data-theme="dark"] .nav-preferences {
  border-color: var(--line);
  background: rgba(16, 27, 52, 0.62);
  box-shadow: 0 10px 26px rgba(0, 0, 0, 0.18);
}

:root[data-theme="dark"] .language-switch {
  background: rgba(8, 17, 36, 0.58);
}

:root[data-theme="dark"] .theme-toggle {
  color: #d2def2;
}

:root[data-theme="dark"] .secondary-button,
:root[data-theme="dark"] .ghost-button,
:root[data-theme="dark"] .google-button,
:root[data-theme="dark"] .icon-button {
  border-color: var(--line);
  background: rgba(16, 27, 52, 0.74);
  color: var(--ink);
}

:root[data-theme="dark"] .primary-button {
  box-shadow: 0 18px 42px rgba(105, 216, 242, 0.18);
}

.ghost-button {
  min-height: 38px;
  padding: 0 15px;
}

.small {
  min-height: 38px;
  padding: 0 15px;
  font-size: 13.5px;
}

.full {
  width: 100%;
}

.feature-card,
.step-card,
.template-card,
.price-card,
.faq-item,
.dash-card,
.settings-card,
.ai-input-panel,
.ats-score,
.library-card,
.empty-state,
.hero-value-card,
.sidebar-upgrade,
.sidebar-link-button,
.user-dropdown button {
  min-width: 0;
  overflow-wrap: normal;
}

.icon-button {
  width: 40px;
  height: 40px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  color: var(--blue);
}

.nav-preferences .theme-toggle {
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #31517e;
  box-shadow: none;
}

.nav-toggle {
  display: inline-flex;
  grid-column: 3;
  justify-self: end;
}

@media (min-width: 861px) {
  .nav-toggle {
    display: none !important;
  }
}

.hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(390px, 1.04fr);
  align-items: center;
  column-gap: clamp(28px, 4vw, 58px);
  row-gap: clamp(14px, 1.5vw, 22px);
  width: min(100%, 1320px);
  margin: 0 auto;
  padding: clamp(30px, 4vw, 58px) var(--page-x) clamp(34px, 4vw, 56px);
  overflow: hidden;
}

.hero::before {
  content: "";
  position: absolute;
  inset: clamp(12px, 2vw, 28px) var(--page-x) auto auto;
  width: min(46vw, 620px);
  height: min(44vw, 540px);
  border: 1px solid rgba(31, 105, 213, 0.08);
  border-radius: 44px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.74), rgba(255, 255, 255, 0)),
    repeating-linear-gradient(0deg, rgba(31, 105, 213, 0.05) 0 1px, transparent 1px 46px);
  transform: rotate(-4deg);
  pointer-events: none;
}

.hero::after {
  content: "";
  position: absolute;
  right: var(--page-x);
  bottom: 0;
  left: var(--page-x);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(31, 105, 213, 0.14), transparent);
}

.hero + .section {
  padding-top: clamp(50px, 5.6vw, 76px);
}

.hero-copy {
  position: relative;
  z-index: 2;
  max-width: 760px;
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  position: relative;
  overflow: hidden;
  color: var(--blue-2);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.hero .eyebrow::after {
  content: "";
  position: absolute;
  inset: -40% auto -40% -58%;
  width: 50%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.72), transparent);
  transform: skewX(-20deg);
  animation: eyebrowShine 6.5s ease-in-out infinite;
}

.hero h1,
.section-heading h1,
.section-heading h2,
.auth-visual h1 {
  margin: 13px 0 0;
  max-width: 760px;
  font-size: clamp(38px, 4.65vw, 64px);
  line-height: 1.02;
  letter-spacing: 0;
}

.hero p,
.section-heading p,
.auth-visual p {
  margin: 16px 0 0;
  max-width: 640px;
  color: var(--muted);
  font-size: clamp(16.5px, 1.4vw, 19px);
  line-height: 1.58;
}

.hero-actions,
.quick-actions,
.builder-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  margin-top: 18px;
}

.hero-actions .primary-button {
  min-height: 48px;
  padding-inline: 23px;
  background:
    linear-gradient(135deg, #123c91, #1f69d5 52%, #8b6df6);
  box-shadow:
    0 18px 42px rgba(31, 105, 213, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

.hero-actions .secondary-button {
  min-height: 48px;
  border-color: rgba(31, 105, 213, 0.14);
  background: rgba(255, 255, 255, 0.76);
  box-shadow: 0 14px 34px rgba(18, 60, 145, 0.08);
  backdrop-filter: blur(12px);
}

.trust-row {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 18px;
}

.trust-row span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 8px 12px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 999px;
  color: #3c4d69;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(247, 250, 255, 0.66));
  box-shadow: 0 10px 26px rgba(18, 60, 145, 0.06);
  font-size: 12.5px;
  font-weight: 850;
  transition: transform 0.22s cubic-bezier(0.22, 1, 0.36, 1), border-color 0.22s ease, background 0.22s ease;
  opacity: 0;
  transform: translate3d(0, 5px, 0);
  animation: heroChipReveal 0.7s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.trust-row span:nth-child(2) {
  animation-delay: 0.1s;
}

.trust-row span:nth-child(3) {
  animation-delay: 0.2s;
}

.trust-row .icon {
  width: 15px;
  height: 15px;
  color: var(--blue-2);
}

.trust-row span:hover {
  transform: translateY(-2px);
  border-color: rgba(31, 105, 213, 0.22);
}

.hero-value-strip {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: clamp(6px, 1.2vw, 14px);
}

.hero-value-card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  min-height: 90px;
  padding: 15px;
  border: 1px solid rgba(214, 223, 239, 0.78);
  border-radius: 22px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(246, 250, 255, 0.72)),
    rgba(255, 255, 255, 0.74);
  box-shadow:
    0 18px 44px rgba(18, 60, 145, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.74);
  backdrop-filter: blur(16px);
}

.hero-value-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--cyan), var(--blue-2), var(--purple));
  opacity: 0.52;
}

.hero-value-card:hover {
  transform: translateY(-4px);
  border-color: rgba(31, 105, 213, 0.18);
  box-shadow: 0 24px 58px rgba(18, 60, 145, 0.12);
}

.hero-value-icon {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 15px;
  color: var(--blue);
  background:
    linear-gradient(135deg, rgba(238, 245, 255, 0.95), rgba(232, 247, 255, 0.92)),
    #fff;
  box-shadow: inset 0 0 0 1px rgba(31, 105, 213, 0.08);
}

.hero-value-icon .icon {
  width: 19px;
  height: 19px;
}

.hero-value-card strong,
.hero-value-card span {
  display: block;
}

.hero-value-card strong {
  color: var(--ink);
  font-size: 14.5px;
  line-height: 1.2;
}

.hero-value-card span {
  margin-top: 4px;
  color: #60708b;
  font-size: 12.5px;
  line-height: 1.35;
}

.hero-visual {
  position: relative;
  width: min(100%, 640px);
  max-width: 640px;
  justify-self: end;
  align-self: center;
  animation: heroFloat 9s ease-in-out infinite;
}

.hero-visual-glow {
  position: absolute;
  inset: 8% 4% 8% 7%;
  border-radius: 38px;
  background:
    linear-gradient(135deg, rgba(105, 216, 242, 0.2), rgba(155, 124, 247, 0.16)),
    repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.24) 0 1px, transparent 1px 22px);
  filter: blur(18px);
  opacity: 0.72;
  transform: rotate(-5deg);
  pointer-events: none;
}

.hero-product-chips,
.application-checklist {
  position: absolute;
  z-index: 3;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  pointer-events: none;
}

.hero-product-chips {
  top: 22px;
  right: 18px;
  max-width: 275px;
  justify-content: flex-end;
}

.hero-product-chips span,
.application-checklist span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 999px;
  color: #243553;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 14px 32px rgba(18, 60, 145, 0.12);
  backdrop-filter: blur(14px);
  font-size: 11px;
  font-weight: 900;
  opacity: 0;
  transform: translate3d(0, 5px, 0);
  animation: heroChipReveal 0.75s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

.hero-product-chips span {
  padding: 0 10px;
}

.hero-product-chips span:nth-child(2) { animation-delay: 0.12s; }
.hero-product-chips span:nth-child(3) { animation-delay: 0.24s; }
.hero-product-chips span:nth-child(4) { animation-delay: 0.36s; }

.application-checklist {
  left: 6px;
  bottom: 42px;
  display: grid;
  gap: 7px;
}

.application-checklist span {
  min-height: 30px;
  padding: 0 11px 0 8px;
}

.application-checklist span:nth-child(2) { animation-delay: 0.18s; }
.application-checklist span:nth-child(3) { animation-delay: 0.32s; }

.application-checklist .icon {
  width: 14px;
  height: 14px;
  margin-right: 6px;
  color: #0d8f69;
}

.editor-panel {
  position: relative;
  z-index: 2;
  padding: clamp(11px, 1.25vw, 14px);
  border: 1px solid rgba(255, 255, 255, 0.7);
  border-radius: 30px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(247, 250, 255, 0.68));
  box-shadow:
    0 28px 80px rgba(18, 60, 145, 0.18),
    0 12px 28px rgba(11, 23, 54, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.86);
  backdrop-filter: blur(22px);
}

.editor-panel .field-line,
.editor-panel .resume-lines,
.editor-panel .resume-section,
.editor-panel .resume-pill-row span,
.suggestion-card,
.floating-score {
  animation: microDrift 7s ease-in-out infinite;
}

.editor-panel .resume-lines:nth-child(odd),
.editor-panel .resume-pill-row span:nth-child(2),
.floating-score {
  animation-delay: 0.8s;
}

.panel-top {
  display: flex;
  gap: 8px;
  padding: 0 0 10px 4px;
}

.panel-top span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #d9e2f3;
}

.editor-grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: clamp(10px, 1.15vw, 14px);
  align-items: stretch;
}

.editor-form {
  padding: clamp(14px, 1.45vw, 18px);
  border: 1px solid rgba(229, 234, 244, 0.82);
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(105, 216, 242, 0.12), transparent 28%),
    linear-gradient(180deg, #f9fbff, #fff);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.88);
}

.field-line,
.resume-lines,
.template-line {
  height: 12px;
  border-radius: 999px;
  background: #dbe5f6;
}

.field-line {
  margin-bottom: 11px;
}

.field-line.wide {
  width: 92%;
}

.field-line.short,
.resume-lines.short,
.template-line.short {
  width: 58%;
}

.editor-form button {
  width: 100%;
  min-height: 38px;
  margin-top: 9px;
  border: 0;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2) 58%, var(--purple));
  font-weight: 800;
}

.ai-improve-button {
  position: relative;
  overflow: hidden;
  box-shadow: 0 12px 28px rgba(31, 105, 213, 0.16);
  animation: aiButtonPulse 7.8s ease-in-out infinite;
}

.ai-improve-button::after {
  content: "";
  position: absolute;
  inset: -45% auto -45% -70%;
  width: 46%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.36), transparent);
  transform: skewX(-18deg);
  animation: aiButtonSheen 7.8s ease-in-out infinite;
}

.suggestion-card {
  margin-top: 12px;
  padding: 13px;
  border: 1px solid rgba(155, 124, 247, 0.14);
  border-radius: 18px;
  color: #263551;
  background:
    linear-gradient(135deg, rgba(243, 239, 255, 0.94), rgba(232, 247, 255, 0.72));
  box-shadow: 0 14px 32px rgba(75, 68, 150, 0.08);
}

.ai-suggestion-card {
  position: relative;
  overflow: hidden;
  transform-origin: top center;
  animation: aiPanelBreathe 12s cubic-bezier(0.22, 1, 0.36, 1) infinite;
}

.ai-message-rotator {
  position: relative;
  min-height: 44px;
  margin-top: 10px;
  overflow: visible;
}

.ai-message-rotator span {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 38px;
  overflow: visible;
  color: var(--blue);
  font-size: 12.5px;
  font-weight: 850;
  line-height: 1.35;
  white-space: normal;
  overflow-wrap: anywhere;
  opacity: 0;
  transform: translate3d(0, 7px, 0);
  animation: aiMessageCycle 20s ease-in-out infinite;
}

.ai-message-rotator span:nth-child(2) { animation-delay: 4s; }
.ai-message-rotator span:nth-child(3) { animation-delay: 8s; }
.ai-message-rotator span:nth-child(4) { animation-delay: 12s; }
.ai-message-rotator span:nth-child(5) { animation-delay: 16s; }

.suggestion-card p {
  margin: 6px 0 0;
  color: #5f6480;
  font-size: 13px;
  line-height: 1.5;
}

.resume-preview {
  position: relative;
  z-index: 0;
  padding: clamp(17px, 1.85vw, 22px);
  border: 1px solid rgba(237, 241, 248, 0.96);
  border-radius: 24px;
  background:
    linear-gradient(180deg, #ffffff, #fbfdff);
  box-shadow:
    0 26px 56px rgba(11, 23, 54, 0.12),
    inset 0 0 0 1px rgba(255, 255, 255, 0.82);
}

.resume-preview.mini {
  min-height: clamp(270px, 29vw, 335px);
  transform: rotate(-1.5deg);
}

.resume-preview.mini::before {
  content: "";
  position: absolute;
  inset: 15px -13px -13px 18px;
  z-index: -1;
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.58);
  border: 1px solid rgba(229, 234, 244, 0.72);
  box-shadow: 0 18px 44px rgba(18, 60, 145, 0.08);
}

.resume-template-hint {
  position: relative;
  display: flex;
  align-items: center;
  width: fit-content;
  min-height: 24px;
  margin: 0 0 10px auto;
  padding: 0 9px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 999px;
  color: #52637f;
  background: rgba(247, 250, 255, 0.92);
  box-shadow: 0 8px 18px rgba(18, 60, 145, 0.08);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: 0.01em;
  opacity: 0;
  transform: translate3d(0, 4px, 0);
  animation: templateHintFade 13s ease-in-out infinite;
}

.resume-head {
  width: 55%;
  height: 24px;
  border-radius: 8px;
  background: linear-gradient(90deg, #123c91, #1f69d5);
}

.resume-title {
  width: 36%;
  height: 10px;
  margin: 12px 0 20px;
  border-radius: 999px;
  background: var(--cyan);
}

.resume-lines {
  width: 100%;
  margin-bottom: 8px;
  background: linear-gradient(90deg, #dbe5f6, #edf3fb);
}

.resume-section,
.template-block {
  width: 44%;
  height: 12px;
  margin: 19px 0 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--purple), #78a9ff);
}

.resume-pill-row,
.template-tags {
  display: flex;
  gap: 8px;
  margin-top: 16px;
}

.resume-pill-row span,
.template-tags span {
  width: 54px;
  height: 22px;
  border-radius: 999px;
  background: #edf3fb;
}

.resume-line-live {
  position: relative;
  overflow: hidden;
  transform-origin: left center;
  animation: resumeLineImprove 8.5s ease-in-out infinite;
}

.resume-line-live::after {
  content: "";
  position: absolute;
  inset: 0 auto 0 -35%;
  width: 30%;
  border-radius: inherit;
  background: linear-gradient(90deg, transparent, rgba(105, 216, 242, 0.36), transparent);
  animation: resumeLineSheen 8.5s ease-in-out infinite;
}

.resume-line-live.short-shift {
  animation-delay: 1.3s;
}

.resume-line-live.short-shift::after {
  animation-delay: 1.3s;
}

.resume-section-improved {
  position: relative;
  overflow: hidden;
  animation: resumeSectionHighlight 11s ease-in-out infinite;
}

.resume-section-improved.delay {
  animation-delay: 1.7s;
}

.resume-pill-row span {
  animation: resumePillRefine 9s ease-in-out infinite;
}

.resume-pill-row span:nth-child(2) { animation-delay: 0.9s; }
.resume-pill-row span:nth-child(3) { animation-delay: 1.8s; }

.floating-score {
  position: absolute;
  right: -14px;
  bottom: 24px;
  width: min(218px, calc(100% - 20px));
  padding: 14px;
  overflow: hidden;
  border: 1px solid transparent;
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 251, 255, 0.94)) padding-box,
    linear-gradient(135deg, rgba(105, 216, 242, 0.78), rgba(31, 105, 213, 0.48), rgba(155, 124, 247, 0.58)) border-box;
  box-shadow:
    0 28px 62px rgba(18, 60, 145, 0.22),
    0 10px 22px rgba(11, 23, 54, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(16px);
}

.floating-score::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--cyan), var(--blue-2), var(--purple));
}

.score-card-heading,
.score-result-row {
  position: relative;
  display: flex;
  align-items: center;
}

.score-card-heading {
  justify-content: space-between;
  gap: 8px;
}

.floating-score .score-label {
  min-width: 0;
  line-height: 1.15;
}

.score-result-row {
  justify-content: flex-start;
  gap: 10px;
  margin-top: 6px;
}

.floating-score .score-label,
.score-card span,
.ats-score span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 700;
}

.score-status,
.score-delta {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  border-radius: 999px;
  white-space: nowrap;
  font-weight: 800;
}

.score-status {
  padding: 4px 8px;
  color: #0e6d4f;
  background: linear-gradient(135deg, rgba(226, 255, 245, 0.98), rgba(232, 247, 255, 0.92));
  border: 1px solid rgba(71, 209, 157, 0.34);
  font-size: 10.5px;
}

.score-delta {
  padding: 4px 7px;
  color: var(--blue);
  background: rgba(105, 216, 242, 0.14);
  font-size: 11px;
}

.floating-score strong {
  display: block;
  margin-top: 0;
  color: var(--ink);
  font-family: "Manrope", "Inter", Arial, sans-serif;
  font-size: 42px;
  line-height: 0.95;
  font-weight: 800;
}

.score-card strong,
.ats-score strong {
  display: block;
  margin-top: 5px;
  font-size: 31px;
}

.score-cycle {
  display: grid !important;
  min-width: 88px;
  min-height: 42px;
}

.score-cycle span {
  grid-area: 1 / 1;
  color: inherit;
  font: inherit;
  opacity: 0;
  transform: translate3d(0, 5px, 0);
}

.score-cycle span:nth-child(1) { animation: scoreFirst 9s ease-in-out infinite; }
.score-cycle span:nth-child(2) { animation: scoreSecond 9s ease-in-out infinite; }
.score-cycle span:nth-child(3) { animation: scoreFinal 9s ease-in-out infinite; }

.score-progress {
  position: relative;
  height: 7px;
  margin-top: 11px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(18, 60, 145, 0.1);
}

.score-progress span {
  display: block;
  width: 86%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--blue-2), var(--cyan) 58%, var(--purple));
  box-shadow: 0 0 12px rgba(105, 216, 242, 0.36);
  animation: scoreProgressImprove 9s ease-in-out infinite;
}

.score-ai-note {
  position: relative;
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 8px;
  color: #52637f;
  font-size: 11.5px;
  font-weight: 800;
}

.score-ai-note span {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: linear-gradient(135deg, #47d19d, var(--cyan));
  box-shadow: 0 0 0 4px rgba(105, 216, 242, 0.12);
}

.section {
  padding: var(--section-y) var(--page-x);
}

.section-heading {
  display: grid;
  justify-items: center;
  gap: 10px;
  max-width: 780px;
  margin: 0 auto clamp(30px, 4vw, 42px);
  text-align: center;
}

#templates .section-heading {
  margin-bottom: clamp(20px, 2.8vw, 30px);
}

.section-heading.left {
  justify-items: start;
  margin: 0;
  text-align: left;
}

.section-heading h2 {
  margin-top: 0;
  font-size: clamp(30px, 3.6vw, 50px);
}

.section-heading p {
  margin-top: 0;
}

.feature-grid,
.template-grid,
.pricing-grid,
.faq-grid,
.dashboard-grid,
.resume-library {
  display: grid;
  gap: var(--grid-gap);
}

.feature-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.feature-card,
.step-card,
.template-card,
.price-card,
.faq-item,
.dash-card,
.settings-card,
.ai-input-panel,
.ats-score,
.library-card,
.empty-state {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 14px 38px rgba(18, 60, 145, 0.08);
}

.template-card,
.library-card,
.blog-card,
.price-card,
.faq-item,
.support-ticket-card {
  content-visibility: auto;
  contain-intrinsic-size: 1px 420px;
}

.feature-card {
  position: relative;
  overflow: hidden;
  padding: clamp(20px, 2.2vw, 26px);
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.12), transparent 30%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 255, 0.9));
  box-shadow: 0 16px 42px rgba(18, 60, 145, 0.07);
}

.feature-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--cyan), var(--blue-2), var(--purple));
  opacity: 0;
  transition: opacity 0.2s ease;
}

.feature-card:hover,
.template-card:hover,
.price-card:hover,
.dash-card:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow);
}

.feature-card:hover::before {
  opacity: 1;
}

.feature-card,
.template-card,
.price-card,
.dash-card {
  transition: transform 0.24s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.24s ease, border-color 0.24s ease;
}

.feature-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 15px;
  color: var(--blue);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(243, 239, 255, 0.9)),
    linear-gradient(135deg, #eef7ff, var(--soft-purple));
  box-shadow: inset 0 0 0 1px rgba(31, 105, 213, 0.08), 0 10px 24px rgba(18, 60, 145, 0.08);
  transition: transform 0.24s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.24s ease;
}

.feature-icon .icon {
  width: 22px;
  height: 22px;
}

.feature-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.feature-card-top span {
  color: #b5c1d7;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.feature-card h3,
.step-card h3,
.template-card h3,
.price-card h3,
.faq-item h3,
.dash-card h3 {
  margin: 18px 0 8px;
  font-size: 20px;
}

.feature-card p,
.step-card p,
.template-card p,
.faq-item p,
.dash-card p,
.page-actions p,
.empty-state p,
.ai-input-panel p,
.settings-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.features-cta,
.templates-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  max-width: 920px;
  margin: clamp(28px, 4vw, 42px) auto 0;
  padding: clamp(22px, 3vw, 30px);
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 28px;
  background:
    radial-gradient(circle at 12% 20%, rgba(105, 216, 242, 0.18), transparent 32%),
    linear-gradient(135deg, #ffffff, #f5f8ff);
  box-shadow: 0 16px 44px rgba(18, 60, 145, 0.09);
}

#templates .templates-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content max-content;
  align-items: center;
  margin-top: clamp(22px, 3vw, 32px);
}

.features-cta h3,
.templates-cta h3 {
  margin: 0;
  font-size: clamp(22px, 2.4vw, 30px);
  min-width: 0;
  overflow-wrap: anywhere;
}

#templates .templates-cta .primary-button,
#templates .templates-cta .secondary-button {
  flex: 0 0 auto;
  min-width: max-content;
}

@media (max-width: 920px) {
  #templates .templates-cta {
    grid-template-columns: 1fr;
    justify-items: stretch;
  }

  #templates .templates-cta .primary-button,
  #templates .templates-cta .secondary-button {
    width: 100%;
    min-width: 0;
    white-space: normal;
  }
}

.trust-section {
  padding-top: clamp(56px, 7vw, 84px);
  background:
    radial-gradient(circle at 16% 8%, rgba(105, 216, 242, 0.14), transparent 30%),
    linear-gradient(180deg, #ffffff, #f7faff);
}

.trust-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--grid-gap);
}

.trust-card {
  padding: clamp(22px, 2.4vw, 28px);
  border: 1px solid rgba(229, 234, 244, 0.95);
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(247, 250, 255, 0.92));
  box-shadow: 0 14px 38px rgba(18, 60, 145, 0.07);
}

.trust-card h3 {
  margin: 18px 0 8px;
  font-size: 20px;
}

.trust-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.testimonial-preview {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: var(--grid-gap);
  align-items: center;
  margin-top: clamp(26px, 4vw, 42px);
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 28px;
  background:
    radial-gradient(circle at 92% 20%, rgba(155, 124, 247, 0.18), transparent 30%),
    linear-gradient(135deg, #0b1736, #123c91 62%, #4c54c6);
  box-shadow: var(--shadow);
  color: #fff;
}

.testimonial-preview .eyebrow {
  color: #dce8ff;
}

.testimonial-preview h3 {
  max-width: 760px;
  margin: 12px 0 0;
  font-size: clamp(22px, 2.8vw, 34px);
  line-height: 1.18;
}

.testimonial-placeholders {
  display: grid;
  gap: 12px;
}

.testimonial-placeholders span {
  display: block;
  height: 46px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.1);
}

.split-band {
  display: grid;
  grid-template-columns: 0.8fr 1.2fr;
  gap: var(--grid-gap);
  align-items: start;
  background: linear-gradient(135deg, #0b1736, #123c91 58%, #4c54c6);
  color: #fff;
}

.split-band .eyebrow,
.split-band p {
  color: #dce8ff;
}

.steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--grid-gap);
}

.step-card {
  padding: clamp(20px, 2vw, 24px);
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.2);
  box-shadow: none;
}

.step-card span {
  color: var(--cyan);
  font-weight: 900;
}

.template-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
}

.template-card {
  padding: clamp(14px, 1.8vw, 18px);
  min-width: 0;
}

.resume-template-card {
  display: flex;
  flex-direction: column;
}

.template-sample-thumb {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--resume-card-preview-height);
  margin: calc(clamp(14px, 1.8vw, 18px) * -1) calc(clamp(14px, 1.8vw, 18px) * -1) 0;
  padding: var(--resume-card-preview-padding);
  border-radius: var(--radius) var(--radius) 0 0;
  background:
    linear-gradient(180deg, rgba(248, 251, 255, 0.98), rgba(238, 245, 255, 0.95));
  overflow: hidden;
}

.template-sample-thumb::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 18%;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(238, 245, 255, 0), rgba(238, 245, 255, 0.88));
}

.lazy-resume-thumbnail {
  contain: layout paint;
}

.resume-preview-skeleton {
  display: grid;
  gap: 8px;
  width: min(58%, 170px);
  aspect-ratio: 0.707 / 1;
  padding: 18px;
  border: 1px solid rgba(191, 211, 242, 0.7);
  background: #ffffff;
  box-shadow: 0 16px 36px rgba(18, 60, 145, 0.08);
}

.resume-preview-skeleton span,
.resume-preview-skeleton strong,
.resume-preview-skeleton i,
.resume-preview-skeleton em {
  display: block;
  border-radius: 999px;
  background: linear-gradient(90deg, #e9f1fb, #f6f9ff, #e9f1fb);
}

.resume-preview-skeleton span {
  width: 44%;
  height: 14px;
}

.resume-preview-skeleton strong {
  width: 70%;
  height: 10px;
}

.resume-preview-skeleton i {
  height: 6px;
}

.resume-preview-skeleton i:nth-of-type(2n) {
  width: 84%;
}

.resume-preview-skeleton em {
  width: 52%;
  height: 8px;
  margin-top: 8px;
}

.dashboard-template-card .template-sample-thumb {
  height: var(--resume-card-preview-height);
  margin: -18px -18px 0;
}

.dashboard-template-card .template-card-topline + .template-sample-thumb {
  margin: 10px -18px 0;
}

.template-card-meta {
  display: grid;
  gap: 9px;
  margin-top: 16px;
  flex: 1;
  min-width: 0;
}

.template-card-badges,
.template-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}

.template-card-topline {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  align-items: center;
  gap: 8px;
  min-width: 0;
  max-width: 100%;
}

.template-card-badges {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
}

.template-card-badges span,
.template-badge {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-width: 0;
  min-height: 26px;
  padding: 5px 9px;
  border-radius: 999px;
  color: var(--blue);
  background: #eef5ff;
  font-size: 11.5px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.template-card-badges > :first-child,
.template-card-topline > :first-child {
  min-width: 0;
}

.template-card-badges > :last-child,
.template-card-topline > :last-child {
  min-width: max-content;
  max-width: 100%;
}

.template-card-badges .free,
.template-badge.free {
  color: #0d6b54;
  background: #e9f8f3;
}

.template-card-badges .pro,
.template-badge.pro {
  color: #5b3fc6;
  background: #f1edff;
}

.template-card-badges .premium,
.template-badge.premium {
  color: #7a4b00;
  background: linear-gradient(135deg, #fff6d8, #f6e4a8);
  box-shadow: inset 0 0 0 1px rgba(151, 106, 22, 0.18);
}

.template-best {
  font-size: 13.5px;
}

.template-card h3,
.template-card p,
.template-best {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: break-word;
  word-break: normal;
}

.template-catalog-tools {
  display: grid;
  gap: 14px;
  margin: 0 auto 24px;
  width: min(1180px, 100%);
}

.template-best strong {
  color: var(--ink);
}

.template-actions {
  margin-top: auto;
}

.template-card-meta > .secondary-button {
  margin-top: auto;
}

.template-actions .small {
  flex: 1 1 132px;
}

.template-paper {
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
  aspect-ratio: 210 / 297;
  width: 100%;
  height: auto;
  min-height: 0;
  padding: 18px;
  border-radius: 6px;
  background: #fff;
  box-shadow: inset 0 0 0 1px #e8eef7, 0 16px 34px rgba(18, 60, 145, 0.08);
  transition: transform 0.24s ease, box-shadow 0.24s ease;
}

.template-paper.preview-format-a4 {
  aspect-ratio: 210 / 297;
}

.template-paper.preview-format-letter {
  aspect-ratio: 8.5 / 11;
}

.resume-template-card:hover .template-paper,
.dashboard-template-card:hover .template-paper {
  transform: translateY(-4px) scale(1.01);
  box-shadow: inset 0 0 0 1px #dbe6f5, 0 22px 44px rgba(18, 60, 145, 0.13);
}

.resume-template-card:hover .template-sample-thumb .resume-document,
.dashboard-template-card:hover .template-sample-thumb .resume-document {
  box-shadow: 0 18px 34px rgba(18, 60, 145, 0.16);
}

.resume-template-card,
.dashboard-templates .dashboard-template-card {
  position: relative;
  gap: 0;
  border-color: rgba(191, 211, 242, 0.72);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(250, 252, 255, 0.98));
  box-shadow: 0 18px 46px rgba(18, 60, 145, 0.08);
  transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease, background 0.22s ease;
}

.resume-template-card[data-template-access="free"],
.dashboard-templates .dashboard-template-card[data-template-access="free"] {
  border-color: rgba(191, 211, 242, 0.72);
}

.resume-template-card[data-template-access="pro"],
.dashboard-templates .dashboard-template-card[data-template-access="pro"] {
  border-color: rgba(155, 124, 247, 0.22);
  background:
    radial-gradient(circle at 100% 0%, rgba(155, 124, 247, 0.08), transparent 30%),
    linear-gradient(180deg, #ffffff, #fbfaff);
}

.resume-template-card[data-template-access="premium"],
.dashboard-templates .dashboard-template-card[data-template-access="premium"] {
  border-color: rgba(180, 131, 42, 0.28);
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 213, 112, 0.16), transparent 30%),
    linear-gradient(180deg, #ffffff, #fffdf7);
  box-shadow: 0 22px 58px rgba(122, 75, 0, 0.09);
}

.resume-template-card:hover,
.dashboard-templates .dashboard-template-card:hover {
  transform: translateY(-5px);
  border-color: rgba(31, 105, 213, 0.32);
  box-shadow: 0 28px 72px rgba(18, 60, 145, 0.16);
}

.resume-template-card[data-template-access="premium"]:hover,
.dashboard-templates .dashboard-template-card[data-template-access="premium"]:hover {
  border-color: rgba(180, 131, 42, 0.44);
  box-shadow: 0 30px 78px rgba(122, 75, 0, 0.14);
}

.resume-template-card .template-sample-thumb,
.dashboard-templates .dashboard-template-card .template-sample-thumb {
  position: relative;
  height: clamp(380px, 29vw, 500px);
  min-height: 0;
  padding: 10px;
  border: 1px solid rgba(218, 228, 244, 0.78);
  border-radius: 20px;
  background:
    radial-gradient(circle at 50% 0%, rgba(105, 216, 242, 0.12), transparent 34%),
    linear-gradient(180deg, #f8fbff, #eef5ff);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
  overflow: hidden;
}

.resume-template-card .template-sample-thumb {
  margin: calc(clamp(14px, 1.8vw, 18px) * -1) calc(clamp(14px, 1.8vw, 18px) * -1) 0;
  border-radius: var(--radius) var(--radius) 18px 18px;
  border-top: 0;
  border-right: 0;
  border-left: 0;
}

.dashboard-templates .dashboard-template-card .template-card-topline + .template-sample-thumb {
  margin-top: 12px;
}

.resume-template-card .template-sample-thumb .resume-document,
.dashboard-templates .dashboard-template-card .template-sample-thumb .resume-document {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}

.resume-template-card .template-card-meta,
.dashboard-templates .dashboard-template-card > h3,
.dashboard-templates .dashboard-template-card > p,
.dashboard-templates .dashboard-template-card > .template-best,
.dashboard-templates .dashboard-template-card > .template-actions {
  position: relative;
  z-index: 1;
}

.resume-template-card .template-card-meta {
  gap: 10px;
  margin-top: 18px;
}

.resume-template-card h3,
.dashboard-templates .dashboard-template-card h3 {
  margin-top: 18px;
  color: var(--ink);
  font-size: clamp(20px, 1.45vw, 24px);
  line-height: 1.15;
}

.resume-template-card p,
.dashboard-templates .dashboard-template-card p {
  color: #5f6d86;
  font-size: 14.3px;
  line-height: 1.5;
}

.resume-template-card .template-best,
.dashboard-templates .dashboard-template-card .template-best {
  color: #6c7891;
  font-size: 13px;
  line-height: 1.42;
}

.template-card-badges,
.dashboard-templates .template-card-topline {
  gap: 8px;
}

.template-card-badges span,
.template-badge {
  border: 1px solid rgba(31, 105, 213, 0.1);
  box-shadow: none;
  letter-spacing: 0;
}

.template-card-badges > :first-child,
.dashboard-templates .template-card-topline > :first-child {
  color: #1f3f77;
  background: #eef5ff;
}

.template-card-badges .free,
.template-badge.free {
  border-color: rgba(13, 107, 84, 0.14);
  color: #0c6a54;
  background: linear-gradient(135deg, #e9f8f3, #f7fffc);
}

.template-card-badges .pro,
.template-badge.pro {
  border-color: rgba(91, 63, 198, 0.14);
  color: #5b3fc6;
  background: linear-gradient(135deg, #f1edff, #fbfaff);
}

.template-card-badges .premium,
.template-badge.premium {
  border-color: rgba(151, 106, 22, 0.2);
  color: #7a4b00;
  background: linear-gradient(135deg, #fff7db, #f5e3a8);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.42);
}

.resume-template-card .template-actions,
.dashboard-templates .dashboard-template-card .template-actions {
  gap: 10px;
  margin-top: 16px;
}

.resume-template-card .template-actions .small,
.dashboard-templates .dashboard-template-card .template-actions .small {
  flex: 1 1 128px;
  min-height: 42px;
  border-radius: 999px;
  font-weight: 850;
}

.dashboard-templates .dashboard-template-card .template-actions .locked-action {
  flex-basis: 168px;
}

@media (max-width: 980px) {
  .resume-template-card .template-sample-thumb,
  .dashboard-templates .dashboard-template-card .template-sample-thumb {
    height: clamp(340px, 54vw, 470px);
  }
}

@media (max-width: 680px) {
  .public-templates-page,
  .public-templates-page .section-heading,
  .public-templates-page .template-catalog-tools,
  .public-templates-page .template-filter-row,
  .public-templates-page .template-grid,
  .public-templates-page .template-card {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .public-templates-page .section-heading h1,
  .public-templates-page .section-heading p {
    justify-self: stretch;
    width: 100%;
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .public-templates-page .template-card h3,
  .public-templates-page .template-card p,
  .public-templates-page .template-best {
    width: 100%;
    max-width: 100%;
  }

  .public-templates-page .section-heading h1 {
    font-size: clamp(30px, 8.4vw, 38px);
    line-height: 1.12;
  }

  .public-templates-page .template-filter-row {
    justify-content: flex-start;
    overflow: hidden;
  }

  .resume-template-card,
  .dashboard-templates .dashboard-template-card {
    padding: 14px;
    border-radius: 22px;
  }

  .resume-template-card .template-sample-thumb,
  .dashboard-templates .dashboard-template-card .template-sample-thumb {
    height: clamp(330px, 92vw, 460px);
    margin-right: -14px;
    margin-left: -14px;
    padding: 8px;
  }

  .dashboard-templates .dashboard-template-card .template-sample-thumb {
    margin-right: 0;
    margin-left: 0;
  }

  .resume-template-card h3,
  .dashboard-templates .dashboard-template-card h3 {
    font-size: 20px;
  }

  .resume-template-card .template-actions,
  .dashboard-templates .dashboard-template-card .template-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .resume-template-card .template-actions .small,
  .dashboard-templates .dashboard-template-card .template-actions .small {
    flex: 1 1 auto;
    width: 100%;
  }
}

.template-doc-head {
  display: grid;
  gap: 5px;
  padding-bottom: 12px;
  border-bottom: 2px solid #dbe5f4;
}

.template-doc-head span {
  width: 42px;
  height: 4px;
  border-radius: 999px;
  background: var(--blue);
}

.template-doc-head strong {
  color: #14223d;
  font-size: 17px;
  line-height: 1.05;
}

.template-doc-head em {
  color: #53627e;
  font-size: 10px;
  font-style: normal;
  font-weight: 800;
}

.template-doc-body {
  display: grid;
  grid-template-columns: 0.62fr 1fr;
  gap: 14px;
  margin-top: 14px;
}

.template-doc-body aside,
.template-doc-body main,
.template-doc-body section {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.template-doc-body b {
  width: 56%;
  height: 7px;
  border-radius: 999px;
  background: #253452;
}

.template-doc-body i {
  display: block;
  width: 100%;
  height: 5px;
  border-radius: 999px;
  background: #dfe7f3;
}

.template-doc-body i:nth-child(3) {
  width: 76%;
}

.template-skill-row {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.template-skill-row span {
  width: 34px;
  height: 12px;
  border-radius: 999px;
  background: #edf3fb;
}

.preview-modern .template-doc-head {
  border-bottom-color: rgba(31, 105, 213, 0.34);
}

.preview-modern .template-doc-head span,
.preview-modern .template-doc-body b {
  background: linear-gradient(135deg, var(--blue), var(--purple));
}

.preview-minimal {
  box-shadow: inset 0 0 0 1px #e4e8ee;
}

.preview-minimal .template-doc-head {
  border-bottom-color: #222;
}

.preview-minimal .template-doc-head span {
  background: #222;
}

.preview-minimal .template-doc-body {
  grid-template-columns: 1fr;
}

.preview-minimal .template-doc-body aside {
  display: none;
}

.preview-minimal .template-doc-body b {
  background: #222;
}

.preview-executive .template-doc-head {
  padding: 16px;
  margin: -18px -18px 14px;
  color: #fff;
  background: #0b1736;
  border-bottom: 0;
}

.preview-executive .template-doc-head strong,
.preview-executive .template-doc-head em {
  color: #fff;
}

.preview-executive .template-doc-head span,
.preview-executive .template-doc-body b {
  background: #123c91;
}

.preview-creative::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 12px;
  background: linear-gradient(180deg, var(--purple), var(--cyan));
}

.preview-creative .template-doc-head,
.preview-creative .template-doc-body {
  margin-left: 10px;
}

.preview-creative .template-doc-head span,
.preview-creative .template-doc-body b,
.preview-creative .template-skill-row span {
  background: #7256d6;
}

.preview-student .template-doc-head {
  border-bottom-color: rgba(31, 165, 200, 0.28);
}

.preview-student .template-doc-body {
  grid-template-columns: 0.95fr 1fr;
}

.preview-student .template-doc-head span,
.preview-student .template-doc-body b,
.preview-student .template-skill-row span {
  background: #1fa5c8;
}

.preview-international .template-doc-head {
  position: relative;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 8px;
  padding: 8px;
  border: 0;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(13, 40, 91, 0.96), rgba(24, 113, 168, 0.92)),
    #102a54;
}

.preview-international .template-doc-head span {
  width: 22px;
  height: 22px;
  border-radius: 6px;
  background: linear-gradient(135deg, #8fe8f5, #ffffff);
  box-shadow: 0 8px 18px rgba(0, 0, 0, 0.16);
}

.preview-international .template-doc-head strong,
.preview-international .template-doc-head em {
  color: #fff;
}

.preview-international .template-doc-body {
  grid-template-columns: 1fr 0.72fr;
  gap: 9px;
  padding-top: 10px;
}

.preview-international .template-doc-body b,
.preview-international .template-skill-row span {
  background: #1f69d5;
}

.preview-international .template-doc-body aside {
  border-radius: 7px;
  background: #f2f7fb;
}

.preview-classic .template-doc-head {
  border-bottom-color: #b8c2d3;
}

.preview-classic .template-doc-head span,
.preview-classic .template-doc-body b {
  background: #28364f;
}

.preview-corporate .template-doc-head {
  padding-left: 10px;
  border-left: 6px solid #123c91;
}

.preview-corporate .template-doc-head span,
.preview-corporate .template-doc-body b {
  background: #123c91;
}

.preview-tech {
  background:
    linear-gradient(90deg, rgba(105, 216, 242, 0.08) 1px, transparent 1px),
    #fff;
  background-size: 18px 18px;
}

.preview-tech .template-doc-head span,
.preview-tech .template-doc-body b,
.preview-tech .template-skill-row span {
  background: #1f69d5;
}

.preview-simple-ats {
  box-shadow: inset 0 0 0 1px #d8dde7;
}

.preview-simple-ats .template-doc-body {
  grid-template-columns: 1fr;
}

.preview-simple-ats .template-doc-body aside {
  display: none;
}

.preview-simple-ats .template-doc-head span,
.preview-simple-ats .template-doc-body b {
  background: #111827;
}

.preview-elegant .template-doc-head {
  border-bottom-color: rgba(155, 124, 247, 0.32);
}

.preview-elegant .template-doc-head span,
.preview-elegant .template-doc-body b,
.preview-elegant .template-skill-row span {
  background: linear-gradient(135deg, #123c91, #9b7cf7);
}

.preview-first-job .template-doc-head {
  border-bottom-color: rgba(31, 165, 200, 0.24);
}

.preview-first-job .template-doc-body {
  grid-template-columns: 0.9fr 1fr;
}

.preview-first-job .template-doc-head span,
.preview-first-job .template-doc-body b,
.preview-first-job .template-skill-row span {
  background: #1fa5c8;
}

.blog-page,
.blog-article-page {
  padding-bottom: var(--section-y);
}

.blog-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 0.62fr);
  gap: clamp(24px, 3.4vw, 44px);
  align-items: center;
  width: min(calc(100% - (var(--page-x) * 2)), 1160px);
  margin: clamp(18px, 3vw, 34px) auto 0;
  padding: clamp(34px, 4.2vw, 58px) clamp(28px, 4vw, 52px);
  overflow: hidden;
}

.blog-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border: 1px solid rgba(214, 223, 239, 0.78);
  border-radius: 34px;
  background:
    radial-gradient(circle at 82% 20%, rgba(155, 124, 247, 0.2), transparent 30%),
    radial-gradient(circle at 14% 12%, rgba(105, 216, 242, 0.22), transparent 28%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(246, 250, 255, 0.76));
  box-shadow: 0 24px 70px rgba(18, 60, 145, 0.11);
}

.blog-hero-copy,
.blog-hero-visual {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.blog-article-hero {
  max-width: 940px;
  padding: clamp(48px, 6vw, 84px) var(--page-x) clamp(24px, 4vw, 42px);
}

.blog-hero h1 {
  max-width: 700px;
  margin: 10px 0 0;
  font-size: clamp(38px, 4.25vw, 60px);
  line-height: 1.04;
}

.blog-article-hero h1 {
  max-width: 860px;
  margin: 12px 0 0;
  font-size: clamp(38px, 5vw, 68px);
  line-height: 1.04;
}

.blog-hero p {
  max-width: 660px;
  margin: 14px 0 0;
  color: #52637f;
  font-size: clamp(16px, 1.22vw, 18px);
  line-height: 1.56;
}

.blog-article-hero p {
  max-width: 760px;
  margin: 16px 0 0;
  color: var(--muted);
  font-size: clamp(17px, 1.55vw, 20px);
  line-height: 1.6;
}

.hero-blog-search {
  min-width: 0;
  max-width: 500px;
  margin-top: clamp(18px, 2.4vw, 24px);
}

.blog-hero-visual {
  display: grid;
  align-content: center;
  gap: 14px;
  max-width: 390px;
  justify-self: end;
}

.blog-insight-card,
.blog-document-card {
  min-width: 0;
  border: 1px solid rgba(214, 223, 239, 0.86);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 18px 54px rgba(18, 60, 145, 0.12);
  backdrop-filter: blur(16px);
}

.blog-insight-card {
  justify-self: end;
  width: min(100%, 250px);
  padding: 18px;
}

.blog-insight-card span,
.blog-document-card small {
  color: var(--blue-2);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.blog-insight-card strong {
  display: block;
  margin-top: 8px;
  color: var(--ink);
  font-size: 46px;
  line-height: 1;
}

.blog-insight-card small {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font-weight: 800;
}

.blog-score-line {
  height: 8px;
  margin-top: 14px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(18, 60, 145, 0.1);
}

.blog-score-line i {
  display: block;
  width: 86%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--blue-2), var(--cyan), var(--purple));
}

.blog-document-card {
  position: relative;
  padding: 22px;
}

.blog-document-card b,
.blog-document-card i {
  display: block;
  border-radius: 999px;
  background: #dbe6f7;
}

.blog-document-card b {
  width: 52%;
  height: 16px;
  background: var(--blue);
}

.blog-document-card i {
  height: 10px;
  margin-top: 12px;
}

.blog-document-card i:nth-of-type(1) { width: 78%; }
.blog-document-card i:nth-of-type(2) { width: 58%; }
.blog-document-card i:nth-of-type(3) {
  width: 70%;
  background: rgba(155, 124, 247, 0.68);
}

.blog-document-card div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 20px;
}

.blog-document-card div span {
  max-width: 100%;
  padding: 7px 10px;
  border-radius: 999px;
  color: #123c91;
  background: #eef5ff;
  font-size: 12px;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.blog-layout {
  padding: clamp(18px, 2.2vw, 26px) var(--page-x) var(--section-y);
}

.related-blog-section {
  padding: 0 var(--page-x) var(--section-y);
}

.blog-controls {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(220px, 300px);
  gap: 14px;
  align-items: end;
  max-width: 1160px;
  margin: 0 auto clamp(24px, 3vw, 34px);
}

.blog-search,
.blog-category-select {
  display: grid;
  gap: 8px;
  min-width: 0;
  color: var(--ink);
  font-weight: 800;
}

.blog-search input,
.blog-category-select select {
  width: 100%;
  min-width: 0;
  min-height: 48px;
  padding: 0 18px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--ink);
  box-shadow: 0 14px 34px rgba(18, 60, 145, 0.08);
}

.blog-category-select select {
  appearance: none;
  padding-right: 44px;
  cursor: pointer;
  font-weight: 800;
  background-color: rgba(255, 255, 255, 0.92);
  background-image:
    linear-gradient(45deg, transparent 50%, var(--blue) 50%),
    linear-gradient(135deg, var(--blue) 50%, transparent 50%);
  background-position:
    calc(100% - 23px) 50%,
    calc(100% - 17px) 50%;
  background-repeat: no-repeat;
  background-size: 6px 6px, 6px 6px;
}

.blog-category-select select:hover,
.blog-category-select select:focus,
.blog-search input:focus {
  border-color: rgba(31, 105, 213, 0.34);
  outline: none;
  box-shadow: 0 16px 36px rgba(18, 60, 145, 0.12), 0 0 0 4px rgba(105, 216, 242, 0.15);
}

.blog-category-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.blog-category-filter button {
  min-height: 36px;
  padding: 0 13px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.76);
  color: #465671;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 8px 20px rgba(18, 60, 145, 0.05);
}

.blog-category-filter button.active,
.blog-category-filter button:hover {
  border-color: rgba(31, 105, 213, 0.28);
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2) 62%, var(--purple));
}

.featured-blog-card,
.blog-card,
.blog-cta-card {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 16px 42px rgba(18, 60, 145, 0.08);
}

.featured-blog-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.32fr) auto;
  gap: 24px;
  align-items: center;
  max-width: 1180px;
  margin: 0 auto clamp(18px, 2.4vw, 28px);
  padding: clamp(24px, 3vw, 34px);
  border-color: rgba(31, 105, 213, 0.16);
  background:
    linear-gradient(90deg, rgba(31, 105, 213, 0.14) 1px, transparent 1px),
    radial-gradient(circle at 92% 8%, rgba(155, 124, 247, 0.16), transparent 32%),
    linear-gradient(135deg, #ffffff, #f5f8ff);
  background-size: 28px 28px, auto, auto;
}

.featured-blog-card h2 {
  max-width: 760px;
  margin: 12px 0 10px;
  font-size: clamp(28px, 3.2vw, 44px);
  line-height: 1.08;
}

.featured-blog-card p,
.blog-card p,
.blog-article-body p,
.blog-cta-card p {
  color: var(--muted);
  line-height: 1.68;
}

.featured-blog-visual {
  padding: 18px;
  border: 1px solid rgba(214, 223, 239, 0.88);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.featured-blog-visual span,
.featured-blog-visual small {
  display: block;
  color: var(--blue-2);
  font-size: 11.5px;
  font-weight: 900;
}

.featured-blog-visual b,
.featured-blog-visual i {
  display: block;
  height: 9px;
  margin-top: 10px;
  border-radius: 999px;
  background: #dbe6f7;
}

.featured-blog-visual b {
  width: 64%;
  height: 14px;
  background: var(--blue);
}

.featured-blog-visual i:nth-of-type(1) { width: 88%; }
.featured-blog-visual i:nth-of-type(2) { width: 62%; }
.featured-blog-visual i:nth-of-type(3) {
  width: 74%;
  background: rgba(105, 216, 242, 0.68);
}

.featured-blog-visual small {
  margin-top: 14px;
  color: var(--muted);
  text-transform: none;
}

.blog-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 16px;
}

.blog-meta span,
.blog-card-top span {
  display: inline-flex;
  min-height: 26px;
  align-items: center;
  padding: 5px 9px;
  border-radius: 999px;
  color: var(--blue);
  background: #eef5ff;
  font-size: 12px;
  font-weight: 900;
}

.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--grid-gap);
  max-width: 1180px;
  margin: 0 auto;
}

.blog-card {
  position: relative;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: clamp(20px, 2.2vw, 26px);
  border-color: rgba(214, 223, 239, 0.92);
  background:
    radial-gradient(circle at 100% 0%, rgba(105, 216, 242, 0.1), transparent 28%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 251, 255, 0.92));
  transition: transform 0.24s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.24s ease, border-color 0.24s ease;
}

.blog-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--blue-2), var(--cyan), var(--purple));
}

.blog-card:hover {
  transform: translateY(-4px);
  border-color: rgba(31, 105, 213, 0.22);
  box-shadow: 0 22px 58px rgba(18, 60, 145, 0.13);
}

.blog-card-accent {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 14px;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2));
  font-size: 12px;
  font-weight: 900;
  box-shadow: 0 12px 28px rgba(31, 105, 213, 0.18);
}

.blog-card[data-accent="letter"] .blog-card-accent { background: linear-gradient(135deg, #5b3fc6, var(--purple)); }
.blog-card[data-accent="ats"] .blog-card-accent { background: linear-gradient(135deg, #0d6b54, #47d19d); }
.blog-card[data-accent="first"] .blog-card-accent { background: linear-gradient(135deg, #1f69d5, var(--cyan)); }
.blog-card[data-accent="global"] .blog-card-accent { background: linear-gradient(135deg, #123c91, #1fa5c8); }
.blog-card[data-accent="interview"] .blog-card-accent { background: linear-gradient(135deg, #33246f, #745ce6); }
.blog-card[data-accent="career"] .blog-card-accent { background: linear-gradient(135deg, #0b1736, #123c91); }

.blog-card[hidden],
.featured-blog-card[hidden] {
  display: none;
}

.blog-card-top,
.blog-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.blog-card h2 {
  margin: 18px 0 10px;
  font-size: clamp(20px, 2vw, 24px);
  line-height: 1.18;
}

.blog-card p {
  margin: 0;
}

.blog-card-footer {
  margin-top: auto;
  padding-top: 22px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.blog-empty {
  max-width: 760px;
  margin: 28px auto 0;
  color: var(--muted);
  text-align: center;
  font-weight: 800;
}

.blog-article {
  max-width: 920px;
  min-width: 0;
}

.blog-article-layout {
  display: grid;
  grid-template-columns: minmax(180px, 220px) minmax(0, 920px);
  gap: clamp(22px, 3vw, 38px);
  align-items: start;
  width: min(100%, 1220px);
  margin: 0 auto;
  padding: 0 var(--page-x);
}

.blog-toc {
  position: sticky;
  top: 84px;
  display: grid;
  gap: 10px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.84);
  box-shadow: 0 14px 36px rgba(18, 60, 145, 0.08);
}

.blog-toc span {
  color: var(--blue-2);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.blog-toc a {
  color: #465671;
  font-size: 13.5px;
  font-weight: 800;
  line-height: 1.35;
}

.blog-back-link {
  display: inline-flex;
  margin-bottom: 16px;
  color: var(--blue-2);
  font-weight: 900;
}

.blog-article-body {
  padding: clamp(26px, 4vw, 44px);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: #fff;
  box-shadow: 0 16px 42px rgba(18, 60, 145, 0.08);
}

.blog-article-body section + section {
  margin-top: clamp(26px, 4vw, 42px);
}

.blog-article-body h2 {
  margin: 0 0 12px;
  font-size: clamp(24px, 2.8vw, 34px);
  line-height: 1.14;
}

.blog-article-body h3 {
  margin: 22px 0 8px;
  font-size: clamp(20px, 2vw, 24px);
  line-height: 1.18;
}

.blog-article-body p {
  margin: 0;
  font-size: 17px;
}

.blog-article-body p + p {
  margin-top: 14px;
}

.blog-article-body a {
  color: var(--blue-2);
  font-weight: 900;
}

.blog-cta-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: clamp(24px, 3vw, 34px);
  padding: clamp(22px, 3vw, 30px);
  background:
    radial-gradient(circle at 12% 20%, rgba(105, 216, 242, 0.18), transparent 32%),
    linear-gradient(135deg, #ffffff, #f5f8ff);
}

.blog-cta-card h2 {
  margin: 0;
  font-size: clamp(22px, 2.5vw, 30px);
}

.blog-cta-card p {
  margin: 8px 0 0;
}

.blog-cluster-section {
  max-width: 1180px;
  margin: clamp(32px, 5vw, 54px) auto 0;
}

.blog-cluster-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.blog-cluster-link {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(214, 223, 239, 0.9);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 12px 34px rgba(18, 60, 145, 0.07);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.blog-cluster-link:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 42px rgba(18, 60, 145, 0.11);
}

.blog-cluster-link span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2));
  font-size: 12px;
  font-weight: 900;
}

.blog-cluster-link strong {
  line-height: 1.2;
}

.blog-bottom-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  max-width: 1180px;
  margin: clamp(28px, 4vw, 42px) auto 0;
  padding: clamp(24px, 3vw, 34px);
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 28px;
  background:
    radial-gradient(circle at 10% 20%, rgba(105, 216, 242, 0.2), transparent 32%),
    radial-gradient(circle at 92% 24%, rgba(155, 124, 247, 0.16), transparent 30%),
    linear-gradient(135deg, #ffffff, #f5f8ff);
  box-shadow: 0 18px 50px rgba(18, 60, 145, 0.1);
}

.blog-bottom-cta h2 {
  margin: 10px 0 0;
  font-size: clamp(26px, 3vw, 40px);
  line-height: 1.08;
}

.blog-bottom-cta p {
  max-width: 620px;
  margin: 10px 0 0;
  color: var(--muted);
  line-height: 1.6;
}

.pricing-section {
  background: linear-gradient(180deg, #f7faff, #fff);
}

.pricing-page {
  padding-bottom: var(--section-y);
}

.pricing-hero {
  max-width: 920px;
  margin: 0 auto;
  padding: clamp(44px, 6vw, 76px) var(--page-x) clamp(18px, 3vw, 30px);
  text-align: center;
}

.pricing-hero h1 {
  margin: 12px 0 0;
  font-size: clamp(38px, 5vw, 64px);
  line-height: 1.04;
}

.pricing-hero p {
  max-width: 760px;
  margin: 16px auto 0;
  color: var(--muted);
  font-size: clamp(17px, 1.55vw, 20px);
  line-height: 1.6;
}

.pricing-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}

.option-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: var(--grid-gap);
}

.credits-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--grid-gap);
}

.price-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-height: 100%;
  min-width: 0;
  padding: clamp(22px, 2.1vw, 30px);
  overflow: hidden;
  text-wrap: pretty;
}

.price-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: linear-gradient(90deg, rgba(31, 105, 213, 0.22), rgba(105, 216, 242, 0.18));
  opacity: 0;
}

.price-card[data-plan="free"] {
  background: linear-gradient(180deg, #ffffff, #fbfdff);
}

.price-card[data-plan="premium"] {
  border-color: rgba(155, 124, 247, 0.28);
  background:
    radial-gradient(circle at 92% 0%, rgba(155, 124, 247, 0.1), transparent 34%),
    linear-gradient(180deg, #ffffff, #faf8ff);
}

.price-card.featured {
  border-color: rgba(31, 105, 213, 0.5);
  background:
    radial-gradient(circle at 50% 0%, rgba(105, 216, 242, 0.2), transparent 35%),
    linear-gradient(180deg, #ffffff, #f4f8ff);
  box-shadow: 0 28px 70px rgba(18, 60, 145, 0.16);
  transform: translateY(-8px);
}

.price-card.featured::before {
  opacity: 1;
  background: linear-gradient(90deg, var(--blue), var(--blue-2), var(--purple));
}

.price-card.current-plan-card {
  border-color: rgba(105, 216, 242, 0.5);
  box-shadow: 0 22px 58px rgba(31, 105, 213, 0.13);
}

.popular {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  max-width: 100%;
  min-height: 28px;
  margin-bottom: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  color: #fff;
  background: var(--blue);
  font-size: 11.5px;
  font-weight: 800;
  line-height: 1.15;
}

.popular-spacer {
  min-height: 28px;
  margin-bottom: 12px;
}

.popular.subtle {
  color: var(--blue);
  background: #eef5ff;
}

.popular.current {
  color: #07395d;
  background: linear-gradient(135deg, #e9fbff, #eef5ff);
  border: 1px solid rgba(105, 216, 242, 0.45);
}

.price strong {
  font-size: clamp(32px, 3vw, 40px);
  line-height: 1;
}

.price span {
  color: var(--muted);
  margin-left: 5px;
}

.payment-soon-label {
  display: inline-flex;
  align-self: flex-start;
  margin-top: 10px;
  padding: 6px 10px;
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 999px;
  color: #234066;
  background: #f3f7ff;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.15;
}

.planned-payment-note {
  align-self: flex-start;
  max-width: 100%;
  margin: 12px 0 0;
  padding: 8px 10px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 13px;
  color: #52637f;
  background: rgba(238, 245, 255, 0.62);
  font-size: 12.5px;
  font-weight: 760;
  line-height: 1.38;
  overflow-wrap: anywhere;
}

.planned-payments-card {
  display: grid;
  gap: 22px;
  max-width: 1060px;
  margin: 0 auto;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 24px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(247, 250, 255, 0.9));
  box-shadow: 0 18px 44px rgba(18, 60, 145, 0.07);
}

.payment-method-grid,
.payment-rules-grid {
  display: grid;
  gap: 14px;
}

.payment-method-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.payment-method-card,
.payment-rules-grid article {
  border: 1px solid rgba(229, 234, 244, 0.9);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.86);
}

.payment-method-card {
  display: grid;
  gap: 10px;
  padding: clamp(18px, 2.2vw, 22px);
}

.payment-method-icon {
  display: inline-grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 14px;
  color: var(--blue);
  background: #eef5ff;
  font-size: 13px;
  font-weight: 900;
}

.payment-method-card strong,
.payment-rules-grid h3 {
  color: var(--ink);
}

.payment-method-card span,
.payment-rules-grid p {
  color: var(--muted);
  line-height: 1.55;
}

.settings-payment-methods-card {
  display: grid;
  gap: 18px;
  margin-bottom: clamp(26px, 3vw, 40px);
}

.settings-payment-method-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(14px, 1.6vw, 22px);
}

.settings-payment-methods-card .payment-method-card {
  min-width: 0;
  padding: clamp(16px, 1.8vw, 20px);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.94), rgba(247, 250, 255, 0.88));
  box-shadow: 0 12px 28px rgba(18, 60, 145, 0.045);
}

.settings-payment-methods-card .payment-method-card strong,
.settings-payment-methods-card .payment-method-card span {
  overflow-wrap: anywhere;
}

.payment-rules-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.payment-rules-grid article {
  padding: 18px;
}

.payment-rules-grid h3 {
  margin: 0 0 8px;
  font-size: 17px;
}

.payment-rules-grid p {
  margin: 0;
}

.payment-rules-grid p + p {
  margin-top: 10px;
}

.payment-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 12px 0;
}

.payment-chip-row span {
  padding: 6px 9px;
  border-radius: 999px;
  color: var(--blue);
  background: #eef5ff;
  font-size: 12px;
  font-weight: 800;
}

.payment-action-stack {
  display: grid;
  gap: 8px;
}

.payment-option-button {
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.payment-option-button .icon {
  width: 18px;
  height: 18px;
  flex: 0 0 auto;
}

.br-flag-icon {
  display: block;
  width: 24px;
  height: 17px;
  flex: 0 0 auto;
  filter: drop-shadow(0 2px 3px rgba(11, 23, 54, 0.16));
}

.stripe-note {
  color: var(--muted);
}

.plan-kicker {
  display: inline-flex;
  align-self: flex-start;
  margin-bottom: 8px;
  color: var(--blue-2);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.plan-card-head {
  display: grid;
  gap: 0;
}

.plan-card-head > .popular,
.plan-card-head > .popular-spacer {
  justify-self: start;
}

.price-card h3 {
  margin-top: 4px;
  margin-bottom: 10px;
  font-size: clamp(19px, 1.8vw, 22px);
  line-height: 1.18;
}

.price-card .price {
  margin-top: 2px;
}

.price-card ul,
.task-list {
  display: grid;
  gap: 10px;
  padding: 0;
  margin: 20px 0 24px;
  list-style: none;
}

.price-card li,
.task-list li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  min-width: 0;
  color: #465671;
  font-size: 14.5px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.price-card .full {
  margin-top: auto;
  width: 100%;
  min-height: 42px;
  padding-inline: 16px;
}

.price-card button[disabled] {
  cursor: default;
  opacity: 0.82;
}

.homepage-price-card .full:disabled {
  opacity: 1;
}

.price-card li .icon,
.task-list li .icon {
  flex: 0 0 auto;
  color: var(--blue-2);
}

.pricing-section .homepage-price-card {
  padding: clamp(26px, 2.7vw, 36px);
  border-color: rgba(31, 105, 213, 0.26);
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.12), transparent 34%),
    linear-gradient(180deg, #ffffff, #f7fbff);
  box-shadow: 0 22px 58px rgba(18, 60, 145, 0.13);
}

.pricing-section .homepage-price-card::before {
  opacity: 1;
  height: 6px;
  background: linear-gradient(90deg, rgba(31, 105, 213, 0.72), rgba(105, 216, 242, 0.58));
}

.pricing-section .homepage-price-card:hover {
  border-color: rgba(31, 105, 213, 0.42);
  box-shadow: 0 30px 78px rgba(18, 60, 145, 0.18);
}

.pricing-section .homepage-price-card[data-plan="free"] {
  border-color: rgba(31, 105, 213, 0.24);
  background:
    radial-gradient(circle at 92% 0%, rgba(31, 105, 213, 0.08), transparent 34%),
    #fff;
}

.pricing-section .homepage-price-card[data-plan="free"] h3,
.pricing-section .homepage-price-card[data-plan="free"] .price strong {
  color: #0b1736;
}

.pricing-section .homepage-price-card[data-plan="free"] li {
  color: #34415c;
}

.pricing-section .homepage-price-card[data-plan="premium"] {
  border-color: rgba(155, 124, 247, 0.36);
  background:
    radial-gradient(circle at 92% 0%, rgba(155, 124, 247, 0.14), transparent 34%),
    linear-gradient(180deg, #ffffff, #fbf9ff);
}

.pricing-section .homepage-price-card.featured {
  border-color: rgba(31, 105, 213, 0.64);
  box-shadow: 0 34px 88px rgba(18, 60, 145, 0.22);
}

.pricing-section .homepage-price-card .full {
  min-height: 50px;
}

.faq-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.faq-item {
  padding: 26px;
}

.one-time-teaser {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  max-width: 1040px;
  margin: 28px auto 0;
  padding: clamp(22px, 3vw, 30px);
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 26px;
  background:
    radial-gradient(circle at 12% 20%, rgba(105, 216, 242, 0.18), transparent 32%),
    linear-gradient(135deg, #ffffff, #f5f8ff);
  box-shadow: 0 16px 44px rgba(18, 60, 145, 0.09);
}

.one-time-teaser h3 {
  margin: 8px 0 6px;
  font-size: clamp(22px, 2.5vw, 30px);
}

.one-time-teaser p {
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}

.monetization {
  display: grid;
  gap: clamp(32px, 5vw, 58px);
}

.public-monetization .monetization-block {
  padding: 0 var(--page-x);
}

.public-monetization .monetization-block {
  width: 100%;
  max-width: calc(1180px + (var(--page-x) * 2));
  margin: 0 auto;
}

.pricing-overview-block .section-heading {
  margin-bottom: clamp(24px, 3vw, 34px);
}

.pricing-overview-block .section-heading h2 {
  max-width: 900px;
  font-size: clamp(26px, 3.1vw, 40px);
  line-height: 1.12;
}

.price-card h3,
.price-card .price strong {
  color: #24314e;
}

.price-card[data-plan="pro"] h3,
.price-card[data-plan="pro"] .price strong {
  color: #0b1736;
}

.pricing-tabs {
  display: inline-flex;
  justify-self: center;
  gap: 5px;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 14px 34px rgba(18, 60, 145, 0.08);
}

.currency-switcher {
  display: inline-grid;
  grid-template-columns: auto auto auto;
  align-items: center;
  justify-self: center;
  gap: 8px 10px;
  margin: 0 auto clamp(14px, 2vw, 22px);
  padding: 6px 8px 6px 12px;
  border: 1px solid rgba(191, 211, 242, 0.78);
  border-radius: 999px;
  color: #52627e;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 14px 34px rgba(18, 60, 145, 0.08);
  font-size: 12px;
  font-weight: 900;
}

.currency-switcher > div {
  display: inline-flex;
  gap: 4px;
}

.currency-switcher button {
  min-height: 32px;
  padding: 0 12px;
  border: 0;
  border-radius: 999px;
  color: #52627e;
  background: transparent;
  cursor: pointer;
  font: inherit;
}

.currency-switcher button.active {
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2) 62%, var(--purple));
  box-shadow: 0 10px 22px rgba(31, 105, 213, 0.18);
}

.currency-switcher small {
  color: var(--muted);
  font-size: 11.5px;
  font-weight: 850;
}

.pricing-tabs button {
  min-height: 42px;
  padding: 0 18px;
  border: 0;
  border-radius: 999px;
  color: #52627e;
  background: transparent;
  cursor: pointer;
  font-weight: 900;
}

.pricing-tabs button.active {
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2) 60%, var(--purple));
  box-shadow: 0 12px 28px rgba(31, 105, 213, 0.22);
}

.pricing-tab-panel {
  display: none;
  scroll-margin-top: 96px;
}

.pricing-tab-panel.active,
.payment-faq {
  display: block;
}

.pricing-page {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 16% 5%, rgba(105, 216, 242, 0.16), transparent 28%),
    radial-gradient(circle at 86% 2%, rgba(155, 124, 247, 0.14), transparent 26%),
    linear-gradient(180deg, #f7fbff 0%, #ffffff 42%, #f6f9ff 100%);
}

.pricing-hero {
  position: relative;
  max-width: 1080px;
  padding-top: clamp(52px, 6vw, 86px);
  padding-bottom: clamp(24px, 3.5vw, 42px);
}

.pricing-hero::before {
  content: "";
  position: absolute;
  inset: 24px var(--page-x) 4px;
  z-index: -1;
  border: 1px solid rgba(31, 105, 213, 0.08);
  border-radius: 34px;
  background:
    linear-gradient(90deg, rgba(31, 105, 213, 0.055) 1px, transparent 1px),
    linear-gradient(180deg, rgba(31, 105, 213, 0.045) 1px, transparent 1px),
    rgba(255, 255, 255, 0.34);
  background-size: 58px 58px;
  mask-image: linear-gradient(180deg, #000 0%, transparent 100%);
}

.pricing-hero .eyebrow {
  color: var(--blue);
}

.pricing-hero-pills {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 22px;
}

.pricing-hero-pills span {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 14px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 999px;
  color: #263754;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 12px 28px rgba(18, 60, 145, 0.06);
  font-size: 13px;
  font-weight: 900;
}

.premium-pricing-layout {
  gap: clamp(38px, 5vw, 68px);
  padding-bottom: clamp(42px, 6vw, 82px);
}

.public-pricing-block,
.monthly-pricing-block,
.public-credit-band {
  position: relative;
}

.pricing-section-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: clamp(18px, 3vw, 34px);
  align-items: end;
  margin-bottom: clamp(22px, 3vw, 34px);
}

.pricing-section-head h2 {
  max-width: 760px;
  margin: 10px 0 0;
  color: var(--ink);
  font-size: clamp(28px, 3.4vw, 46px);
  line-height: 1.08;
}

.pricing-section-head p {
  max-width: 720px;
  margin: 12px 0 0;
  color: var(--muted);
  font-size: 16px;
  line-height: 1.6;
}

.pricing-mode-card {
  display: grid;
  min-width: 218px;
  padding: 18px 20px;
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 12%, rgba(105, 216, 242, 0.18), transparent 34%),
    rgba(255, 255, 255, 0.82);
  box-shadow: 0 18px 44px rgba(18, 60, 145, 0.09);
}

.pricing-mode-card span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.pricing-mode-card strong {
  margin-top: 4px;
  color: var(--ink);
  font-size: 19px;
}

.pricing-mode-card.subscription {
  border-color: rgba(155, 124, 247, 0.2);
  background:
    radial-gradient(circle at 90% 8%, rgba(155, 124, 247, 0.2), transparent 34%),
    rgba(255, 255, 255, 0.86);
}

.one-time-pricing-block,
.monthly-pricing-block {
  padding-top: clamp(8px, 1vw, 14px);
}

.public-one-time-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 22px);
}

.premium-pricing-layout .pricing-grid {
  display: grid;
  align-items: stretch;
  gap: clamp(22px, 2.4vw, 34px);
}

.premium-pricing-layout .price-card {
  isolation: isolate;
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 28px;
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.16), transparent 32%),
    radial-gradient(circle at 12% 100%, rgba(155, 124, 247, 0.08), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(247, 251, 255, 0.95));
  box-shadow:
    0 22px 58px rgba(18, 60, 145, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.95);
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.premium-pricing-layout .price-card:hover {
  border-color: rgba(31, 105, 213, 0.24);
  box-shadow: 0 24px 62px rgba(18, 60, 145, 0.14);
  transform: translateY(-4px);
}

.premium-pricing-layout .price-card::before {
  opacity: 1;
  height: 4px;
  background: linear-gradient(90deg, rgba(105, 216, 242, 0.9), rgba(120, 169, 255, 0.72), rgba(155, 124, 247, 0.86));
}

.premium-pricing-layout .price-card h3 {
  color: #0b1736;
  font-size: clamp(20px, 1.8vw, 24px);
  line-height: 1.12;
}

.premium-pricing-layout .price strong {
  color: #0b1736;
  font-size: clamp(34px, 3.2vw, 44px);
  letter-spacing: 0;
}

.premium-pricing-layout .price-card ul {
  gap: 12px;
  margin-top: 24px;
}

.premium-pricing-layout .price-card li {
  color: #41516f;
  font-size: 14px;
  line-height: 1.42;
}

.premium-pricing-layout .price-card li .icon {
  width: 18px;
  height: 18px;
  padding: 3px;
  border-radius: 999px;
  color: #0b7c62;
  background: rgba(28, 207, 163, 0.1);
}

.premium-pricing-layout .price-card .full {
  min-height: 48px;
  border-radius: 16px;
  font-weight: 900;
}

.premium-pricing-layout .popular {
  min-height: 30px;
  padding: 7px 11px;
  background: linear-gradient(135deg, var(--blue), var(--blue-2) 62%, var(--purple));
  box-shadow: 0 12px 26px rgba(31, 105, 213, 0.18);
}

.premium-pricing-layout .popular.subtle {
  color: #0f58b7;
  background: #edf6ff;
  box-shadow: none;
}

.premium-pricing-layout .plan-kicker {
  color: #0f7a9d;
}

.public-one-time-grid .purchase-card {
  min-height: 330px;
}

.public-one-time-grid .purchase-card.featured {
  border-color: rgba(31, 105, 213, 0.32);
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.22), transparent 32%),
    radial-gradient(circle at 10% 100%, rgba(155, 124, 247, 0.12), transparent 32%),
    linear-gradient(180deg, #ffffff, #f3f8ff);
}

.monthly-pricing-block .price-card[data-plan="free"] {
  background:
    radial-gradient(circle at 90% 0%, rgba(31, 105, 213, 0.08), transparent 32%),
    linear-gradient(180deg, #ffffff, #fbfdff);
}

.monthly-pricing-block .price-card[data-plan="pro"] {
  border-color: rgba(31, 105, 213, 0.56);
  background:
    radial-gradient(circle at 52% 0%, rgba(105, 216, 242, 0.34), transparent 34%),
    radial-gradient(circle at 95% 18%, rgba(155, 124, 247, 0.16), transparent 28%),
    linear-gradient(180deg, #ffffff, #f2f7ff);
  box-shadow:
    0 32px 82px rgba(18, 60, 145, 0.18),
    0 0 0 1px rgba(105, 216, 242, 0.16) inset;
}

.monthly-pricing-block .price-card[data-plan="premium"] {
  border-color: rgba(105, 216, 242, 0.32);
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.22), transparent 34%),
    radial-gradient(circle at 12% 100%, rgba(155, 124, 247, 0.12), transparent 34%),
    linear-gradient(180deg, #ffffff, #fbfaff);
}

.public-credit-band {
  align-items: stretch;
  padding-top: clamp(4px, 1vw, 12px);
}

.public-credit-band .credits-copy {
  min-height: 100%;
}

.public-credit-grid {
  align-content: stretch;
}

.public-credit-grid .credit-card {
  min-height: 100%;
}

.public-credit-grid .credit-card.featured {
  border-color: rgba(105, 216, 242, 0.42);
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.22), transparent 32%),
    linear-gradient(180deg, #ffffff, #f4fbff);
}

.monthly-pricing-block {
  padding-top: clamp(18px, 3vw, 34px);
  border-top: 1px solid rgba(31, 105, 213, 0.1);
}

.monthly-pricing-block .pricing-section-head {
  grid-template-columns: 1fr;
  justify-items: center;
  width: min(100%, 1180px);
  margin-inline: auto;
  text-align: center;
}

.monthly-pricing-block .pricing-section-head > div {
  display: grid;
  justify-items: center;
  width: min(100%, 980px);
}

.monthly-pricing-block .pricing-section-head h2,
.monthly-pricing-block .pricing-section-head p {
  max-width: 980px;
  margin-right: auto;
  margin-left: auto;
}

.monthly-pricing-block .pricing-mode-card.subscription {
  justify-self: center;
}

.plan-comparison-card {
  max-width: 1180px;
  margin: clamp(34px, 5vw, 64px) auto 0;
  padding: clamp(24px, 3.5vw, 42px);
  border: 1px solid rgba(31, 105, 213, 0.22);
  border-radius: 30px;
  background:
    radial-gradient(circle at 86% 0%, rgba(105, 216, 242, 0.24), transparent 34%),
    radial-gradient(circle at 10% 100%, rgba(155, 124, 247, 0.16), transparent 30%),
    linear-gradient(135deg, #ffffff, #f4f8ff 58%, #faf8ff);
  box-shadow: 0 32px 80px rgba(18, 60, 145, 0.15);
}

.plan-comparison-card .section-heading {
  width: min(100%, 980px);
  max-width: 980px;
  margin-bottom: clamp(22px, 3vw, 32px);
  margin-inline: auto;
  justify-items: center;
  text-align: center;
}

.plan-comparison-card .section-heading h2 {
  max-width: 980px;
  margin-inline: auto;
  font-size: clamp(31px, 4vw, 52px);
}

.comparison-table-wrap {
  overflow-x: auto;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0 16px 42px rgba(18, 60, 145, 0.08);
}

.plan-comparison-table {
  width: 100%;
  min-width: 720px;
  border-collapse: separate;
  border-spacing: 0;
  color: var(--ink);
}

.plan-comparison-table th,
.plan-comparison-table td {
  padding: 16px 18px;
  border-bottom: 1px solid rgba(229, 234, 244, 0.9);
  text-align: left;
  vertical-align: middle;
}

.plan-comparison-table thead th {
  color: #123c91;
  background: rgba(238, 245, 255, 0.92);
  font-size: 13px;
  font-weight: 900;
}

.plan-comparison-table thead th:first-child {
  border-top-left-radius: 16px;
}

.plan-comparison-table thead th:last-child {
  border-top-right-radius: 16px;
}

.plan-comparison-table tbody th {
  width: 30%;
  font-weight: 900;
}

.plan-comparison-table tbody td {
  color: #52627e;
  font-weight: 750;
}

.plan-comparison-table .is-pro-column {
  background: rgba(238, 245, 255, 0.72);
}

.plan-comparison-table thead .is-pro-column {
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2));
}

.comparison-value {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.comparison-value .icon {
  width: 17px;
  height: 17px;
  color: var(--blue-2);
}

.comparison-value.is-unavailable {
  color: #7b879c;
  font-weight: 650;
}

.comparison-dash {
  display: inline-grid;
  place-items: center;
  width: 17px;
  height: 17px;
  color: #8b97aa;
  font-weight: 900;
}

.pricing-faq-list {
  display: grid;
  gap: 12px;
  max-width: 900px;
  margin: 0 auto;
}

.payment-faq {
  width: min(100%, calc(980px + (var(--page-x) * 2)));
  margin-inline: auto;
}

.payment-faq .section-heading,
.payment-faq .pricing-faq-list {
  width: min(100%, 900px);
}

.payment-faq .section-heading {
  margin-inline: auto;
  justify-items: center;
  text-align: center;
}

.payment-faq .section-heading h2 {
  max-width: 900px;
  margin-inline: auto;
}

.pricing-faq-item {
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 12px 34px rgba(18, 60, 145, 0.06);
  overflow: hidden;
}

.pricing-faq-item summary {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 20px;
  color: var(--ink);
  cursor: pointer;
  font-weight: 900;
  list-style: none;
}

.pricing-faq-item summary::-webkit-details-marker {
  display: none;
}

.pricing-faq-item summary::after {
  content: "+";
  display: inline-grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 999px;
  color: var(--blue);
  background: #eef5ff;
  flex: 0 0 auto;
}

.pricing-faq-item[open] summary::after {
  content: "-";
}

.pricing-faq-item p {
  margin: 0;
  padding: 0 20px 18px;
  color: var(--muted);
  line-height: 1.65;
}

.legal-page {
  padding: clamp(34px, 6vw, 72px) var(--page-x);
  background:
    radial-gradient(circle at 12% 2%, rgba(105, 216, 242, 0.16), transparent 28%),
    linear-gradient(180deg, #f7faff, #fff 48%);
}

.legal-hero {
  max-width: 860px;
  margin: 0 auto 26px;
  text-align: center;
}

.legal-hero h1 {
  margin: 10px 0;
  font-size: clamp(38px, 6vw, 62px);
}

.legal-hero p {
  color: var(--muted);
  line-height: 1.65;
}

.legal-hero span {
  color: var(--blue);
  font-weight: 850;
}

.legal-card {
  display: grid;
  gap: 16px;
  max-width: 980px;
  margin: 0 auto;
  padding: clamp(22px, 4vw, 38px);
  border: 1px solid var(--line);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--shadow);
}

.legal-card article {
  padding-bottom: 16px;
  border-bottom: 1px solid var(--line);
}

.legal-card h2 {
  margin: 0 0 8px;
  font-size: 20px;
}

.legal-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.contact-layout {
  grid-template-columns: minmax(0, 1.08fr) minmax(260px, 0.92fr);
  align-items: start;
}

.contact-form,
.contact-info-list {
  display: grid;
  gap: 14px;
}

.contact-form {
  padding: clamp(18px, 3vw, 26px);
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 24px;
  background: linear-gradient(180deg, #ffffff, #f8fbff);
}

.contact-form h2 {
  margin: 0;
}

.contact-form label {
  display: grid;
  gap: 7px;
  color: var(--ink);
  font-weight: 850;
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  min-height: 46px;
  padding: 0 13px;
  border: 1px solid var(--line);
  border-radius: 14px;
  color: var(--ink);
  background: #fff;
}

.contact-form textarea {
  min-height: 138px;
  padding: 13px;
  resize: vertical;
  line-height: 1.55;
}

.contact-info-list article:last-child {
  border-bottom: 0;
}

.legal-contact {
  color: var(--blue) !important;
  font-weight: 850;
}

.reveal-item {
  opacity: 0;
  transform: translateY(16px) scale(0.992);
  transition: opacity 0.72s ease, transform 0.72s cubic-bezier(0.22, 1, 0.36, 1);
  transition-delay: var(--reveal-delay, 0ms);
}

.reveal-item.reveal-visible,
.reveal-visible {
  opacity: 1;
  transform: none;
}

@keyframes heroFloat {
  0%, 100% { transform: translate3d(0, 0, 0); }
  50% { transform: translate3d(0, -7px, 0); }
}

@keyframes heroChipReveal {
  0% { opacity: 0; transform: translate3d(0, 7px, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes microDrift {
  0%, 100% { transform: translate3d(0, 0, 0); opacity: 1; }
  50% { transform: translate3d(0, -2px, 0); opacity: 0.94; }
}

@keyframes aiButtonPulse {
  0%, 62%, 100% { box-shadow: 0 12px 28px rgba(31, 105, 213, 0.16); transform: translate3d(0, 0, 0); }
  72% { box-shadow: 0 16px 36px rgba(31, 105, 213, 0.26), 0 0 0 5px rgba(105, 216, 242, 0.08); transform: translate3d(0, -1px, 0); }
}

@keyframes aiButtonSheen {
  0%, 58% { left: -70%; opacity: 0; }
  68% { opacity: 0.5; }
  80%, 100% { left: 125%; opacity: 0; }
}

@keyframes aiPanelBreathe {
  0%, 16%, 88%, 100% { opacity: 0.72; transform: translate3d(0, 4px, 0) scale(0.992); }
  28%, 72% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
}

@keyframes aiMessageCycle {
  0%, 13%, 100% { opacity: 0; transform: translate3d(0, 7px, 0); }
  18%, 31% { opacity: 1; transform: translate3d(0, 0, 0); }
  36% { opacity: 0; transform: translate3d(0, -6px, 0); }
}

@keyframes templateHintFade {
  0%, 18%, 78%, 100% { opacity: 0; transform: translate3d(0, 4px, 0); }
  28%, 66% { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes resumeLineImprove {
  0%, 100% { transform: scaleX(0.92); opacity: 0.72; }
  42%, 70% { transform: scaleX(1); opacity: 1; }
}

@keyframes resumeLineSheen {
  0%, 34% { left: -35%; opacity: 0; }
  44% { opacity: 0.75; }
  62%, 100% { left: 110%; opacity: 0; }
}

@keyframes resumeSectionHighlight {
  0%, 34%, 100% { background: var(--purple); box-shadow: none; }
  48%, 66% { background: linear-gradient(90deg, var(--purple), #69d8f2); box-shadow: 0 0 0 5px rgba(105, 216, 242, 0.08); }
}

@keyframes resumePillRefine {
  0%, 100% { transform: translate3d(0, 0, 0); background: #edf3fb; }
  50% { transform: translate3d(3px, 0, 0); background: #e8f6ff; }
}

@keyframes scoreFirst {
  0%, 24% { opacity: 1; transform: translate3d(0, 0, 0); }
  32%, 100% { opacity: 0; transform: translate3d(0, -5px, 0); }
}

@keyframes scoreSecond {
  0%, 28%, 62%, 100% { opacity: 0; transform: translate3d(0, 5px, 0); }
  36%, 54% { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes scoreFinal {
  0%, 58% { opacity: 0; transform: translate3d(0, 5px, 0); }
  68%, 100% { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes scoreProgressImprove {
  0%, 24% { width: 72%; }
  36%, 54% { width: 81%; }
  68%, 100% { width: 86%; }
}

@keyframes eyebrowShine {
  0%, 48% { left: -58%; opacity: 0; }
  58% { opacity: 0.72; }
  70%, 100% { left: 120%; opacity: 0; }
}

@keyframes dashboardFadeUp {
  0% { opacity: 0; transform: translate3d(0, 14px, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes dashboardGlowDrift {
  0%, 100% { transform: translate3d(0, 0, 0) scale(1); opacity: 0.72; }
  50% { transform: translate3d(-16px, 12px, 0) scale(1.04); opacity: 0.9; }
}

@keyframes dashboardProgressGrow {
  0% { transform: scaleX(0); }
  100% { transform: scaleX(1); }
}

@keyframes dashboardNumberPop {
  0% { opacity: 0; transform: translate3d(0, 8px, 0) scale(0.94); }
  100% { opacity: 1; transform: translate3d(0, 0, 0) scale(1); }
}

@keyframes dashboardChipIn {
  0% { opacity: 0; transform: translate3d(0, 6px, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}

@keyframes dashboardButtonSheen {
  0% { left: -64%; opacity: 0; }
  28% { opacity: 0.72; }
  100% { left: 118%; opacity: 0; }
}

:root[data-theme="dark"] body,
:root[data-theme="dark"] .public-site,
:root[data-theme="dark"] .dashboard-main {
  color: var(--ink);
  background: var(--bg);
}

:root[data-theme="dark"] .hero::after {
  background: linear-gradient(90deg, transparent, rgba(105, 216, 242, 0.18), transparent);
}

:root[data-theme="dark"] .hero p,
:root[data-theme="dark"] .section-heading p,
:root[data-theme="dark"] .auth-visual p,
:root[data-theme="dark"] .feature-card p,
:root[data-theme="dark"] .step-card p,
:root[data-theme="dark"] .template-card p,
:root[data-theme="dark"] .faq-item p,
:root[data-theme="dark"] .dash-card p,
:root[data-theme="dark"] .page-actions p,
:root[data-theme="dark"] .empty-state p,
:root[data-theme="dark"] .ai-input-panel p,
:root[data-theme="dark"] .settings-card p,
:root[data-theme="dark"] .legal-card p,
:root[data-theme="dark"] .auth-subtitle,
:root[data-theme="dark"] .auth-help {
  color: var(--muted);
}

:root[data-theme="dark"] .feature-card,
:root[data-theme="dark"] .step-card,
:root[data-theme="dark"] .template-card,
:root[data-theme="dark"] .price-card,
:root[data-theme="dark"] .faq-item,
:root[data-theme="dark"] .dash-card,
:root[data-theme="dark"] .settings-card,
:root[data-theme="dark"] .ai-input-panel,
:root[data-theme="dark"] .ats-score,
:root[data-theme="dark"] .library-card,
:root[data-theme="dark"] .empty-state,
:root[data-theme="dark"] .main-resume-card,
:root[data-theme="dark"] .recent-resume-card,
:root[data-theme="dark"] .next-step-card,
:root[data-theme="dark"] .completion-card,
:root[data-theme="dark"] .empty-builder-state,
:root[data-theme="dark"] .builder-template-hero,
:root[data-theme="dark"] .builder-template-pill,
:root[data-theme="dark"] .builder-step-actions,
:root[data-theme="dark"] .suggestions-panel,
:root[data-theme="dark"] .ai-tool-suggestion-card,
:root[data-theme="dark"] .ai-keyword-card,
:root[data-theme="dark"] .ai-match-card,
:root[data-theme="dark"] .ai-empty-panel,
:root[data-theme="dark"] .upgrade-nudge,
:root[data-theme="dark"] .export-note,
:root[data-theme="dark"] .letter-form-panel,
:root[data-theme="dark"] .letter-preview-panel,
:root[data-theme="dark"] .legal-card {
  border-color: var(--line);
  background: rgba(16, 27, 52, 0.82);
  box-shadow: var(--shadow);
}

:root[data-theme="dark"] .feature-card,
:root[data-theme="dark"] .trust-card,
:root[data-theme="dark"] .features-cta,
:root[data-theme="dark"] .templates-cta,
:root[data-theme="dark"] .one-time-teaser,
:root[data-theme="dark"] .testimonial-preview,
:root[data-theme="dark"] .workspace-hero,
:root[data-theme="dark"] .pricing-hero,
:root[data-theme="dark"] .legal-hero,
:root[data-theme="dark"] .trust-section,
:root[data-theme="dark"] .split-band {
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.09), transparent 30%),
    linear-gradient(180deg, rgba(16, 27, 52, 0.84), rgba(10, 18, 36, 0.74));
}

:root[data-theme="dark"] .contact-form,
:root[data-theme="dark"] .contact-form input,
:root[data-theme="dark"] .contact-form textarea {
  border-color: rgba(163, 183, 220, 0.2);
  background: rgba(18, 31, 59, 0.88);
}

:root[data-theme="dark"] .contact-form label {
  color: #f4f8ff;
}

:root[data-theme="dark"] .google-auth-button {
  border-color: rgba(163, 183, 220, 0.2);
  color: #f4f8ff;
  background: rgba(18, 31, 59, 0.88);
}

:root[data-theme="dark"] .editor-panel,
:root[data-theme="dark"] .editor-form,
:root[data-theme="dark"] .suggestion-card,
:root[data-theme="dark"] .floating-score,
:root[data-theme="dark"] .hero-value-card,
:root[data-theme="dark"] .trust-row span,
:root[data-theme="dark"] .sidebar,
:root[data-theme="dark"] .dashboard-search,
:root[data-theme="dark"] .user-menu,
:root[data-theme="dark"] .user-dropdown,
:root[data-theme="dark"] .template-preview-dialog,
:root[data-theme="dark"] .auth-card,
:root[data-theme="dark"] .auth-shell,
:root[data-theme="dark"] .builder-topbar,
:root[data-theme="dark"] .builder-section-nav,
:root[data-theme="dark"] .preview-toolbar,
:root[data-theme="dark"] .template-filter-row,
:root[data-theme="dark"] .pricing-tabs {
  border-color: var(--line);
  background: rgba(12, 23, 48, 0.9);
  color: var(--ink);
}

:root[data-theme="dark"] .floating-score {
  background:
    linear-gradient(180deg, rgba(16, 27, 52, 0.98), rgba(10, 18, 36, 0.94)) padding-box,
    linear-gradient(135deg, rgba(105, 216, 242, 0.66), rgba(120, 169, 255, 0.5), rgba(183, 156, 255, 0.54)) border-box;
  box-shadow:
    0 26px 58px rgba(0, 0, 0, 0.34),
    0 0 0 1px rgba(255, 255, 255, 0.03) inset;
}

:root[data-theme="dark"] .score-status {
  color: #9ee8c4;
  background: rgba(50, 159, 105, 0.14);
  border-color: rgba(105, 216, 242, 0.18);
}

:root[data-theme="dark"] .score-delta {
  color: var(--cyan);
  background: rgba(105, 216, 242, 0.1);
}

:root[data-theme="dark"] .score-progress {
  background: rgba(163, 183, 220, 0.14);
}

:root[data-theme="dark"] .score-ai-note {
  color: #b9c8df;
}

:root[data-theme="dark"] .auth-visual {
  background:
    radial-gradient(circle at 70% 24%, rgba(105, 216, 242, 0.18), transparent 28%),
    linear-gradient(135deg, #081124, #10214a 70%, #21184b);
}

:root[data-theme="dark"] .auth-shell {
  background:
    radial-gradient(circle at 80% 14%, rgba(105, 216, 242, 0.08), transparent 26%),
    linear-gradient(180deg, #081124, #0c1730);
}

:root[data-theme="dark"] .auth-card {
  background:
    linear-gradient(180deg, rgba(16, 27, 52, 0.98), rgba(10, 18, 36, 0.94)),
    var(--card);
}

:root[data-theme="dark"] .password-toggle {
  color: #b9c8df;
  background: rgba(105, 216, 242, 0.1);
}

:root[data-theme="dark"] .password-toggle:hover,
:root[data-theme="dark"] .password-toggle[aria-pressed="true"] {
  color: var(--cyan);
  background: rgba(105, 216, 242, 0.16);
}

:root[data-theme="dark"] .legal-check {
  border-color: rgba(105, 216, 242, 0.16);
  background: rgba(105, 216, 242, 0.07);
}

:root[data-theme="dark"] .settings-status,
:root[data-theme="dark"] .settings-status-list span {
  background: rgba(105, 216, 242, 0.12);
}

:root[data-theme="dark"] .settings-message {
  color: #9ee8c4;
  background: rgba(50, 159, 105, 0.12);
}

:root[data-theme="dark"] .site-footer,
:root[data-theme="dark"] .pricing-page,
:root[data-theme="dark"] .legal-page,
:root[data-theme="dark"] .template-preview-content,
:root[data-theme="dark"] .builder-preview-frame,
:root[data-theme="dark"] .credits-band {
  background:
    radial-gradient(circle at 12% 5%, rgba(105, 216, 242, 0.08), transparent 30%),
    linear-gradient(180deg, #081124, #0c1730);
}

:root[data-theme="dark"] input,
:root[data-theme="dark"] textarea,
:root[data-theme="dark"] select {
  border-color: var(--line);
  background: rgba(8, 17, 36, 0.86);
  color: var(--ink);
}

:root[data-theme="dark"] input::placeholder,
:root[data-theme="dark"] textarea::placeholder {
  color: #7f8da5;
}

:root[data-theme="dark"] .user-dropdown button,
:root[data-theme="dark"] .side-nav a,
:root[data-theme="dark"] .sidebar-link-button,
:root[data-theme="dark"] .template-switch button,
:root[data-theme="dark"] .document-format-switch button,
:root[data-theme="dark"] .template-filter-row button,
:root[data-theme="dark"] .pricing-tabs button,
:root[data-theme="dark"] .builder-section-nav button {
  color: #c7d5ec;
  border-color: transparent;
  background: rgba(16, 27, 52, 0.72);
}

:root[data-theme="dark"] .user-dropdown-head {
  border-color: rgba(142, 232, 247, 0.14);
}

:root[data-theme="dark"] .user-dropdown-head strong {
  color: #f5f8ff;
}

:root[data-theme="dark"] .user-dropdown-head small,
:root[data-theme="dark"] .user-dropdown-head span {
  color: #aebee0;
}

:root[data-theme="dark"] .side-nav a:hover,
:root[data-theme="dark"] .side-nav .active,
:root[data-theme="dark"] .user-dropdown button:hover,
:root[data-theme="dark"] .template-filter-row button:hover,
:root[data-theme="dark"] .template-filter-row button.active,
:root[data-theme="dark"] .builder-section-nav button:hover,
:root[data-theme="dark"] .builder-section-nav button.active {
  color: var(--blue-2);
  background: rgba(105, 216, 242, 0.1);
  border-color: rgba(105, 216, 242, 0.16);
}

:root[data-theme="dark"] .template-switch .active,
:root[data-theme="dark"] .document-format-switch .active,
:root[data-theme="dark"] .pricing-tabs button.active {
  color: #071124;
  background: linear-gradient(135deg, var(--cyan), var(--purple));
}

:root[data-theme="dark"] .template-paper,
:root[data-theme="dark"] .resume-preview,
:root[data-theme="dark"] .resume-document,
:root[data-theme="dark"] .letter-document {
  background: #fff;
  color: #0b1736;
}

:root[data-theme="dark"] .template-doc-body aside,
:root[data-theme="dark"] .template-doc-body main,
:root[data-theme="dark"] .template-doc-body section {
  background: #f8fbff;
}

/* Final responsive hardening before launch. These rules only constrain UI layout. */
html,
body,
#app,
.public-shell,
.public-site,
.app-shell,
.dashboard-main,
.blog-page,
.blog-article-page,
.pricing-page,
.legal-page {
  max-width: 100%;
  overflow-x: clip;
}

.site-header,
.dashboard-topbar,
.dashboard-content,
.settings-page,
.ai-page,
.builder-page,
.blog-layout,
.related-blog-section,
.legal-card,
.legal-hero,
.pricing-hero {
  min-width: 0;
}

.dashboard-search input {
  min-width: 0;
  text-overflow: ellipsis;
}

.page-actions,
.card-actions,
.resume-actions,
.cover-letter-card-actions,
.builder-top-actions,
.section-actions,
.watermark-actions,
.access-actions,
.template-preview-footer {
  min-width: 0;
}

.blog-card h2,
.featured-blog-card h2,
.legal-card h2,
.price-card h3,
.cover-letter-card h2,
.library-card h3,
.dashboard-template-card h3,
.builder-template-card h3 {
  overflow-wrap: anywhere;
}

.template-preview-modal {
  overflow: auto;
}

.delete-resume-dialog,
.access-dialog,
.watermark-dialog {
  max-width: min(94vw, 560px);
  max-height: min(94vh, 720px);
  overflow-y: auto;
}

.cover-letter-preview-dialog .template-preview-content {
  align-items: flex-start;
}

@media (max-width: 1180px) and (min-width: 861px) {
  .public-nav-center {
    gap: 8px;
  }

  .public-nav-actions .ghost-button,
  .public-nav-actions .primary-button {
    min-height: 40px;
    padding-inline: 14px;
    font-size: 13px;
  }

  .nav-preferences {
    min-height: 36px;
  }

  .language-switch button {
    min-width: 29px;
  }

  .dashboard-topbar {
    gap: 16px;
  }
}

@media (max-width: 860px) {
  .site-header {
    width: 100%;
    max-width: 100%;
  }

  .nav-toggle {
    position: static;
    top: auto;
    left: auto;
    right: auto;
    grid-column: auto;
    justify-self: end;
  }

  .public-nav {
    position: fixed;
    top: 62px;
    right: var(--page-x);
    left: var(--page-x);
    max-width: calc(100vw - (var(--page-x) * 2));
    max-height: calc(100dvh - 78px);
    overflow-y: auto;
    box-sizing: border-box;
  }

  .public-nav-center a,
  .public-nav-actions a {
    min-height: 42px;
  }

  .blog-hero,
  .featured-blog-card,
  .blog-controls,
  .blog-grid,
  .blog-cluster-section,
  .blog-bottom-cta,
  .related-blog-section,
  .legal-card,
  .legal-hero,
  .pricing-hero {
    max-width: calc(100vw - (var(--page-x) * 2));
  }

  .blog-article {
    max-width: 100%;
  }

  .blog-article-body {
    max-width: 100%;
  }

  .price-card.featured {
    transform: none;
  }

  .pricing-grid,
  .public-monetization .monetization-block {
    max-width: 100%;
    min-width: 0;
  }

  .contact-layout {
    grid-template-columns: 1fr;
  }

  .pricing-hero h1 {
    font-size: clamp(34px, 10vw, 42px);
    line-height: 1.08;
  }

  .pricing-hero p,
  .pricing-overview-block .section-heading h2,
  .planned-payment-note,
  .price-card li {
    overflow-wrap: anywhere;
  }

  .pricing-overview-block .section-heading h2 {
    font-size: clamp(25px, 7vw, 32px);
  }

  .price-card .full {
    white-space: normal;
  }

  .plan-comparison-card {
    width: calc(100% - (var(--page-x) * 2));
    padding: 22px 16px;
    border-radius: 24px;
  }

  .comparison-table-wrap {
    margin: 0 -4px;
  }

  .dashboard-topbar {
    gap: 14px;
  }

  .dashboard-search {
    width: 100%;
    max-width: none;
  }

  .topbar-actions {
    flex-wrap: wrap;
    width: 100%;
  }

  .topbar-actions .nav-preferences {
    flex: 0 0 auto;
  }

  .user-menu-wrap {
    margin-left: auto;
  }

  .builder-top-actions,
  .section-actions,
  .cover-letter-card-actions {
    align-items: stretch;
  }

  .builder-top-actions .primary-button,
  .builder-top-actions .secondary-button,
  .section-actions .primary-button,
  .section-actions .secondary-button,
  .cover-letter-card-actions .primary-button,
  .cover-letter-card-actions .secondary-button,
  .cover-letter-card-actions .ghost-button {
    flex: 1 1 160px;
  }

  .letter-editor-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .letter-editor-head .cover-letter-ai-button {
    width: 100%;
  }

  .cover-letter-ai-primary,
  .cover-letter-ai-tools {
    grid-template-columns: 1fr;
  }

  .ai-input-panel,
  .ai-results-panel,
  .ats-score,
  .ai-tool-suggestion-card,
  .ai-keyword-card {
    min-width: 0;
  }
}

@media (max-width: 560px) {
  .site-header {
    width: 100%;
    padding-right: var(--page-x);
    padding-left: var(--page-x);
  }

  .public-nav {
    top: 58px;
    right: var(--page-x);
    left: var(--page-x);
    max-width: calc(100vw - (var(--page-x) * 2));
    border-radius: 18px;
  }

  .public-nav-actions .nav-preferences {
    width: 100%;
    justify-content: space-between;
  }

  .hero-copy,
  .hero h1,
  .hero p,
  .auth-visual h1,
  .auth-visual p {
    max-width: 100%;
  }

  .blog-hero,
  .featured-blog-card,
  .blog-controls,
  .blog-grid,
  .blog-cluster-section,
  .blog-bottom-cta,
  .related-blog-section {
    width: 100%;
    max-width: calc(100vw - (var(--page-x) * 2));
  }

  .blog-hero {
    margin-right: auto;
    margin-left: auto;
  }

  .blog-hero h1,
  .blog-article-hero h1,
  .blog-hero p,
  .blog-article-hero p,
  .featured-blog-card p,
  .blog-card p {
    width: 100%;
    max-width: 100%;
  }

  .blog-article {
    padding-right: var(--page-x);
    padding-left: var(--page-x);
  }

  .blog-article-body,
  .blog-cta-card,
  .blog-bottom-cta,
  .featured-blog-card,
  .price-card,
  .legal-card,
  .letter-form-panel,
  .letter-preview-panel,
  .cover-letter-card,
  .builder-panel,
  .builder-template-card {
    padding: 20px;
    border-radius: 20px;
  }

  .legal-hero {
    max-width: calc(100vw - (var(--page-x) * 2));
    padding-top: 34px;
  }

  .legal-hero h1,
  .pricing-hero h1,
  .builder-template-hero h1 {
    font-size: clamp(30px, 9vw, 38px);
    line-height: 1.08;
  }

  .site-footer {
    grid-template-columns: 1fr;
    grid-template-areas:
      "brand"
      "statement"
      "links";
    align-items: start;
    overflow: hidden;
  }

  .site-footer > p {
    width: 100%;
    min-width: 0;
    justify-self: stretch;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .legal-footer-links {
    align-items: stretch;
    width: 100%;
  }

  .footer-link-group {
    display: grid;
    width: 100%;
    gap: 8px;
  }

  .legal-footer-links a {
    justify-content: center;
    width: 100%;
  }

  .auth-card-top {
    width: 100%;
  }

  .legal-check {
    gap: 10px;
    font-size: 13px;
  }

  .legal-check input {
    width: 20px;
    height: 20px;
  }

  .dashboard-search {
    padding-inline: 12px;
  }

  .dashboard-search input {
    font-size: 13px;
  }

  .dashboard-search input::placeholder {
    font-size: 12.5px;
  }

  .dashboard-topbar h1 {
    font-size: 27px;
    line-height: 1.12;
  }

  .workspace-hero,
  .dash-card,
  .settings-card,
  .empty-state,
  .main-resume-card,
  .recent-resume-card,
  .next-step-card,
  .ai-input-panel,
  .ai-results-panel,
  .ats-score,
  .ai-tool-suggestion-card {
    border-radius: 20px;
  }

  .quick-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .quick-actions .primary-button,
  .quick-actions .secondary-button,
  .page-actions .primary-button,
  .page-actions .secondary-button,
  .builder-step-actions button,
  .builder-top-actions .primary-button,
  .builder-top-actions .secondary-button,
  .cover-letter-builder-actions .primary-button,
  .cover-letter-builder-actions .secondary-button,
  .ai-tool-suggestion-card footer .small {
    width: 100%;
  }

  .builder-step-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .cover-letter-body-editor {
    min-height: 240px;
  }

  .letter-document {
    min-height: 0;
    padding: 0;
  }

  .ai-match-grid,
  .ai-keyword-grid {
    grid-template-columns: 1fr;
  }

  .comparison-wrap {
    margin-right: calc(var(--page-x) * -1);
    margin-left: calc(var(--page-x) * -1);
    padding-inline: var(--page-x);
  }

  .template-preview-modal {
    align-items: start;
    padding: 10px;
  }

  .template-preview-dialog {
    width: 100%;
    height: auto;
    min-height: 0;
    max-height: calc(100dvh - 20px);
  }

  .template-preview-header,
  .template-preview-footer {
    padding: 14px 16px;
  }

  .template-preview-header h2 {
    font-size: 24px;
  }

  .delete-resume-dialog,
  .access-dialog,
  .watermark-dialog {
    width: 100%;
    max-width: calc(100vw - 20px);
  }
}

:root[data-theme="dark"] .payment-soon-label {
  border-color: rgba(105, 216, 242, 0.24);
  color: #dce8ff;
  background: rgba(105, 216, 242, 0.1);
}

:root[data-theme="dark"] .pricing-section .homepage-price-card,
:root[data-theme="dark"] .pricing-section .homepage-price-card[data-plan="free"],
:root[data-theme="dark"] .pricing-section .homepage-price-card[data-plan="premium"] {
  border-color: rgba(163, 183, 220, 0.24);
  background: rgba(16, 27, 52, 0.92);
}

:root[data-theme="dark"] .price-card[data-plan="free"],
:root[data-theme="dark"] .price-card[data-plan="premium"],
:root[data-theme="dark"] .price-card.featured,
:root[data-theme="dark"] .planned-payments-card,
:root[data-theme="dark"] .payment-method-card,
:root[data-theme="dark"] .plan-comparison-card,
:root[data-theme="dark"] .pricing-faq-item,
:root[data-theme="dark"] .admin-metric-card,
:root[data-theme="dark"] .admin-panel,
:root[data-theme="dark"] .admin-table-wrap,
:root[data-theme="dark"] .admin-detail-section,
:root[data-theme="dark"] .admin-settings-grid article {
  border-color: rgba(163, 183, 220, 0.24);
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.08), transparent 30%),
    rgba(16, 27, 52, 0.92);
  color: var(--ink);
}

:root[data-theme="dark"] .admin-table th {
  color: var(--cyan);
  background: rgba(105, 216, 242, 0.1);
}

:root[data-theme="dark"] .admin-table td,
:root[data-theme="dark"] .admin-table code,
:root[data-theme="dark"] .admin-metric-card strong,
:root[data-theme="dark"] .admin-settings-grid strong,
:root[data-theme="dark"] .admin-detail-list strong {
  color: var(--ink);
}

:root[data-theme="dark"] .admin-form select,
:root[data-theme="dark"] .admin-form input,
:root[data-theme="dark"] .admin-filter-row select {
  border-color: var(--line);
  background: rgba(8, 17, 36, 0.82);
  color: var(--ink);
}

:root[data-theme="dark"] .comparison-table-wrap {
  border-color: rgba(163, 183, 220, 0.18);
  background: rgba(8, 17, 36, 0.48);
}

:root[data-theme="dark"] .plan-comparison-table th,
:root[data-theme="dark"] .plan-comparison-table td {
  border-color: rgba(163, 183, 220, 0.16);
}

:root[data-theme="dark"] .plan-comparison-table thead th,
:root[data-theme="dark"] .plan-comparison-table .is-pro-column {
  color: var(--ink);
  background: rgba(105, 216, 242, 0.1);
}

:root[data-theme="dark"] .plan-comparison-table thead .is-pro-column {
  color: #071124;
  background: linear-gradient(135deg, var(--cyan), var(--purple));
}

:root[data-theme="dark"] .payment-method-icon,
:root[data-theme="dark"] .pricing-faq-item summary::after {
  color: var(--cyan);
  background: rgba(105, 216, 242, 0.1);
}

:root[data-theme="dark"] .pricing-section .homepage-price-card[data-plan="free"] h3,
:root[data-theme="dark"] .pricing-section .homepage-price-card[data-plan="free"] .price strong,
:root[data-theme="dark"] .pricing-section .homepage-price-card[data-plan="free"] li {
  color: var(--ink);
}

:root[data-theme="dark"] .blog-search input,
:root[data-theme="dark"] .blog-category-select select,
:root[data-theme="dark"] .blog-category-filter button,
:root[data-theme="dark"] .featured-blog-card,
:root[data-theme="dark"] .blog-card,
:root[data-theme="dark"] .blog-article-body,
:root[data-theme="dark"] .blog-cta-card,
:root[data-theme="dark"] .blog-toc,
:root[data-theme="dark"] .blog-cluster-link,
:root[data-theme="dark"] .blog-bottom-cta,
:root[data-theme="dark"] .blog-insight-card,
:root[data-theme="dark"] .blog-document-card,
:root[data-theme="dark"] .featured-blog-visual {
  border-color: var(--line);
  background: rgba(16, 27, 52, 0.9);
  color: var(--ink);
}

:root[data-theme="dark"] .blog-category-select select {
  background-color: rgba(16, 27, 52, 0.9);
}

:root[data-theme="dark"] .blog-category-select select option {
  background: #101b34;
  color: var(--ink);
}

:root[data-theme="dark"] .blog-hero::before {
  border-color: var(--line);
  background:
    radial-gradient(circle at 82% 20%, rgba(155, 124, 247, 0.13), transparent 30%),
    radial-gradient(circle at 14% 12%, rgba(105, 216, 242, 0.13), transparent 28%),
    linear-gradient(135deg, rgba(16, 27, 52, 0.86), rgba(10, 18, 36, 0.76));
}

:root[data-theme="dark"] .featured-blog-card,
:root[data-theme="dark"] .blog-cta-card,
:root[data-theme="dark"] .blog-bottom-cta {
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.09), transparent 30%),
    linear-gradient(180deg, rgba(16, 27, 52, 0.9), rgba(10, 18, 36, 0.78));
}

:root[data-theme="dark"] .featured-blog-card p,
:root[data-theme="dark"] .blog-card p,
:root[data-theme="dark"] .blog-article-body p,
:root[data-theme="dark"] .blog-cta-card p,
:root[data-theme="dark"] .blog-card-footer,
:root[data-theme="dark"] .blog-empty,
:root[data-theme="dark"] .blog-hero p,
:root[data-theme="dark"] .blog-bottom-cta p,
:root[data-theme="dark"] .blog-toc a,
:root[data-theme="dark"] .blog-insight-card small {
  color: var(--muted);
}

:root[data-theme="dark"] .blog-meta span,
:root[data-theme="dark"] .blog-card-top span {
  color: #dce8ff;
  background: rgba(105, 216, 242, 0.1);
}

:root[data-theme="dark"] .auth-card {
  background:
    linear-gradient(180deg, rgba(16, 27, 52, 0.98), rgba(10, 18, 36, 0.94)),
    var(--card);
}

:root[data-theme="dark"] .settings-status,
:root[data-theme="dark"] .settings-status-list span {
  background: rgba(105, 216, 242, 0.12);
}

:root[data-theme="dark"] .field-line,
:root[data-theme="dark"] .template-line,
:root[data-theme="dark"] .resume-lines {
  background: #2d3d5d;
}

:root[data-theme="dark"] .site-footer,
:root[data-theme="dark"] .site-footer p {
  color: var(--muted);
  border-color: var(--line);
}

:root[data-theme="dark"] .site-footer > p {
  color: #d2def2;
  border-color: rgba(105, 216, 242, 0.18);
  background:
    radial-gradient(circle at 96% 0%, rgba(105, 216, 242, 0.13), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(155, 124, 247, 0.12), transparent 34%),
    rgba(16, 27, 52, 0.72);
  box-shadow:
    0 24px 62px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

:root[data-theme="dark"] .footer-copyright {
  color: #95a5bf;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }

  .reveal-item {
    opacity: 1;
    transform: none;
  }

  .resume-template-hint {
    opacity: 1;
    transform: none;
  }

  .brand:hover .brand-logo-image,
  .app-shell,
  .sidebar,
  .side-nav a:hover,
  .side-nav a:focus-visible,
  .side-nav a:hover .icon,
  .side-nav a:focus-visible .icon,
  .app-shell.sidebar-collapsed .side-nav a:hover,
  .app-shell.sidebar-collapsed .side-nav .active,
  .locked-action:hover {
    transform: none !important;
  }

  .trust-row span,
  .hero-product-chips span,
  .application-checklist span,
  .workspace-hero,
  .main-resume-card,
  .workspace-home .dash-card,
  .next-step-card,
  .progress-chip-row span,
  .mini-chip-row span {
    opacity: 1;
    transform: none;
  }

  .workspace-hero-glow,
  .workspace-hero .hero-primary-actions .primary-button::after {
    animation: none !important;
  }

  .resume-line-live::after {
    display: none;
  }

  .ai-message-rotator span,
  .score-cycle span {
    opacity: 0;
    transform: none;
  }

  .ai-message-rotator span:first-child,
  .score-cycle span:last-child {
    opacity: 1;
  }
}

.dashboard-monetization {
  gap: clamp(30px, 3vw, 44px);
}

.dashboard-monetization .pricing-tabs {
  justify-self: center;
  margin-inline: auto;
}

.dashboard-monetization .currency-switcher {
  justify-self: center;
}

.dashboard-monetization .section-heading {
  justify-items: center;
  width: min(100%, 980px);
  margin-inline: auto;
  margin-bottom: 20px;
  text-align: center;
}

.dashboard-monetization .section-heading h2 {
  max-width: 100%;
  font-size: clamp(26px, 3vw, 38px);
}

.dashboard-monetization .price-card {
  align-items: center;
  padding: clamp(24px, 2.4vw, 34px);
  border-radius: 30px;
  text-align: center;
}

.dashboard-monetization .price-card.featured {
  transform: none;
}

.dashboard-monetization .price-card .plan-card-head {
  justify-items: center;
  width: 100%;
}

.dashboard-monetization .price-card .plan-card-head > .popular,
.dashboard-monetization .price-card .plan-card-head > .popular-spacer,
.dashboard-monetization .price-card .plan-kicker,
.dashboard-monetization .price-card .planned-payment-note {
  align-self: center;
  justify-self: center;
}

.dashboard-monetization .price-card .price {
  width: 100%;
}

.dashboard-monetization .price-card h3 {
  margin-top: 6px;
  font-size: clamp(21px, 1.9vw, 26px);
}

.dashboard-monetization .price-card ul {
  justify-self: center;
  justify-items: stretch;
  width: fit-content;
  max-width: 100%;
}

.dashboard-monetization .price-card li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  justify-content: start;
  gap: 12px;
  font-size: clamp(14px, 1.05vw, 16px);
  text-align: left;
}

.dashboard-monetization .price-card li .icon {
  justify-self: center;
  width: 18px;
  height: 18px;
}

.dashboard-monetization .option-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.credits-band {
  display: grid;
  grid-template-columns: 1fr;
  gap: clamp(18px, 2.2vw, 28px);
  align-items: stretch;
}

.credits-band.pricing-tab-panel {
  display: none;
}

.credits-band.pricing-tab-panel.active {
  display: grid;
}

.credits-copy {
  display: grid;
  justify-items: center;
  padding: clamp(20px, 2.4vw, 30px);
  border: 1px solid var(--line);
  border-radius: 28px;
  color: #fff;
  text-align: center;
  background:
    radial-gradient(circle at 82% 18%, rgba(105, 216, 242, 0.24), transparent 28%),
    linear-gradient(135deg, #0b1736, #123c91 62%, #6650d8);
  box-shadow: var(--shadow);
}

.credits-copy .eyebrow,
.credits-copy p {
  color: #dce8ff;
}

.credits-copy h2 {
  max-width: 720px;
  margin: 10px 0 0;
  font-size: clamp(28px, 3.2vw, 38px);
  line-height: 1.12;
}

.credit-uses {
  margin-top: 18px;
}

.credit-uses strong {
  display: block;
  margin-bottom: 12px;
}

.credit-uses div,
.keyword-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.credit-uses div {
  justify-content: center;
}

.credit-uses span {
  padding: 7px 10px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  color: #eef7ff;
  background: rgba(255, 255, 255, 0.1);
  font-size: 13px;
  font-weight: 800;
}

.credit-amount-pill {
  justify-self: center;
  width: fit-content;
  max-width: 100%;
  margin: 8px 0 10px;
  padding: 9px 13px;
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 999px;
  color: #123c91;
  background: #eef5ff;
  font-size: 14px;
  font-weight: 900;
}

.credit-card .stripe-note {
  margin-top: 0;
}

.dashboard-monetization .credits-copy {
  padding: clamp(20px, 2vw, 26px);
  border-radius: 24px;
}

.dashboard-monetization .credits-copy h2 {
  max-width: 680px;
  font-size: clamp(26px, 2.6vw, 34px);
}

.dashboard-monetization .credit-card {
  padding: clamp(20px, 2vw, 28px);
}

.site-footer {
  display: grid;
  grid-template-columns: minmax(260px, auto) minmax(320px, 1fr);
  grid-template-areas:
    "brand statement"
    "links statement";
  align-items: center;
  gap: 18px clamp(28px, 4vw, 72px);
  padding: 34px clamp(20px, 5vw, 72px);
  border-top: 1px solid var(--line);
  color: var(--muted);
  background: #fff;
}

.site-footer .brand {
  grid-area: brand;
  justify-self: start;
}

.site-footer > p {
  position: relative;
  grid-area: statement;
  justify-self: end;
  width: min(100%, 640px);
  margin: 0;
  padding: clamp(18px, 2vw, 24px) clamp(20px, 2.6vw, 30px);
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 24px;
  color: #263a5d;
  background:
    radial-gradient(circle at 96% 0%, rgba(105, 216, 242, 0.24), transparent 34%),
    radial-gradient(circle at 0% 100%, rgba(155, 124, 247, 0.16), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(239, 247, 255, 0.88));
  box-shadow:
    0 24px 60px rgba(18, 60, 145, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
  font-size: clamp(17px, 1.45vw, 24px);
  font-weight: 900;
  line-height: 1.35;
}

.site-footer > p::before {
  content: "";
  position: absolute;
  left: 22px;
  top: 18px;
  width: 42px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--blue-2), var(--cyan), var(--purple));
}

.legal-footer-links {
  grid-area: links;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 16px;
  align-items: center;
}

.footer-copyright {
  flex-basis: 100%;
  color: #72809a;
  font-size: 12.5px;
  font-weight: 750;
  line-height: 1.4;
}

.footer-link-group {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px 16px;
}

.legal-footer-links a,
.forgot-link a,
.legal-check a {
  color: var(--blue-2);
  font-weight: 850;
}

.auth-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(400px, 560px);
  min-height: 100vh;
  background:
    radial-gradient(circle at 80% 14%, rgba(105, 216, 242, 0.18), transparent 26%),
    linear-gradient(180deg, #f8fbff, #ffffff);
}

.auth-visual {
  min-width: 0;
  overflow: hidden;
  padding: clamp(32px, 6vw, 76px);
  color: #fff;
  background:
    radial-gradient(circle at 72% 22%, rgba(105, 216, 242, 0.34), transparent 26%),
    radial-gradient(circle at 18% 78%, rgba(155, 124, 247, 0.26), transparent 28%),
    linear-gradient(135deg, rgba(8, 18, 43, 0.98), rgba(18, 60, 145, 0.94) 58%, rgba(86, 72, 190, 0.94));
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, 0.12);
}

.auth-visual .brand {
  margin-bottom: 72px;
  color: #fff;
}

.auth-visual p {
  color: #dce8ff;
}

.auth-preview {
  max-width: 410px;
  margin-top: 44px;
  filter: drop-shadow(0 30px 60px rgba(0, 0, 0, 0.24));
}

.resume-preview.light {
  transform: rotate(-2deg);
}

.auth-card {
  min-width: 0;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin: clamp(18px, 3vw, 42px);
  padding: clamp(28px, 5vw, 58px);
  border: 1px solid rgba(229, 234, 244, 0.92);
  border-radius: 30px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 251, 255, 0.94)),
    #fff;
  box-shadow: 0 26px 70px rgba(18, 60, 145, 0.12);
}

.auth-card h2 {
  margin: 8px 0 10px;
  font-size: clamp(30px, 3.2vw, 40px);
  letter-spacing: 0;
  line-height: 1.05;
}

.auth-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 28px;
}

.auth-card-brand .brand-word {
  font-size: 18px;
}

.auth-eyebrow {
  margin-bottom: 4px;
}

.divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 24px 0;
  color: var(--muted);
  font-size: 13px;
}

.divider::before,
.divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--line);
}

.auth-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 18px 0;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.auth-divider::before,
.auth-divider::after {
  content: "";
  flex: 1;
  height: 1px;
  background: var(--line);
}

.google-auth-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  width: 100%;
  min-height: 50px;
  padding: 0 18px;
  border: 1px solid rgba(191, 211, 242, 0.84);
  border-radius: 16px;
  color: #172033;
  background:
    linear-gradient(180deg, #ffffff, #f8fbff);
  box-shadow: 0 14px 32px rgba(18, 60, 145, 0.08);
  cursor: pointer;
  font-weight: 900;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.google-auth-button:hover {
  border-color: rgba(31, 105, 213, 0.28);
  box-shadow: 0 18px 42px rgba(18, 60, 145, 0.12);
  transform: translateY(-1px);
}

.google-auth-button:disabled {
  cursor: progress;
  opacity: 0.78;
  transform: none;
}

.google-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
}

.auth-form,
.settings-page {
  display: grid;
  gap: 18px;
}

.auth-subtitle,
.auth-help,
.forgot-link {
  margin: 0 0 18px;
  color: var(--muted);
  line-height: 1.55;
}

.password-label-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.forgot-inline {
  color: var(--blue-2);
  font-size: 13px;
  font-weight: 850;
}

.forgot-inline:hover {
  color: var(--blue);
}

.password-input-wrap {
  position: relative;
  display: block;
}

.password-input-wrap input {
  padding-right: 56px;
}

.password-toggle {
  position: absolute;
  top: 50%;
  right: 9px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 13px;
  color: #3f5d91;
  background: rgba(238, 244, 255, 0.88);
  cursor: pointer;
  transform: translateY(-50%);
  transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.password-toggle:hover,
.password-toggle[aria-pressed="true"] {
  color: var(--blue-2);
  background: #e8f0ff;
}

.password-toggle:focus-visible {
  outline: 3px solid rgba(31, 105, 213, 0.22);
  outline-offset: 2px;
}

.password-toggle .icon {
  width: 18px;
  height: 18px;
}

.auth-email-target {
  display: inline-flex;
  width: fit-content;
  margin: 0 0 18px;
  padding: 8px 12px;
  border-radius: 999px;
  color: var(--blue);
  background: #eef5ff;
  font-weight: 850;
}

.auth-error {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(159, 58, 69, 0.18);
  border-radius: 14px;
  color: #9f3a45;
  background: #fff4f6;
  font-weight: 800;
}

.turnstile-widget {
  display: none;
  min-width: 0;
}

.turnstile-widget[data-turnstile-state="rendered"],
.turnstile-widget[data-turnstile-state="ready"],
.turnstile-widget[data-turnstile-state="expired"],
.turnstile-widget[data-turnstile-state="error"],
.turnstile-widget[data-turnstile-state="blocked"] {
  display: grid;
}

.turnstile-widget-box {
  min-height: 65px;
}

.turnstile-widget[data-turnstile-state="error"] .turnstile-widget-box,
.turnstile-widget[data-turnstile-state="blocked"] .turnstile-widget-box {
  min-height: 65px;
}

.auth-success {
  margin: 0;
}

.legal-check {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: 11px;
  padding: 13px 14px;
  border: 1px solid rgba(31, 105, 213, 0.13);
  border-radius: 16px;
  color: var(--muted);
  background: rgba(248, 251, 255, 0.9);
  font-size: 12.5px;
  font-weight: 750;
  line-height: 1.45;
}

.legal-check input {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  accent-color: var(--blue-2);
}

.legal-check a {
  color: var(--blue-2);
  font-weight: 900;
}

.remember-check {
  align-items: center;
  padding: 10px 12px;
  border-color: rgba(31, 105, 213, 0.1);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.68);
  color: #53627d;
  font-size: 13px;
}

.remember-check input {
  margin-top: 0;
}

.auth-form .primary-button:disabled {
  cursor: not-allowed;
  opacity: 0.62;
  box-shadow: 0 10px 24px rgba(31, 105, 213, 0.16);
}

.code-input {
  text-align: center;
  font-size: 24px;
  font-weight: 900;
  letter-spacing: 0.18em;
}

label {
  display: grid;
  gap: 8px;
  color: #33415f;
  font-size: 14px;
  font-weight: 800;
}

input,
textarea,
select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 16px;
  padding: 14px 15px;
  color: var(--ink);
  background: #fff;
  outline: none;
}

textarea {
  min-height: 118px;
  resize: vertical;
  line-height: 1.5;
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--blue-2);
  box-shadow: 0 0 0 4px rgba(31, 105, 213, 0.1);
}

input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 0;
}

.switch-auth {
  margin-top: 22px;
  color: var(--muted);
  text-align: center;
}

.switch-auth a {
  color: var(--blue-2);
  font-weight: 800;
}

.app-shell {
  --dashboard-sidebar-width: 248px;
  --dashboard-sidebar-collapsed-width: 70px;
  --sidebar-ease: cubic-bezier(0.22, 1, 0.36, 1);
  display: grid;
  grid-template-columns: var(--dashboard-sidebar-collapsed-width) minmax(0, 1fr);
  min-height: 100vh;
}

.app-shell.sidebar-collapsed {
  grid-template-columns: var(--dashboard-sidebar-collapsed-width) minmax(0, 1fr);
}

.app-shell.admin-shell {
  grid-template-columns: var(--dashboard-sidebar-width) minmax(0, 1fr);
}

.sidebar {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
  display: flex;
  flex-direction: column;
  width: var(--dashboard-sidebar-width);
  height: 100vh;
  overflow-y: auto;
  padding: 18px 16px;
  border-right: 1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 255, 0.96)),
    #fff;
  box-shadow: 18px 0 44px rgba(13, 30, 63, 0.11);
  scrollbar-width: none;
  transition:
    width 260ms var(--sidebar-ease),
    padding 260ms var(--sidebar-ease),
    box-shadow 220ms ease,
    background 220ms ease,
    transform 280ms var(--sidebar-ease);
  will-change: width, padding;
}

.sidebar-backdrop {
  display: none;
}

.app-shell.sidebar-collapsed .sidebar {
  box-shadow: none;
}

.app-shell.sidebar-collapsed .sidebar {
  overflow-y: hidden;
}

.sidebar::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.sidebar-head-actions {
  display: inline-flex;
  gap: 8px;
}

.sidebar-collapse-button {
  display: inline-flex;
}

.sidebar-collapse-button .icon,
.sidebar-toggle .icon {
  transition: transform 220ms cubic-bezier(0.22, 1, 0.36, 1), opacity 180ms ease;
}

.sidebar-collapse-button:hover,
.sidebar-toggle:hover {
  transform: translateY(-1px);
}

.app-shell.sidebar-collapsed .sidebar-collapse-button .icon {
  transform: rotate(180deg);
}

.app-shell.sidebar-collapsed .sidebar {
  width: var(--dashboard-sidebar-collapsed-width);
  padding: 16px 10px;
}

.sidebar .brand,
.side-nav a,
.sidebar-link-button,
.sidebar-upgrade,
.sidebar .sidebar-toggle {
  transition:
    opacity 180ms ease,
    transform 180ms ease,
    max-width 260ms var(--sidebar-ease),
    background-color 180ms ease,
    color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.brand-word,
.side-nav a span,
.sidebar-link-button span,
.sidebar-upgrade {
  opacity: 1;
  transform: translateX(0);
  visibility: visible;
  transition:
    opacity 180ms ease 90ms,
    transform 180ms ease 90ms,
    visibility 0ms linear 90ms,
    max-width 260ms var(--sidebar-ease);
}

.side-nav a span,
.sidebar-link-button span {
  display: inline-block;
  max-width: 172px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.brand-word {
  display: inline-block;
  max-width: 150px;
  overflow: hidden;
}

.app-shell.sidebar-collapsed .brand-word,
.app-shell.sidebar-collapsed .side-nav a span,
.app-shell.sidebar-collapsed .sidebar-link-button span {
  max-width: 0;
  opacity: 0;
  transform: translateX(-6px);
  visibility: hidden;
  transition:
    opacity 120ms ease,
    transform 120ms ease,
    visibility 0ms linear 120ms,
    max-width 220ms var(--sidebar-ease);
}

.app-shell.sidebar-collapsed .sidebar-head {
  justify-content: center;
}

.app-shell.sidebar-collapsed .sidebar-head .brand {
  max-width: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  transform: translateX(-6px);
}

.app-shell.sidebar-collapsed .side-nav a,
.app-shell.sidebar-collapsed .sidebar-link-button {
  display: flex;
  gap: 0;
  justify-content: center;
  width: 42px;
  height: 42px;
  min-height: 42px;
  margin-inline: auto;
  padding: 0;
  border-radius: 15px;
}

.app-shell.sidebar-collapsed .side-nav a .icon,
.app-shell.sidebar-collapsed .sidebar-link-button .icon {
  width: 19px;
  height: 19px;
  margin: 0;
}

.app-shell.sidebar-collapsed .sidebar-footer {
  align-items: center;
  width: 100%;
  gap: 10px;
}

.app-shell.sidebar-collapsed .sidebar-upgrade {
  max-height: 0;
  margin: 0;
  padding: 0;
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  transform: translateX(-6px);
  transition:
    opacity 120ms ease,
    transform 120ms ease,
    max-height 220ms var(--sidebar-ease),
    padding 220ms var(--sidebar-ease);
}

.sidebar-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.sidebar .sidebar-toggle {
  display: none;
}

.side-nav {
  display: grid;
  gap: 5px;
}

.app-shell.sidebar-collapsed .side-nav {
  gap: 8px;
}

.side-nav a {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 0 11px;
  border: 1px solid transparent;
  border-radius: 14px;
  color: #53627d;
  font-size: 13.5px;
  font-weight: 820;
  line-height: 1.2;
  white-space: nowrap;
  transition:
    transform 180ms ease,
    background-color 180ms ease,
    color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.side-nav a .icon,
.sidebar-link-button .icon {
  flex: 0 0 auto;
  width: 18.5px;
  height: 18.5px;
  transform-origin: center;
  transition: transform 0.2s cubic-bezier(0.22, 1, 0.36, 1), filter 0.2s ease, color 0.2s ease;
}

.side-nav a:hover,
.side-nav .active {
  color: var(--blue);
  border-color: rgba(31, 105, 213, 0.12);
  background: linear-gradient(135deg, #eef5ff, #f6f2ff);
  transform: translateX(2px);
}

.side-nav a:hover .icon,
.side-nav a:focus-visible .icon {
  transform: translateY(-1px) scale(1.06);
  filter: drop-shadow(0 7px 12px rgba(31, 105, 213, 0.2));
}

.side-nav a:hover span,
.side-nav a:focus-visible span {
  color: #123c91;
}

.side-nav .active {
  box-shadow: 0 12px 26px rgba(18, 60, 145, 0.08);
}

.sidebar-footer {
  display: grid;
  gap: 8px;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid rgba(229, 234, 244, 0.9);
}

.sidebar-upgrade {
  max-height: 220px;
  padding: 12px;
  border-radius: 16px;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--purple));
  box-shadow: 0 16px 34px rgba(18, 60, 145, 0.14);
}

.sidebar-upgrade span {
  display: block;
  font-size: 12px;
  font-weight: 850;
  opacity: 0.9;
}

.sidebar-upgrade strong {
  display: block;
  margin: 5px 0 11px;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.35;
}

.sidebar-upgrade .primary-button,
.sidebar-upgrade .secondary-button {
  min-height: 34px;
  padding: 0 12px;
  font-size: 12px;
}

.sidebar-upgrade .primary-button {
  color: var(--blue);
  background: #fff;
  box-shadow: none;
}

.sidebar-link-button {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 38px;
  width: 100%;
  padding: 0 11px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.86);
  color: #51617c;
  cursor: pointer;
  font: inherit;
  font-size: 13.5px;
  font-weight: 820;
  transition:
    transform 180ms ease,
    background-color 180ms ease,
    color 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.sidebar-link-button:hover {
  color: var(--blue);
  background: #f3f8ff;
  transform: translateX(2px);
}

.sidebar-link-button.danger {
  color: #9f3a45;
  background: #fff7f8;
}

.sidebar-link-button.danger:hover {
  border-color: rgba(159, 58, 69, 0.22);
  background: #fff0f2;
}

.dashboard-main {
  grid-column: 2;
  min-width: 0;
}

.dashboard-topbar {
  position: sticky;
  top: 0;
  z-index: 20;
  padding: 16px 28px;
  border-bottom: 1px solid var(--line);
  background: rgba(247, 250, 255, 0.86);
  backdrop-filter: blur(16px);
  transition:
    background 220ms ease,
    box-shadow 220ms ease,
    border-color 220ms ease;
}

.dashboard-topbar h1 {
  margin: 4px 0 0;
  font-size: 28px;
}

.dashboard-topbar .sidebar-toggle {
  display: none;
}

.topbar-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.dashboard-guide-link {
  align-items: center;
  background: #fff;
  border: 1px solid rgba(37, 99, 235, 0.16);
  border-radius: 999px;
  color: var(--muted);
  cursor: pointer;
  display: inline-flex;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  gap: 7px;
  min-height: 38px;
  padding: 0 13px;
  white-space: nowrap;
}

.dashboard-guide-link:hover {
  background: #eef5ff;
  color: var(--blue);
}

.dashboard-guide-link .icon {
  height: 16px;
  width: 16px;
}

.dashboard-search {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1;
  max-width: 460px;
  padding: 0 14px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--muted);
}

.dashboard-search input {
  border: 0;
  box-shadow: none;
  padding: 11px 0;
  background: transparent;
}

.user-menu-wrap {
  position: relative;
}

.user-menu {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 40px;
  padding: 0 14px 0 5px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: var(--ink);
  cursor: pointer;
  font-weight: 800;
}

.user-menu span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--purple));
}

.user-dropdown {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 35;
  display: none;
  min-width: 286px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.98);
  box-shadow: 0 22px 55px rgba(13, 30, 63, 0.14);
}

.user-menu-wrap.open .user-dropdown {
  display: grid;
  gap: 4px;
}

.user-dropdown-head {
  display: grid;
  gap: 4px;
  padding: 12px 12px 10px;
  border-bottom: 1px solid var(--line);
  margin-bottom: 4px;
}

.user-dropdown-head strong {
  color: var(--ink);
  font-size: 14px;
  line-height: 1.25;
}

.user-dropdown-head small,
.user-dropdown-head span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.user-dropdown button {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 40px;
  width: 100%;
  padding: 0 11px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  color: #4a5973;
  cursor: pointer;
  font: inherit;
  font-size: 14px;
  font-weight: 800;
  text-align: left;
}

.user-dropdown button:hover {
  color: var(--blue);
  background: #eef5ff;
}

.template-preview-dialog.onboarding-guide-dialog {
  width: min(calc(100vw - 64px), 760px);
  height: auto;
  max-height: min(720px, calc(100dvh - 56px));
  overflow: hidden;
}

.onboarding-guide-header {
  align-items: flex-start;
  padding: 18px 22px 14px;
}

.onboarding-guide-header h2 {
  margin: 6px 0 6px;
  font-size: clamp(22px, 1.8vw, 29px);
  line-height: 1.12;
  letter-spacing: 0;
}

.onboarding-guide-header p {
  max-width: 620px;
  font-size: clamp(14px, 1.05vw, 15.5px);
  line-height: 1.38;
}

.onboarding-guide-steps {
  display: grid;
  gap: 8px;
  min-height: 0;
  overflow: auto;
  padding: 12px 22px 14px;
  scrollbar-width: thin;
  scrollbar-color: rgba(31, 105, 213, 0.26) transparent;
}

.onboarding-guide-step {
  align-items: center;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border: 1px solid rgba(37, 99, 235, 0.16);
  border-radius: 16px;
  display: grid;
  gap: 12px;
  grid-template-columns: 46px 1fr;
  min-height: 74px;
  padding: 11px 14px;
  box-shadow: 0 12px 32px rgba(25, 70, 144, 0.04);
}

.onboarding-guide-step-icon {
  align-items: center;
  background: #eef5ff;
  border: 1px solid rgba(37, 99, 235, 0.14);
  border-radius: 15px;
  color: var(--blue);
  display: inline-flex;
  height: 46px;
  justify-content: center;
  width: 46px;
}

.onboarding-guide-step-icon .icon {
  height: 20px;
  width: 20px;
}

.onboarding-guide-step small {
  color: var(--blue);
  display: block;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  margin-bottom: 6px;
}

.onboarding-guide-step h3 {
  color: var(--ink);
  font-size: 18px;
  line-height: 1.14;
  margin: 0 0 4px;
}

.onboarding-guide-step p {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.32;
  margin: 0;
}

.onboarding-guide-actions {
  gap: 12px;
  justify-content: center;
  padding: 10px 22px;
}

.onboarding-guide-actions .primary-button,
.onboarding-guide-actions .secondary-button,
.onboarding-guide-actions .ghost-button {
  min-height: 44px;
  padding-inline: 22px;
  font-size: 14px;
  white-space: nowrap;
}

@media (max-height: 760px) and (min-width: 720px) {
  .template-preview-dialog.onboarding-guide-dialog {
    width: min(calc(100vw - 72px), 700px);
    max-height: min(620px, calc(100dvh - 48px));
  }

  .onboarding-guide-header {
    padding: 14px 20px 10px;
  }

  .onboarding-guide-header h2 {
    margin-block: 4px 5px;
    font-size: clamp(21px, 1.55vw, 26px);
  }

  .onboarding-guide-header p {
    max-width: 580px;
    font-size: 13.5px;
    line-height: 1.3;
  }

  .onboarding-guide-steps {
    gap: 7px;
    padding: 10px 20px 10px;
  }

  .onboarding-guide-step {
    grid-template-columns: 42px 1fr;
    min-height: 64px;
    padding: 9px 12px;
  }

  .onboarding-guide-step-icon {
    height: 42px;
    width: 42px;
  }

  .onboarding-guide-step-icon .icon {
    height: 18px;
    width: 18px;
  }

  .onboarding-guide-step h3 {
    font-size: 16px;
  }

  .onboarding-guide-step p {
    font-size: 13px;
    line-height: 1.26;
  }

  .onboarding-guide-actions {
    padding: 8px 20px;
  }

  .onboarding-guide-actions .primary-button,
  .onboarding-guide-actions .secondary-button,
  .onboarding-guide-actions .ghost-button {
    min-height: 40px;
    padding-inline: 18px;
  }
}

.dashboard-content,
.settings-page,
.ai-page,
.builder-page {
  padding: 28px;
}

.workspace-home {
  display: grid;
  gap: 26px;
}

.workspace-hero {
  display: grid;
  position: relative;
  isolation: isolate;
  grid-template-columns: minmax(0, 1fr) minmax(286px, 360px);
  gap: clamp(22px, 3.2vw, 42px);
  padding: clamp(28px, 3.2vw, 42px);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 30px;
  align-items: stretch;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 84% 12%, rgba(105, 216, 242, 0.28), transparent 28%),
    radial-gradient(circle at 12% 0%, rgba(155, 124, 247, 0.22), transparent 32%),
    linear-gradient(135deg, #081632, #123c91 58%, #7663e8);
  box-shadow:
    0 28px 80px rgba(18, 60, 145, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
  animation: dashboardFadeUp 0.72s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.workspace-hero::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: -1;
  border-radius: inherit;
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.13), transparent 42%),
    radial-gradient(circle at 72% 78%, rgba(255, 255, 255, 0.11), transparent 34%);
  pointer-events: none;
}

.workspace-hero::after {
  content: "";
  position: absolute;
  inset: auto 28px 18px auto;
  z-index: -1;
  width: min(44%, 460px);
  height: 42%;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 34px;
  background:
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.05) 0 1px, transparent 1px 18px),
    linear-gradient(135deg, rgba(255, 255, 255, 0.1), transparent);
  transform: rotate(-4deg);
  pointer-events: none;
}

.workspace-hero-glow {
  position: absolute;
  inset: -36% auto auto 48%;
  z-index: -1;
  width: 420px;
  height: 420px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(105, 216, 242, 0.24), transparent 62%);
  filter: blur(8px);
  opacity: 0.8;
  animation: dashboardGlowDrift 11s ease-in-out infinite;
  pointer-events: none;
}

.workspace-hero-main {
  display: grid;
  align-content: center;
  gap: clamp(16px, 2vw, 22px);
  min-width: 0;
}

.workspace-hero-copy {
  display: grid;
  gap: 13px;
  max-width: 720px;
}

.hero-kicker-row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.workspace-hero h2 {
  margin: 0;
  max-width: 700px;
  font-size: clamp(30px, 3.35vw, 48px);
  line-height: 1.05;
  letter-spacing: 0;
  text-wrap: balance;
}

.workspace-hero p {
  margin: 0;
  max-width: 600px;
  color: rgba(229, 238, 255, 0.9);
  font-size: 15.5px;
  line-height: 1.56;
}

.plan-badge {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 12px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  color: #fff;
  background: rgba(255, 255, 255, 0.12);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.main-resume-card {
  display: grid;
  position: relative;
  align-self: stretch;
  align-content: center;
  gap: 14px;
  min-width: 0;
  min-height: 238px;
  padding: clamp(18px, 2.2vw, 26px);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 26px;
  background:
    radial-gradient(circle at 92% 8%, rgba(105, 216, 242, 0.2), transparent 30%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0.09));
  box-shadow:
    0 20px 52px rgba(5, 16, 42, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
  backdrop-filter: blur(14px);
  animation: dashboardFadeUp 0.72s 0.12s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.progress-card-orbit {
  position: absolute;
  right: -48px;
  top: -58px;
  width: 164px;
  height: 164px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 999px;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.14), transparent 62%);
  pointer-events: none;
}

.main-resume-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
}

.main-resume-card span,
.main-resume-card p {
  color: rgba(229, 238, 255, 0.88);
}

.main-resume-card-top span {
  max-width: min(220px, 70%);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.main-resume-card strong {
  display: block;
  color: #fff;
  font-size: 14px;
  line-height: 1.35;
}

.main-resume-card em {
  flex: 0 0 auto;
  color: #fff;
  font-style: normal;
  font-size: clamp(30px, 3.4vw, 44px);
  font-weight: 900;
  line-height: 0.95;
  animation: dashboardNumberPop 0.72s 0.42s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.main-resume-card .progress {
  height: 10px;
  margin: 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.16);
  overflow: hidden;
}

.main-resume-card .progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #69d8f2, #8ee8f7 44%, #ffffff);
  box-shadow: 0 0 24px rgba(105, 216, 242, 0.42);
  transform-origin: left;
  animation: dashboardProgressGrow 1s 0.34s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.progress-chip-row,
.mini-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  min-width: 0;
}

.progress-chip-row span,
.mini-chip-row span {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  max-width: 100%;
  padding: 0 10px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.92);
  background: rgba(255, 255, 255, 0.1);
  font-size: 11.5px;
  font-weight: 850;
  line-height: 1.2;
  overflow-wrap: anywhere;
  animation: dashboardChipIn 0.56s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.progress-chip-row span:nth-child(2),
.mini-chip-row span:nth-child(2) {
  animation-delay: 0.08s;
}

.progress-chip-row span:nth-child(3),
.mini-chip-row span:nth-child(3) {
  animation-delay: 0.16s;
}

.mini-chip-row span:nth-child(4) {
  animation-delay: 0.24s;
}

.main-resume-card p {
  display: grid;
  gap: 4px;
  max-width: 280px;
  font-size: 13px;
  line-height: 1.5;
}

.main-resume-card p small {
  color: rgba(255, 255, 255, 0.58);
  font-size: 10.5px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.workspace-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.96fr) minmax(0, 0.96fr);
  gap: var(--grid-gap);
}

.admin-shell .dashboard-main {
  background:
    radial-gradient(circle at 82% 0%, rgba(155, 124, 247, 0.1), transparent 30%),
    linear-gradient(180deg, #f7faff, #fff);
}

.admin-content {
  display: grid;
  gap: 22px;
  max-width: 100%;
}

.admin-flash {
  margin: 0;
}

.admin-restricted {
  display: grid;
  place-items: center;
  min-height: calc(100vh - 92px);
  padding: var(--page-x);
}

.admin-restricted .settings-card {
  width: min(100%, 560px);
  padding: clamp(24px, 4vw, 38px);
  text-align: center;
}

.admin-restricted h1 {
  margin: 10px 0 22px;
  font-size: clamp(34px, 5vw, 54px);
}

.admin-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.admin-metric-card {
  display: grid;
  gap: 10px;
  min-height: 132px;
  padding: 20px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 20px;
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.14), transparent 32%),
    rgba(255, 255, 255, 0.94);
  box-shadow: 0 16px 42px rgba(18, 60, 145, 0.08);
}

.admin-metric-card.featured {
  border-color: rgba(31, 105, 213, 0.22);
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.24), transparent 34%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(239, 246, 255, 0.96));
  box-shadow: 0 22px 58px rgba(18, 60, 145, 0.13);
}

.admin-metric-card span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.35;
}

.admin-metric-card strong {
  color: var(--ink);
  font-size: clamp(30px, 3vw, 42px);
  line-height: 1;
}

.admin-panel {
  display: grid;
  gap: 18px;
  padding: clamp(18px, 2.2vw, 26px);
  border-color: rgba(31, 105, 213, 0.1);
  box-shadow: 0 18px 52px rgba(18, 60, 145, 0.08);
}

.admin-filter-row {
  display: flex;
  justify-content: flex-end;
  gap: 12px;
}

.admin-filter-row select,
.admin-form select,
.admin-form input,
.admin-form textarea {
  width: 100%;
  min-height: 42px;
  padding: 0 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: #fff;
  color: var(--ink);
}

.admin-form textarea {
  min-height: 132px;
  padding: 12px;
  resize: vertical;
  line-height: 1.55;
}

.admin-filter-row select {
  max-width: 260px;
}

.admin-table-wrap {
  width: 100%;
  overflow-x: auto;
  border: 1px solid rgba(229, 234, 244, 0.88);
  border-radius: 18px;
  background: #fff;
}

.admin-table {
  width: 100%;
  min-width: 1380px;
  border-collapse: collapse;
}

.admin-compact-table {
  min-width: 980px;
}

.admin-table th,
.admin-table td {
  padding: 13px 15px;
  border-bottom: 1px solid rgba(229, 234, 244, 0.88);
  text-align: left;
  vertical-align: middle;
}

.admin-table th {
  color: #123c91;
  background: linear-gradient(180deg, #f3f8ff, #eaf3ff);
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: 0;
  white-space: nowrap;
}

.admin-table td {
  color: #3e4f6f;
  font-size: 13.5px;
  font-weight: 700;
}

.admin-table code {
  color: #123c91;
  font-size: 12px;
  white-space: nowrap;
}

.admin-action-cell {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 340px;
}

.admin-badge {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 5px 9px;
  border-radius: 999px;
  color: #123c91;
  background: #eef5ff;
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.admin-badge.payment-pending_payment,
.admin-badge.payment-pending_manual_confirmation,
.admin-badge.payment-pending {
  color: #875d00;
  background: #fff7db;
}

.admin-badge.payment-approved,
.admin-badge.payment-paid,
.admin-badge.account-active {
  color: #166138;
  background: #e9f8ef;
}

.admin-badge.payment-rejected,
.admin-badge.payment-cancelled,
.admin-badge.payment-failed,
.admin-badge.payment-refunded,
.admin-badge.account-blocked {
  color: #9f3a45;
  background: #fff0f2;
}

.admin-badge.plan-pro {
  color: #123c91;
  background: #e9f2ff;
}

.admin-badge.plan-premium {
  color: #5b3fb4;
  background: #f3efff;
}

.admin-dialog {
  width: min(960px, calc(100vw - 24px));
  max-height: calc(100vh - 28px);
}

.admin-dialog-content {
  display: block;
  padding: 22px;
  overflow: auto;
}

.admin-form {
  display: grid;
  gap: 16px;
}

.admin-form label {
  display: grid;
  gap: 7px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 900;
}

.admin-dialog-actions {
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 4px;
}

.admin-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.admin-detail-section {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: rgba(247, 250, 255, 0.78);
}

.admin-detail-section h3 {
  margin: 0 0 14px;
  color: var(--ink);
}

.admin-detail-section dl {
  display: grid;
  gap: 10px;
  margin: 0;
}

.admin-detail-section dl div,
.admin-detail-list article {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid rgba(229, 234, 244, 0.82);
}

.admin-detail-section dt {
  color: var(--muted);
  font-weight: 850;
}

.admin-detail-section dd {
  margin: 0;
  color: var(--ink);
  font-weight: 900;
  text-align: right;
}

.admin-detail-list {
  display: grid;
}

.admin-detail-list article:last-child,
.admin-detail-section dl div:last-child {
  border-bottom: 0;
}

.admin-detail-list strong {
  color: var(--ink);
}

.admin-detail-list span,
.admin-detail-section p {
  color: var(--muted);
}

.admin-settings-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.admin-settings-grid article {
  display: grid;
  gap: 8px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.08), transparent 30%),
    #fff;
  box-shadow: 0 12px 32px rgba(18, 60, 145, 0.06);
}

.admin-settings-grid span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}

.admin-settings-grid strong {
  color: var(--ink);
  overflow-wrap: anywhere;
}

:root[data-theme="dark"] .admin-metric-card.featured,
:root[data-theme="dark"] .admin-settings-grid article {
  border-color: rgba(105, 216, 242, 0.2);
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.11), transparent 34%),
    rgba(16, 27, 52, 0.94);
}

.card-head,
.section-row-heading,
.resume-card-top,
.resume-actions,
.card-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.card-head > *,
.section-row-heading > *,
.resume-actions > *,
.card-actions > *,
.workspace-hero > *,
.dash-card > *,
.recent-resume-card > *,
.price-card > *,
.builder-card > *,
.sidebar-upgrade > * {
  min-width: 0;
}

.card-head h3,
.section-row-heading h2 {
  margin: 0;
}

.card-head span,
.resume-card-top span {
  padding: 7px 10px;
  border-radius: 999px;
  color: var(--blue);
  background: #eef5ff;
  font-size: 12px;
  font-weight: 900;
}

.ai-tools-card,
.workspace-upgrade {
  display: grid;
  gap: 16px;
}

.workspace-home .dash-card {
  position: relative;
  display: grid;
  align-content: start;
  gap: 15px;
  min-height: 292px;
  overflow: hidden;
  padding: clamp(20px, 2.2vw, 26px);
  border-color: rgba(214, 223, 239, 0.86);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 255, 0.88));
  box-shadow:
    0 18px 46px rgba(18, 60, 145, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
  animation: dashboardFadeUp 0.64s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.workspace-grid .dash-card:nth-child(1) { animation-delay: 0.12s; }
.workspace-grid .dash-card:nth-child(2) { animation-delay: 0.2s; }
.workspace-grid .dash-card:nth-child(3) { animation-delay: 0.28s; }

.workspace-home .dash-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--cyan), var(--blue-2), var(--purple));
  opacity: 0.74;
}

.workspace-home .dash-card::after {
  content: "";
  position: absolute;
  right: -54px;
  top: -58px;
  width: 150px;
  height: 150px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(31, 105, 213, 0.11), transparent 64%);
  pointer-events: none;
}

.workspace-home .dash-card:hover {
  transform: translateY(-5px);
  border-color: rgba(31, 105, 213, 0.18);
  box-shadow:
    0 26px 64px rgba(18, 60, 145, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.94);
}

.resume-status-card {
  background:
    radial-gradient(circle at 84% 0%, rgba(105, 216, 242, 0.14), transparent 30%),
    linear-gradient(145deg, #ffffff, #f6fbff);
}

.ai-tools-card {
  background:
    radial-gradient(circle at 88% 0%, rgba(155, 124, 247, 0.15), transparent 32%),
    linear-gradient(145deg, #ffffff, #f8f6ff);
}

.workspace-upgrade {
  background:
    radial-gradient(circle at 88% 0%, rgba(31, 105, 213, 0.13), transparent 34%),
    linear-gradient(145deg, #ffffff, #f7faff);
}

.dash-card-topline {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  min-width: 0;
}

.dash-card-topline > span:not(.eyebrow),
.dash-card-topline .eyebrow {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  max-width: 100%;
  padding: 0 11px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 999px;
  color: var(--blue);
  background: rgba(238, 245, 255, 0.82);
  font-size: 11.5px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: none;
  white-space: nowrap;
}

.workspace-home .dash-card h3 {
  margin: 0;
  max-width: 100%;
  font-size: clamp(19px, 1.8vw, 23px);
  line-height: 1.16;
  overflow-wrap: anywhere;
}

.workspace-home .dash-card p {
  max-width: 100%;
  font-size: 14px;
  line-height: 1.58;
}

.resume-status-meter {
  height: 9px;
  overflow: hidden;
  border-radius: 999px;
  background: #edf3fb;
}

.resume-status-meter span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--cyan), var(--blue-2), var(--purple));
  transform-origin: left;
  animation: dashboardProgressGrow 0.92s 0.24s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.workspace-home .task-list {
  gap: 8px;
  margin: 0;
}

.workspace-home .task-list li {
  align-items: center;
  min-height: 34px;
  padding: 8px 10px;
  border: 1px solid rgba(31, 105, 213, 0.08);
  border-radius: 13px;
  background: rgba(255, 255, 255, 0.68);
  font-size: 13.5px;
  line-height: 1.32;
}

.workspace-home .task-list li .icon {
  width: 17px;
  height: 17px;
}

.mini-chip-row span {
  border-color: rgba(31, 105, 213, 0.1);
  color: #425572;
  background: rgba(238, 245, 255, 0.78);
}

.card-bottom-action {
  align-self: end;
  margin-top: auto;
}

.workspace-home .card-actions {
  align-self: end;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-top: auto;
}

.workspace-home .card-actions .small {
  min-height: 38px;
}

.access-payment-detail {
  margin-top: 10px;
  padding: 10px 12px;
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 14px;
  color: var(--muted);
  background: rgba(247, 250, 255, 0.92);
  font-size: 14px;
  line-height: 1.5;
}

.template-preview-dialog.pix-payment-dialog {
  width: min(880px, calc(100vw - 24px));
  height: auto;
  max-height: min(88dvh, 680px);
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.template-preview-header.pix-payment-header {
  align-items: flex-start;
  padding: 12px 18px;
}

.template-preview-header.pix-payment-header h2 {
  margin-top: 6px;
  font-size: clamp(28px, 3.5vw, 42px);
  line-height: 1.08;
}

.template-preview-header.pix-payment-header p {
  font-size: 15px;
  line-height: 1.4;
}

.pix-payment-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
  gap: 18px;
  overflow: auto;
  padding: 18px;
}

.pix-data-form {
  display: grid;
  gap: 14px;
  overflow: auto;
  padding: 18px;
}

.pix-summary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.pix-summary-card,
.pix-review-card {
  padding: 14px 16px;
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 18px;
  background: linear-gradient(145deg, #ffffff, #f5fbff);
}

.pix-summary-card span,
.pix-review-card span {
  display: block;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.pix-summary-card strong,
.pix-review-card strong {
  display: block;
  margin-top: 4px;
  color: var(--ink);
  font-size: clamp(19px, 2vw, 22px);
  overflow-wrap: anywhere;
}

.pix-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px 14px;
}

.pix-form-grid label {
  display: grid;
  gap: 7px;
  color: var(--ink);
  font-weight: 800;
}

.pix-form-grid small {
  color: var(--muted);
  font-weight: 700;
}

.pix-form-grid input,
.pix-form-grid textarea {
  width: 100%;
  border: 1px solid rgba(191, 211, 242, 0.78);
  border-radius: 14px;
  padding: 10px 12px;
  color: var(--ink);
  background: #fff;
  font: inherit;
}

.pix-form-grid textarea {
  resize: vertical;
}

.pix-note-field {
  grid-column: 1 / -1;
}

.pix-qr-card {
  order: 2;
  display: grid;
  place-items: center;
  align-self: start;
  padding: 18px;
  border: 1px solid rgba(229, 234, 244, 0.95);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 45px rgba(18, 60, 145, 0.1);
}

.pix-qr-svg {
  width: min(320px, 100%);
  height: auto;
  color: #0b1736;
}

.pix-qr-svg rect:not(:first-child) {
  fill: currentColor;
}

.pix-payment-details {
  order: 1;
  display: grid;
  gap: 12px;
  min-width: 0;
}

.pix-payment-intro {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.pix-payment-details dl {
  display: grid;
  gap: 10px;
  margin: 0;
}

.pix-payment-details dl div {
  display: grid;
  grid-template-columns: 105px 1fr;
  gap: 12px;
  align-items: start;
}

.pix-payment-details dt {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.pix-payment-details dd {
  margin: 0;
  color: var(--ink);
  font-weight: 800;
  overflow-wrap: anywhere;
}

.pix-copy-field {
  display: grid;
  gap: 8px;
  color: var(--ink);
  font-weight: 800;
}

.pix-copy-field textarea {
  min-height: 82px;
  resize: vertical;
  border: 1px solid rgba(229, 234, 244, 0.95);
  border-radius: 16px;
  padding: 12px;
  color: #263757;
  background: #f8fbff;
  font-family: ui-monospace, SFMono-Regular, Consolas, "Liberation Mono", monospace;
  font-size: 12px;
  line-height: 1.45;
}

.pix-payment-warning {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 14px;
  color: var(--muted);
  background: rgba(238, 245, 255, 0.72);
  line-height: 1.45;
}

.pix-payment-message {
  margin: 0;
}

.pix-loading-state,
.pix-review-state {
  display: grid;
  justify-items: center;
  gap: 14px;
  padding: 34px 24px 30px;
  text-align: center;
}

.pix-loading-state h3,
.pix-review-state h3 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(25px, 4vw, 36px);
}

.pix-loading-state p,
.pix-review-state p {
  width: min(560px, 100%);
  margin: 0;
  color: var(--muted);
  line-height: 1.6;
}

.pix-review-state small {
  color: var(--muted);
  font-weight: 800;
}

.pix-spinner {
  width: 56px;
  height: 56px;
  border: 4px solid rgba(31, 105, 213, 0.12);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: pixSpin 0.9s linear infinite;
}

.pix-review-card {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  width: min(680px, 100%);
  margin-top: 8px;
}

@keyframes pixSpin {
  to {
    transform: rotate(360deg);
  }
}

.payment-history-list {
  display: grid;
  gap: 12px;
}

.payment-history-item {
  display: grid;
  grid-template-columns: 1fr auto auto auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid rgba(229, 234, 244, 0.92);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.74);
}

.payment-history-item div {
  display: grid;
  gap: 4px;
}

.payment-history-item span,
.payment-history-item small {
  color: var(--muted);
}

.payment-history-pagination {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 14px;
}

.payment-history-pagination span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
}

.payment-history-pagination .icon-button:disabled {
  cursor: not-allowed;
  opacity: 0.45;
}

.payment-status {
  justify-self: end;
  padding: 7px 10px;
  border-radius: 999px;
  color: #17456a;
  background: #eaf7ff;
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
}

.template-preview-dialog.payment-detail-dialog {
  width: min(760px, calc(100vw - 28px));
  height: auto;
  max-height: min(86dvh, 640px);
  grid-template-rows: auto minmax(0, 1fr) auto;
}

.payment-detail-dialog .template-preview-header {
  padding: 13px 18px;
}

.payment-detail-dialog .template-preview-header h2 {
  margin-top: 5px;
  font-size: clamp(25px, 3vw, 34px);
}

.payment-detail-content {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 14px;
  overflow: auto;
  padding: 18px;
}

.payment-detail-content .pix-copy-field textarea {
  min-height: 76px;
  max-height: 124px;
}

.payment-detail-list {
  display: grid;
  gap: 0;
  margin: 0;
}

.payment-detail-list div {
  display: grid;
  grid-template-columns: minmax(130px, 0.42fr) minmax(0, 1fr);
  gap: 14px;
  padding: 9px 0;
  border-bottom: 1px solid rgba(229, 234, 244, 0.82);
}

.payment-detail-list div:last-child {
  border-bottom: 0;
}

.payment-detail-list dt {
  color: var(--muted);
  font-weight: 850;
}

.payment-detail-list dd {
  margin: 0;
  color: var(--ink);
  font-weight: 900;
  overflow-wrap: anywhere;
}

.payment-detail-list code {
  color: #123c91;
  font-size: 12px;
  white-space: normal;
}

.payment-detail-dialog .template-preview-footer {
  gap: 10px;
  padding: 12px 18px;
}

.payment-status.status-pending_manual_confirmation {
  color: #5c3f00;
  background: #fff7dd;
}

.payment-status.status-approved,
.payment-status.status-paid {
  color: #05704f;
  background: #e8fff5;
}

.payment-status.status-pending {
  color: #5c3f00;
  background: #fff7dd;
}

.payment-status.status-rejected,
.payment-status.status-cancelled,
.payment-status.status-failed,
.payment-status.status-refunded {
  color: #823131;
  background: #fff0f0;
}

.ai-tools-card p,
.workspace-upgrade p,
.dash-card p,
.recent-resume-card p,
.price-card li,
.sidebar-upgrade strong {
  overflow-wrap: normal;
  word-break: normal;
}

.plan-strip {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  max-width: 100%;
}

.hero-commerce-actions {
  padding-top: 2px;
}

.hero-chip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 0 12px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  color: rgba(240, 246, 255, 0.9);
  background: rgba(255, 255, 255, 0.09);
  cursor: pointer;
  font-size: 12px;
  font-weight: 850;
  white-space: nowrap;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.hero-chip:hover {
  border-color: rgba(255, 255, 255, 0.28);
  background: rgba(255, 255, 255, 0.15);
  transform: translateY(-1px);
}

.workspace-hero .quick-actions {
  flex-wrap: wrap;
  gap: 10px;
  max-width: 100%;
}

.workspace-hero .primary-button,
.workspace-hero .secondary-button {
  flex: 0 0 auto;
  min-height: 46px;
  padding-inline: 18px;
  white-space: nowrap;
}

.workspace-hero .hero-primary-actions .primary-button {
  position: relative;
  overflow: hidden;
  min-width: min(100%, 220px);
  box-shadow:
    0 18px 42px rgba(18, 60, 145, 0.26),
    0 0 0 1px rgba(255, 255, 255, 0.18) inset;
}

.workspace-hero .hero-primary-actions .primary-button::after {
  content: "";
  position: absolute;
  inset: -40% auto -40% -64%;
  width: 44%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.34), transparent);
  transform: skewX(-18deg);
  opacity: 0;
  pointer-events: none;
}

.workspace-hero .hero-primary-actions .primary-button:hover::after {
  animation: dashboardButtonSheen 0.78s ease;
}

.workspace-hero .hero-primary-actions .secondary-button {
  border-color: rgba(255, 255, 255, 0.16);
  color: #fff;
  background: rgba(255, 255, 255, 0.1);
  box-shadow: none;
}

.workspace-hero .hero-primary-actions .secondary-button:hover {
  background: rgba(255, 255, 255, 0.16);
}

.dashboard-section {
  display: grid;
  gap: 16px;
}

.recent-resume-grid,
.next-step-grid {
  display: grid;
  gap: var(--grid-gap);
}

.recent-resume-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.next-step-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.recent-resume-card,
.next-step-card,
.empty-resume-state {
  border: 1px solid var(--line);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 14px 38px rgba(18, 60, 145, 0.07);
}

.recent-resume-card {
  padding: 20px;
}

.recent-resume-card h3 {
  margin: 16px 0 6px;
}

.recent-resume-card p {
  margin: 0;
  color: var(--muted);
}

.resume-meta {
  display: grid;
  gap: 9px;
  margin: 16px 0;
}

.resume-meta span {
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.resume-meta .progress {
  margin: 0;
  background: #edf3fb;
}

.resume-actions {
  justify-content: flex-start;
  flex-wrap: wrap;
}

.resume-library-controls {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) repeat(3, minmax(160px, 220px));
  gap: 12px;
  align-items: center;
  margin: 0 0 18px;
}

.resume-library-controls select {
  width: 100%;
  min-height: 46px;
  padding: 0 12px;
  border: 1px solid rgba(191, 211, 242, 0.8);
  border-radius: 16px;
  color: var(--ink);
  background: #fff;
  font: inherit;
  font-weight: 800;
}

.resume-library {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  width: 100%;
}

.resume-library-card {
  display: flex;
  flex-direction: column;
  gap: 0;
  min-width: 0;
  align-items: stretch;
  padding: 0;
  border: 1px solid rgba(191, 211, 242, 0.65);
  border-radius: 26px;
  background:
    radial-gradient(circle at 100% 0%, rgba(105, 216, 242, 0.09), transparent 28%),
    rgba(255, 255, 255, 0.96);
  box-shadow: 0 18px 52px rgba(18, 60, 145, 0.09);
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.resume-library-card:hover {
  transform: translateY(-3px);
  border-color: rgba(31, 105, 213, 0.2);
  box-shadow: 0 26px 68px rgba(18, 60, 145, 0.13);
}

.resume-library-card[hidden] {
  display: none;
}

.resume-library-card .resume-thumbnail {
  align-self: stretch;
  height: var(--resume-card-preview-height);
  min-height: 0;
  padding: var(--resume-card-preview-padding);
  border-radius: 0;
  border-bottom: 1px solid var(--line);
  background:
    linear-gradient(135deg, rgba(238, 245, 255, 0.9), rgba(255, 255, 255, 0.95));
}

.resume-library-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.resume-library-title-row h3 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(20px, 2vw, 25px);
  line-height: 1.15;
}

.resume-status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 6px 10px;
  border-radius: 999px;
  color: #123c91;
  background: #eef5ff;
  font-size: 11.5px;
  font-weight: 900;
  white-space: nowrap;
}

.resume-status-pill.status-draft {
  color: #6b4d00;
  background: #fff7dc;
}

.resume-status-pill.status-review {
  color: #123c91;
  background: #e8f2ff;
}

.resume-status-pill.status-ready,
.resume-status-pill.status-exported {
  color: #0d6b54;
  background: #e9f8f3;
}

.resume-actions > *,
.template-actions > *,
.builder-top-actions > *,
.preview-toolbar-actions > * {
  min-width: 0;
  overflow-wrap: anywhere;
}

.next-step-card {
  position: relative;
  overflow: hidden;
  display: grid;
  align-content: start;
  gap: 12px;
  min-height: 150px;
  padding: 18px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(247, 250, 255, 0.84));
  transition: transform 0.24s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.24s ease, border-color 0.24s ease;
  animation: dashboardFadeUp 0.58s var(--step-delay, 0ms) cubic-bezier(0.22, 1, 0.36, 1) both;
}

.next-step-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, rgba(105, 216, 242, 0.8), rgba(155, 124, 247, 0.75));
  opacity: 0;
  transition: opacity 0.2s ease;
}

.next-step-card:hover {
  transform: translateY(-4px);
  border-color: rgba(31, 105, 213, 0.16);
  box-shadow: 0 24px 58px rgba(18, 60, 145, 0.12);
}

.next-step-card:hover::before {
  opacity: 1;
}

.next-step-card:hover .feature-icon,
.workspace-home .dash-card:hover .feature-icon {
  transform: translateY(-2px);
}

.next-step-card h3 {
  margin: 0;
  font-size: 15.5px;
  line-height: 1.32;
  overflow-wrap: anywhere;
}

.empty-resume-state {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px;
}

.empty-resume-state h3 {
  margin: 0 0 4px;
}

.empty-resume-state p {
  margin: 0;
  color: var(--muted);
}

.mobile-bottom-nav {
  display: none;
}

.welcome-panel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 24px;
  padding: 32px;
  border-radius: 28px;
  color: #fff;
  background:
    radial-gradient(circle at 86% 18%, rgba(105, 216, 242, 0.28), transparent 28%),
    linear-gradient(135deg, #0b1736, #123c91 62%, #6757d8);
  box-shadow: var(--shadow);
}

.welcome-panel h2 {
  margin: 10px 0;
  max-width: 650px;
  font-size: clamp(28px, 4vw, 46px);
  line-height: 1.08;
}

.welcome-panel p {
  max-width: 620px;
  color: #dce8ff;
  line-height: 1.7;
}

.score-card {
  padding: 22px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.11);
}

.progress {
  height: 9px;
  overflow: hidden;
  margin: 18px 0;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.25);
}

.progress span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--cyan), var(--purple));
}

.dashboard-grid {
  grid-template-columns: 1.3fr 0.85fr 0.85fr;
  margin-top: 24px;
}

.dash-card,
.settings-card,
.ai-input-panel,
.ats-score,
.empty-state {
  padding: 26px;
}

.resume-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 0;
  border-top: 1px solid var(--line);
}

.resume-row > div {
  display: flex;
  align-items: center;
  gap: 12px;
}

.resume-row span {
  color: var(--muted);
  font-size: 13px;
}

.upgrade-card {
  background: linear-gradient(180deg, #fff, #f3efff);
}

.page-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 22px;
}

.resume-library {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.library-card {
  overflow: hidden;
}

.library-card .template-card {
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.library-card .template-paper {
  min-height: 0;
}

.library-card .template-card h3,
.library-card .template-card p {
  display: none;
}

.library-card .template-card-meta {
  display: none;
}

.resume-library-card {
  display: flex;
  flex-direction: column;
}

.resume-library-card .resume-library-title-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
}

.resume-library-card .resume-library-title-row h3 {
  overflow-wrap: normal;
  word-break: normal;
  hyphens: none;
}

.resume-thumbnail {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  height: 260px;
  padding: 18px;
  border-bottom: 1px solid var(--line);
  background:
    radial-gradient(circle at 18% 8%, rgba(105, 216, 242, 0.13), transparent 30%),
    linear-gradient(180deg, #f8fbff, #eef5ff);
}

.resume-thumbnail .resume-document {
  box-shadow: 0 16px 36px rgba(18, 60, 145, 0.14);
  transition: box-shadow 0.24s ease;
}

.library-meta {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 18px;
}

.library-meta h3 {
  margin: 0 0 6px;
}

.library-meta p {
  margin: 0 0 16px;
  color: var(--muted);
}

.library-meta .resume-actions {
  margin-top: auto;
}

.builder-page {
  display: grid;
  grid-template-columns: minmax(420px, 0.88fr) minmax(500px, 0.9fr);
  gap: clamp(18px, 2vw, 28px);
  align-items: start;
  max-width: 1720px;
  margin: 0 auto;
}

.builder-topbar {
  grid-column: 1 / -1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 14px 38px rgba(18, 60, 145, 0.07);
  backdrop-filter: blur(16px);
}

.pdf-export-status {
  flex: 1 1 100%;
  min-height: 18px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 850;
}

.pdf-export-status[data-state="success"] {
  color: #0d6b54;
}

.pdf-export-status[data-state="error"] {
  color: #9f3a45;
}

.modal-pdf-status {
  flex: 1 1 220px;
  align-self: center;
}

.save-state {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
}

.save-state .saved,
.save-state small {
  color: #0d6b54;
}

.save-state small {
  font-weight: 800;
}

.builder-top-actions,
.save-state,
.section-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  min-width: 0;
}

.builder-top-actions .small,
.section-actions .small,
.form-section-head .small,
.preview-toolbar-actions .small {
  white-space: nowrap;
  line-height: 1.15;
}

.builder-top-actions .small,
.preview-toolbar-actions .small,
.resume-actions .small,
.card-actions .small {
  flex: 0 1 auto;
}

.save-state span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 10px;
  border-radius: 999px;
  color: var(--muted);
  background: #f4f7fc;
  font-size: 12px;
  font-weight: 800;
}

.save-state .saved {
  color: #0d6b54;
  background: #e9f8f3;
}

.builder-mobile-tabs {
  display: none;
  grid-column: 1 / -1;
  padding: 5px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
}

.builder-mobile-tabs button {
  flex: 1;
  min-height: 40px;
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: var(--muted);
  font-weight: 900;
}

.builder-mobile-tabs button.active {
  color: #fff;
  background: var(--blue);
}

.builder-form {
  display: grid;
  gap: 16px;
}

.builder-section-nav {
  position: sticky;
  top: 84px;
  z-index: 9;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 12px 32px rgba(18, 60, 145, 0.07);
  backdrop-filter: blur(16px);
}

.builder-section-nav button {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 32px;
  padding: 0 11px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: #52627e;
  background: #f4f7fc;
  cursor: pointer;
  font-size: 12.5px;
  font-weight: 850;
}

.builder-section-nav button em {
  display: grid;
  place-items: center;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  color: #0d6b54;
  background: #e9f8f3;
  font-style: normal;
  font-size: 10px;
}

.builder-section-nav button.is-missing em {
  background: transparent;
}

.builder-section-nav button.is-complete {
  color: #2d5f62;
  background: #edf9f6;
}

.builder-section-nav button:hover,
.builder-section-nav button.active {
  color: var(--blue);
  border-color: rgba(31, 105, 213, 0.16);
  background: #eef5ff;
}

.completion-card,
.empty-builder-state,
.suggestions-panel,
.upgrade-nudge,
.export-note {
  border: 1px solid var(--line);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 14px 38px rgba(18, 60, 145, 0.07);
}

.completion-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, 0.46fr);
  gap: 16px;
  padding: 20px;
}

.completion-card h2 {
  margin: 6px 0 12px;
  font-size: clamp(22px, 2.2vw, 30px);
}

.completion-card .progress {
  margin: 0;
  background: #edf3fb;
}

.missing-list {
  display: grid;
  gap: 8px;
}

.missing-list strong {
  color: var(--ink);
}

.missing-list span {
  padding: 8px 10px;
  border-radius: 12px;
  color: #52627e;
  background: #f4f7fc;
  font-size: 13px;
  font-weight: 700;
}

.empty-builder-state {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 18px;
  color: var(--muted);
}

.empty-builder-state .icon {
  color: var(--blue-2);
}

.empty-builder-state p {
  margin: 0;
  line-height: 1.55;
}

.builder-actions {
  position: sticky;
  top: 92px;
  z-index: 10;
  margin-top: 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.86);
  backdrop-filter: blur(16px);
}

.form-section {
  padding: clamp(20px, 2vw, 26px);
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fff;
}

.builder-card {
  box-shadow: 0 12px 34px rgba(18, 60, 145, 0.06);
}

.form-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 20px;
  cursor: pointer;
  list-style: none;
}

.form-section-head::-webkit-details-marker {
  display: none;
}

.form-section-head::after {
  content: "";
  width: 10px;
  height: 10px;
  margin-top: 10px;
  border-right: 2px solid #90a1bd;
  border-bottom: 2px solid #90a1bd;
  transform: rotate(45deg);
  transition: transform 0.2s ease;
}

.form-section[open] .form-section-head::after {
  transform: rotate(225deg);
}

.form-section h2 {
  margin: 6px 0 0;
  font-size: clamp(19px, 1.8vw, 22px);
  line-height: 1.2;
}

.form-section-head p {
  margin: 7px 0 0;
  color: var(--muted);
  line-height: 1.5;
}

.section-status {
  color: var(--blue-2);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.builder-preview {
  position: sticky;
  top: 82px;
  display: grid;
  gap: 14px;
}

.preview-toolbar {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.92);
  font-weight: 800;
}

.preview-toolbar-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.template-switch,
.document-format-switch {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 9px;
  max-width: 480px;
}

.template-preview-premium-dialog .document-format-switch {
  gap: 6px;
  margin-top: 7px;
}

.template-preview-premium-dialog .document-format-switch strong {
  font-size: 11.5px;
}

.template-preview-premium-dialog .document-format-switch > div {
  gap: 6px;
}

.template-preview-premium-dialog .document-format-switch button {
  padding: 5px 8px;
  font-size: 11.5px;
}

.template-switch strong,
.document-format-switch strong {
  color: var(--muted);
  font-size: 13px;
}

.document-format-switch > div {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.template-switch button,
.document-format-switch button {
  border: 1px solid var(--line);
  border-radius: 999px;
  padding: 6px 10px;
  color: var(--muted);
  background: #fff;
  font-size: 12.5px;
  font-weight: 800;
  cursor: pointer;
}

.template-thumbnail-switch {
  display: grid;
  grid-template-columns: repeat(3, minmax(92px, 1fr));
  gap: 10px;
  max-width: 560px;
}

.template-thumbnail-switch strong {
  grid-column: 1 / -1;
}

.template-thumbnail-switch .template-choice {
  display: grid;
  gap: 7px;
  min-height: 116px;
  padding: 7px;
  border-radius: 14px;
  text-align: left;
  white-space: normal;
}

.template-thumbnail-switch .template-choice .template-paper {
  width: 100%;
  min-height: 0;
  padding: 7px;
  border-radius: 5px;
  box-shadow: inset 0 0 0 1px #e8eef7;
}

.template-thumbnail-switch .template-choice .template-doc-head {
  gap: 2px;
  padding-bottom: 5px;
}

.template-thumbnail-switch .template-choice .template-doc-head strong {
  display: block;
  grid-column: auto;
  font-size: 7px;
}

.template-thumbnail-switch .template-choice .template-doc-head em {
  font-size: 5px;
}

.template-thumbnail-switch .template-choice .template-doc-body {
  gap: 5px;
  margin-top: 5px;
}

.template-thumbnail-switch .template-choice .template-doc-body b {
  height: 4px;
}

.template-thumbnail-switch .template-choice .template-doc-body i {
  height: 3px;
}

.template-thumbnail-switch .template-choice span {
  min-width: 0;
  color: inherit;
  font-size: 11.5px;
  line-height: 1.2;
}

.template-switch .active,
.document-format-switch .active {
  color: #fff;
  border-color: var(--blue);
  background: var(--blue);
}

.upgrade-nudge,
.export-note {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 12px 14px;
  color: #52627e;
  font-size: 13px;
  font-weight: 800;
}

.upgrade-nudge .icon,
.export-note .icon {
  color: var(--blue-2);
}

.builder-preview-frame {
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  min-width: 0;
  overflow-x: hidden;
  overflow-y: auto;
  max-height: none;
  min-height: min(76vh, 760px);
  padding: clamp(16px, 2vw, 24px);
  border: 1px solid rgba(229, 234, 244, 0.9);
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(247, 250, 255, 0.96), rgba(243, 239, 255, 0.45)),
    #f7faff;
  scrollbar-width: thin;
  scrollbar-color: rgba(31, 105, 213, 0.28) transparent;
}

.builder-preview-frame .resume-document-shell {
  flex: 0 0 auto;
}

.builder-preview-frame.zoom-fit .resume-document-shell {
  width: min(100%, var(--resume-page-width));
}

.builder-preview-frame.zoom-out .resume-document-shell {
  width: min(72%, var(--resume-page-width));
}

.builder-preview-frame.zoom-in .resume-document-shell {
  width: var(--resume-page-width);
}

.resume-document-shell {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex: 0 0 auto;
  width: min(100%, var(--resume-page-width));
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  aspect-ratio: 210 / 297;
  overflow: visible;
}

.resume-page-scale-wrapper {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  max-width: 100%;
  transform-origin: top center;
}

.resume-document-shell.resume-format-letter {
  aspect-ratio: 8.5 / 11;
}

.resume-document-shell[data-preview-scaled="true"] {
  width: var(--scaled-page-width);
  height: var(--scaled-page-height);
  max-width: none;
  flex: 0 0 auto;
  margin-inline: auto;
  aspect-ratio: auto;
  overflow: visible;
}

.resume-document-shell[data-preview-scaled="true"] .resume-page-scale-wrapper {
  width: var(--resume-page-width);
  height: var(--resume-page-height);
  max-width: none;
  flex: 0 0 auto;
  transform: scale(var(--preview-scale));
  transform-origin: top center;
}

.resume-document-shell[data-preview-fit="true"] .resume-page-scale-wrapper {
  justify-content: flex-start;
  align-items: flex-start;
}

.resume-document-shell[data-preview-scaled="true"] .resume-document {
  width: var(--resume-page-width);
  height: var(--resume-page-height);
  max-width: none;
  min-height: 0;
  padding: var(--resume-safe-y, 54px) var(--resume-safe-x, 58px);
  transform: none;
}

.resume-document-shell[data-preview-fit="true"] .resume-document.resume-preview-fit-document {
  max-width: none;
}

.builder-preview-frame .resume-document-shell[data-preview-scaled="true"],
.builder-preview-frame.zoom-fit .resume-document-shell[data-preview-scaled="true"],
.builder-preview-frame.zoom-out .resume-document-shell[data-preview-scaled="true"],
.builder-preview-frame.zoom-in .resume-document-shell[data-preview-scaled="true"],
.template-preview-content .resume-document-shell[data-preview-scaled="true"] {
  width: var(--scaled-page-width);
  height: var(--scaled-page-height);
}

.resume-document {
  --resume-safe-x: 58px;
  --resume-safe-y: 54px;
  --resume-section-gap: 24px;
  --resume-text-scale: 1;
  position: relative;
  box-sizing: border-box;
  flex: 0 0 auto;
  min-height: auto;
  padding: clamp(42px, 5vw, var(--resume-safe-y)) clamp(44px, 5vw, var(--resume-safe-x));
  border: 1px solid var(--line);
  border-radius: 4px;
  background: #fff;
  box-shadow: var(--shadow);
  font-size: 14px;
  overflow: hidden;
}

.resume-document.has-brand-watermark > :not(.resume-brand-watermark):not(.pdf-brand-watermark) {
  position: relative;
  z-index: 1;
}

.resume-brand-watermark,
.pdf-brand-watermark {
  position: absolute;
  inset: clamp(42px, 6vw, 68px);
  z-index: 0;
  overflow: visible;
  pointer-events: none;
  user-select: none;
}

.resume-brand-watermark-diagonal,
.pdf-brand-watermark-diagonal {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 88%;
  transform: translate(-50%, -50%) rotate(-24deg);
  color: rgba(31, 105, 213, 0.075);
  font-size: clamp(24px, 4.4vw, 42px);
  font-weight: 900;
  letter-spacing: 0.02em;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}

.resume-brand-watermark-seal,
.pdf-brand-watermark-seal {
  position: absolute;
  right: 0;
  bottom: 0;
  max-width: 90%;
  padding: 5px 10px;
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 999px;
  color: rgba(11, 23, 54, 0.45);
  background: rgba(255, 255, 255, 0.74);
  font-size: 10px;
  font-weight: 800;
  line-height: 1.2;
  overflow-wrap: anywhere;
  text-align: center;
  white-space: normal;
}

.resume-document [hidden] {
  display: none !important;
}

.pdf-export-stage,
.pdf-export-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: var(--resume-page-width-print, 210mm);
  min-height: var(--resume-page-height-print, 297mm);
  padding: 0;
  background: #fff;
  color: #0b1736;
  overflow: visible;
  pointer-events: none;
}

.pdf-export-page {
  position: relative;
  box-sizing: border-box;
  width: var(--resume-page-width-print, 210mm);
  height: var(--resume-page-height-print, 297mm);
  margin: 0;
  padding: 14.3mm 15.35mm;
  overflow: hidden;
  background: #fff;
  break-after: page;
  page-break-after: always;
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

.pdf-fit-export-document > .pdf-brand-watermark,
.pdf-export-document > .pdf-brand-watermark {
  inset: 18mm 18mm;
}

.pdf-preview-export-page {
  padding: 0 !important;
}

.pdf-preview-export-content {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #ffffff;
}

.pdf-preview-export-content .resume-document-shell {
  max-width: none;
  margin: 0 auto;
}

.pdf-preview-export-content .resume-document {
  max-width: none;
}

.pdf-fit-export-page {
  padding: 0 !important;
}

.pdf-fit-export-content {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: #ffffff;
}

.pdf-fit-export-document {
  position: absolute !important;
  top: 0;
  left: 0;
  box-sizing: border-box !important;
  max-width: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

.pdf-export-content {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.pdf-export-document {
  --ink: #0b1736;
  --muted: #63708a;
  --line: #e5eaf4;
  --blue: #123c91;
  --blue-2: #1f69d5;
  --cyan: #69d8f2;
  --purple: #9b7cf7;
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  transform: none !important;
  overflow: visible !important;
  background: #fff !important;
  break-after: auto;
  page-break-after: auto;
}

.pdf-export-a4 .pdf-export-page,
.pdf-export-page.resume-format-a4 {
  page: resume-a4;
  width: 210mm !important;
  height: 297mm !important;
}

.pdf-export-letter .pdf-export-page,
.pdf-export-page.resume-format-letter {
  page: resume-letter;
  width: 8.5in !important;
  height: 11in !important;
}

.pdf-export-document header,
.pdf-export-document .resume-entry {
  break-inside: avoid;
  page-break-inside: avoid;
}

.pdf-export-document ul,
.pdf-export-document .resume-skill-list,
.pdf-export-document .resume-link-list {
  break-inside: auto;
  page-break-inside: auto;
}

.pdf-export-document li,
.pdf-export-document p {
  break-inside: avoid;
  page-break-inside: avoid;
  orphans: 3;
  widows: 3;
}

.pdf-export-document h3 {
  break-after: avoid;
  page-break-after: avoid;
}

.pdf-export-document h2 {
  font-size: 30pt !important;
}

.pdf-export-document h3 {
  font-size: 11.25pt !important;
}

.pdf-export-document,
.pdf-export-document p,
.pdf-export-document li {
  font-size: 10.5pt !important;
}

.pdf-export-document header strong {
  font-size: 12pt !important;
}

.pdf-export-document .resume-contact-line {
  font-size: 9.5pt !important;
  line-height: 1.35 !important;
  white-space: normal !important;
  overflow: visible !important;
}

.pdf-export-document .resume-entry span,
.pdf-export-document .resume-skill-list span {
  font-size: 9.75pt !important;
}

.pdf-export-document.resume-template-executive header {
  margin: 0 0 6.9mm;
  padding: 8.4mm 9.5mm 7.4mm;
}

.pdf-export-document.resume-template-creative {
  border-left-width: 3.2mm;
}

.pdf-brand-watermark-diagonal {
  color: rgba(31, 105, 213, 0.07);
  font-size: 31pt;
  width: 88%;
}

.pdf-brand-watermark-seal {
  padding: 3.2pt 6.5pt;
  border-color: rgba(31, 105, 213, 0.16);
  color: rgba(11, 23, 54, 0.5);
  background: rgba(255, 255, 255, 0.78);
  font-size: 7.25pt;
  max-width: 88%;
}

@page resume-a4 {
  size: 210mm 297mm;
  margin: 0;
}

@page resume-letter {
  size: 8.5in 11in;
  margin: 0;
}

@page {
  size: A4;
  margin: 0;
}

.professional-preview {
  width: min(100%, var(--resume-page-width));
  max-width: none;
  height: auto;
  margin: 0 auto;
}

.resume-document-shell .professional-preview {
  width: 100%;
}

.resume-format-a4 {
  --resume-page-width: 794px;
  --resume-page-height: 1123px;
  aspect-ratio: 210 / 297;
}

.resume-format-letter {
  --resume-page-width: 816px;
  --resume-page-height: 1056px;
  aspect-ratio: 8.5 / 11;
}

.resume-document header {
  display: grid;
  gap: 10px;
  padding-bottom: 20px;
  border-bottom: 2px solid #d8e2f1;
}

.resume-document h2 {
  margin: 0 0 8px;
  font-size: clamp(30px, 3vw, 38px);
  line-height: 1.05;
}

.resume-document header strong {
  color: var(--blue);
  font-size: 16px;
}

.resume-document header p,
.resume-document p {
  margin: 0;
  color: #38465f;
  line-height: 1.55;
  overflow-wrap: break-word;
}

.resume-document,
.resume-document * {
  box-sizing: border-box;
}

.resume-document p,
.resume-document li,
.resume-document span,
.resume-document strong,
.resume-document a,
.resume-document em {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
}

.resume-document a {
  color: inherit;
}

.resume-contact-line {
  display: block;
  width: 100%;
  max-width: 100%;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
  overflow-wrap: anywhere;
  word-break: normal;
}

.resume-document section {
  margin-top: var(--resume-section-gap);
}

.resume-document h3 {
  margin: 0 0 10px;
  color: var(--blue);
  font-size: 15px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.resume-entry {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
}

.resume-entry span {
  color: var(--muted);
  font-size: 13px;
}

.resume-document ul {
  display: grid;
  gap: 5px;
  margin: 8px 0 16px;
  padding-left: 18px;
  color: #38465f;
  line-height: 1.45;
}

.resume-document li {
  padding-left: 2px;
}

.resume-document.resume-density-compact {
  --resume-safe-x: 50px;
  --resume-safe-y: 46px;
  --resume-section-gap: 18px;
  --resume-text-scale: 0.94;
  --resume-list-gap: 4px;
  --resume-entry-gap: 6px;
}

.resume-document.resume-density-dense {
  --resume-safe-x: 42px;
  --resume-safe-y: 38px;
  --resume-section-gap: 14px;
  --resume-text-scale: 0.88;
  --resume-list-gap: 3px;
  --resume-entry-gap: 4px;
}

.resume-document.resume-density-compact h2 {
  font-size: calc(clamp(30px, 3vw, 38px) * 0.94);
}

.resume-document.resume-density-dense h2 {
  font-size: calc(clamp(30px, 3vw, 38px) * 0.86);
}

.resume-document.resume-density-compact h3,
.resume-document.resume-density-dense h3 {
  margin-bottom: 7px;
}

.resume-document.resume-density-compact p,
.resume-document.resume-density-compact li,
.resume-document.resume-density-dense p,
.resume-document.resume-density-dense li {
  font-size: calc(1em * var(--resume-text-scale));
  line-height: 1.42;
}

.resume-document.resume-density-dense p,
.resume-document.resume-density-dense li {
  line-height: 1.34;
}

.resume-document.resume-density-compact ul,
.resume-document.resume-density-dense ul {
  gap: var(--resume-list-gap, 3px);
  margin: 5px 0 10px;
}

.resume-document.resume-density-compact .resume-entry,
.resume-document.resume-density-dense .resume-entry {
  margin-bottom: var(--resume-entry-gap, 6px);
}

.resume-two-column-section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}

.resume-skill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.resume-skill-list span {
  padding: 6px 9px;
  border-radius: 999px;
  color: #38465f;
  background: #edf3fb;
  font-size: 13px;
}

.resume-link-list {
  display: grid;
  gap: 4px;
}

.resume-document {
  transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.resume-document header,
.resume-document section,
.resume-document h2,
.resume-document h3,
.resume-document p,
.resume-document strong,
.resume-document span {
  min-width: 0;
}

.resume-template-modern {
  border-top: 8px solid var(--blue);
}

.resume-template-modern header {
  grid-template-columns: minmax(0, 1fr);
  border-bottom-color: rgba(31, 105, 213, 0.3);
}

.resume-template-modern h2 {
  color: #10214a;
}

.resume-template-modern h3 {
  color: var(--blue);
}

.resume-document.resume-template-modern.modern-resume {
  --modern-ink: #13233f;
  --modern-muted: #60708a;
  --modern-blue: #123c91;
  --modern-cyan: #1fa5c8;
  --modern-soft: #f4f9ff;
  --modern-line: #dce8f6;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, 0.38fr);
  gap: 16px 26px;
  align-content: start;
  padding: 46px 48px;
  border: 1px solid #dce7f5;
  border-top: 0;
  background:
    linear-gradient(90deg, rgba(31, 165, 200, 0.08), transparent 34%),
    #ffffff;
  box-shadow: 0 24px 64px rgba(18, 60, 145, 0.13);
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.resume-template-modern.modern-resume {
  padding: 46px 48px;
}

.resume-document.resume-template-modern.modern-resume .modern-header {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, 0.44fr);
  gap: 18px;
  align-items: end;
  margin: 0 0 4px;
  padding: 22px 24px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(18, 60, 145, 0.08), rgba(31, 165, 200, 0.12)),
    #f8fbff;
}

.resume-document.resume-template-modern.modern-resume .modern-accent {
  display: block;
  width: 78px;
  height: 5px;
  margin-bottom: 12px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--modern-blue), var(--modern-cyan));
}

.resume-document.resume-template-modern.modern-resume h2 {
  color: var(--modern-ink);
  font-size: 36px;
  letter-spacing: 0;
}

.resume-document.resume-template-modern.modern-resume header strong {
  color: #225287;
  font-size: 15.5px;
  font-weight: 800;
}

.resume-document.resume-template-modern.modern-resume .modern-contact-line {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px 10px;
  color: var(--modern-muted);
  font-size: 12.5px;
  line-height: 1.35;
  text-align: right;
}

.resume-document.resume-template-modern.modern-resume .modern-contact-line span:not(:last-child)::after {
  content: "|";
  margin-left: 10px;
  color: #9aa9bd;
}

.resume-document.resume-template-modern.modern-resume section {
  margin-top: 0;
  min-width: 0;
}

.resume-document.resume-template-modern.modern-resume h3 {
  margin-bottom: 9px;
  color: var(--modern-blue);
  font-size: 12.5px;
  font-weight: 900;
  letter-spacing: 0.07em;
}

.resume-document.resume-template-modern.modern-resume p,
.resume-document.resume-template-modern.modern-resume li {
  color: #33435c;
  font-size: 13.2px;
  line-height: 1.5;
}

.resume-document.resume-template-modern.modern-resume .modern-primary-section {
  grid-column: 1;
}

.resume-document.resume-template-modern.modern-resume .modern-summary {
  padding: 15px 18px;
  border-left: 4px solid var(--modern-cyan);
  border-radius: 0 12px 12px 0;
  background: rgba(244, 249, 255, 0.92);
}

.resume-document.resume-template-modern.modern-resume .modern-experience-item {
  position: relative;
  display: grid;
  gap: 4px;
  padding-left: 16px;
}

.resume-document.resume-template-modern.modern-resume .modern-experience-item + .modern-experience-item {
  margin-top: 14px;
}

.resume-document.resume-template-modern.modern-resume .modern-experience-item::before {
  content: "";
  position: absolute;
  inset: 3px auto 3px 0;
  width: 2px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--modern-cyan), rgba(31, 105, 213, 0.18));
}

.resume-document.resume-template-modern.modern-resume .modern-entry-title {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.resume-document.resume-template-modern.modern-resume .modern-entry-title strong {
  color: var(--modern-ink);
  font-size: 14.5px;
}

.resume-document.resume-template-modern.modern-resume .modern-entry-title span,
.resume-document.resume-template-modern.modern-resume .modern-entry-meta {
  color: var(--modern-muted);
  font-size: 12.2px;
  font-weight: 700;
}

.resume-document.resume-template-modern.modern-resume ul {
  gap: 4px;
  margin: 5px 0 0;
  padding-left: 17px;
}

.resume-document.resume-template-modern.modern-resume .modern-sidebar-section {
  grid-column: 2;
  padding: 14px;
  border: 1px solid var(--modern-line);
  border-radius: 12px;
  background: rgba(248, 251, 255, 0.96);
}

.resume-document.resume-template-modern.modern-resume .modern-skills { grid-row: 2; }
.resume-document.resume-template-modern.modern-resume .modern-education { grid-row: 3; }
.resume-document.resume-template-modern.modern-resume .modern-languages { grid-row: 4; }
.resume-document.resume-template-modern.modern-resume .modern-certifications { grid-row: 5; }
.resume-document.resume-template-modern.modern-resume .modern-links { grid-row: 6; }

.resume-document.resume-template-modern.modern-resume .modern-skill-list {
  gap: 6px;
}

.resume-document.resume-template-modern.modern-resume .modern-skill-list span {
  padding: 5px 8px;
  border: 1px solid rgba(31, 165, 200, 0.2);
  color: #19456b;
  background: #eaf8fd;
  font-size: 11.8px;
  font-weight: 800;
}

.resume-document.resume-template-modern.modern-resume .modern-compact-item,
.resume-document.resume-template-modern.modern-resume .modern-text-list {
  display: grid;
  gap: 4px;
}

.resume-document.resume-template-modern.modern-resume .modern-compact-item strong,
.resume-document.resume-template-modern.modern-resume .modern-text-list p strong,
.resume-document.resume-template-modern.modern-resume .modern-link-list p {
  color: var(--modern-ink);
  font-weight: 800;
}

.resume-document.resume-template-modern.modern-resume .modern-compact-item span,
.resume-document.resume-template-modern.modern-resume .modern-compact-item em {
  color: var(--modern-muted);
  font-size: 12px;
  font-style: normal;
}

.pdf-export-document.resume-template-modern.modern-resume {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(46mm, 0.38fr) !important;
  gap: 4.2mm 6.8mm !important;
}

.pdf-export-document.resume-template-modern.modern-resume .modern-header {
  padding: 5.8mm 6.4mm !important;
}

.pdf-export-document.resume-template-modern.modern-resume .modern-sidebar-section {
  padding: 3.8mm !important;
}

.resume-template-minimal {
  border-color: #d7dce4;
  box-shadow: 0 18px 44px rgba(20, 34, 61, 0.08);
}

.resume-template-minimal header {
  border-bottom: 1px solid #1f2937;
}

.resume-template-minimal h2 {
  color: #111827;
  font-size: 31px;
}

.resume-template-minimal header strong,
.resume-template-minimal h3 {
  color: #111827;
}

.resume-template-minimal h3 {
  letter-spacing: 0.04em;
}

.resume-template-minimal .resume-skill-list span {
  color: #111827;
  background: #f2f4f7;
}

.resume-template-executive {
  padding-top: 0;
  border-color: rgba(11, 23, 54, 0.18);
}

.resume-template-executive header {
  margin: 0 -48px 26px;
  padding: 42px 48px 28px;
  color: #fff;
  background: #0b1736;
  border-bottom: 0;
}

.resume-template-executive h2,
.resume-template-executive header strong,
.resume-template-executive header p {
  color: #fff;
}

.resume-template-executive h3 {
  color: #123c91;
  letter-spacing: 0.1em;
}

.resume-template-executive .resume-skill-list span {
  color: #123c91;
  background: #eef5ff;
}

.resume-template-creative {
  position: relative;
  border-left: 12px solid #7256d6;
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.12), transparent 26%),
    #fff;
}

.resume-template-creative header {
  border-bottom-color: rgba(114, 86, 214, 0.28);
}

.resume-template-creative h2 {
  color: #35206e;
}

.resume-template-creative header strong,
.resume-template-creative h3 {
  color: #7256d6;
}

.resume-template-creative .resume-skill-list span {
  color: #563bb8;
  background: #f1edff;
}

.resume-template-student header {
  border-bottom-color: rgba(31, 165, 200, 0.32);
}

.resume-template-student h2 {
  color: #103446;
}

.resume-template-student header strong,
.resume-template-student h3 {
  color: #1fa5c8;
}

.resume-template-student section:nth-of-type(3),
.resume-template-student section:nth-of-type(4) {
  padding: 16px;
  border-radius: 16px;
  background: #f2fbff;
}

.resume-template-student .resume-skill-list span {
  color: #0a7792;
  background: #e6f8fc;
}

.resume-template-international header {
  grid-template-columns: minmax(0, 1fr);
  border-bottom-color: rgba(18, 60, 145, 0.24);
}

.resume-template-international h2 {
  color: #0b1736;
}

.resume-template-international header strong,
.resume-template-international h3 {
  color: #123c91;
}

.resume-template-international section:first-of-type {
  padding: 18px;
  border-left: 4px solid #1fa5c8;
  background: #f6fbff;
}

.resume-template-classic {
  border-color: #cfd7e5;
  box-shadow: 0 18px 42px rgba(20, 34, 61, 0.07);
}

.resume-template-classic header {
  border-bottom: 1px solid #28364f;
}

.resume-template-classic h2,
.resume-template-classic header strong,
.resume-template-classic h3 {
  color: #28364f;
}

.resume-template-corporate {
  border-top: 10px solid #0f2f6f;
}

.resume-template-corporate header {
  padding-left: 20px;
  border-left: 5px solid #1f69d5;
  border-bottom-color: rgba(31, 105, 213, 0.18);
}

.resume-template-corporate h2,
.resume-template-corporate header strong,
.resume-template-corporate h3 {
  color: #123c91;
}

.resume-template-tech {
  border-color: rgba(31, 105, 213, 0.18);
  background:
    linear-gradient(90deg, rgba(105, 216, 242, 0.045) 1px, transparent 1px),
    #fff;
  background-size: 24px 24px;
}

.resume-template-tech header {
  border-bottom-color: rgba(31, 105, 213, 0.3);
}

.resume-template-tech h2,
.resume-template-tech header strong,
.resume-template-tech h3 {
  color: #1f69d5;
}

.resume-template-tech .resume-skill-list span {
  color: #123c91;
  background: #e9f8ff;
}

.resume-template-simple-ats {
  border-color: #d7dce4;
  box-shadow: none;
}

.resume-template-simple-ats header {
  border-bottom: 1px solid #111827;
}

.resume-template-simple-ats h2,
.resume-template-simple-ats header strong,
.resume-template-simple-ats h3 {
  color: #111827;
}

.resume-template-simple-ats .resume-skill-list span {
  border-radius: 4px;
  color: #111827;
  background: #f3f4f6;
}

.resume-template-clean-start-ats.clean-start-ats-resume {
  padding: 48px 52px;
  border-color: #d8dee8;
  color: #182235;
  background: #ffffff;
  box-shadow: 0 16px 42px rgba(20, 34, 61, 0.07);
}

.resume-document-shell[data-preview-scaled="true"] .resume-template-clean-start-ats.clean-start-ats-resume {
  padding: 48px 52px;
}

.resume-template-clean-start-ats .clean-start-header {
  display: grid;
  gap: 4px;
  padding-bottom: 14px;
  border-bottom: 1px solid #cfd7e5;
}

.resume-template-clean-start-ats h2 {
  margin: 0;
  color: #111827;
  font-size: 31px;
  font-weight: 950;
  line-height: 1.05;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.resume-template-clean-start-ats header strong {
  color: #334155;
  font-size: 14px;
  font-weight: 800;
}

.resume-template-clean-start-ats .clean-start-contact-line {
  color: #475569;
  font-size: 11.6px;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.resume-template-clean-start-ats section {
  margin-top: 14px;
}

.resume-template-clean-start-ats h3 {
  margin: 0 0 7px;
  padding-bottom: 4px;
  border-bottom: 1px solid #e1e7f0;
  color: #1e3a5f;
  font-size: 11.8px;
  font-weight: 900;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}

.resume-template-clean-start-ats p,
.resume-template-clean-start-ats li {
  color: #2f3a4d;
  font-size: 12.4px;
  line-height: 1.45;
}

.resume-template-clean-start-ats ul {
  gap: 3px;
  margin: 5px 0 0;
  padding-left: 17px;
}

.clean-start-entry {
  display: grid;
  gap: 2px;
  break-inside: avoid;
}

.clean-start-entry + .clean-start-entry {
  margin-top: 10px;
  padding-top: 9px;
  border-top: 1px solid #edf1f6;
}

.clean-start-entry strong,
.clean-start-project-item strong {
  color: #111827;
  font-size: 12.8px;
  font-weight: 900;
}

.clean-start-meta {
  color: #334155 !important;
  font-weight: 700;
}

.clean-start-period {
  color: #64748b !important;
  font-size: 11.7px !important;
  font-weight: 750;
}

.clean-start-skill-line {
  color: #2f3a4d;
}

.clean-start-line-list {
  display: grid;
  gap: 3px;
}

.clean-start-project-list {
  display: grid;
  gap: 8px;
}

.clean-start-project-item {
  display: grid;
  gap: 2px;
  break-inside: avoid;
}

.pdf-export-document.resume-template-clean-start-ats.clean-start-ats-resume {
  padding: 12.5mm 13.5mm !important;
  box-shadow: none !important;
}

.pdf-export-document.resume-template-clean-start-ats h2 {
  font-size: 20pt !important;
  letter-spacing: 0.7pt !important;
}

.pdf-export-document.resume-template-clean-start-ats h3 {
  font-size: 8.6pt !important;
  margin-bottom: 2mm !important;
  padding-bottom: 1.2mm !important;
}

.pdf-export-document.resume-template-clean-start-ats p,
.pdf-export-document.resume-template-clean-start-ats li {
  font-size: 9.4pt !important;
  line-height: 1.36 !important;
}

.pdf-export-document.resume-template-clean-start-ats section {
  margin-top: 4mm !important;
}

.pdf-export-document.resume-template-clean-start-ats ul {
  margin-top: 1.4mm !important;
  padding-left: 4.8mm !important;
}

.resume-template-clean-start-ats.clean-start-ats-resume,
.resume-document.resume-template-simple-ats.simple-ats-resume {
  text-rendering: geometricPrecision;
}

.resume-template-clean-start-ats.clean-start-ats-resume p,
.resume-template-clean-start-ats.clean-start-ats-resume li,
.resume-template-clean-start-ats.clean-start-ats-resume span,
.resume-template-clean-start-ats.clean-start-ats-resume strong,
.resume-document.resume-template-simple-ats.simple-ats-resume p,
.resume-document.resume-template-simple-ats.simple-ats-resume li,
.resume-document.resume-template-simple-ats.simple-ats-resume span,
.resume-document.resume-template-simple-ats.simple-ats-resume strong {
  hyphens: none;
  overflow-wrap: break-word;
  word-break: normal;
}

.resume-template-clean-start-ats .clean-start-summary p,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-summary p {
  max-width: 100%;
}

.resume-template-clean-start-ats .clean-start-skill-line,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text {
  display: block;
  color: #2f3a4d;
}

.resume-template-clean-start-ats .clean-start-skill-line span,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text span {
  display: inline;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  white-space: normal;
}

.resume-template-clean-start-ats .clean-start-skill-line span::after,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text span::after {
  content: ", ";
}

.resume-template-clean-start-ats .clean-start-skill-line span:last-child::after,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text span:last-child::after {
  content: ".";
}

.resume-template-clean-start-ats .clean-start-line-list p,
.resume-template-clean-start-ats .clean-start-project-item p,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-text-list p,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-project-list p {
  overflow-wrap: break-word;
}

.pdf-export-document.resume-template-clean-start-ats .clean-start-skill-line,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text {
  line-height: 1.38 !important;
}

.pdf-export-document.resume-template-clean-start-ats .clean-start-skill-line span,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text span {
  white-space: normal !important;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume {
  display: block;
  padding: 46px 66px 42px;
  border: 0;
  border-radius: 0;
  color: #111827;
  background: #ffffff;
  box-shadow: 0 18px 44px rgba(17, 24, 39, 0.1);
  font-family: Inter, Arial, Helvetica, sans-serif;
  text-rendering: geometricPrecision;
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.resume-template-clean-basic-free.clean-basic-free-resume {
  padding: 46px 66px 42px;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume header,
.resume-document.resume-template-clean-basic-free.clean-basic-free-resume section {
  display: block;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-header {
  padding-bottom: 20px;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume h2 {
  margin: 0 0 6px;
  color: #123a6f;
  font-size: 39px;
  font-weight: 850;
  line-height: 1.08;
  letter-spacing: 0;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume header strong {
  display: block;
  margin: 0;
  color: #1f2937;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.35;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-contact-line {
  margin-top: 17px;
  color: #374151;
  font-size: 12.5px;
  font-weight: 500;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume section {
  margin-top: 15px;
  break-inside: avoid;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume h3 {
  margin: 0 0 9px;
  padding-bottom: 5px;
  border-bottom: 1.4px solid rgba(59, 130, 246, 0.78);
  color: #1e3a8a;
  font-size: 16px;
  font-weight: 800;
  letter-spacing: 0;
  line-height: 1.25;
  text-transform: none;
  break-after: avoid;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume p,
.resume-document.resume-template-clean-basic-free.clean-basic-free-resume li,
.resume-document.resume-template-clean-basic-free.clean-basic-free-resume span,
.resume-document.resume-template-clean-basic-free.clean-basic-free-resume em {
  color: #1f2937;
  font-size: 12.5px;
  line-height: 1.46;
  letter-spacing: 0;
  hyphens: none;
  overflow-wrap: break-word;
  word-break: normal;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-entry {
  display: grid;
  gap: 3px;
  break-inside: avoid;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-entry + .clean-basic-entry {
  margin-top: 14px;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-entry-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  gap: 16px;
  align-items: baseline;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-entry-head p {
  margin: 0;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-entry-head strong,
.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-project-item strong {
  color: #111827;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.35;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-entry-head em,
.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-meta {
  color: #4b5563;
  font-style: normal;
  font-weight: 500;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume ul {
  display: block;
  margin: 7px 0 0;
  padding-left: 18px;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume li {
  margin: 3px 0;
  padding-left: 1px;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-skill-line,
.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-inline-list {
  display: block;
  margin: 0;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-skill-line span,
.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-inline-list span {
  display: inline;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: #1f2937;
  background: transparent;
  box-shadow: none;
  font-size: 12.5px;
  font-weight: 400;
  line-height: 1.46;
  white-space: normal;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-skill-line span::after,
.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-inline-list span::after {
  content: " \2022  ";
  color: #4b5563;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-skill-line span:last-child::after,
.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-inline-list span:last-child::after {
  content: "";
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-project-list {
  display: grid;
  gap: 8px;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-project-item {
  display: grid;
  gap: 2px;
  break-inside: avoid;
}

.resume-document.resume-template-clean-basic-free.clean-basic-free-resume .clean-basic-project-item p {
  margin: 0;
}

.pdf-export-document.resume-template-clean-basic-free.clean-basic-free-resume {
  display: block !important;
  padding: 12mm 16.8mm 11mm !important;
  box-shadow: none !important;
}

.pdf-export-document.resume-template-clean-basic-free.clean-basic-free-resume h2 {
  font-size: 26pt !important;
}

.pdf-export-document.resume-template-clean-basic-free.clean-basic-free-resume h3 {
  font-size: 12pt !important;
  margin-bottom: 2.2mm !important;
  padding-bottom: 1.4mm !important;
}

.pdf-export-document.resume-template-clean-basic-free.clean-basic-free-resume p,
.pdf-export-document.resume-template-clean-basic-free.clean-basic-free-resume li,
.pdf-export-document.resume-template-clean-basic-free.clean-basic-free-resume span,
.pdf-export-document.resume-template-clean-basic-free.clean-basic-free-resume em {
  font-size: 9.3pt !important;
  line-height: 1.38 !important;
}

.pdf-export-document.resume-template-clean-basic-free.clean-basic-free-resume section {
  margin-top: 3.8mm !important;
  break-inside: avoid !important;
}

.pdf-export-document.resume-template-clean-basic-free.clean-basic-free-resume ul {
  margin-top: 1.8mm !important;
  padding-left: 4.8mm !important;
}

.resume-template-elegant {
  border-top: 7px solid #9b7cf7;
  background:
    linear-gradient(180deg, rgba(248, 246, 255, 0.64), #fff 18%),
    #fff;
}

.resume-template-elegant header {
  border-bottom-color: rgba(155, 124, 247, 0.28);
}

.resume-template-elegant h2 {
  color: #231a4f;
}

.resume-template-elegant header strong,
.resume-template-elegant h3 {
  color: #6d5bd7;
}

.resume-template-elegant .resume-skill-list span {
  color: #563bb8;
  background: #f1edff;
}

.resume-template-first-job header {
  border-bottom-color: rgba(31, 165, 200, 0.28);
}

.resume-template-first-job h2,
.resume-template-first-job header strong,
.resume-template-first-job h3 {
  color: #0a7792;
}

.resume-template-first-job section:nth-of-type(2),
.resume-template-first-job section:nth-of-type(4) {
  padding: 14px;
  border-radius: 14px;
  background: #f2fbff;
}

.resume-template-first-job .resume-skill-list span {
  color: #0a7792;
  background: #e6f8fc;
}

.resume-template-professional,
.resume-template-clean-pro,
.resume-template-modern-ats,
.resume-template-operations,
.resume-template-customer-service,
.resume-template-graduate {
  border-color: rgba(31, 105, 213, 0.14);
}

.resume-template-professional {
  border-top: 6px solid #1f69d5;
}

.resume-template-professional header,
.resume-template-clean-pro header,
.resume-template-modern-ats header {
  grid-template-columns: minmax(0, 1fr);
}

.resume-template-clean-pro {
  background: linear-gradient(180deg, #fff, #fbfdff);
  box-shadow: none;
}

.resume-template-clean-pro header,
.resume-template-modern-ats header,
.resume-template-graduate header {
  border-bottom: 1px solid #1f2937;
}

.resume-template-clean-pro h2,
.resume-template-clean-pro h3,
.resume-template-modern-ats h2,
.resume-template-modern-ats h3 {
  color: #111827;
}

.resume-template-modern-ats {
  border-left: 7px solid #1f69d5;
}

.resume-template-senior-executive,
.resume-template-manager,
.resume-template-consultant,
.resume-template-finance,
.resume-template-legal {
  border-color: rgba(11, 23, 54, 0.18);
}

.resume-template-senior-executive header,
.resume-template-manager header {
  margin: -48px -48px 24px;
  padding: 40px 48px 26px;
  color: #fff;
  background: linear-gradient(135deg, #071126, #123c91);
  border-bottom: 0;
}

.resume-template-senior-executive h2,
.resume-template-senior-executive header strong,
.resume-template-senior-executive header p,
.resume-template-manager h2,
.resume-template-manager header strong,
.resume-template-manager header p {
  color: #fff;
}

.resume-template-marketing,
.resume-template-designer,
.resume-template-startup {
  border-left: 10px solid #7256d6;
  background:
    radial-gradient(circle at 94% 2%, rgba(155, 124, 247, 0.13), transparent 26%),
    #fff;
}

.resume-template-marketing h2,
.resume-template-designer h2,
.resume-template-startup h2 {
  color: #321f75;
}

.resume-template-marketing h3,
.resume-template-designer h3,
.resume-template-startup h3,
.resume-template-marketing header strong,
.resume-template-designer header strong,
.resume-template-startup header strong {
  color: #7256d6;
}

.resume-template-sales {
  border-top: 7px solid #0d8b6f;
}

.resume-template-sales h2,
.resume-template-sales h3,
.resume-template-sales header strong {
  color: #0d6b54;
}

.resume-template-developer,
.resume-template-remote-work {
  background:
    linear-gradient(90deg, rgba(31, 105, 213, 0.055) 1px, transparent 1px),
    linear-gradient(180deg, rgba(31, 105, 213, 0.045) 1px, transparent 1px),
    #fff;
  background-size: 22px 22px;
}

.resume-template-developer {
  border-top: 8px solid #0b1736;
}

.resume-template-developer h2,
.resume-template-developer h3,
.resume-template-developer header strong {
  color: #123c91;
}

.resume-template-healthcare {
  border-top: 7px solid #0b8c7b;
}

.resume-template-healthcare h2,
.resume-template-healthcare h3,
.resume-template-healthcare header strong {
  color: #0b7568;
}

.resume-template-legal {
  border-top: 6px double #28364f;
}

.resume-template-legal h2,
.resume-template-legal h3,
.resume-template-legal header strong {
  color: #28364f;
}

.resume-template-finance {
  border-left: 8px solid #1b5c45;
}

.resume-template-finance h2,
.resume-template-finance h3,
.resume-template-finance header strong {
  color: #174a38;
}

.resume-template-academic {
  border-color: #cfd7e5;
}

.resume-template-academic header {
  text-align: center;
  border-bottom: 2px solid #28364f;
}

.resume-template-academic h2,
.resume-template-academic h3,
.resume-template-academic header strong {
  color: #28364f;
}

.resume-template-remote-work,
.resume-template-global {
  border-top: 8px solid #1fa5c8;
}

.resume-template-remote-work h2,
.resume-template-remote-work h3,
.resume-template-remote-work header strong,
.resume-template-global h2,
.resume-template-global h3,
.resume-template-global header strong {
  color: #0f6c8a;
}

.resume-template-operations {
  border-left: 8px solid #52627e;
}

.resume-template-operations h2,
.resume-template-operations h3,
.resume-template-operations header strong {
  color: #35445f;
}

.resume-template-customer-service,
.resume-template-graduate {
  background:
    radial-gradient(circle at 100% 0%, rgba(105, 216, 242, 0.11), transparent 28%),
    #fff;
}

.resume-template-customer-service h2,
.resume-template-customer-service h3,
.resume-template-customer-service header strong,
.resume-template-graduate h2,
.resume-template-graduate h3,
.resume-template-graduate header strong {
  color: #0a7792;
}

.resume-template-global header {
  margin: -48px -48px 24px;
  padding: 38px 48px 26px;
  background: linear-gradient(135deg, #eef9ff, #f5f1ff);
  border-bottom: 0;
}

/* Structural template systems: the same builder data is rearranged into distinct resume architectures. */
.resume-document.resume-template-creative,
.resume-document.resume-template-tech,
.resume-document.resume-template-marketing,
.resume-document.resume-template-designer,
.resume-document.resume-template-developer,
.resume-document.resume-template-startup {
  display: grid;
  grid-template-columns: minmax(0, 0.36fr) minmax(0, 1fr);
  gap: 14px 28px;
  align-content: start;
}

.resume-document.resume-template-creative header,
.resume-document.resume-template-tech header,
.resume-document.resume-template-marketing header,
.resume-document.resume-template-designer header,
.resume-document.resume-template-developer header,
.resume-document.resume-template-startup header {
  grid-column: 1;
  grid-row: 1;
  align-self: start;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  min-height: 230px;
  padding: 22px 18px;
  border: 0;
  border-radius: 20px;
  background: #0b1736;
}

.resume-document.resume-template-creative header h2,
.resume-document.resume-template-tech header h2,
.resume-document.resume-template-marketing header h2,
.resume-document.resume-template-designer header h2,
.resume-document.resume-template-developer header h2,
.resume-document.resume-template-startup header h2,
.resume-document.resume-template-creative header strong,
.resume-document.resume-template-tech header strong,
.resume-document.resume-template-marketing header strong,
.resume-document.resume-template-designer header strong,
.resume-document.resume-template-developer header strong,
.resume-document.resume-template-startup header strong,
.resume-document.resume-template-creative header p,
.resume-document.resume-template-tech header p,
.resume-document.resume-template-marketing header p,
.resume-document.resume-template-designer header p,
.resume-document.resume-template-developer header p,
.resume-document.resume-template-startup header p {
  color: #fff;
}

.resume-document.resume-template-creative header h2,
.resume-document.resume-template-tech header h2,
.resume-document.resume-template-marketing header h2,
.resume-document.resume-template-designer header h2,
.resume-document.resume-template-developer header h2,
.resume-document.resume-template-startup header h2 {
  font-size: 31px;
}

.resume-document.resume-template-creative section,
.resume-document.resume-template-tech section,
.resume-document.resume-template-marketing section,
.resume-document.resume-template-designer section,
.resume-document.resume-template-developer section,
.resume-document.resume-template-startup section,
.resume-document.resume-template-elegant section,
.resume-document.resume-template-global section,
.resume-document.resume-template-remote-work section,
.resume-document.resume-template-international section,
.resume-document.resume-template-finance section,
.resume-document.resume-template-executive section,
.resume-document.resume-template-senior-executive section,
.resume-document.resume-template-manager section,
.resume-document.resume-template-consultant section,
.resume-document.resume-template-corporate section,
.resume-document.resume-template-sales section,
.resume-document.resume-template-operations section,
.resume-document.resume-template-healthcare section,
.resume-document.resume-template-student section,
.resume-document.resume-template-first-job section,
.resume-document.resume-template-graduate section,
.resume-document.resume-template-customer-service section,
.resume-document.resume-template-modern-ats section,
.resume-document.resume-template-academic section,
.resume-document.resume-template-legal section,
.resume-document.resume-template-professional section,
.resume-document.resume-template-clean-pro section,
.resume-document.resume-template-simple-ats section,
.resume-document.resume-template-classic section,
.resume-document.resume-template-minimal section {
  margin-top: 0;
}

.resume-document.resume-template-creative section:nth-of-type(1),
.resume-document.resume-template-creative section:nth-of-type(2),
.resume-document.resume-template-creative section:nth-of-type(6),
.resume-document.resume-template-tech section:nth-of-type(1),
.resume-document.resume-template-tech section:nth-of-type(2),
.resume-document.resume-template-tech section:nth-of-type(6),
.resume-document.resume-template-marketing section:nth-of-type(1),
.resume-document.resume-template-marketing section:nth-of-type(2),
.resume-document.resume-template-marketing section:nth-of-type(6),
.resume-document.resume-template-designer section:nth-of-type(1),
.resume-document.resume-template-designer section:nth-of-type(2),
.resume-document.resume-template-designer section:nth-of-type(6),
.resume-document.resume-template-developer section:nth-of-type(1),
.resume-document.resume-template-developer section:nth-of-type(2),
.resume-document.resume-template-developer section:nth-of-type(6),
.resume-document.resume-template-startup section:nth-of-type(1),
.resume-document.resume-template-startup section:nth-of-type(2),
.resume-document.resume-template-startup section:nth-of-type(6) {
  grid-column: 2;
}

.resume-document.resume-template-creative section:nth-of-type(3),
.resume-document.resume-template-creative section:nth-of-type(4),
.resume-document.resume-template-creative section:nth-of-type(5),
.resume-document.resume-template-creative section:nth-of-type(7),
.resume-document.resume-template-tech section:nth-of-type(3),
.resume-document.resume-template-tech section:nth-of-type(4),
.resume-document.resume-template-tech section:nth-of-type(5),
.resume-document.resume-template-tech section:nth-of-type(7),
.resume-document.resume-template-marketing section:nth-of-type(3),
.resume-document.resume-template-marketing section:nth-of-type(4),
.resume-document.resume-template-marketing section:nth-of-type(5),
.resume-document.resume-template-marketing section:nth-of-type(7),
.resume-document.resume-template-designer section:nth-of-type(3),
.resume-document.resume-template-designer section:nth-of-type(4),
.resume-document.resume-template-designer section:nth-of-type(5),
.resume-document.resume-template-designer section:nth-of-type(7),
.resume-document.resume-template-developer section:nth-of-type(3),
.resume-document.resume-template-developer section:nth-of-type(4),
.resume-document.resume-template-developer section:nth-of-type(5),
.resume-document.resume-template-developer section:nth-of-type(7),
.resume-document.resume-template-startup section:nth-of-type(3),
.resume-document.resume-template-startup section:nth-of-type(4),
.resume-document.resume-template-startup section:nth-of-type(5),
.resume-document.resume-template-startup section:nth-of-type(7) {
  grid-column: 1;
  padding: 14px;
  border-radius: 16px;
  background: rgba(239, 246, 255, 0.78);
}

.resume-document.resume-template-creative .resume-two-column-section,
.resume-document.resume-template-tech .resume-two-column-section,
.resume-document.resume-template-marketing .resume-two-column-section,
.resume-document.resume-template-designer .resume-two-column-section,
.resume-document.resume-template-developer .resume-two-column-section,
.resume-document.resume-template-startup .resume-two-column-section,
.resume-document.resume-template-elegant .resume-two-column-section,
.resume-document.resume-template-global .resume-two-column-section,
.resume-document.resume-template-remote-work .resume-two-column-section,
.resume-document.resume-template-international .resume-two-column-section,
.resume-document.resume-template-finance .resume-two-column-section,
.resume-document.resume-template-executive .resume-two-column-section,
.resume-document.resume-template-senior-executive .resume-two-column-section,
.resume-document.resume-template-manager .resume-two-column-section,
.resume-document.resume-template-consultant .resume-two-column-section,
.resume-document.resume-template-corporate .resume-two-column-section,
.resume-document.resume-template-sales .resume-two-column-section,
.resume-document.resume-template-operations .resume-two-column-section,
.resume-document.resume-template-healthcare .resume-two-column-section {
  grid-template-columns: 1fr;
}

.resume-document.resume-template-creative section:nth-of-type(3) h3,
.resume-document.resume-template-creative section:nth-of-type(4) h3,
.resume-document.resume-template-creative section:nth-of-type(5) h3,
.resume-document.resume-template-creative section:nth-of-type(7) h3,
.resume-document.resume-template-tech section:nth-of-type(3) h3,
.resume-document.resume-template-tech section:nth-of-type(4) h3,
.resume-document.resume-template-tech section:nth-of-type(5) h3,
.resume-document.resume-template-tech section:nth-of-type(7) h3,
.resume-document.resume-template-marketing section:nth-of-type(3) h3,
.resume-document.resume-template-marketing section:nth-of-type(4) h3,
.resume-document.resume-template-marketing section:nth-of-type(5) h3,
.resume-document.resume-template-marketing section:nth-of-type(7) h3,
.resume-document.resume-template-designer section:nth-of-type(3) h3,
.resume-document.resume-template-designer section:nth-of-type(4) h3,
.resume-document.resume-template-designer section:nth-of-type(5) h3,
.resume-document.resume-template-designer section:nth-of-type(7) h3,
.resume-document.resume-template-developer section:nth-of-type(3) h3,
.resume-document.resume-template-developer section:nth-of-type(4) h3,
.resume-document.resume-template-developer section:nth-of-type(5) h3,
.resume-document.resume-template-developer section:nth-of-type(7) h3,
.resume-document.resume-template-startup section:nth-of-type(3) h3,
.resume-document.resume-template-startup section:nth-of-type(4) h3,
.resume-document.resume-template-startup section:nth-of-type(5) h3,
.resume-document.resume-template-startup section:nth-of-type(7) h3 {
  font-size: 12px;
}

.resume-document.resume-template-creative .resume-skill-list,
.resume-document.resume-template-tech .resume-skill-list,
.resume-document.resume-template-marketing .resume-skill-list,
.resume-document.resume-template-designer .resume-skill-list,
.resume-document.resume-template-developer .resume-skill-list,
.resume-document.resume-template-startup .resume-skill-list,
.resume-document.resume-template-elegant .resume-skill-list,
.resume-document.resume-template-global .resume-skill-list,
.resume-document.resume-template-remote-work .resume-skill-list,
.resume-document.resume-template-international .resume-skill-list,
.resume-document.resume-template-finance .resume-skill-list,
.resume-document.resume-template-executive .resume-skill-list,
.resume-document.resume-template-senior-executive .resume-skill-list,
.resume-document.resume-template-manager .resume-skill-list,
.resume-document.resume-template-consultant .resume-skill-list,
.resume-document.resume-template-corporate .resume-skill-list,
.resume-document.resume-template-sales .resume-skill-list,
.resume-document.resume-template-operations .resume-skill-list,
.resume-document.resume-template-healthcare .resume-skill-list {
  display: grid;
  grid-template-columns: 1fr;
}

.resume-document.resume-template-elegant,
.resume-document.resume-template-global,
.resume-document.resume-template-remote-work,
.resume-document.resume-template-international,
.resume-document.resume-template-finance {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(170px, 0.34fr);
  gap: 16px 28px;
  align-content: start;
}

.resume-document.resume-template-elegant header,
.resume-document.resume-template-global header,
.resume-document.resume-template-remote-work header,
.resume-document.resume-template-international header,
.resume-document.resume-template-finance header {
  grid-column: 1 / -1;
}

.resume-document.resume-template-elegant section:nth-of-type(1),
.resume-document.resume-template-elegant section:nth-of-type(2),
.resume-document.resume-template-elegant section:nth-of-type(6),
.resume-document.resume-template-global section:nth-of-type(1),
.resume-document.resume-template-global section:nth-of-type(2),
.resume-document.resume-template-global section:nth-of-type(6),
.resume-document.resume-template-remote-work section:nth-of-type(1),
.resume-document.resume-template-remote-work section:nth-of-type(2),
.resume-document.resume-template-remote-work section:nth-of-type(6),
.resume-document.resume-template-international section:nth-of-type(1),
.resume-document.resume-template-international section:nth-of-type(2),
.resume-document.resume-template-international section:nth-of-type(6),
.resume-document.resume-template-finance section:nth-of-type(1),
.resume-document.resume-template-finance section:nth-of-type(2),
.resume-document.resume-template-finance section:nth-of-type(6) {
  grid-column: 1;
}

.resume-document.resume-template-elegant section:nth-of-type(3),
.resume-document.resume-template-elegant section:nth-of-type(4),
.resume-document.resume-template-elegant section:nth-of-type(5),
.resume-document.resume-template-elegant section:nth-of-type(7),
.resume-document.resume-template-global section:nth-of-type(3),
.resume-document.resume-template-global section:nth-of-type(4),
.resume-document.resume-template-global section:nth-of-type(5),
.resume-document.resume-template-global section:nth-of-type(7),
.resume-document.resume-template-remote-work section:nth-of-type(3),
.resume-document.resume-template-remote-work section:nth-of-type(4),
.resume-document.resume-template-remote-work section:nth-of-type(5),
.resume-document.resume-template-remote-work section:nth-of-type(7),
.resume-document.resume-template-international section:nth-of-type(3),
.resume-document.resume-template-international section:nth-of-type(4),
.resume-document.resume-template-international section:nth-of-type(5),
.resume-document.resume-template-international section:nth-of-type(7),
.resume-document.resume-template-finance section:nth-of-type(3),
.resume-document.resume-template-finance section:nth-of-type(4),
.resume-document.resume-template-finance section:nth-of-type(5),
.resume-document.resume-template-finance section:nth-of-type(7) {
  grid-column: 2;
  padding: 16px;
  border-left: 3px solid rgba(31, 105, 213, 0.18);
  background: #f8fbff;
}

.resume-document.resume-template-executive,
.resume-document.resume-template-senior-executive,
.resume-document.resume-template-manager,
.resume-document.resume-template-consultant,
.resume-document.resume-template-corporate,
.resume-document.resume-template-sales,
.resume-document.resume-template-operations,
.resume-document.resume-template-healthcare {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 0.36fr);
  gap: 16px 28px;
  align-content: start;
}

.resume-document.resume-template-executive header,
.resume-document.resume-template-senior-executive header,
.resume-document.resume-template-manager header,
.resume-document.resume-template-consultant header,
.resume-document.resume-template-corporate header,
.resume-document.resume-template-sales header,
.resume-document.resume-template-operations header,
.resume-document.resume-template-healthcare header {
  grid-column: 1 / -1;
}

.resume-document.resume-template-executive section:nth-of-type(1),
.resume-document.resume-template-senior-executive section:nth-of-type(1),
.resume-document.resume-template-manager section:nth-of-type(1),
.resume-document.resume-template-consultant section:nth-of-type(1),
.resume-document.resume-template-corporate section:nth-of-type(1),
.resume-document.resume-template-sales section:nth-of-type(1),
.resume-document.resume-template-operations section:nth-of-type(1),
.resume-document.resume-template-healthcare section:nth-of-type(1) {
  grid-column: 1 / -1;
  padding: 18px 20px;
  border-left: 5px solid currentColor;
  background: #f4f8ff;
}

.resume-document.resume-template-executive section:nth-of-type(2),
.resume-document.resume-template-executive section:nth-of-type(6),
.resume-document.resume-template-senior-executive section:nth-of-type(2),
.resume-document.resume-template-senior-executive section:nth-of-type(6),
.resume-document.resume-template-manager section:nth-of-type(2),
.resume-document.resume-template-manager section:nth-of-type(6),
.resume-document.resume-template-consultant section:nth-of-type(2),
.resume-document.resume-template-consultant section:nth-of-type(6),
.resume-document.resume-template-corporate section:nth-of-type(2),
.resume-document.resume-template-corporate section:nth-of-type(6),
.resume-document.resume-template-sales section:nth-of-type(2),
.resume-document.resume-template-sales section:nth-of-type(6),
.resume-document.resume-template-operations section:nth-of-type(2),
.resume-document.resume-template-operations section:nth-of-type(6),
.resume-document.resume-template-healthcare section:nth-of-type(2),
.resume-document.resume-template-healthcare section:nth-of-type(6) {
  grid-column: 1;
}

.resume-document.resume-template-executive section:nth-of-type(3),
.resume-document.resume-template-executive section:nth-of-type(4),
.resume-document.resume-template-executive section:nth-of-type(5),
.resume-document.resume-template-executive section:nth-of-type(7),
.resume-document.resume-template-senior-executive section:nth-of-type(3),
.resume-document.resume-template-senior-executive section:nth-of-type(4),
.resume-document.resume-template-senior-executive section:nth-of-type(5),
.resume-document.resume-template-senior-executive section:nth-of-type(7),
.resume-document.resume-template-manager section:nth-of-type(3),
.resume-document.resume-template-manager section:nth-of-type(4),
.resume-document.resume-template-manager section:nth-of-type(5),
.resume-document.resume-template-manager section:nth-of-type(7),
.resume-document.resume-template-consultant section:nth-of-type(3),
.resume-document.resume-template-consultant section:nth-of-type(4),
.resume-document.resume-template-consultant section:nth-of-type(5),
.resume-document.resume-template-consultant section:nth-of-type(7),
.resume-document.resume-template-corporate section:nth-of-type(3),
.resume-document.resume-template-corporate section:nth-of-type(4),
.resume-document.resume-template-corporate section:nth-of-type(5),
.resume-document.resume-template-corporate section:nth-of-type(7),
.resume-document.resume-template-sales section:nth-of-type(3),
.resume-document.resume-template-sales section:nth-of-type(4),
.resume-document.resume-template-sales section:nth-of-type(5),
.resume-document.resume-template-sales section:nth-of-type(7),
.resume-document.resume-template-operations section:nth-of-type(3),
.resume-document.resume-template-operations section:nth-of-type(4),
.resume-document.resume-template-operations section:nth-of-type(5),
.resume-document.resume-template-operations section:nth-of-type(7),
.resume-document.resume-template-healthcare section:nth-of-type(3),
.resume-document.resume-template-healthcare section:nth-of-type(4),
.resume-document.resume-template-healthcare section:nth-of-type(5),
.resume-document.resume-template-healthcare section:nth-of-type(7) {
  grid-column: 2;
  padding: 15px;
  border-radius: 14px;
  background: #f8fbff;
}

.resume-document.resume-template-student,
.resume-document.resume-template-first-job,
.resume-document.resume-template-graduate,
.resume-document.resume-template-customer-service {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 16px 22px;
  align-content: start;
}

.resume-document.resume-template-student header,
.resume-document.resume-template-first-job header,
.resume-document.resume-template-graduate header,
.resume-document.resume-template-customer-service header,
.resume-document.resume-template-student section:nth-of-type(1),
.resume-document.resume-template-first-job section:nth-of-type(1),
.resume-document.resume-template-graduate section:nth-of-type(1),
.resume-document.resume-template-customer-service section:nth-of-type(1),
.resume-document.resume-template-student section:nth-of-type(2),
.resume-document.resume-template-first-job section:nth-of-type(2),
.resume-document.resume-template-graduate section:nth-of-type(2),
.resume-document.resume-template-customer-service section:nth-of-type(2),
.resume-document.resume-template-student section:nth-of-type(6),
.resume-document.resume-template-first-job section:nth-of-type(6),
.resume-document.resume-template-graduate section:nth-of-type(6),
.resume-document.resume-template-customer-service section:nth-of-type(6) {
  grid-column: 1 / -1;
}

.resume-document.resume-template-student section:nth-of-type(3),
.resume-document.resume-template-first-job section:nth-of-type(3),
.resume-document.resume-template-graduate section:nth-of-type(3),
.resume-document.resume-template-customer-service section:nth-of-type(3) {
  order: 3;
  grid-column: 1;
}

.resume-document.resume-template-student section:nth-of-type(4),
.resume-document.resume-template-first-job section:nth-of-type(4),
.resume-document.resume-template-graduate section:nth-of-type(4),
.resume-document.resume-template-customer-service section:nth-of-type(4) {
  order: 4;
  grid-column: 2;
}

.resume-document.resume-template-student section:nth-of-type(6),
.resume-document.resume-template-first-job section:nth-of-type(6),
.resume-document.resume-template-graduate section:nth-of-type(6),
.resume-document.resume-template-customer-service section:nth-of-type(6) {
  order: 5;
  padding: 16px;
  border-radius: 16px;
  background: #f2fbff;
}

.resume-document.resume-template-student section:nth-of-type(2),
.resume-document.resume-template-first-job section:nth-of-type(2),
.resume-document.resume-template-graduate section:nth-of-type(2),
.resume-document.resume-template-customer-service section:nth-of-type(2) {
  order: 6;
}

.resume-document.resume-template-student section:nth-of-type(5),
.resume-document.resume-template-first-job section:nth-of-type(5),
.resume-document.resume-template-graduate section:nth-of-type(5),
.resume-document.resume-template-customer-service section:nth-of-type(5) {
  order: 7;
  grid-column: 1;
}

.resume-document.resume-template-student section:nth-of-type(7),
.resume-document.resume-template-first-job section:nth-of-type(7),
.resume-document.resume-template-graduate section:nth-of-type(7),
.resume-document.resume-template-customer-service section:nth-of-type(7) {
  order: 8;
  grid-column: 2;
}

.resume-document.resume-template-modern-ats,
.resume-document.resume-template-professional,
.resume-document.resume-template-clean-pro,
.resume-document.resume-template-simple-ats,
.resume-document.resume-template-minimal {
  display: grid;
  gap: 18px;
  align-content: start;
}

.resume-document.resume-template-modern-ats header,
.resume-document.resume-template-professional header,
.resume-document.resume-template-clean-pro header,
.resume-document.resume-template-simple-ats header,
.resume-document.resume-template-minimal header {
  order: 1;
}

.resume-document.resume-template-modern-ats section:nth-of-type(1),
.resume-document.resume-template-professional section:nth-of-type(1),
.resume-document.resume-template-clean-pro section:nth-of-type(1),
.resume-document.resume-template-simple-ats section:nth-of-type(1),
.resume-document.resume-template-minimal section:nth-of-type(1) {
  order: 2;
}

.resume-document.resume-template-modern-ats section:nth-of-type(4),
.resume-document.resume-template-professional section:nth-of-type(4) {
  order: 3;
  padding: 14px 0;
  border-top: 1px solid #d7dce4;
  border-bottom: 1px solid #d7dce4;
}

.resume-document.resume-template-clean-pro section:nth-of-type(2),
.resume-document.resume-template-simple-ats section:nth-of-type(2),
.resume-document.resume-template-minimal section:nth-of-type(2) {
  order: 3;
}

.resume-document.resume-template-modern-ats section:nth-of-type(2),
.resume-document.resume-template-professional section:nth-of-type(2) {
  order: 4;
}

.resume-document.resume-template-modern-ats section:nth-of-type(3),
.resume-document.resume-template-professional section:nth-of-type(3),
.resume-document.resume-template-clean-pro section:nth-of-type(3),
.resume-document.resume-template-simple-ats section:nth-of-type(3),
.resume-document.resume-template-minimal section:nth-of-type(3) {
  order: 5;
}

.resume-document.resume-template-modern-ats section:nth-of-type(5),
.resume-document.resume-template-professional section:nth-of-type(5),
.resume-document.resume-template-clean-pro section:nth-of-type(5),
.resume-document.resume-template-simple-ats section:nth-of-type(5),
.resume-document.resume-template-minimal section:nth-of-type(5) {
  order: 6;
}

.resume-document.resume-template-modern-ats section:nth-of-type(6),
.resume-document.resume-template-professional section:nth-of-type(6),
.resume-document.resume-template-clean-pro section:nth-of-type(6),
.resume-document.resume-template-simple-ats section:nth-of-type(6),
.resume-document.resume-template-minimal section:nth-of-type(6) {
  order: 7;
}

.resume-document.resume-template-modern-ats section:nth-of-type(7),
.resume-document.resume-template-professional section:nth-of-type(7),
.resume-document.resume-template-clean-pro section:nth-of-type(7),
.resume-document.resume-template-simple-ats section:nth-of-type(7),
.resume-document.resume-template-minimal section:nth-of-type(7) {
  order: 8;
}

.resume-document.resume-template-academic,
.resume-document.resume-template-legal,
.resume-document.resume-template-classic {
  display: grid;
  gap: 18px;
  align-content: start;
}

.resume-document.resume-template-academic header,
.resume-document.resume-template-legal header,
.resume-document.resume-template-classic header {
  order: 1;
}

.resume-document.resume-template-academic section:nth-of-type(1),
.resume-document.resume-template-legal section:nth-of-type(1),
.resume-document.resume-template-classic section:nth-of-type(1) {
  order: 2;
}

.resume-document.resume-template-academic section:nth-of-type(3),
.resume-document.resume-template-legal section:nth-of-type(3) {
  order: 3;
}

.resume-document.resume-template-academic section:nth-of-type(6),
.resume-document.resume-template-legal section:nth-of-type(6) {
  order: 4;
}

.resume-document.resume-template-academic section:nth-of-type(2),
.resume-document.resume-template-legal section:nth-of-type(2) {
  order: 5;
}

.resume-document.resume-template-classic section:nth-of-type(2),
.resume-document.resume-template-classic section:nth-of-type(3),
.resume-document.resume-template-classic section:nth-of-type(4),
.resume-document.resume-template-classic section:nth-of-type(5),
.resume-document.resume-template-classic section:nth-of-type(6),
.resume-document.resume-template-classic section:nth-of-type(7) {
  order: 3;
}

.resume-document.resume-template-classic section:nth-of-type(3) {
  order: 4;
}

.resume-document.resume-template-classic section:nth-of-type(4) {
  order: 5;
}

.resume-document.resume-template-classic section:nth-of-type(5) {
  order: 6;
}

.resume-document.resume-template-classic section:nth-of-type(6) {
  order: 7;
}

.resume-document.resume-template-classic section:nth-of-type(7) {
  order: 8;
}

.resume-document.resume-template-academic section:nth-of-type(4),
.resume-document.resume-template-legal section:nth-of-type(4) {
  order: 6;
}

.resume-document.resume-template-academic section:nth-of-type(5),
.resume-document.resume-template-legal section:nth-of-type(5) {
  order: 7;
}

.resume-document.resume-template-academic section:nth-of-type(7),
.resume-document.resume-template-legal section:nth-of-type(7) {
  order: 8;
}

.resume-document.resume-template-classic header,
.resume-document.resume-template-academic header,
.resume-document.resume-template-legal header {
  text-align: center;
}

.resume-document.resume-template-classic h3,
.resume-document.resume-template-academic h3,
.resume-document.resume-template-legal h3,
.resume-document.resume-template-simple-ats h3,
.resume-document.resume-template-clean-pro h3 {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 12px;
  align-items: center;
}

.resume-document.resume-template-classic h3::before,
.resume-document.resume-template-classic h3::after,
.resume-document.resume-template-academic h3::before,
.resume-document.resume-template-academic h3::after,
.resume-document.resume-template-legal h3::before,
.resume-document.resume-template-legal h3::after,
.resume-document.resume-template-simple-ats h3::before,
.resume-document.resume-template-simple-ats h3::after,
.resume-document.resume-template-clean-pro h3::before,
.resume-document.resume-template-clean-pro h3::after {
  content: "";
  height: 1px;
  background: currentColor;
  opacity: 0.22;
}

/* Resume architecture v2: model-specific composition, order and hierarchy. */
.resume-document.resume-template-minimal {
  display: grid;
  gap: 15px;
  color: #111827;
  border: 1px solid #d7dce4;
  background: #fff;
  box-shadow: none;
}

.resume-document.resume-template-minimal header {
  order: initial;
  justify-items: start;
  gap: 5px;
  padding-bottom: 14px;
  text-align: left;
  border-bottom: 1px solid #6b7280;
}

.resume-document.resume-template-minimal h2 {
  margin-bottom: 5px;
  color: #111827;
  font-size: 34px;
  line-height: 1.05;
}

.resume-document.resume-template-minimal header strong {
  color: #374151;
  font-size: 15px;
  font-weight: 700;
}

.resume-document.resume-template-minimal .resume-contact-line {
  color: #4b5563;
  font-size: 12.5px;
}

.resume-document.resume-template-minimal section {
  order: initial;
  margin-top: 0;
}

.resume-document.resume-template-minimal section[data-optional-section] {
  order: initial;
}

.resume-document.resume-template-minimal h3 {
  margin-bottom: 7px;
  padding-bottom: 4px;
  border-bottom: 1px solid #d1d5db;
  color: #111827;
  font-size: 12px;
  letter-spacing: 0.08em;
}

.resume-document.resume-template-minimal p,
.resume-document.resume-template-minimal li,
.resume-document.resume-template-minimal span {
  color: #374151;
  font-size: 13px;
  line-height: 1.45;
}

.resume-document.resume-template-minimal ul {
  gap: 4px;
  margin: 6px 0 0;
  padding-left: 17px;
}

.resume-document.resume-template-minimal .minimal-ats-experience {
  display: grid;
  gap: 4px;
}

.resume-document.resume-template-minimal .minimal-ats-experience + .minimal-ats-experience {
  margin-top: 12px;
}

.resume-document.resume-template-minimal .minimal-ats-entry-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.resume-document.resume-template-minimal .minimal-ats-entry-head strong {
  color: #111827;
  font-size: 14px;
}

.resume-document.resume-template-minimal .minimal-ats-entry-head span {
  flex: 0 1 auto;
  color: #4b5563;
  font-size: 12px;
  text-align: right;
}

.resume-document.resume-template-minimal .minimal-ats-company-line {
  color: #4b5563;
}

.resume-document.resume-template-minimal .minimal-ats-location:not(:empty)::before {
  content: " - ";
}

.resume-document.resume-template-minimal .resume-skill-list {
  display: block;
}

.resume-document.resume-template-minimal .resume-skill-list span,
.resume-document.resume-template-simple-ats .resume-skill-list span {
  display: inline;
  padding: 0;
  border-radius: 0;
  background: transparent;
}

.resume-document.resume-template-minimal .resume-skill-list span::after,
.resume-document.resume-template-simple-ats .resume-skill-list span::after {
  content: ", ";
}

.resume-document.resume-template-minimal .resume-skill-list span:last-child::after,
.resume-document.resume-template-simple-ats .resume-skill-list span:last-child::after {
  content: "";
}

.resume-document.resume-template-simple-ats {
  display: grid;
  gap: 14px;
  padding-top: 42px;
  border: 1px solid #d7dce4;
  box-shadow: none;
}

.resume-document.resume-template-simple-ats header {
  justify-items: start;
  gap: 6px;
  padding-bottom: 14px;
  text-align: left;
  border-bottom: 1px solid #111827;
}

.resume-document.resume-template-simple-ats h2 {
  font-size: 34px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume {
  display: block;
  padding-top: clamp(42px, 5vw, 54px);
  color: #1f2933;
  border: 1px solid #d7dce4;
  background: #fff;
  box-shadow: none;
}

.resume-document.resume-template-simple-ats.simple-ats-resume header,
.resume-document.resume-template-simple-ats.simple-ats-resume section {
  order: initial;
  margin: 0;
  padding: 0;
  background: transparent;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-header {
  display: block;
  padding-bottom: 12px;
  text-align: center;
  border-bottom: 1px solid #4b5563;
}

.resume-document.resume-template-simple-ats.simple-ats-resume h2 {
  margin: 0 0 4px;
  color: #111827;
  font-size: 28px;
  line-height: 1.1;
}

.resume-document.resume-template-simple-ats.simple-ats-resume header strong {
  display: block;
  color: #374151;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-contact-line {
  margin: 5px 0 0;
  color: #4b5563;
  font-size: 11.5px;
  line-height: 1.35;
  text-align: center;
}

.resume-document.resume-template-simple-ats.simple-ats-resume section {
  margin-top: 13px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume h3 {
  display: block;
  margin: 0 0 6px;
  padding-bottom: 3px;
  border-bottom: 1px solid #d1d5db;
  color: #111827;
  font-size: 11.5px;
  font-weight: 900;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.resume-document.resume-template-simple-ats.simple-ats-resume h3::before,
.resume-document.resume-template-simple-ats.simple-ats-resume h3::after {
  content: none;
}

.resume-document.resume-template-simple-ats.simple-ats-resume p,
.resume-document.resume-template-simple-ats.simple-ats-resume li,
.resume-document.resume-template-simple-ats.simple-ats-resume span {
  color: #374151;
  font-size: 12.6px;
  line-height: 1.42;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-experience-item + .simple-ats-experience-item {
  margin-top: 11px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-experience-item > strong,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-education-item strong {
  display: block;
  color: #111827;
  font-size: 13.3px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-company-line,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-period,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-education-item {
  margin: 2px 0 0;
}

.resume-document.resume-template-simple-ats.simple-ats-resume ul {
  display: grid;
  gap: 3px;
  margin: 6px 0 0;
  padding-left: 17px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text {
  display: block;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text span {
  display: inline;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: #374151;
  background: transparent;
  font-size: 12.6px;
  font-weight: 400;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text span::after {
  content: ", ";
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text span:last-child::after {
  content: "";
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-text-list,
.resume-document.resume-template-simple-ats.simple-ats-resume .resume-link-list {
  display: grid;
  gap: 4px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-text-list p,
.resume-document.resume-template-simple-ats.simple-ats-resume .resume-link-list p {
  margin: 0;
}

.pdf-export-document.resume-template-simple-ats.simple-ats-resume {
  display: block !important;
}

.resume-document.resume-template-simple-ats.simple-ats-resume {
  display: block;
  padding: 42px 70px 40px;
  border: 0;
  border-radius: 0;
  color: #111827;
  background: #ffffff;
  box-shadow: none;
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.resume-template-simple-ats.simple-ats-resume {
  padding: 42px 70px 40px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume header,
.resume-document.resume-template-simple-ats.simple-ats-resume section {
  display: block;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-header {
  padding-bottom: 11px;
  text-align: left;
  border-bottom: 1px solid #9ca3af;
}

.resume-document.resume-template-simple-ats.simple-ats-resume h2 {
  margin: 0 0 4px;
  color: #111111;
  font-size: 34px;
  font-weight: 850;
  line-height: 1.12;
  letter-spacing: 0;
  text-transform: none;
}

.resume-document.resume-template-simple-ats.simple-ats-resume header strong {
  display: block;
  margin: 0;
  color: #202020;
  font-size: 17px;
  font-weight: 500;
  line-height: 1.35;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-contact-line {
  margin: 9px 0 0;
  color: #1f2933;
  font-size: 12.6px;
  font-weight: 500;
  line-height: 1.35;
  text-align: left;
  overflow-wrap: anywhere;
}

.resume-document.resume-template-simple-ats.simple-ats-resume section {
  margin-top: 9px;
  padding-top: 7px;
  border-top: 1px solid #aeb4bd;
}

.resume-document.resume-template-simple-ats.simple-ats-resume h3 {
  display: block;
  margin: 0 0 6px;
  padding: 0 0 5px;
  border-bottom: 1px solid #c9ced6;
  color: #111111;
  font-size: 13.2px;
  font-weight: 850;
  letter-spacing: 0.02em;
  line-height: 1.2;
  text-transform: uppercase;
}

.resume-document.resume-template-simple-ats.simple-ats-resume h3::before,
.resume-document.resume-template-simple-ats.simple-ats-resume h3::after {
  content: none;
}

.resume-document.resume-template-simple-ats.simple-ats-resume p,
.resume-document.resume-template-simple-ats.simple-ats-resume li,
.resume-document.resume-template-simple-ats.simple-ats-resume span,
.resume-document.resume-template-simple-ats.simple-ats-resume em {
  color: #202020;
  font-size: 12.8px;
  line-height: 1.42;
  letter-spacing: 0;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-experience-item {
  padding-bottom: 7px;
  border-bottom: 1px solid #d6d9df;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-experience-item + .simple-ats-experience-item {
  margin-top: 7px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-experience-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-experience-item > strong,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-education-item strong,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-project-list strong {
  display: block;
  color: #111111;
  font-size: 13.8px;
  font-weight: 800;
  line-height: 1.3;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-company-line,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-period,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-education-item,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-text-list p,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-project-list p,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-link-line {
  margin: 0;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-period,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-education-item em {
  display: block;
  color: #4b5563;
  font-style: normal;
}

.resume-document.resume-template-simple-ats.simple-ats-resume ul {
  display: block;
  margin: 5px 0 0;
  padding-left: 18px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume li {
  margin: 2px 0;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-text-list,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-project-list {
  display: block;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text span {
  display: inline;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: #202020;
  background: transparent;
  box-shadow: none;
  font-size: 12.8px;
  font-weight: 400;
  line-height: 1.42;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text span::after {
  content: ", ";
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-skill-text span:last-child::after {
  content: ".";
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-text-list p + p,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-project-list p + p {
  margin-top: 3px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-project-list span {
  display: block;
}

.pdf-export-document.resume-template-simple-ats.simple-ats-resume {
  display: block !important;
  padding: 42px 70px 40px !important;
  box-shadow: none !important;
}

.resume-template-clean-start-ats.clean-start-ats-resume section,
.resume-document.resume-template-simple-ats.simple-ats-resume section {
  break-inside: avoid;
}

.resume-template-clean-start-ats.clean-start-ats-resume h3,
.resume-document.resume-template-simple-ats.simple-ats-resume h3 {
  break-after: avoid;
}

.resume-document.resume-template-simple-ats.simple-ats-resume section {
  margin-top: 10px;
  padding-top: 8px;
  border-top-color: #b9c0ca;
}

.resume-document.resume-template-simple-ats.simple-ats-resume h3 {
  margin-bottom: 6.5px;
  border-bottom-color: #d4d8df;
}

.resume-document.resume-template-simple-ats.simple-ats-resume p,
.resume-document.resume-template-simple-ats.simple-ats-resume li,
.resume-document.resume-template-simple-ats.simple-ats-resume span,
.resume-document.resume-template-simple-ats.simple-ats-resume em {
  line-height: 1.42;
}

.resume-document.resume-template-simple-ats.simple-ats-resume li {
  padding-left: 1px;
}

.resume-template-clean-start-ats.clean-start-ats-resume .clean-start-contact-line,
.resume-document.resume-template-simple-ats.simple-ats-resume .simple-ats-contact-line {
  line-height: 1.42;
}

.pdf-export-document.resume-template-clean-start-ats.clean-start-ats-resume section,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume section {
  break-inside: avoid !important;
}

.pdf-export-document.resume-template-simple-ats.simple-ats-resume p,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume li,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume span,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume em {
  line-height: 1.42 !important;
}

.pdf-export-document.resume-template-simple-ats.simple-ats-resume h2 {
  font-size: 25.5pt !important;
}

.pdf-export-document.resume-template-simple-ats.simple-ats-resume header strong {
  font-size: 12.8pt !important;
}

.pdf-export-document.resume-template-simple-ats.simple-ats-resume .simple-ats-contact-line {
  font-size: 9.6pt !important;
}

.pdf-export-document.resume-template-simple-ats.simple-ats-resume h3 {
  font-size: 10pt !important;
}

.pdf-export-document.resume-template-simple-ats.simple-ats-resume .simple-ats-experience-item > strong,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume .simple-ats-education-item strong,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume .simple-ats-project-list strong {
  font-size: 10.4pt !important;
}

.pdf-export-document.resume-template-simple-ats.simple-ats-resume p,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume li,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume span,
.pdf-export-document.resume-template-simple-ats.simple-ats-resume em {
  font-size: 9.7pt !important;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact {
  padding: 40px 46px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense {
  padding: 32px 38px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact .clean-start-header {
  padding-bottom: 10px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense .clean-start-header {
  gap: 2px;
  padding-bottom: 7px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact h2 {
  font-size: 27px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense h2 {
  font-size: 22px;
  line-height: 1;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact header strong {
  font-size: 12.5px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense header strong {
  font-size: 10.8px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact .clean-start-contact-line {
  font-size: 10.4px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense .clean-start-contact-line {
  font-size: 9.1px;
  line-height: 1.25;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact section {
  margin-top: 10px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense section {
  margin-top: 6px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact h3 {
  margin-bottom: 5px;
  padding-bottom: 3px;
  font-size: 10.5px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense h3 {
  margin-bottom: 3px;
  padding-bottom: 2px;
  font-size: 8.8px;
  line-height: 1.08;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact p,
.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact li {
  font-size: 10.9px;
  line-height: 1.32;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense p,
.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense li {
  font-size: 9.2px;
  line-height: 1.22;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact ul {
  margin-top: 3px;
  padding-left: 14px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense ul {
  margin-top: 2px;
  padding-left: 11px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact .clean-start-entry + .clean-start-entry {
  margin-top: 7px;
  padding-top: 6px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense .clean-start-entry,
.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense .clean-start-project-item {
  gap: 1px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense .clean-start-entry + .clean-start-entry {
  margin-top: 4px;
  padding-top: 4px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact .clean-start-entry strong,
.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-compact .clean-start-project-item strong {
  font-size: 11.2px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense .clean-start-entry strong,
.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense .clean-start-project-item strong {
  font-size: 9.8px;
}

.resume-template-clean-start-ats.clean-start-ats-resume.resume-density-dense .clean-start-period {
  font-size: 8.8px !important;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact {
  padding: 34px 54px 32px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense {
  padding: 26px 42px 24px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact .simple-ats-header {
  padding-bottom: 8px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense .simple-ats-header {
  padding-bottom: 5px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact h2 {
  font-size: 29px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense h2 {
  margin-bottom: 2px;
  font-size: 23px;
  line-height: 1.05;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact header strong {
  font-size: 14.5px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense header strong {
  font-size: 11px;
  line-height: 1.2;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact .simple-ats-contact-line {
  margin-top: 6px;
  font-size: 11px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense .simple-ats-contact-line {
  margin-top: 3px;
  font-size: 9px;
  line-height: 1.22;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact section {
  margin-top: 7px;
  padding-top: 6px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense section {
  margin-top: 4px;
  padding-top: 4px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact h3 {
  margin-bottom: 4px;
  padding-bottom: 3px;
  font-size: 11px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense h3 {
  margin-bottom: 2px;
  padding-bottom: 2px;
  font-size: 8.8px;
  line-height: 1.08;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact p,
.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact li,
.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact span,
.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact em {
  font-size: 10.8px;
  line-height: 1.32;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense p,
.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense li,
.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense span,
.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense em {
  font-size: 9.1px;
  line-height: 1.22;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact ul {
  margin-top: 3px;
  padding-left: 14px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense ul {
  margin-top: 2px;
  padding-left: 11px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact .simple-ats-experience-item {
  padding-bottom: 5px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense .simple-ats-experience-item {
  padding-bottom: 3px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact .simple-ats-experience-item + .simple-ats-experience-item {
  margin-top: 5px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense .simple-ats-experience-item + .simple-ats-experience-item {
  margin-top: 3px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact .simple-ats-experience-item > strong,
.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact .simple-ats-education-item strong,
.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-compact .simple-ats-project-list strong {
  font-size: 11.4px;
}

.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense .simple-ats-experience-item > strong,
.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense .simple-ats-education-item strong,
.resume-document.resume-template-simple-ats.simple-ats-resume.resume-density-dense .simple-ats-project-list strong {
  font-size: 9.7px;
}

.resume-document.resume-template-student,
.resume-document.resume-template-graduate {
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
}

.resume-document.resume-template-student header,
.resume-document.resume-template-graduate header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, 0.72fr);
  align-items: start;
  text-align: left;
}

.resume-document.resume-template-student header .resume-contact-line,
.resume-document.resume-template-graduate header .resume-contact-line {
  justify-self: end;
  max-width: 220px;
  text-align: right;
}

.resume-document.resume-template-student section:nth-of-type(1),
.resume-document.resume-template-graduate section:nth-of-type(1) {
  padding: 18px;
  border-radius: 16px;
  background: #eefaff;
}

.resume-document.resume-template-student.student-resume {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap: 14px 18px;
  align-content: start;
  color: #24324a;
  border-color: rgba(31, 165, 200, 0.2);
  background:
    linear-gradient(180deg, rgba(247, 253, 255, 0.9), rgba(255, 255, 255, 0) 140px),
    #fff;
}

.resume-document.resume-template-student.student-resume header,
.resume-document.resume-template-student.student-resume section {
  order: initial;
  grid-column: auto !important;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
}

.resume-document.resume-template-student.student-resume .student-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, 0.62fr);
  grid-column: 1 / -1 !important;
  align-items: start;
  gap: 18px;
  padding-bottom: 15px;
  text-align: left;
  border-bottom: 2px solid rgba(31, 165, 200, 0.24);
}

.resume-document.resume-template-student.student-resume h2 {
  margin: 0 0 5px;
  color: #123047;
  font-size: 32px;
  line-height: 1.06;
}

.resume-document.resume-template-student.student-resume .student-header strong {
  display: block;
  color: #147d9a;
  font-size: 14.5px;
  line-height: 1.3;
}

.resume-document.resume-template-student.student-resume .student-contact-line {
  justify-self: end;
  max-width: 250px;
  padding: 9px 11px;
  border: 1px solid rgba(31, 165, 200, 0.18);
  border-radius: 8px;
  color: #516070;
  background: rgba(238, 250, 255, 0.74);
  font-size: 11.5px;
  line-height: 1.45;
  text-align: right;
}

.resume-document.resume-template-student.student-resume h3 {
  margin: 0 0 8px;
  color: #147d9a;
  font-size: 11.5px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.resume-document.resume-template-student.student-resume p,
.resume-document.resume-template-student.student-resume li,
.resume-document.resume-template-student.student-resume span {
  color: #39475d;
  font-size: 12.6px;
  line-height: 1.45;
}

.resume-document.resume-template-student.student-resume .student-objective {
  grid-column: 1 / -1 !important;
  padding: 14px 16px;
  border-left: 4px solid #1fa5c8;
  border-radius: 8px;
  background: #f1fbff;
}

.resume-document.resume-template-student.student-resume .student-objective p {
  margin: 0;
  color: #24324a;
  font-size: 13.2px;
}

.resume-document.resume-template-student.student-resume .student-education {
  padding: 13px 14px;
  border: 1px solid rgba(31, 165, 200, 0.16);
  border-radius: 8px;
  background: #fbfeff;
}

.resume-document.resume-template-student.student-resume .student-education-item,
.resume-document.resume-template-student.student-resume .student-experience-item {
  display: grid;
  gap: 4px;
}

.resume-document.resume-template-student.student-resume .student-education-item strong,
.resume-document.resume-template-student.student-resume .student-entry-head strong,
.resume-document.resume-template-student.student-resume .student-projects strong {
  color: #17243a;
  font-size: 13.5px;
}

.resume-document.resume-template-student.student-resume .student-skill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.resume-document.resume-template-student.student-resume .student-skill-list span {
  padding: 5px 8px;
  border: 1px solid rgba(31, 165, 200, 0.22);
  border-radius: 999px;
  color: #0a7792;
  background: #edfaff;
  font-size: 11.6px;
  font-weight: 800;
}

.resume-document.resume-template-student.student-resume .student-projects {
  grid-column: 1 / -1 !important;
}

.resume-document.resume-template-student.student-resume .student-projects .student-text-list {
  display: grid;
  gap: 8px;
}

.resume-document.resume-template-student.student-resume .student-projects p {
  margin: 0;
  padding: 10px 12px;
  border-left: 3px solid rgba(31, 165, 200, 0.42);
  border-radius: 8px;
  background: #f8fcff;
}

.resume-document.resume-template-student.student-resume .student-courses .student-text-list {
  display: grid;
  gap: 7px;
}

.resume-document.resume-template-student.student-resume .student-courses p,
.resume-document.resume-template-student.student-resume .resume-link-list p {
  margin: 0;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(214, 226, 239, 0.9);
}

.resume-document.resume-template-student.student-resume .student-entry-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}

.resume-document.resume-template-student.student-resume .student-entry-head span {
  color: #66758a;
  font-size: 11.8px;
  font-weight: 800;
}

.resume-document.resume-template-student.student-resume .student-entry-meta {
  margin: 0;
  color: #66758a;
}

.resume-document.resume-template-student.student-resume .student-entry-meta span + span:not(:empty)::before {
  content: " | ";
}

.resume-document.resume-template-student.student-resume ul {
  display: grid;
  gap: 4px;
  margin: 6px 0 0;
  padding-left: 17px;
}

.resume-document.resume-template-student.student-resume .student-languages p {
  margin: 0;
}

.pdf-export-document.resume-template-student.student-resume {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr) !important;
  gap: 12px 16px !important;
  align-content: start !important;
}

.pdf-export-document.resume-template-student.student-resume .student-header,
.pdf-export-document.resume-template-student.student-resume .student-objective,
.pdf-export-document.resume-template-student.student-resume .student-projects {
  grid-column: 1 / -1 !important;
}

.resume-document.resume-template-first-job.first-job-resume {
  display: grid;
  grid-template-columns: 1fr;
  gap: 11px;
  align-content: start;
  padding: 46px 52px;
  color: #263449;
  border-color: rgba(87, 151, 196, 0.22);
  background:
    linear-gradient(180deg, rgba(240, 249, 255, 0.86), rgba(255, 255, 255, 0) 150px),
    #fff;
}

.resume-document.resume-template-first-job.first-job-resume header,
.resume-document.resume-template-first-job.first-job-resume section {
  order: initial;
  grid-column: auto;
  margin: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  break-inside: avoid;
  page-break-inside: avoid;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-header {
  display: grid;
  gap: 6px;
  padding-bottom: 14px;
  border-bottom: 2px solid rgba(90, 160, 205, 0.24);
  text-align: left;
}

.resume-document.resume-template-first-job.first-job-resume h2 {
  margin: 0;
  color: #10243a;
  font-size: 31px;
  line-height: 1.05;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-header strong {
  display: block;
  color: #1d6f9f;
  font-size: 14.8px;
  line-height: 1.35;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-contact-line {
  margin: 2px 0 0;
  color: #59687b;
  font-size: 11.8px;
  line-height: 1.45;
}

.resume-document.resume-template-first-job.first-job-resume h3 {
  margin: 0 0 7px;
  color: #1d6f9f;
  font-size: 11.4px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.resume-document.resume-template-first-job.first-job-resume p,
.resume-document.resume-template-first-job.first-job-resume li,
.resume-document.resume-template-first-job.first-job-resume span {
  color: #39475a;
  font-size: 12.4px;
  line-height: 1.42;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-objective {
  padding: 13px 15px;
  border-left: 4px solid #5aa0cd;
  border-radius: 8px;
  background: #f0f9ff;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-objective p,
.resume-document.resume-template-first-job.first-job-resume .first-job-profile p,
.resume-document.resume-template-first-job.first-job-resume .first-job-languages p {
  margin: 0;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-skills,
.resume-document.resume-template-first-job.first-job-resume .first-job-courses {
  padding: 12px 14px;
  border: 1px solid rgba(90, 160, 205, 0.18);
  border-radius: 8px;
  background: rgba(248, 252, 255, 0.92);
}

.resume-document.resume-template-first-job.first-job-resume .first-job-skill-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-skill-list span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 4px 8px;
  border: 1px solid rgba(90, 160, 205, 0.2);
  border-radius: 999px;
  color: #1b6d92;
  background: #edf8fd;
  font-size: 11.4px;
  font-weight: 800;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-education-item,
.resume-document.resume-template-first-job.first-job-resume .first-job-activity-item {
  display: grid;
  gap: 4px;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-education-item strong,
.resume-document.resume-template-first-job.first-job-resume .first-job-entry-head strong {
  color: #15263d;
  font-size: 13.4px;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-text-list {
  display: grid;
  gap: 6px;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-text-list p,
.resume-document.resume-template-first-job.first-job-resume .resume-link-list p {
  margin: 0;
  padding-bottom: 5px;
  border-bottom: 1px solid rgba(215, 227, 239, 0.9);
}

.resume-document.resume-template-first-job.first-job-resume .first-job-projects .first-job-text-list p {
  padding: 8px 10px;
  border-bottom: 0;
  border-left: 3px solid rgba(90, 160, 205, 0.34);
  border-radius: 8px;
  background: #f8fcff;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-entry-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 8px;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-entry-head span {
  color: #68798d;
  font-size: 11.6px;
  font-weight: 800;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-entry-meta {
  margin: 0;
  color: #68798d;
}

.resume-document.resume-template-first-job.first-job-resume .first-job-entry-meta span + span:not(:empty)::before {
  content: " | ";
}

.resume-document.resume-template-first-job.first-job-resume ul {
  display: grid;
  gap: 3px;
  margin: 5px 0 0;
  padding-left: 17px;
}

.pdf-export-document.resume-template-first-job.first-job-resume {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  align-content: start !important;
}

.resume-document.resume-template-modern,
.resume-document.resume-template-corporate,
.resume-document.resume-template-professional {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(190px, 0.34fr);
  gap: 18px 28px;
  align-content: start;
}

.resume-document.resume-template-modern header,
.resume-document.resume-template-corporate header,
.resume-document.resume-template-professional header {
  grid-column: 1 / -1;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.5fr);
  align-items: center;
  padding: 24px;
  border: 0;
  border-radius: 22px;
  background: linear-gradient(135deg, #0b1736, #1f69d5);
}

.resume-document.resume-template-modern header h2,
.resume-document.resume-template-modern header strong,
.resume-document.resume-template-modern header p,
.resume-document.resume-template-corporate header h2,
.resume-document.resume-template-corporate header strong,
.resume-document.resume-template-corporate header p,
.resume-document.resume-template-professional header h2,
.resume-document.resume-template-professional header strong,
.resume-document.resume-template-professional header p {
  color: #fff;
}

.resume-document.resume-template-modern section:nth-of-type(1),
.resume-document.resume-template-corporate section:nth-of-type(1),
.resume-document.resume-template-professional section:nth-of-type(1) {
  grid-column: 1 / -1;
  padding: 18px 20px;
  border-radius: 18px;
  background: #f4f8ff;
}

.resume-document.resume-template-modern section:nth-of-type(2),
.resume-document.resume-template-modern section:nth-of-type(6),
.resume-document.resume-template-corporate section:nth-of-type(2),
.resume-document.resume-template-corporate section:nth-of-type(6),
.resume-document.resume-template-professional section:nth-of-type(2),
.resume-document.resume-template-professional section:nth-of-type(6) {
  grid-column: 1;
}

.resume-document.resume-template-modern section:nth-of-type(3),
.resume-document.resume-template-modern section:nth-of-type(4),
.resume-document.resume-template-modern section:nth-of-type(5),
.resume-document.resume-template-modern section:nth-of-type(7),
.resume-document.resume-template-corporate section:nth-of-type(3),
.resume-document.resume-template-corporate section:nth-of-type(4),
.resume-document.resume-template-corporate section:nth-of-type(5),
.resume-document.resume-template-corporate section:nth-of-type(7),
.resume-document.resume-template-professional section:nth-of-type(3),
.resume-document.resume-template-professional section:nth-of-type(4),
.resume-document.resume-template-professional section:nth-of-type(5),
.resume-document.resume-template-professional section:nth-of-type(7) {
  grid-column: 2;
  padding: 15px;
  border-radius: 16px;
  background: #f8fbff;
}

.resume-document.resume-template-modern.modern-resume {
  grid-template-columns: minmax(0, 1fr) minmax(190px, 0.38fr);
  gap: 16px 26px;
  padding: 46px 48px;
  border: 1px solid #dce7f5;
  background:
    linear-gradient(90deg, rgba(31, 165, 200, 0.08), transparent 34%),
    #ffffff;
}

.resume-document.resume-template-modern.modern-resume .modern-header {
  grid-template-columns: minmax(0, 1fr) minmax(210px, 0.44fr);
  align-items: end;
  padding: 22px 24px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(18, 60, 145, 0.08), rgba(31, 165, 200, 0.12)),
    #f8fbff;
}

.resume-document.resume-template-modern.modern-resume .modern-header h2 {
  color: var(--modern-ink);
}

.resume-document.resume-template-modern.modern-resume .modern-header strong {
  color: #225287;
}

.resume-document.resume-template-modern.modern-resume .modern-header p,
.resume-document.resume-template-modern.modern-resume .modern-contact-line span {
  color: var(--modern-muted);
}

.resume-document.resume-template-modern.modern-resume section:nth-of-type(n) {
  grid-column: auto;
  padding: 0;
  border-radius: 0;
  background: transparent;
}

.resume-document.resume-template-modern.modern-resume .modern-primary-section {
  grid-column: 1;
}

.resume-document.resume-template-modern.modern-resume .modern-summary {
  padding: 15px 18px;
  border-radius: 0 12px 12px 0;
  background: rgba(244, 249, 255, 0.92);
}

.resume-document.resume-template-modern.modern-resume .modern-sidebar-section {
  grid-column: 2;
  padding: 14px;
  border-radius: 12px;
  background: rgba(248, 251, 255, 0.96);
}

.resume-document.resume-template-modern.modern-resume .modern-main-column {
  grid-column: 1;
  display: grid;
  gap: 15px;
  align-content: start;
  min-width: 0;
}

.resume-document.resume-template-modern.modern-resume .modern-sidebar {
  grid-column: 2;
  display: grid;
  gap: 10px;
  align-content: start;
  align-self: start;
  min-width: 0;
}

.resume-document.resume-template-modern.modern-resume .modern-main-column section,
.resume-document.resume-template-modern.modern-resume .modern-sidebar section {
  grid-column: auto !important;
  grid-row: auto !important;
  align-self: start;
  min-height: 0;
}

.resume-document.resume-template-modern.modern-resume .modern-main-column .modern-summary {
  padding: 16px 18px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-left: 4px solid var(--modern-cyan);
  border-radius: 0 12px 12px 0;
  background: linear-gradient(90deg, rgba(244, 249, 255, 0.98), #ffffff);
}

.resume-document.resume-template-modern.modern-resume .modern-main-column .modern-experience {
  padding-left: 2px;
}

.resume-document.resume-template-modern.modern-resume .modern-sidebar .modern-sidebar-section {
  grid-column: auto;
  padding: 12px 13px;
  border: 1px solid rgba(220, 232, 246, 0.95);
  border-radius: 10px;
  background: rgba(248, 251, 255, 0.98);
}

.resume-document.resume-template-modern.modern-resume .modern-sidebar .modern-skills {
  border-color: rgba(31, 165, 200, 0.22);
  background: linear-gradient(180deg, #f5fbff, #ffffff);
}

.resume-document.resume-template-modern.modern-resume .modern-skills,
.resume-document.resume-template-modern.modern-resume .modern-education,
.resume-document.resume-template-modern.modern-resume .modern-languages,
.resume-document.resume-template-modern.modern-resume .modern-certifications,
.resume-document.resume-template-modern.modern-resume .modern-links {
  grid-row: auto;
}

.pdf-export-document.resume-template-modern.modern-resume .modern-main-column {
  grid-column: 1 !important;
  display: grid !important;
  gap: 4mm !important;
  align-content: start !important;
}

.pdf-export-document.resume-template-modern.modern-resume .modern-sidebar {
  grid-column: 2 !important;
  display: grid !important;
  gap: 2.8mm !important;
  align-content: start !important;
  align-self: start !important;
}

.pdf-export-document.resume-template-modern.modern-resume > .modern-primary-section {
  grid-column: 1 !important;
  align-self: start !important;
}

.pdf-export-document.resume-template-modern.modern-resume > .modern-sidebar-section {
  grid-column: 2 !important;
  align-self: start !important;
}

.pdf-export-document.resume-template-modern.modern-resume > .modern-summary {
  padding: 4.2mm 4.8mm !important;
  border: 1px solid rgba(31, 105, 213, 0.1) !important;
  border-left: 1.1mm solid var(--modern-cyan) !important;
  border-radius: 0 3mm 3mm 0 !important;
  background: linear-gradient(90deg, rgba(244, 249, 255, 0.98), #ffffff) !important;
}

.pdf-export-document.resume-template-modern.modern-resume > .modern-experience {
  padding-left: 0.6mm !important;
}

.pdf-export-document.resume-template-modern.modern-resume > .modern-sidebar-section {
  padding: 3.4mm 3.6mm !important;
  border: 1px solid rgba(220, 232, 246, 0.95) !important;
  border-radius: 2.7mm !important;
  background: rgba(248, 251, 255, 0.98) !important;
}

.pdf-export-document.resume-template-modern.modern-resume > .modern-skills {
  border-color: rgba(31, 165, 200, 0.22) !important;
  background: linear-gradient(180deg, #f5fbff, #ffffff) !important;
}

.pdf-export-document.resume-template-modern.modern-resume > .pdf-brand-footer {
  grid-column: 1 / -1 !important;
}

.resume-document.resume-template-professional section:nth-of-type(2) {
  padding-left: 18px;
  border-left: 3px solid #1f69d5;
}

.resume-document.resume-template-executive,
.resume-document.resume-template-senior-executive,
.resume-document.resume-template-manager {
  grid-template-columns: minmax(0, 1fr) minmax(210px, 0.38fr);
}

.resume-document.resume-template-senior-executive,
.resume-document.resume-template-manager,
.resume-document.resume-template-global,
.resume-document.resume-template-developer,
.resume-document.resume-template-designer,
.resume-document.resume-template-consultant,
.resume-document.resume-template-startup,
.resume-document.resume-template-remote-work {
  box-shadow: 0 26px 70px rgba(7, 15, 35, 0.16);
}

.resume-document.resume-template-senior-executive section:nth-of-type(1),
.resume-document.resume-template-manager section:nth-of-type(1) {
  background: linear-gradient(135deg, #f7f1df, #fff);
}

.resume-document.resume-template-creative,
.resume-document.resume-template-marketing,
.resume-document.resume-template-designer,
.resume-document.resume-template-developer,
.resume-document.resume-template-startup,
.resume-document.resume-template-tech {
  grid-template-columns: minmax(165px, 0.34fr) minmax(0, 1fr);
}

.resume-document.resume-template-creative header,
.resume-document.resume-template-marketing header,
.resume-document.resume-template-designer header,
.resume-document.resume-template-developer header,
.resume-document.resume-template-startup header,
.resume-document.resume-template-tech header {
  min-height: 250px;
}

.resume-document.resume-template-creative section:nth-of-type(6),
.resume-document.resume-template-marketing section:nth-of-type(6),
.resume-document.resume-template-designer section:nth-of-type(6),
.resume-document.resume-template-developer section:nth-of-type(6),
.resume-document.resume-template-startup section:nth-of-type(6),
.resume-document.resume-template-tech section:nth-of-type(6) {
  padding: 18px;
  border-radius: 18px;
  background: #f8fbff;
}

.resume-document.resume-template-developer section:nth-of-type(4),
.resume-document.resume-template-tech section:nth-of-type(4) {
  background: #0b1736;
}

.resume-document.resume-template-developer section:nth-of-type(4) h3,
.resume-document.resume-template-tech section:nth-of-type(4) h3,
.resume-document.resume-template-developer section:nth-of-type(4) .resume-skill-list span,
.resume-document.resume-template-tech section:nth-of-type(4) .resume-skill-list span {
  color: #fff;
}

.resume-document.resume-template-developer section:nth-of-type(4) .resume-skill-list span,
.resume-document.resume-template-tech section:nth-of-type(4) .resume-skill-list span {
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.1);
}

.resume-document.resume-template-elegant {
  grid-template-columns: 1fr;
  gap: 20px;
}

.resume-document.resume-template-elegant header {
  justify-items: center;
  padding: 30px 0 24px;
  text-align: center;
}

.resume-document.resume-template-elegant section:nth-of-type(3),
.resume-document.resume-template-elegant section:nth-of-type(4),
.resume-document.resume-template-elegant section:nth-of-type(5),
.resume-document.resume-template-elegant section:nth-of-type(7) {
  grid-column: auto;
  padding: 0;
  border-left: 0;
  background: transparent;
}

.resume-document.resume-template-elegant section:nth-of-type(3),
.resume-document.resume-template-elegant section:nth-of-type(4) {
  display: inline-block;
  width: calc(50% - 12px);
  vertical-align: top;
}

.resume-document.resume-template-clean-pro,
.resume-document.resume-template-modern-ats {
  gap: 16px;
  box-shadow: 0 18px 45px rgba(7, 15, 35, 0.08);
}

.resume-document.resume-template-clean-pro header {
  padding-bottom: 16px;
  border-bottom: 1px solid #cbd5e1;
}

.resume-document.resume-template-modern-ats section:nth-of-type(4) {
  background: #f8fbff;
}

.resume-document.resume-template-international,
.resume-document.resume-template-global,
.resume-document.resume-template-remote-work,
.resume-document.resume-template-finance,
.resume-document.resume-template-legal,
.resume-document.resume-template-healthcare {
  grid-template-columns: minmax(0, 1fr) minmax(185px, 0.34fr);
}

.resume-document.resume-template-international header,
.resume-document.resume-template-remote-work header,
.resume-document.resume-template-finance header,
.resume-document.resume-template-legal header,
.resume-document.resume-template-healthcare header {
  grid-column: 1 / -1;
}

.resume-document.resume-template-international section:nth-of-type(5),
.resume-document.resume-template-global section:nth-of-type(5),
.resume-document.resume-template-remote-work section:nth-of-type(5) {
  background: #eefaff;
}

.resume-document.resume-template-legal {
  border-top: 8px double #28364f;
}

.resume-document.resume-template-legal h3 {
  letter-spacing: 0.12em;
}

.resume-document.resume-template-finance section:nth-of-type(4),
.resume-document.resume-template-corporate section:nth-of-type(4),
.resume-document.resume-template-operations section:nth-of-type(4) {
  display: grid;
  gap: 10px;
}

.resume-document.resume-template-finance .resume-skill-list,
.resume-document.resume-template-corporate .resume-skill-list,
.resume-document.resume-template-operations .resume-skill-list {
  grid-template-columns: 1fr 1fr;
}

.resume-document.resume-template-academic {
  display: grid;
  gap: 18px;
}

.resume-document.resume-template-academic header {
  text-align: center;
}

.resume-document.resume-template-academic section:nth-of-type(3),
.resume-document.resume-template-academic section:nth-of-type(6) {
  padding: 16px 0;
  border-top: 1px solid #cbd5e1;
  border-bottom: 1px solid #cbd5e1;
}

.resume-document.resume-template-sales,
.resume-document.resume-template-operations,
.resume-document.resume-template-healthcare,
.resume-document.resume-template-customer-service,
.resume-document.resume-template-consultant {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(185px, 0.34fr);
  gap: 16px 26px;
}

.resume-document.resume-template-sales header,
.resume-document.resume-template-operations header,
.resume-document.resume-template-healthcare header,
.resume-document.resume-template-customer-service header,
.resume-document.resume-template-consultant header {
  grid-column: 1 / -1;
}

.resume-document.resume-template-sales section:nth-of-type(1),
.resume-document.resume-template-consultant section:nth-of-type(1) {
  grid-column: 1 / -1;
  padding: 18px;
  border-radius: 16px;
  background: #f4fff9;
}

.resume-document.resume-template-sales section:nth-of-type(4),
.resume-document.resume-template-operations section:nth-of-type(4),
.resume-document.resume-template-healthcare section:nth-of-type(3),
.resume-document.resume-template-healthcare section:nth-of-type(5),
.resume-document.resume-template-customer-service section:nth-of-type(4),
.resume-document.resume-template-customer-service section:nth-of-type(5),
.resume-document.resume-template-consultant section:nth-of-type(3),
.resume-document.resume-template-consultant section:nth-of-type(4),
.resume-document.resume-template-consultant section:nth-of-type(5) {
  grid-column: 2;
  padding: 15px;
  border-radius: 16px;
  background: #f8fbff;
}

.resume-document.resume-template-sales section:nth-of-type(2),
.resume-document.resume-template-sales section:nth-of-type(6),
.resume-document.resume-template-operations section:nth-of-type(2),
.resume-document.resume-template-operations section:nth-of-type(6),
.resume-document.resume-template-healthcare section:nth-of-type(2),
.resume-document.resume-template-healthcare section:nth-of-type(6),
.resume-document.resume-template-customer-service section:nth-of-type(2),
.resume-document.resume-template-customer-service section:nth-of-type(6),
.resume-document.resume-template-consultant section:nth-of-type(2),
.resume-document.resume-template-consultant section:nth-of-type(6) {
  grid-column: 1;
}

.resume-document.resume-template-consultant section:nth-of-type(6),
.resume-document.resume-template-startup section:nth-of-type(6) {
  display: grid;
  gap: 10px;
}

.resume-document.resume-template-startup header {
  background: linear-gradient(145deg, #0b1736, #7256d6);
}

.resume-document.resume-template-global header {
  background: linear-gradient(135deg, #071126, #123c91 55%, #1fa5c8);
}

.resume-document.resume-template-global header h2,
.resume-document.resume-template-global header strong,
.resume-document.resume-template-global header p {
  color: #fff;
}

.resume-document.resume-template-customer-service {
  background:
    radial-gradient(circle at 100% 0%, rgba(31, 165, 200, 0.12), transparent 28%),
    #fff;
}

.resume-document.resume-template-graduate section:nth-of-type(3) {
  order: 2;
}

.resume-document.resume-template-graduate section:nth-of-type(1) {
  order: 3;
}

.resume-document.resume-template-graduate section:nth-of-type(6) {
  order: 4;
}

.template-preview-modal {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: grid;
  place-items: center;
  padding: clamp(8px, 1.6vw, 18px);
  overflow: hidden;
}

.template-preview-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(7, 15, 35, 0.62);
  backdrop-filter: blur(12px);
}

.template-preview-dialog {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  width: min(1320px, calc(100vw - 16px));
  height: min(98dvh, 1040px);
  max-height: calc(100dvh - 12px);
  overflow: hidden;
  border: 1px solid rgba(229, 234, 244, 0.9);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 34px 90px rgba(7, 15, 35, 0.28);
}

.template-preview-header,
.template-preview-footer {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 22px;
  border-bottom: 1px solid var(--line);
}

.template-preview-header > div {
  min-width: 0;
}

.template-preview-header h2 {
  margin: 8px 0 4px;
  font-size: clamp(24px, 3vw, 34px);
}

.template-preview-header p {
  margin: 0;
  color: var(--muted);
}

.template-preview-premium-dialog .template-preview-header {
  align-items: flex-start;
  gap: 12px;
  padding: 10px 18px;
}

.template-preview-premium-dialog .template-preview-header h2 {
  margin: 5px 0 3px;
  font-size: clamp(22px, 2.4vw, 30px);
  line-height: 1.05;
}

.template-preview-premium-dialog .template-preview-header p {
  max-width: 920px;
  font-size: 13px;
  line-height: 1.35;
}

.template-preview-content {
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 0;
  overflow: auto;
  padding: clamp(8px, 1.4vw, 14px);
  background:
    radial-gradient(circle at 12% 5%, rgba(105, 216, 242, 0.1), transparent 30%),
    linear-gradient(180deg, #f8fbff, #ffffff);
  scrollbar-width: thin;
  scrollbar-color: rgba(31, 105, 213, 0.26) transparent;
}

.template-preview-content .sample-resume-document,
.template-preview-content .resume-document-shell {
  margin: 0 auto;
  width: min(100%, var(--resume-page-width));
}

.template-preview-content .resume-document {
  width: min(100%, var(--resume-page-width));
  height: auto;
  margin: 0 auto;
}

.template-preview-content .resume-document-shell[data-preview-scaled] .resume-document {
  width: var(--resume-page-width);
  height: var(--resume-page-height);
  max-width: none;
}

.resume-preview-dialog .template-preview-header {
  align-items: center;
  padding: 10px 18px;
}

.resume-preview-dialog .template-preview-header h2 {
  margin: 6px 0 3px;
  font-size: clamp(24px, 2.6vw, 38px);
  line-height: 1.05;
}

.resume-preview-content {
  padding: clamp(8px, 1.2vw, 12px);
}

.resume-data-preview-modal .template-preview-backdrop {
  background:
    radial-gradient(circle at 50% 0%, rgba(31, 105, 213, 0.16), transparent 34%),
    rgba(7, 15, 35, 0.72);
}

.resume-data-preview-modal .template-preview-resume-only-dialog .resume-preview-content {
  width: 100vw;
  height: 100dvh;
  padding: clamp(10px, 1.35vw, 18px) clamp(8px, 1.35vw, 18px);
  overflow: hidden;
}

.resume-preview-floating-actions {
  position: absolute;
  right: clamp(12px, 2vw, 28px);
  bottom: clamp(12px, 2vw, 24px);
  left: clamp(12px, 2vw, 28px);
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  max-width: 760px;
  margin-left: auto;
  padding: 10px;
  border: 1px solid rgba(210, 222, 242, 0.86);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 18px 46px rgba(7, 15, 35, 0.2);
  backdrop-filter: blur(14px);
}

.resume-data-preview-modal .resume-preview-floating-actions {
  display: none !important;
}

.resume-preview-floating-actions .pdf-export-status {
  flex: 0 1 auto;
  min-height: 0;
  max-width: 220px;
  font-size: 12px;
}

.resume-preview-floating-actions .pdf-export-status:empty {
  display: none;
}

.resume-preview-floating-meta {
  margin-right: auto;
  padding-inline: 8px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  white-space: nowrap;
}

.resume-preview-floating-actions .primary-button,
.resume-preview-floating-actions .secondary-button {
  min-height: 42px;
  padding-inline: 18px;
  white-space: nowrap;
}

.template-preview-footer {
  border-top: 1px solid var(--line);
  border-bottom: 0;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  padding: 10px 18px;
}

.template-preview-premium-dialog {
  width: min(1280px, calc(100vw - 16px));
}

.template-preview-dialog.template-preview-premium-dialog {
  grid-template-rows: auto minmax(0, 1fr) auto;
  height: min(98dvh, 1040px);
  max-height: calc(100dvh - 12px);
}

.template-preview-premium-dialog .template-preview-content {
  max-height: 100%;
}

.resume-only-preview-modal {
  place-items: stretch;
  padding: 0;
}

.resume-only-preview-modal .template-preview-backdrop {
  background:
    radial-gradient(circle at 50% 0%, rgba(31, 105, 213, 0.16), transparent 34%),
    rgba(7, 15, 35, 0.72);
}

.template-preview-dialog.template-preview-resume-only-dialog {
  display: block;
  width: 100vw;
  height: 100dvh;
  max-height: 100dvh;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.template-preview-resume-only-dialog .template-preview-content {
  width: 100vw;
  height: 100dvh;
  max-height: none;
  padding: clamp(8px, 1.35vw, 18px);
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 4%, rgba(255, 255, 255, 0.22), transparent 28%),
    linear-gradient(180deg, rgba(248, 251, 255, 0.96), rgba(231, 238, 249, 0.88));
}

.template-preview-floating-close {
  position: absolute;
  top: clamp(8px, 1.4vw, 16px);
  right: clamp(8px, 1.4vw, 16px);
  z-index: 3;
  border-color: rgba(255, 255, 255, 0.78);
  color: #0f172a;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 14px 36px rgba(7, 15, 35, 0.22);
  backdrop-filter: blur(10px);
}

.template-preview-best {
  display: inline-flex;
  width: fit-content;
  max-width: 100%;
  margin-top: 7px !important;
  padding: 6px 9px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 999px;
  color: #123c91 !important;
  background: #eef5ff;
  font-size: 12.4px;
  font-weight: 900;
}

.template-preview-ideal {
  display: grid;
  gap: 5px;
  margin-top: 7px;
  color: var(--muted);
  font-size: 12.2px;
}

.template-preview-ideal strong {
  color: var(--ink);
}

.template-preview-ideal ul {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin: 0;
  padding: 0;
  list-style: none;
  max-height: 29px;
  overflow: hidden;
}

.template-preview-ideal li {
  padding: 4px 7px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 999px;
  background: #f8fbff;
}

@media (max-height: 820px) {
  .template-preview-dialog.template-preview-premium-dialog {
    height: calc(100dvh - 10px);
    max-height: calc(100dvh - 10px);
  }

  .template-preview-premium-dialog .template-preview-header {
    padding-block: 8px;
  }

  .template-preview-premium-dialog .template-preview-header p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }

  .template-preview-premium-dialog .template-preview-ideal,
  .template-preview-premium-dialog .template-preview-best {
    display: none;
  }

  .template-preview-premium-dialog .template-preview-footer {
    padding-block: 8px;
  }
}

/* Executive resume template: premium corporate layout for leadership roles. */
.resume-document.resume-template-executive.executive-resume {
  --executive-navy: #08162f;
  --executive-ink: #111827;
  --executive-muted: #5f6b7e;
  --executive-line: #d9e0ea;
  --executive-soft: #f5f7fb;
  --executive-gold: #c6a15b;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(218px, 0.37fr);
  gap: 18px 26px;
  align-items: start;
  align-content: start;
  padding: 0 40px 34px;
  border: 1px solid rgba(8, 22, 47, 0.18);
  border-radius: 4px;
  background: #ffffff;
  box-shadow: 0 28px 70px rgba(7, 15, 35, 0.16);
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.resume-template-executive.executive-resume {
  padding: 0 40px 34px;
}

.resume-document.resume-template-executive.executive-resume .executive-header {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  margin: 0 -40px 5px;
  padding: 32px 40px 22px;
  border: 0;
  border-radius: 0;
  color: #ffffff;
  background:
    linear-gradient(90deg, rgba(198, 161, 91, 0.18), transparent 42%),
    linear-gradient(135deg, #07142b, #0d2244 58%, #101827);
}

.resume-document.resume-template-executive.executive-resume .executive-identity {
  display: grid;
  gap: 7px;
}

.resume-document.resume-template-executive.executive-resume h2 {
  margin: 0;
  color: #ffffff;
  font-size: 35.5px;
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: 0;
  text-transform: uppercase;
}

.resume-document.resume-template-executive.executive-resume .executive-header strong {
  color: rgba(255, 255, 255, 0.86);
  font-size: 15.3px;
  font-weight: 800;
}

.resume-document.resume-template-executive.executive-resume .executive-contact-line {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 10px;
  color: rgba(255, 255, 255, 0.76);
  font-size: 12.1px;
  line-height: 1.42;
}

.resume-document.resume-template-executive.executive-resume .executive-contact-line span:not(:last-child)::after {
  content: "|";
  margin-left: 10px;
  color: rgba(198, 161, 91, 0.82);
}

.resume-document.resume-template-executive.executive-resume section {
  margin-top: 0;
  min-width: 0;
}

.resume-document.resume-template-executive.executive-resume h3 {
  margin: 0 0 11px;
  color: var(--executive-navy);
  font-size: 12.2px;
  font-weight: 900;
  letter-spacing: 0.1em;
  line-height: 1.28;
}

.resume-document.resume-template-executive.executive-resume p,
.resume-document.resume-template-executive.executive-resume li {
  color: #334155;
  font-size: 13.1px;
  line-height: 1.55;
}

.resume-document.resume-template-executive.executive-resume .executive-summary {
  grid-column: 1 / -1;
  padding: 15px 20px 15px 21px;
  border-left: 4px solid var(--executive-gold);
  background: linear-gradient(90deg, #f7f9fc, #ffffff 78%);
}

.resume-document.resume-template-executive.executive-resume .executive-main-section {
  grid-column: 1;
  align-self: start;
}

.resume-document.resume-template-executive.executive-resume .executive-side-section {
  grid-column: 2;
  align-self: start;
  padding: 15px;
  border: 1px solid var(--executive-line);
  border-radius: 6px;
  background: var(--executive-soft);
}

.resume-document.resume-template-executive.executive-resume .executive-main-column {
  grid-column: 1;
  display: grid;
  gap: 15px;
  align-content: start;
  align-self: start;
  min-width: 0;
}

.resume-document.resume-template-executive.executive-resume .executive-sidebar {
  grid-column: 2;
  display: grid;
  gap: 13px;
  align-content: start;
  align-self: start;
  min-width: 0;
  padding: 16px 16px 8px;
  border: 1px solid rgba(217, 224, 234, 0.95);
  border-top: 4px solid var(--executive-gold);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(198, 161, 91, 0.08), transparent 28%),
    linear-gradient(180deg, #f8fafc, #ffffff);
}

.resume-document.resume-template-executive.executive-resume .executive-main-column section,
.resume-document.resume-template-executive.executive-resume .executive-sidebar section {
  grid-column: auto !important;
  grid-row: auto !important;
  align-self: start;
  min-height: 0;
}

.resume-document.resume-template-executive.executive-resume .executive-main-column .executive-experience {
  padding: 17px 18px 17px;
  border: 1px solid rgba(217, 224, 234, 0.85);
  border-radius: 8px;
  background: linear-gradient(180deg, #f8fafc, #ffffff);
}

.resume-document.resume-template-executive.executive-resume .executive-sidebar .executive-side-section {
  grid-column: auto;
  padding: 0 0 13px;
  border: 0;
  border-bottom: 1px solid rgba(217, 224, 234, 0.9);
  border-radius: 0;
  background: transparent;
}

.resume-document.resume-template-executive.executive-resume .executive-sidebar .executive-side-section:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.resume-template-executive.executive-resume .executive-strength-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.resume-document.resume-template-executive.executive-resume .executive-strength-list span,
.resume-document.resume-template-executive.executive-resume .executive-side-skill-list span {
  min-width: 0;
  padding: 7px 10px;
  border: 1px solid rgba(8, 22, 47, 0.09);
  border-radius: 5px;
  color: #14213a;
  background: linear-gradient(180deg, #ffffff, #f8fafc);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.86), 0 1px 2px rgba(15, 23, 42, 0.04);
  font-size: 12.1px;
  font-weight: 800;
  line-height: 1.25;
}

.resume-document.resume-template-executive.executive-resume .executive-side-skill-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
}

.resume-document.resume-template-executive.executive-resume .executive-experience {
  display: grid;
  gap: 15px;
}

.resume-document.resume-template-executive.executive-resume .executive-experience-item {
  position: relative;
  display: grid;
  gap: 6px;
  padding: 0 0 14px 16px;
  border-bottom: 1px solid rgba(217, 224, 234, 0.95);
}

.resume-document.resume-template-executive.executive-resume .executive-experience-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.resume-template-executive.executive-resume .executive-experience-item::before {
  content: "";
  position: absolute;
  inset: 3px auto 14px 0;
  width: 2px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--executive-gold), rgba(8, 22, 47, 0.18));
}

.resume-document.resume-template-executive.executive-resume .executive-entry-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 14px;
}

.resume-document.resume-template-executive.executive-resume .executive-entry-head strong {
  color: var(--executive-ink);
  font-size: 15.2px;
  font-weight: 900;
  line-height: 1.23;
}

.resume-document.resume-template-executive.executive-resume .executive-entry-head span,
.resume-document.resume-template-executive.executive-resume .executive-entry-meta,
.resume-document.resume-template-executive.executive-resume .executive-compact-item span,
.resume-document.resume-template-executive.executive-resume .executive-compact-item em {
  color: var(--executive-muted);
  font-size: 12.15px;
  font-style: normal;
  font-weight: 700;
  line-height: 1.35;
}

.resume-document.resume-template-executive.executive-resume ul {
  gap: 6px;
  margin: 5px 0 0;
  padding-left: 18px;
}

.resume-document.resume-template-executive.executive-resume .executive-compact-item,
.resume-document.resume-template-executive.executive-resume .executive-text-list,
.resume-document.resume-template-executive.executive-resume .executive-link-list {
  display: grid;
  gap: 5.5px;
}

.resume-document.resume-template-executive.executive-resume .executive-compact-item strong,
.resume-document.resume-template-executive.executive-resume .executive-text-list p strong,
.resume-document.resume-template-executive.executive-resume .executive-link-list p {
  color: var(--executive-ink);
  font-weight: 850;
}

.resume-document.resume-template-executive.executive-resume .executive-link-list p {
  color: #334155;
  font-weight: 500;
  overflow-wrap: anywhere;
}

.resume-document.resume-template-executive.executive-resume .executive-sidebar p,
.resume-document.resume-template-executive.executive-resume .executive-sidebar span,
.resume-document.resume-template-executive.executive-resume .executive-sidebar em {
  font-size: 12.25px;
  line-height: 1.48;
}

.resume-document.resume-template-executive.executive-resume .executive-results {
  padding-top: 2px;
}

.pdf-export-document.resume-template-executive.executive-resume {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(52mm, 0.37fr) !important;
  gap: 4.8mm 6.8mm !important;
  align-items: start !important;
  align-content: start !important;
  padding: 0 10.6mm 9mm !important;
}

.pdf-export-document.resume-template-executive.executive-resume .executive-header {
  margin: 0 -10.6mm 1.4mm !important;
  padding: 8.4mm 10.6mm 5.8mm !important;
}

.pdf-export-document.resume-template-executive.executive-resume .executive-summary {
  padding: 4mm 5.2mm !important;
}

.pdf-export-document.resume-template-executive.executive-resume .executive-side-section {
  padding: 0 0 3.4mm !important;
}

.pdf-export-document.resume-template-executive.executive-resume .executive-strength-list {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.pdf-export-document.resume-template-executive.executive-resume .executive-main-column {
  grid-column: 1 !important;
  display: grid !important;
  gap: 4mm !important;
  align-content: start !important;
  align-self: start !important;
}

.pdf-export-document.resume-template-executive.executive-resume .executive-sidebar {
  grid-column: 2 !important;
  display: grid !important;
  gap: 3.4mm !important;
  align-content: start !important;
  align-self: start !important;
  padding: 4.2mm 4.2mm 2.2mm !important;
}

.pdf-export-document.resume-template-executive.executive-resume .executive-main-column .executive-experience {
  padding: 4.5mm 4.8mm !important;
}

.pdf-export-document.resume-template-executive.executive-resume .executive-strength-list span,
.pdf-export-document.resume-template-executive.executive-resume .executive-side-skill-list span {
  padding: 1.8mm 2.6mm !important;
  line-height: 1.25 !important;
}

/* Curated resume templates for non-protected catalog models. */
.resume-document.curated-resume {
  --curated-ink: #111827;
  --curated-muted: #5f6b7e;
  --curated-line: #dbe3ef;
  --curated-soft: #f6f8fb;
  --curated-accent: #1f69d5;
  --curated-accent-2: #1fa5c8;
  --curated-dark: #0d1830;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(176px, 0.36fr);
  gap: 16px 26px;
  align-content: start;
  padding: 40px 46px;
  border: 1px solid rgba(17, 24, 39, 0.1);
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 24px 64px rgba(7, 15, 35, 0.13);
}

.resume-document.curated-resume[class*="curated-layout-"] section {
  grid-column: auto;
  order: initial;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.resume-document.curated-resume .curated-header {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px 15px;
  align-items: center;
  margin: 0 0 2px;
  padding: 0 0 18px;
  border: 0;
  border-bottom: 1px solid var(--curated-line);
  background: transparent;
}

.resume-document.curated-resume .curated-header-mark {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: linear-gradient(135deg, var(--curated-accent), var(--curated-accent-2));
}

.resume-document.curated-resume h2 {
  margin: 0;
  color: var(--curated-ink);
  font-size: 32px;
  font-weight: 900;
  line-height: 1.02;
}

.resume-document.curated-resume .curated-header strong {
  display: block;
  margin-top: 5px;
  color: var(--curated-accent);
  font-size: 14px;
  font-weight: 800;
}

.resume-document.curated-resume .curated-contact-line {
  grid-column: 1 / -1;
  margin: 0;
  color: var(--curated-muted);
  font-size: 11.5px;
  line-height: 1.4;
}

.resume-document.curated-resume h3 {
  margin: 0 0 9px;
  color: var(--curated-ink);
  font-size: 11.5px;
  font-weight: 900;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.resume-document.curated-resume p,
.resume-document.curated-resume li {
  color: #334155;
  font-size: 12.6px;
  line-height: 1.48;
}

.resume-document.curated-resume ul {
  display: grid;
  gap: 5px;
  margin: 6px 0 0;
  padding-left: 17px;
}

.resume-document.curated-resume .curated-summary {
  padding: 14px 16px;
  border-left: 4px solid var(--curated-accent) !important;
  background: var(--curated-soft) !important;
}

.resume-document.curated-resume .curated-main-section {
  grid-column: 1;
}

.resume-document.curated-resume .curated-side-section {
  grid-column: 2;
  padding: 13px !important;
  border: 1px solid var(--curated-line) !important;
  border-radius: 7px;
  background: var(--curated-soft) !important;
}

.resume-document.curated-resume .curated-experience {
  display: grid;
  gap: 13px;
}

.resume-document.curated-resume .curated-experience-item {
  position: relative;
  display: grid;
  gap: 5px;
  padding: 0 0 12px 14px;
  border-bottom: 1px solid rgba(219, 227, 239, 0.9);
}

.resume-document.curated-resume .curated-experience-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.curated-resume .curated-experience-item::before {
  content: "";
  position: absolute;
  inset: 3px auto 12px 0;
  width: 2px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--curated-accent), rgba(95, 107, 126, 0.2));
}

.resume-document.curated-resume .curated-entry-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.resume-document.curated-resume .curated-entry-head strong {
  color: var(--curated-ink);
  font-size: 14.4px;
  font-weight: 900;
}

.resume-document.curated-resume .curated-entry-head span,
.resume-document.curated-resume .curated-entry-meta,
.resume-document.curated-resume .curated-compact-item span,
.resume-document.curated-resume .curated-compact-item em {
  color: var(--curated-muted);
  font-size: 11.5px;
  font-style: normal;
  font-weight: 700;
}

.resume-document.curated-resume .curated-compact-item,
.resume-document.curated-resume .curated-text-list,
.resume-document.curated-resume .curated-link-list {
  display: grid;
  gap: 5px;
}

.resume-document.curated-resume .curated-compact-item strong,
.resume-document.curated-resume .curated-text-list p strong,
.resume-document.curated-resume .curated-link-list p {
  color: var(--curated-ink);
  font-weight: 850;
}

.resume-document.curated-resume .curated-skill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.resume-document.curated-resume .curated-skill-list span {
  min-width: 0;
  padding: 6px 8px;
  border: 1px solid rgba(31, 105, 213, 0.13);
  border-radius: 4px;
  color: var(--curated-ink);
  background: #fff;
  font-size: 11.4px;
  font-weight: 800;
}

.resume-document.curated-layout-portfolio-left,
.resume-document.curated-layout-tech-left {
  grid-template-columns: minmax(178px, 0.34fr) minmax(0, 1fr);
  gap: 16px 28px;
}

.resume-document.curated-layout-portfolio-left .curated-header,
.resume-document.curated-layout-tech-left .curated-header {
  grid-column: 1;
  grid-row: 1 / span 8;
  align-content: start;
  align-self: stretch;
  grid-template-columns: 1fr;
  padding: 22px 18px;
  border: 0;
  border-radius: 8px;
  background: linear-gradient(180deg, var(--curated-dark), #16233f);
}

.resume-document.curated-layout-portfolio-left .curated-header h2,
.resume-document.curated-layout-tech-left .curated-header h2,
.resume-document.curated-layout-portfolio-left .curated-header strong,
.resume-document.curated-layout-tech-left .curated-header strong,
.resume-document.curated-layout-portfolio-left .curated-contact-line,
.resume-document.curated-layout-tech-left .curated-contact-line {
  color: #fff;
}

.resume-document.curated-layout-portfolio-left .curated-main-section,
.resume-document.curated-layout-tech-left .curated-main-section {
  grid-column: 2;
}

.resume-document.curated-layout-portfolio-left .curated-side-section,
.resume-document.curated-layout-tech-left .curated-side-section {
  grid-column: 1;
  background: #f8fafc !important;
}

.resume-document.curated-layout-global-right,
.resume-document.curated-layout-elegant-right,
.resume-document.curated-layout-precision-right,
.resume-document.curated-layout-corporate-rail,
.resume-document.curated-layout-professional-split,
.resume-document.curated-layout-care-rail,
.resume-document.curated-layout-executive-premium,
.resume-document.curated-layout-consultant-premium {
  grid-template-columns: minmax(0, 1fr) minmax(172px, 0.34fr);
}

.resume-document.curated-layout-global-right .curated-header,
.resume-document.curated-layout-elegant-right .curated-header,
.resume-document.curated-layout-precision-right .curated-header,
.resume-document.curated-layout-corporate-rail .curated-header,
.resume-document.curated-layout-professional-split .curated-header,
.resume-document.curated-layout-care-rail .curated-header,
.resume-document.curated-layout-executive-premium .curated-header,
.resume-document.curated-layout-consultant-premium .curated-header {
  grid-column: 1 / -1;
}

.resume-document.curated-layout-executive-premium,
.resume-document.curated-layout-consultant-premium {
  padding-top: 0;
}

.resume-document.curated-layout-executive-premium .curated-header,
.resume-document.curated-layout-consultant-premium .curated-header {
  margin: 0 -46px 2px;
  padding: 34px 46px 24px;
  border: 0;
  background: linear-gradient(135deg, #07142b, #102646 58%, #111827);
}

.resume-document.curated-layout-executive-premium .curated-header h2,
.resume-document.curated-layout-consultant-premium .curated-header h2,
.resume-document.curated-layout-executive-premium .curated-header strong,
.resume-document.curated-layout-consultant-premium .curated-header strong,
.resume-document.curated-layout-executive-premium .curated-contact-line,
.resume-document.curated-layout-consultant-premium .curated-contact-line {
  color: #fff;
}

.resume-document.resume-template-corporate.curated-resume {
  --curated-ink: #172033;
  --curated-muted: #657085;
  --curated-line: #d8e2ef;
  --curated-soft: #f4f8fc;
  --curated-accent: #1f5f8b;
  --curated-accent-2: #47a4bd;
  --curated-dark: #0b1d33;
  position: relative;
  grid-template-columns: minmax(0, 1fr) minmax(205px, 0.36fr);
  gap: 14px 28px;
  padding: 0 44px 40px;
  overflow: hidden;
  border: 1px solid #d6e1ef;
  background:
    linear-gradient(90deg, rgba(31, 95, 139, 0.055), transparent 26%),
    linear-gradient(180deg, #ffffff, #f9fbff);
}

.resume-document.resume-template-corporate.curated-resume::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 10px;
  background: linear-gradient(180deg, #1f5f8b, #47a4bd 55%, #c7a667);
}

.resume-document.resume-template-corporate.curated-resume .curated-header {
  position: relative;
  grid-column: 1 / -1;
  grid-template-columns: auto minmax(0, 1fr) minmax(225px, 0.38fr);
  gap: 12px 22px;
  align-items: center;
  margin: 0 -44px 6px;
  padding: 24px 44px 22px 52px;
  border: 0;
  background:
    radial-gradient(circle at 86% 20%, rgba(71, 164, 189, 0.24), transparent 34%),
    linear-gradient(135deg, #0b1d33, #14395e 62%, #0d253c);
}

.resume-document.resume-template-corporate.curated-resume .curated-header-mark {
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(212, 233, 245, 0.82)),
    linear-gradient(135deg, #47a4bd, #c7a667);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.58), 0 16px 34px rgba(0, 0, 0, 0.2);
}

.resume-document.resume-template-corporate.curated-resume .curated-header h2 {
  color: #ffffff;
  font-size: 32px;
  letter-spacing: 0;
}

.resume-document.resume-template-corporate.curated-resume .curated-header strong {
  color: #bfe8f2;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.resume-document.resume-template-corporate.curated-resume .curated-contact-line {
  grid-column: 3;
  align-self: stretch;
  display: flex;
  align-items: center;
  margin: 0;
  padding: 12px 14px;
  border: 1px solid rgba(211, 231, 241, 0.24);
  border-radius: 8px;
  color: #edf8fb;
  font-size: 10.8px;
  line-height: 1.42;
  background: rgba(255, 255, 255, 0.08);
}

.resume-document.resume-template-corporate.curated-resume .curated-summary {
  grid-column: 1;
  grid-row: 2;
  display: grid;
  grid-template-columns: minmax(112px, 0.22fr) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  padding: 17px 19px !important;
  border: 1px solid rgba(31, 95, 139, 0.14) !important;
  border-left: 0 !important;
  border-radius: 8px;
  background: linear-gradient(135deg, #eef6fb, #ffffff) !important;
}

.resume-document.resume-template-corporate.curated-resume .curated-summary h3 {
  margin: 0;
  color: #1f5f8b;
}

.resume-document.resume-template-corporate.curated-resume .curated-main-section {
  grid-column: 1;
}

.resume-document.resume-template-corporate.curated-resume .curated-side-section {
  grid-column: 2;
  align-self: start;
  padding: 15px 15px !important;
  border: 1px solid rgba(31, 95, 139, 0.15) !important;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92) !important;
  box-shadow: 0 12px 28px rgba(16, 45, 74, 0.055) !important;
}

.resume-document.resume-template-corporate.curated-resume .curated-experience {
  grid-row: 3 / span 5;
}

.resume-document.resume-template-corporate.curated-resume .curated-projects {
  grid-row: 8;
}

.resume-document.resume-template-corporate.curated-resume .curated-skills {
  grid-row: 2;
}

.resume-document.resume-template-corporate.curated-resume .curated-education {
  grid-row: 3;
}

.resume-document.resume-template-corporate.curated-resume .curated-certifications {
  grid-row: 4;
}

.resume-document.resume-template-corporate.curated-resume .curated-languages {
  grid-row: 5;
}

.resume-document.resume-template-corporate.curated-resume .curated-links {
  grid-row: 6;
}

.resume-document.resume-template-corporate.curated-resume h3 {
  color: #163b5d;
  letter-spacing: 0.08em;
}

.resume-document.resume-template-corporate.curated-resume .curated-experience-item {
  padding: 0 0 13px 18px;
  border-bottom-color: rgba(31, 95, 139, 0.13);
}

.resume-document.resume-template-corporate.curated-resume .curated-experience-item::before {
  inset: 2px auto 12px 2px;
  width: 7px;
  background: linear-gradient(180deg, #47a4bd, #c7a667);
  box-shadow: 0 0 0 4px rgba(71, 164, 189, 0.12);
}

.resume-document.resume-template-corporate.curated-resume .curated-entry-head strong {
  color: #13243a;
}

.resume-document.resume-template-corporate.curated-resume .curated-skill-list span {
  border: 0;
  border-left: 3px solid #47a4bd;
  border-radius: 5px;
  background: #f1f7fb;
}

.pdf-export-document.resume-template-corporate.curated-resume {
  box-shadow: none;
}

.resume-document.resume-template-corporate.curated-resume {
  --corporate-ink: #142033;
  --corporate-muted: #647188;
  --corporate-line: #d9e3ee;
  --corporate-panel: #f6f9fc;
  --corporate-blue: #123b63;
  --corporate-teal: #1d8aa6;
  --corporate-gold: #c49a46;
  grid-template-columns: minmax(0, 1fr) 218px;
  gap: 13px 24px;
  padding: 0 42px 38px;
  border: 1px solid #d5e0ec;
  border-radius: 0;
  color: var(--corporate-ink);
  background:
    linear-gradient(90deg, rgba(29, 138, 166, 0.055), transparent 34%),
    linear-gradient(180deg, #ffffff 0, #fbfdff 58%, #f7fbff 100%);
  box-shadow: 0 22px 54px rgba(19, 47, 83, 0.12);
}

.resume-document.resume-template-corporate.curated-resume::before {
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, var(--corporate-blue), var(--corporate-teal) 54%, var(--corporate-gold));
  pointer-events: none;
  z-index: 2;
}

.resume-document.resume-template-corporate.curated-resume::after {
  content: "";
  position: absolute;
  inset: 92px 0 auto auto;
  width: 46%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(29, 138, 166, 0.28), transparent);
}

.resume-document.resume-template-corporate.curated-resume .curated-header {
  grid-template-columns: 52px minmax(0, 1fr) 238px;
  gap: 14px 18px;
  min-height: 112px;
  margin: 0 -42px 8px;
  padding: 26px 42px 24px 50px;
  background:
    linear-gradient(90deg, rgba(18, 59, 99, 0.07), transparent 46%),
    #ffffff;
  border-bottom: 1px solid rgba(18, 59, 99, 0.14);
  box-shadow: 0 14px 34px rgba(18, 59, 99, 0.055);
}

.resume-document.resume-template-corporate.curated-resume .curated-header-mark {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.18), transparent 48%),
    linear-gradient(135deg, var(--corporate-blue), #0a223d);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.22), 0 14px 28px rgba(18, 59, 99, 0.24);
}

.resume-document.resume-template-corporate.curated-resume .curated-header-mark::before {
  content: "";
  display: block;
  width: 21px;
  height: 21px;
  margin: 15px;
  border: 3px solid rgba(255, 255, 255, 0.92);
  border-right-color: var(--corporate-gold);
  border-radius: 7px;
}

.resume-document.resume-template-corporate.curated-resume .curated-header h2 {
  margin: 0;
  color: var(--corporate-ink);
  font-size: 34px;
  font-weight: 950;
  line-height: 0.98;
}

.resume-document.resume-template-corporate.curated-resume .curated-header strong {
  display: inline-flex;
  width: fit-content;
  margin-top: 8px;
  padding: 5px 9px;
  border-radius: 999px;
  color: var(--corporate-blue);
  background: rgba(29, 138, 166, 0.1);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.08em;
}

.resume-document.resume-template-corporate.curated-resume .curated-contact-line {
  grid-column: 3;
  justify-content: center;
  min-height: 68px;
  padding: 13px 15px;
  border: 0;
  border-radius: 12px;
  color: #eff8fb;
  background:
    linear-gradient(135deg, rgba(29, 138, 166, 0.2), transparent 40%),
    #123b63;
  box-shadow: 0 18px 32px rgba(18, 59, 99, 0.22);
}

.resume-document.resume-template-corporate.curated-resume .curated-summary {
  grid-column: 1;
  grid-row: 2;
  display: block;
  padding: 18px 20px 18px 22px !important;
  border: 1px solid rgba(29, 138, 166, 0.16) !important;
  border-left: 5px solid var(--corporate-teal) !important;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(29, 138, 166, 0.075), rgba(255, 255, 255, 0.98)),
    #ffffff !important;
  box-shadow: 0 16px 32px rgba(18, 59, 99, 0.055);
}

.resume-document.resume-template-corporate.curated-resume .curated-summary h3 {
  margin: 0 0 8px;
  color: var(--corporate-blue);
}

.resume-document.resume-template-corporate.curated-resume .curated-summary p {
  max-width: 68ch;
  color: #2d3d54;
  font-size: 12.4px;
  line-height: 1.55;
}

.resume-document.resume-template-corporate.curated-resume .curated-main-section {
  grid-column: 1;
  align-self: start;
}

.resume-document.resume-template-corporate.curated-resume .curated-experience {
  grid-row: 3 / span 5;
  align-content: start;
  gap: 17px;
  padding-top: 4px !important;
}

.resume-document.resume-template-corporate.curated-resume .curated-projects {
  grid-row: 8;
  transform: translateY(-295px);
  padding: 14px 17px !important;
  border: 1px solid rgba(196, 154, 70, 0.18) !important;
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(255, 250, 239, 0.92), rgba(255, 255, 255, 0.98)) !important;
}

.resume-document.resume-template-corporate.curated-resume .curated-side-section {
  grid-column: 2;
  align-self: start;
  padding: 14px 14px !important;
  border: 1px solid rgba(18, 59, 99, 0.12) !important;
  border-radius: 12px;
  background:
    linear-gradient(180deg, #ffffff, #f7fbff) !important;
  box-shadow: 0 14px 28px rgba(18, 59, 99, 0.07) !important;
}

.resume-document.resume-template-corporate.curated-resume .curated-skills {
  grid-row: 2 / span 2;
  border-color: rgba(29, 138, 166, 0.18) !important;
  background:
    linear-gradient(180deg, rgba(238, 249, 251, 0.92), #ffffff) !important;
}

.resume-document.resume-template-corporate.curated-resume .curated-education {
  grid-row: 4;
}

.resume-document.resume-template-corporate.curated-resume .curated-certifications {
  grid-row: 5;
}

.resume-document.resume-template-corporate.curated-resume .curated-languages {
  grid-row: 6;
}

.resume-document.resume-template-corporate.curated-resume .curated-links {
  grid-row: 7;
}

.resume-document.resume-template-corporate.curated-resume h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--corporate-blue);
  font-size: 10.4px;
  font-weight: 950;
  letter-spacing: 0.1em;
}

.resume-document.resume-template-corporate.curated-resume h3::before {
  content: "";
  width: 16px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--corporate-gold), var(--corporate-teal));
}

.resume-document.resume-template-corporate.curated-resume .curated-experience-item {
  position: relative;
  margin-left: 3px;
  padding: 0 0 14px 22px;
  border-bottom: 1px solid rgba(18, 59, 99, 0.1);
}

.resume-document.resume-template-corporate.curated-resume .curated-experience-item::before {
  inset: 2px auto 14px 0;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--corporate-teal), var(--corporate-gold));
  box-shadow: none;
}

.resume-document.resume-template-corporate.curated-resume .curated-experience-item::after {
  content: "";
  position: absolute;
  top: 2px;
  left: -4px;
  width: 12px;
  height: 12px;
  border: 3px solid #ffffff;
  border-radius: 999px;
  background: var(--corporate-teal);
  box-shadow: 0 0 0 1px rgba(29, 138, 166, 0.24);
}

.resume-document.resume-template-corporate.curated-resume .curated-entry-head strong {
  color: #111d30;
  font-size: 13px;
}

.resume-document.resume-template-corporate.curated-resume .curated-entry-head span {
  color: var(--corporate-blue);
  font-size: 10.3px;
  font-weight: 900;
}

.resume-document.resume-template-corporate.curated-resume .curated-entry-meta {
  color: var(--corporate-muted);
  font-size: 10.7px;
  font-weight: 800;
}

.resume-document.resume-template-corporate.curated-resume .curated-experience-item li,
.resume-document.resume-template-corporate.curated-resume .curated-text-list p,
.resume-document.resume-template-corporate.curated-resume .curated-compact-item {
  color: #344258;
  line-height: 1.44;
}

.resume-document.resume-template-corporate.curated-resume .curated-skill-list {
  gap: 7px;
}

.resume-document.resume-template-corporate.curated-resume .curated-skill-list span {
  padding: 6px 8px;
  border: 1px solid rgba(29, 138, 166, 0.16);
  border-left: 3px solid var(--corporate-teal);
  border-radius: 7px;
  color: #153759;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(18, 59, 99, 0.045);
}

.resume-document.resume-template-corporate.corporate-resume {
  display: block;
}

.resume-document.resume-template-corporate.corporate-resume .curated-header {
  grid-template-columns: 48px minmax(0, 1fr) 226px;
  min-height: 104px;
  padding: 23px 42px 21px 50px;
}

.resume-document.resume-template-corporate.corporate-resume .curated-header-mark {
  width: 48px;
  height: 48px;
}

.resume-document.resume-template-corporate.corporate-resume .curated-header-mark::before {
  width: 19px;
  height: 19px;
  margin: 14px;
}

.resume-document.resume-template-corporate.corporate-resume .curated-header h2 {
  font-size: 31px;
}

.resume-document.resume-template-corporate.corporate-resume .curated-contact-line {
  min-height: 58px;
  padding: 11px 13px;
  font-size: 10.2px;
  line-height: 1.32;
}

.resume-document.resume-template-corporate.corporate-resume .corporate-resume-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 210px;
  gap: 21px;
  align-items: start;
  margin-top: 15px;
}

.resume-document.resume-template-corporate.corporate-resume .corporate-resume-main,
.resume-document.resume-template-corporate.corporate-resume .corporate-resume-sidebar {
  display: grid;
  align-content: start;
  min-width: 0;
}

.resume-document.resume-template-corporate.corporate-resume .corporate-resume-main {
  gap: 12px;
}

.resume-document.resume-template-corporate.corporate-resume .corporate-resume-sidebar {
  gap: 10px;
}

.resume-document.resume-template-corporate.corporate-resume .curated-main-section,
.resume-document.resume-template-corporate.corporate-resume .curated-side-section,
.resume-document.resume-template-corporate.corporate-resume .curated-summary,
.resume-document.resume-template-corporate.corporate-resume .curated-experience,
.resume-document.resume-template-corporate.corporate-resume .curated-projects,
.resume-document.resume-template-corporate.corporate-resume .curated-skills,
.resume-document.resume-template-corporate.corporate-resume .curated-education,
.resume-document.resume-template-corporate.corporate-resume .curated-certifications,
.resume-document.resume-template-corporate.corporate-resume .curated-languages,
.resume-document.resume-template-corporate.corporate-resume .curated-links {
  grid-column: auto;
  grid-row: auto;
  align-self: start;
}

.resume-document.resume-template-corporate.corporate-resume .curated-projects {
  transform: none;
}

.resume-document.resume-template-corporate.corporate-resume .curated-summary {
  padding: 14px 17px 14px 19px !important;
}

.resume-document.resume-template-corporate.corporate-resume .curated-side-section {
  padding: 11px 12px !important;
}

.resume-document.resume-template-corporate.corporate-resume h3 {
  margin-bottom: 6px;
  font-size: 9.6px;
}

.resume-document.resume-template-corporate.corporate-resume p,
.resume-document.resume-template-corporate.corporate-resume li {
  font-size: 10.7px;
  line-height: 1.34;
}

.resume-document.resume-template-corporate.corporate-resume ul {
  gap: 3px;
  margin-top: 4px;
}

.resume-document.resume-template-corporate.corporate-resume .curated-experience {
  gap: 10px;
  padding-top: 0 !important;
}

.resume-document.resume-template-corporate.corporate-resume .curated-experience-item {
  padding: 0 0 9px 19px;
}

.resume-document.resume-template-corporate.corporate-resume .curated-experience-item::before {
  inset: 2px auto 10px 0;
}

.resume-document.resume-template-corporate.corporate-resume .curated-entry-head strong {
  font-size: 12px;
}

.resume-document.resume-template-corporate.corporate-resume .curated-entry-head span,
.resume-document.resume-template-corporate.corporate-resume .curated-entry-meta,
.resume-document.resume-template-corporate.corporate-resume .curated-compact-item span,
.resume-document.resume-template-corporate.corporate-resume .curated-compact-item em {
  font-size: 9.8px;
}

.resume-document.resume-template-corporate.corporate-resume .curated-skill-list {
  gap: 5px;
}

.resume-document.resume-template-corporate.corporate-resume .curated-skill-list span {
  padding: 4px 6px;
  font-size: 9.4px;
}

.pdf-export-document.resume-template-corporate.curated-resume,
.pdf-fit-export-document.resume-template-corporate.curated-resume {
  box-shadow: none !important;
}

.resume-document.curated-layout-formal-flow,
.resume-document.curated-layout-academic-flow,
.resume-document.curated-layout-clean-flow,
.resume-document.curated-layout-ats-pro-flow {
  display: block;
}

.resume-document.curated-layout-formal-flow .curated-header,
.resume-document.curated-layout-academic-flow .curated-header,
.resume-document.curated-layout-clean-flow .curated-header,
.resume-document.curated-layout-ats-pro-flow .curated-header {
  display: block;
  text-align: center;
}

.resume-document.curated-layout-formal-flow .curated-header-mark,
.resume-document.curated-layout-academic-flow .curated-header-mark,
.resume-document.curated-layout-clean-flow .curated-header-mark,
.resume-document.curated-layout-ats-pro-flow .curated-header-mark {
  display: none;
}

.resume-document.curated-layout-formal-flow section,
.resume-document.curated-layout-academic-flow section,
.resume-document.curated-layout-clean-flow section,
.resume-document.curated-layout-ats-pro-flow section {
  margin-top: 15px !important;
}

.resume-document.curated-layout-service-grid,
.resume-document.curated-layout-graduate-grid {
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.78fr);
}

.resume-document.curated-layout-service-grid .curated-header,
.resume-document.curated-layout-graduate-grid .curated-header,
.resume-document.curated-layout-service-grid .curated-summary,
.resume-document.curated-layout-graduate-grid .curated-summary {
  grid-column: 1 / -1;
}

.resume-document.curated-tone-creative,
.resume-document.curated-tone-designer {
  --curated-accent: #b63f82;
  --curated-accent-2: #f0a64a;
  --curated-dark: #24152f;
}

.resume-document.resume-template-creative.curated-resume {
  --curated-ink: #211930;
  --curated-muted: #635d72;
  --curated-line: #eadff1;
  --curated-soft: #fbf7fc;
  --curated-accent: #a73d8f;
  --curated-accent-2: #f0a64a;
  --curated-dark: #1e1730;
  --creative-rail-width: max(176px, calc(23.664122% - 5.679px));
  grid-template-columns: var(--creative-rail-width) minmax(0, 1fr);
  gap: 13px 24px;
  padding: 0 40px 40px 0;
  overflow: hidden;
  border: 1px solid rgba(76, 45, 105, 0.16);
  border-left: 0;
  border-radius: 7px;
  position: relative;
  background:
    linear-gradient(90deg, rgba(167, 61, 143, 0.06), transparent 38%),
    #ffffff;
  box-shadow: 0 28px 70px rgba(45, 26, 72, 0.14);
}

.resume-document.resume-template-creative.curated-resume:not(.pdf-export-document):not(.pdf-fit-export-document)::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  z-index: 0;
  width: var(--creative-rail-width);
  background: linear-gradient(180deg, #241638 0%, #171c34 100%);
}

.resume-document.resume-template-creative.curated-resume > * {
  position: relative;
  z-index: 1;
}

.resume-document.resume-template-creative.curated-resume .curated-header {
  grid-column: 1;
  grid-row: 1 / span 9;
  align-self: stretch;
  display: grid;
  align-content: start;
  grid-template-columns: 1fr;
  gap: 12px;
  margin: 0;
  padding: 30px 22px;
  border: 0;
  border-radius: 0;
  color: #ffffff;
  background:
    radial-gradient(circle at 28px 26px, rgba(240, 166, 74, 0.95), rgba(167, 61, 143, 0.72) 18px, transparent 19px),
    linear-gradient(180deg, #241638 0%, #171c34 100%);
}

.resume-document.resume-template-creative.curated-resume .curated-header-mark {
  width: 34px;
  height: 34px;
  margin-bottom: 10px;
  border-radius: 9px;
  background: linear-gradient(135deg, #f0a64a, #d14a95);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
}

.resume-document.resume-template-creative.curated-resume .curated-header h2 {
  color: #ffffff;
  font-size: 30px;
  line-height: 0.98;
}

.resume-document.resume-template-creative.curated-resume .curated-header strong {
  color: rgba(255, 255, 255, 0.84);
  font-size: 12.8px;
  line-height: 1.35;
}

.resume-document.resume-template-creative.curated-resume .curated-contact-line {
  display: grid;
  gap: 5px;
  margin-top: 10px;
  color: rgba(255, 255, 255, 0.74);
  font-size: 10.8px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.resume-document.resume-template-creative.curated-resume .curated-main-section,
.resume-document.resume-template-creative.curated-resume .curated-side-section {
  grid-column: 2;
  align-self: start;
}

.resume-document.resume-template-creative.curated-resume .curated-summary {
  margin-top: 28px !important;
  padding: 0 0 13px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--curated-line) !important;
  background: transparent !important;
}

.resume-document.resume-template-creative.curated-resume .curated-summary h3,
.resume-document.resume-template-creative.curated-resume .curated-experience h3,
.resume-document.resume-template-creative.curated-resume .curated-projects h3 {
  color: var(--curated-accent);
}

.resume-document.resume-template-creative.curated-resume .curated-projects {
  padding: 14px 16px !important;
  border: 1px solid rgba(167, 61, 143, 0.14) !important;
  border-radius: 10px;
  background: linear-gradient(135deg, #fff8f5, #fbf7fc) !important;
}

.resume-document.resume-template-creative.curated-resume .curated-experience-item {
  padding-left: 16px;
  border-bottom-color: rgba(234, 223, 241, 0.95);
}

.resume-document.resume-template-creative.curated-resume .curated-experience-item::before {
  background: linear-gradient(180deg, var(--curated-accent), var(--curated-accent-2));
}

.resume-document.resume-template-creative.curated-resume .curated-side-section {
  padding: 11px 13px !important;
  border: 1px solid rgba(234, 223, 241, 0.95) !important;
  border-radius: 9px;
  background: #ffffff !important;
}

.resume-document.resume-template-creative.curated-resume .curated-skills {
  padding: 13px 14px !important;
  background: #fbf7fc !important;
}

.resume-document.resume-template-creative.curated-resume .curated-skill-list {
  gap: 6px;
}

.resume-document.resume-template-creative.curated-resume .curated-skill-list span {
  border-color: rgba(167, 61, 143, 0.16);
  color: #4a2453;
  background: #fff;
}

.resume-document.resume-template-creative.curated-resume .curated-education,
.resume-document.resume-template-creative.curated-resume .curated-certifications,
.resume-document.resume-template-creative.curated-resume .curated-languages,
.resume-document.resume-template-creative.curated-resume .curated-links {
  display: grid;
}

.pdf-export-document.resume-template-creative.curated-resume {
  --creative-rail-width: max(43mm, calc(23.664122% - 1.42mm));
  grid-template-columns: var(--creative-rail-width) minmax(0, 1fr) !important;
  gap: 3.4mm 6mm !important;
  padding: 0 10mm 10mm 0 !important;
  border-left: 0 !important;
}

.pdf-export-document.resume-template-creative.curated-resume .curated-header {
  padding: 8mm 5.5mm !important;
}

.resume-document.resume-template-designer.curated-resume {
  --curated-ink: #171d2f;
  --curated-muted: #687284;
  --curated-line: #e2e7f0;
  --curated-soft: #f7f8fb;
  --curated-accent: #7c5cff;
  --curated-accent-2: #f08a72;
  --curated-dark: #161225;
  --designer-rail-width: max(188px, calc(25% - 6px));
  position: relative;
  grid-template-columns: var(--designer-rail-width) minmax(0, 1fr) minmax(0, 0.9fr);
  gap: 13px 24px;
  overflow: hidden;
  padding: 0 38px 38px 0;
  border: 1px solid rgba(30, 38, 64, 0.13);
  border-left: 0;
  border-radius: 7px;
  background: #fbfcff;
  box-shadow: 0 28px 72px rgba(19, 18, 38, 0.15);
  color: var(--curated-ink);
  font-family: "Inter", "Manrope", "Helvetica Neue", Arial, sans-serif;
}

.resume-document.resume-template-designer.curated-resume:not(.pdf-export-document):not(.pdf-fit-export-document)::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  z-index: 0;
  width: var(--designer-rail-width);
  background:
    radial-gradient(circle at 34px 34px, rgba(240, 138, 114, 0.18), transparent 38px),
    linear-gradient(180deg, #221936 0%, #111a33 100%);
}

.pdf-export-document.resume-template-designer.curated-resume::before,
.pdf-fit-export-document.resume-template-designer.curated-resume::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  z-index: 0;
  width: var(--designer-rail-width);
  background:
    radial-gradient(circle at 8.6mm 8.6mm, rgba(240, 138, 114, 0.18), transparent 9.6mm),
    linear-gradient(180deg, #221936 0%, #111a33 100%);
}

.resume-document.resume-template-designer.curated-resume > * {
  position: relative;
  z-index: 1;
}

.resume-document.resume-template-designer.curated-resume .curated-header {
  grid-column: 1;
  grid-row: 1 / span 9;
  align-self: stretch;
  display: grid;
  align-content: start;
  grid-template-columns: 1fr;
  gap: 12px;
  margin: 0;
  padding: 32px 22px;
  border: 0;
  border-radius: 0;
  color: #ffffff;
  background:
    radial-gradient(circle at 34px 34px, rgba(240, 138, 114, 0.2), transparent 38px),
    linear-gradient(180deg, #221936 0%, #111a33 100%);
}

.resume-document.resume-template-designer.curated-resume .curated-header-mark {
  width: 34px;
  height: 34px;
  margin-bottom: 12px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 9px;
  background: linear-gradient(135deg, var(--curated-accent-2), var(--curated-accent));
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.24);
}

.resume-document.resume-template-designer.curated-resume .curated-header h2 {
  max-width: 8.4ch;
  color: #ffffff;
  font-size: 35px;
  font-weight: 900;
  line-height: 0.96;
  letter-spacing: 0;
}

.resume-document.resume-template-designer.curated-resume .curated-header strong {
  max-width: 100%;
  margin-top: 8px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 13.2px;
  font-weight: 750;
  line-height: 1.35;
}

.resume-document.resume-template-designer.curated-resume .curated-contact-line {
  display: grid;
  gap: 5px;
  margin-top: 12px;
  color: rgba(255, 255, 255, 0.72);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.36;
  overflow-wrap: anywhere;
}

.resume-document.resume-template-designer.curated-resume .curated-main-section,
.resume-document.resume-template-designer.curated-resume .curated-side-section {
  grid-column: 2 / -1;
  align-self: start;
}

.resume-document.resume-template-designer.curated-resume h3 {
  margin-bottom: 9px;
  color: #2a3042;
  font-size: 11.2px;
  font-weight: 900;
  letter-spacing: 0.11em;
}

.resume-document.resume-template-designer.curated-resume p,
.resume-document.resume-template-designer.curated-resume li {
  color: #344054;
  font-size: 13.15px;
  line-height: 1.5;
}

.resume-document.resume-template-designer.curated-resume .curated-summary {
  margin-top: 28px !important;
  padding: 15px 17px !important;
  border: 1px solid rgba(226, 231, 240, 0.95) !important;
  border-left: 0 !important;
  border-radius: 8px;
  background: #f6f7fb !important;
}

.resume-document.resume-template-designer.curated-resume .curated-summary h3 {
  color: var(--curated-accent);
}

.resume-document.resume-template-designer.curated-resume .curated-experience {
  display: grid;
  gap: 12px;
}

.resume-document.resume-template-designer.curated-resume .curated-experience h3,
.resume-document.resume-template-designer.curated-resume .curated-projects h3 {
  color: var(--curated-accent);
}

.resume-document.resume-template-designer.curated-resume .curated-experience-item {
  display: grid;
  gap: 6px;
  padding: 0 0 11px;
  border-bottom: 1px solid rgba(226, 231, 240, 0.95);
}

.resume-document.resume-template-designer.curated-resume .curated-experience-item::before {
  content: none;
}

.resume-document.resume-template-designer.curated-resume .curated-entry-head {
  align-items: flex-start;
  gap: 14px;
}

.resume-document.resume-template-designer.curated-resume .curated-entry-head strong {
  color: var(--curated-ink);
  font-size: 15.2px;
  font-weight: 900;
  line-height: 1.2;
}

.resume-document.resume-template-designer.curated-resume .curated-entry-head span {
  flex: 0 0 auto;
  padding-top: 1px;
  color: #778196;
  font-size: 11.3px;
  font-weight: 800;
  text-align: right;
}

.resume-document.resume-template-designer.curated-resume .curated-entry-meta,
.resume-document.resume-template-designer.curated-resume .curated-compact-item span,
.resume-document.resume-template-designer.curated-resume .curated-compact-item em {
  color: var(--curated-muted);
  font-size: 11.9px;
  font-weight: 700;
}

.resume-document.resume-template-designer.curated-resume ul {
  gap: 6px;
  margin-top: 5px;
  padding-left: 16px;
}

.resume-document.resume-template-designer.curated-resume .curated-projects {
  padding: 13px 15px !important;
  border: 1px solid rgba(226, 231, 240, 0.95) !important;
  border-radius: 8px;
  background: #ffffff !important;
}

.resume-document.resume-template-designer.curated-resume .curated-projects .curated-text-list {
  gap: 0;
}

.resume-document.resume-template-designer.curated-resume .curated-projects .curated-text-list p {
  margin: 0;
  padding: 0 0 8px;
  border-bottom: 1px solid rgba(226, 231, 240, 0.8);
}

.resume-document.resume-template-designer.curated-resume .curated-projects .curated-text-list p:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.resume-template-designer.curated-resume .curated-projects .curated-text-list p::first-line {
  color: var(--curated-ink);
  font-weight: 850;
}

.resume-document.resume-template-designer.curated-resume .curated-side-section {
  padding: 11px 13px !important;
  border: 1px solid rgba(226, 231, 240, 0.95) !important;
  border-radius: 8px;
  background: #ffffff !important;
}

.resume-document.resume-template-designer.curated-resume .curated-skills {
  grid-column: 2 / -1;
  padding: 12px 13px !important;
  background: #f8f9fc !important;
}

.resume-document.resume-template-designer.curated-resume .curated-skill-list {
  gap: 7px;
}

.resume-document.resume-template-designer.curated-resume .curated-skill-list span {
  padding: 5.5px 8.5px;
  border: 1px solid rgba(124, 92, 255, 0.16);
  border-radius: 999px;
  color: #2c3347;
  background: #ffffff;
  font-size: 11.45px;
  font-weight: 800;
  line-height: 1.15;
}

.resume-document.resume-template-designer.curated-resume .curated-education,
.resume-document.resume-template-designer.curated-resume .curated-certifications,
.resume-document.resume-template-designer.curated-resume .curated-languages,
.resume-document.resume-template-designer.curated-resume .curated-links {
  display: grid;
  gap: 6px;
}

.resume-document.resume-template-designer.curated-resume .curated-education,
.resume-document.resume-template-designer.curated-resume .curated-languages {
  grid-column: 2;
}

.resume-document.resume-template-designer.curated-resume .curated-certifications,
.resume-document.resume-template-designer.curated-resume .curated-links {
  grid-column: 3;
}

.resume-document.resume-template-designer.curated-resume .curated-compact-item strong,
.resume-document.resume-template-designer.curated-resume .curated-text-list p strong,
.resume-document.resume-template-designer.curated-resume .curated-link-list p {
  color: var(--curated-ink);
  font-weight: 850;
}

.pdf-export-document.resume-template-designer.curated-resume {
  --designer-rail-width: max(45mm, calc(25% - 1.5mm));
  display: grid !important;
  grid-template-columns: var(--designer-rail-width) minmax(0, 1fr) minmax(0, 0.9fr) !important;
  gap: 3.4mm 6mm !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  padding: 0 9.5mm 9.5mm 0 !important;
  border-left: 0 !important;
  background: #fbfcff !important;
  overflow: hidden !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-header {
  grid-column: 1 !important;
  grid-row: 1 / span 9 !important;
  align-self: stretch !important;
  padding: 8.2mm 5.6mm !important;
  background: transparent !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-main-section,
.pdf-export-document.resume-template-designer.curated-resume .curated-side-section {
  grid-column: 2 / -1 !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-education,
.pdf-export-document.resume-template-designer.curated-resume .curated-languages {
  grid-column: 2 !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-certifications,
.pdf-export-document.resume-template-designer.curated-resume .curated-links {
  grid-column: 3 !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-header h2 {
  font-size: 26pt !important;
  line-height: 0.96 !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-header strong {
  font-size: 10pt !important;
  line-height: 1.35 !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-contact-line {
  font-size: 8.4pt !important;
  line-height: 1.36 !important;
}

.pdf-export-document.resume-template-designer.curated-resume h3 {
  font-size: 8.4pt !important;
}

.pdf-export-document.resume-template-designer.curated-resume p,
.pdf-export-document.resume-template-designer.curated-resume li {
  font-size: 9.7pt !important;
  line-height: 1.48 !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-entry-head strong {
  font-size: 11pt !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-entry-head span,
.pdf-export-document.resume-template-designer.curated-resume .curated-entry-meta,
.pdf-export-document.resume-template-designer.curated-resume .curated-compact-item span,
.pdf-export-document.resume-template-designer.curated-resume .curated-compact-item em {
  font-size: 8.8pt !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-skill-list span {
  padding: 1.35mm 2.1mm !important;
  font-size: 8.5pt !important;
  line-height: 1.15 !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-summary {
  margin-top: 7.6mm !important;
  padding: 4.2mm 4.7mm !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-side-section {
  padding: 3.2mm 3.7mm !important;
}

.pdf-export-document.resume-template-designer.curated-resume .curated-projects {
  padding: 3.7mm 4.2mm !important;
}

.resume-document.curated-tone-marketing,
.resume-document.curated-tone-sales {
  --curated-accent: #cc4c2f;
  --curated-accent-2: #e6a13a;
  --curated-dark: #321b15;
}

.resume-document.curated-tone-tech,
.resume-document.curated-tone-developer,
.resume-document.curated-tone-startup {
  --curated-accent: #12a3a8;
  --curated-accent-2: #5167d9;
  --curated-dark: #071a2c;
}

.resume-document.resume-template-tech.curated-resume {
  --curated-ink: #0e1a2f;
  --curated-muted: #60708a;
  --curated-line: #d8e5ef;
  --curated-soft: #f4f9fb;
  --curated-accent: #12a3a8;
  --curated-accent-2: #8bc34a;
  --curated-dark: #071a2c;
  position: relative;
  grid-template-columns: minmax(0, 1fr) minmax(198px, 0.34fr);
  grid-auto-flow: row dense;
  gap: 14px 24px;
  padding: 0 42px 38px;
  overflow: hidden;
  border: 1px solid #d7e5ef;
  background:
    linear-gradient(180deg, rgba(18, 163, 168, 0.08), transparent 178px),
    linear-gradient(90deg, transparent, rgba(139, 195, 74, 0.045) 78%, transparent),
    #ffffff;
}

.resume-document.resume-template-tech.curated-resume::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 7px;
  background: linear-gradient(90deg, #12a3a8 0 34%, #8bc34a 34% 52%, #5167d9 52% 100%);
}

.resume-document.resume-template-tech.curated-resume .curated-header {
  grid-column: 1 / -1;
  grid-row: 1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) minmax(230px, 0.38fr);
  gap: 14px 20px;
  align-items: center;
  margin: 0 -42px 4px;
  padding: 30px 42px 24px;
  border: 0;
  border-radius: 0;
  background:
    radial-gradient(circle at 92% 0%, rgba(18, 163, 168, 0.34), transparent 34%),
    linear-gradient(135deg, #071a2c, #0f2741 62%, #102b33);
}

.resume-document.resume-template-tech.curated-resume .curated-header-mark {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(18, 163, 168, 0.96), rgba(139, 195, 74, 0.88)),
    #12a3a8;
  box-shadow: 0 0 0 7px rgba(18, 163, 168, 0.12), 0 18px 34px rgba(1, 12, 25, 0.28);
}

.resume-document.resume-template-tech.curated-resume .curated-header h2 {
  color: #ffffff;
  font-size: 33px;
  letter-spacing: 0;
}

.resume-document.resume-template-tech.curated-resume .curated-header strong {
  display: inline-flex;
  width: fit-content;
  margin-top: 7px;
  padding: 4px 9px;
  border: 1px solid rgba(142, 240, 228, 0.24);
  border-radius: 999px;
  color: #bdf7ef;
  background: rgba(255, 255, 255, 0.08);
  font-size: 11.6px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.resume-document.resume-template-tech.curated-resume .curated-contact-line {
  grid-column: 3;
  margin: 0;
  padding: 13px 15px;
  border: 1px solid rgba(189, 247, 239, 0.18);
  border-radius: 10px;
  color: #eefcff;
  background: rgba(3, 16, 30, 0.32);
  font-size: 10.8px;
  line-height: 1.42;
}

.resume-document.resume-template-tech.curated-resume .curated-main-section {
  grid-column: 1;
}

.resume-document.resume-template-tech.curated-resume .curated-side-section {
  grid-column: 2;
  align-self: start;
  padding: 14px 14px !important;
  border: 1px solid rgba(18, 163, 168, 0.16) !important;
  border-radius: 10px;
  background: rgba(248, 252, 253, 0.94) !important;
  box-shadow: 0 13px 28px rgba(7, 26, 44, 0.055) !important;
}

.resume-document.resume-template-tech.curated-resume .curated-summary {
  grid-column: 1;
  grid-row: 2;
  padding: 17px 18px !important;
  border: 1px solid rgba(18, 163, 168, 0.18) !important;
  border-left: 5px solid #12a3a8 !important;
  border-radius: 10px;
  background:
    linear-gradient(90deg, rgba(18, 163, 168, 0.12), transparent 44%),
    #f8fcfd !important;
}

.resume-document.resume-template-tech.curated-resume .curated-experience {
  grid-row: 3 / span 5;
}

.resume-document.resume-template-tech.curated-resume .curated-projects {
  grid-row: 8;
}

.resume-document.resume-template-tech.curated-resume .curated-skills {
  grid-row: 2;
  border-color: rgba(18, 163, 168, 0.26) !important;
  background: linear-gradient(180deg, #ecfbfb, #ffffff) !important;
}

.resume-document.resume-template-tech.curated-resume .curated-education {
  grid-row: 3;
}

.resume-document.resume-template-tech.curated-resume .curated-certifications {
  grid-row: 4;
}

.resume-document.resume-template-tech.curated-resume .curated-languages {
  grid-row: 5;
}

.resume-document.resume-template-tech.curated-resume .curated-links {
  grid-row: 6;
}

.resume-document.resume-template-tech.curated-resume h3 {
  color: #0c4f61;
  letter-spacing: 0.08em;
}

.resume-document.resume-template-tech.curated-resume .curated-experience-item {
  padding: 0 0 13px 18px;
  border-bottom-color: rgba(18, 163, 168, 0.14);
}

.resume-document.resume-template-tech.curated-resume .curated-experience-item::before {
  inset: 2px auto 12px 2px;
  width: 6px;
  border-radius: 999px;
  background: linear-gradient(180deg, #12a3a8, #8bc34a);
  box-shadow: 0 0 0 4px rgba(18, 163, 168, 0.1);
}

.resume-document.resume-template-tech.curated-resume .curated-entry-head strong {
  color: #071a2c;
}

.resume-document.resume-template-tech.curated-resume .curated-skill-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
}

.resume-document.resume-template-tech.curated-resume .curated-skill-list span {
  width: 100%;
  padding: 7px 9px;
  border: 1px solid rgba(18, 163, 168, 0.18);
  border-left: 4px solid #12a3a8;
  border-radius: 7px;
  color: #0e1a2f;
  background: #ffffff;
  font-size: 11.2px;
}

.pdf-export-document.resume-template-tech.curated-resume {
  box-shadow: none;
}

.resume-document.resume-template-developer.curated-resume {
  --curated-ink: #102033;
  --curated-muted: #5a687b;
  --curated-line: #d8e4ee;
  --curated-soft: #f5f9fc;
  --curated-accent: #0891b2;
  --curated-accent-2: #315eea;
  --curated-dark: #081827;
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto minmax(0, 1fr);
  align-content: start;
  gap: 0;
  padding: 0 40px 34px;
  overflow: hidden;
  border: 1px solid #d7e4ee;
  border-radius: 6px;
  background:
    linear-gradient(180deg, rgba(8, 145, 178, 0.055), transparent 154px),
    linear-gradient(90deg, transparent, rgba(49, 94, 234, 0.035) 78%, transparent),
    #ffffff;
  box-shadow: 0 26px 66px rgba(8, 24, 39, 0.14);
}

.resume-document.resume-template-developer.curated-resume .developer-premium-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(204px, 0.34fr);
  gap: 14px 24px;
  align-items: start;
  padding-top: 16px;
}

.resume-document.resume-template-developer.curated-resume .developer-premium-main,
.resume-document.resume-template-developer.curated-resume .developer-premium-sidebar {
  display: grid;
  align-content: start;
  gap: 14px;
  min-width: 0;
}

.resume-document.resume-template-developer.curated-resume .developer-premium-main {
  grid-column: 1;
}

.resume-document.resume-template-developer.curated-resume .developer-premium-sidebar {
  grid-column: 2;
}

.resume-document.resume-template-developer.curated-resume .developer-premium-body section {
  grid-column: auto !important;
  grid-row: auto !important;
}

.resume-document.resume-template-developer.curated-resume::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 6px;
  background: linear-gradient(90deg, #0891b2 0 34%, #315eea 34% 72%, #9bc53d 72% 100%);
}

.resume-document.resume-template-developer.curated-resume .curated-header {
  grid-column: 1 / -1;
  grid-row: 1;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) minmax(220px, 0.36fr);
  gap: 13px 18px;
  align-items: center;
  min-height: 158px;
  margin: 0 -40px;
  padding: 25px 40px 21px;
  border: 0;
  border-radius: 0;
  background:
    radial-gradient(circle at 88% 0%, rgba(8, 145, 178, 0.24), transparent 31%),
    linear-gradient(135deg, #081827, #0b2237 58%, #102033);
}

.resume-document.resume-template-developer.curated-resume .curated-header-mark {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(8, 145, 178, 0.96), rgba(49, 94, 234, 0.92)),
    #0891b2;
  box-shadow: 0 0 0 6px rgba(103, 232, 249, 0.09), 0 16px 32px rgba(1, 12, 25, 0.28);
}

.resume-document.resume-template-developer.curated-resume .curated-header h2 {
  color: #ffffff;
  font-size: 31px;
  line-height: 1.02;
  letter-spacing: 0;
}

.resume-document.resume-template-developer.curated-resume .curated-header strong {
  display: inline-flex;
  width: fit-content;
  margin-top: 7px;
  padding: 4px 10px;
  border: 1px solid rgba(185, 247, 250, 0.22);
  border-radius: 999px;
  color: #c7fbff;
  background: rgba(255, 255, 255, 0.07);
  font-size: 11.4px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.resume-document.resume-template-developer.curated-resume .curated-contact-line {
  grid-column: 3;
  margin: 0;
  padding: 11px 13px;
  border: 1px solid rgba(199, 251, 255, 0.16);
  border-radius: 9px;
  color: #eefcff;
  background: rgba(2, 14, 26, 0.42);
  font-size: 10.5px;
  line-height: 1.42;
  overflow-wrap: anywhere;
}

.resume-document.resume-template-developer.curated-resume .curated-main-section {
  align-self: start;
}

.resume-document.resume-template-developer.curated-resume .curated-side-section {
  align-self: start;
  padding: 13px 14px !important;
  border: 1px solid rgba(8, 145, 178, 0.14) !important;
  border-radius: 9px;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: 0 10px 24px rgba(8, 24, 39, 0.045) !important;
}

.resume-document.resume-template-developer.curated-resume .curated-summary {
  align-self: start;
  padding: 14px 16px 15px !important;
  border: 1px solid rgba(8, 145, 178, 0.16) !important;
  border-left: 4px solid var(--curated-accent) !important;
  border-radius: 9px;
  background:
    linear-gradient(90deg, rgba(8, 145, 178, 0.09), transparent 46%),
    #f8fcfd !important;
}

.resume-document.resume-template-developer.curated-resume .curated-summary p {
  max-width: 720px;
}

.resume-document.resume-template-developer.curated-resume .curated-experience {
  display: grid;
  gap: 11px;
}

.resume-document.resume-template-developer.curated-resume .curated-skills {
  color: #102033;
  border-color: rgba(8, 145, 178, 0.2) !important;
  background: linear-gradient(180deg, #f2fbfc, #ffffff) !important;
}

.resume-document.resume-template-developer.curated-resume h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(216, 228, 238, 0.88);
  color: #0b5964 !important;
  letter-spacing: 0.08em;
}

.resume-document.resume-template-developer.curated-resume .developer-premium-sidebar h3 {
  color: #0b5964 !important;
}

.resume-document.resume-template-developer.curated-resume h3::before {
  content: "";
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  border-radius: 2px;
  background: linear-gradient(135deg, var(--curated-accent), var(--curated-accent-2));
}

.resume-document.resume-template-developer.curated-resume .curated-skills h3,
.resume-document.resume-template-developer.curated-resume .curated-skills h3::before {
  color: #0b5964 !important;
}

.resume-document.resume-template-developer.curated-resume p,
.resume-document.resume-template-developer.curated-resume li {
  color: #27364a;
  font-size: 12.15px;
  line-height: 1.5;
}

.resume-document.resume-template-developer.curated-resume ul {
  gap: 4px;
  margin-top: 7px;
}

.resume-document.resume-template-developer.curated-resume li::marker {
  color: var(--curated-accent);
}

.resume-document.resume-template-developer.curated-resume .curated-experience-item {
  padding: 0 0 12px 18px;
  border-bottom-color: rgba(8, 145, 178, 0.12);
}

.resume-document.resume-template-developer.curated-resume .curated-experience-item::before {
  inset: 2px auto 12px 2px;
  width: 5px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--curated-accent), var(--curated-accent-2));
  box-shadow: 0 0 0 4px rgba(8, 145, 178, 0.09);
}

.resume-document.resume-template-developer.curated-resume .curated-entry-head strong {
  color: #071827;
  font-size: 13.8px;
}

.resume-document.resume-template-developer.curated-resume .curated-entry-meta {
  margin: 2px 0 0;
}

.resume-document.resume-template-developer.curated-resume .curated-entry-meta span:first-child {
  color: var(--curated-accent-2);
  font-weight: 850;
}

.resume-document.resume-template-developer.curated-resume .curated-skill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.resume-document.resume-template-developer.curated-resume .curated-skill-list span {
  width: auto;
  max-width: 100%;
  padding: 5px 8px;
  border: 1px solid rgba(8, 145, 178, 0.16) !important;
  border-left: 2px solid var(--curated-accent) !important;
  border-radius: 999px;
  color: #102033 !important;
  background: #ffffff !important;
  font-size: 10.55px;
  font-weight: 850;
  line-height: 1.2;
}

.resume-document.resume-template-developer.curated-resume .curated-text-list p,
.resume-document.resume-template-developer.curated-resume .curated-link-list p {
  color: #27364a;
  font-size: 11.25px;
  line-height: 1.44;
  margin: 0;
}

.resume-document.resume-template-developer.curated-resume .curated-compact-item {
  display: grid;
  gap: 4px;
  color: #27364a;
  font-size: 11.25px;
  line-height: 1.42;
  margin: 0;
}

.resume-document.resume-template-developer.curated-resume .curated-compact-item strong {
  color: #102033;
  line-height: 1.25;
}

.resume-document.resume-template-developer.curated-resume .curated-compact-item span,
.resume-document.resume-template-developer.curated-resume .curated-compact-item em {
  color: #5a687b;
  font-size: 10.7px;
}

.pdf-export-document.resume-template-developer.curated-resume {
  grid-template-columns: 1fr !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  gap: 0 !important;
  padding: 0 10.4mm 9.5mm !important;
  box-shadow: none;
}

.pdf-export-document.resume-template-developer.curated-resume .developer-premium-body {
  grid-template-columns: minmax(0, 1fr) minmax(53mm, 0.34fr) !important;
  gap: 3.7mm 6.2mm !important;
  padding-top: 4mm !important;
}

.pdf-export-document.resume-template-developer.curated-resume .curated-header {
  margin: 0 -10.4mm !important;
  padding: 7.2mm 10.4mm 5.8mm !important;
}

.pdf-export-document.resume-template-developer.curated-resume .curated-summary {
  grid-column: 1 / -1 !important;
  align-self: start !important;
}

.pdf-export-document.resume-template-developer.curated-resume .developer-premium-body section {
  grid-column: auto !important;
  grid-row: auto !important;
}

.resume-document.tech-lab-resume {
  --tech-ink: #101827;
  --tech-muted: #66758c;
  --tech-line: #d9e5ec;
  --tech-cyan: #11a9b6;
  --tech-lime: #9bc53d;
  --tech-blue: #4867d8;
  --tech-night: #071624;
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #d8e5ed;
  border-radius: 4px;
  color: var(--tech-ink);
  background:
    linear-gradient(rgba(17, 169, 182, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(17, 169, 182, 0.035) 1px, transparent 1px),
    linear-gradient(180deg, #f9fcfd, #ffffff 44%);
  background-size: 18px 18px, 18px 18px, auto;
  box-shadow: 0 24px 58px rgba(7, 22, 36, 0.14);
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.tech-lab-resume {
  padding: 0;
}

.resume-document.tech-lab-resume::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 12px;
  background: linear-gradient(180deg, var(--tech-cyan), var(--tech-lime) 46%, var(--tech-blue));
}

.resume-document.tech-lab-resume::after {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 150px;
  background:
    radial-gradient(circle at 78% 18%, rgba(72, 103, 216, 0.24), transparent 28%),
    linear-gradient(135deg, rgba(7, 22, 36, 0.03), transparent);
  pointer-events: none;
}

.resume-document.tech-lab-resume .tech-lab-hero {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(220px, 0.38fr);
  gap: 24px;
  align-items: stretch;
  min-height: 168px;
  margin: 0;
  padding: 34px 42px 30px 58px;
  border: 0;
  background: transparent;
}

.resume-document.tech-lab-resume .tech-lab-identity {
  position: relative;
  display: grid;
  align-content: center;
  min-height: 104px;
  padding: 21px 24px 20px;
  border-radius: 18px 18px 18px 4px;
  background: linear-gradient(135deg, #071624, #102b3b 68%, #133240);
  box-shadow: 0 18px 42px rgba(7, 22, 36, 0.2);
}

.resume-document.tech-lab-resume .tech-lab-identity::before {
  content: "";
  position: absolute;
  inset: 14px auto auto 14px;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--tech-cyan);
  box-shadow: 18px 0 0 var(--tech-lime), 36px 0 0 var(--tech-blue);
}

.resume-document.tech-lab-resume .tech-lab-kicker {
  margin: 12px 0 7px;
  color: #8df0ef;
  font-size: 10.5px;
  font-weight: 900;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.resume-document.tech-lab-resume h2 {
  margin: 0;
  color: #ffffff;
  font-size: 36px;
  font-weight: 950;
  line-height: 0.98;
  letter-spacing: 0;
}

.resume-document.tech-lab-resume .tech-lab-identity strong {
  display: block;
  margin-top: 8px;
  color: #d8fbf8;
  font-size: 12.5px;
  font-weight: 850;
}

.resume-document.tech-lab-resume .tech-lab-contact {
  align-self: center;
  display: grid;
  min-height: 104px;
  margin: 0;
  padding: 18px;
  border: 1px solid rgba(17, 169, 182, 0.2);
  border-radius: 4px 18px 18px 18px;
  color: #dff7f9;
  background:
    linear-gradient(180deg, rgba(17, 169, 182, 0.12), rgba(7, 22, 36, 0.34)),
    #0b2231;
  font-size: 11.2px;
  font-weight: 750;
  line-height: 1.48;
}

.resume-document.tech-lab-resume .tech-lab-body {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(205px, 0.35fr);
  gap: 18px 24px;
  min-height: 0;
  padding: 0 40px 40px 58px;
}

.resume-document.tech-lab-resume .tech-lab-main,
.resume-document.tech-lab-resume .tech-lab-sidebar {
  display: grid;
  align-content: start;
  gap: 15px;
  min-width: 0;
}

.resume-document.tech-lab-resume section {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.resume-document.tech-lab-resume .tech-lab-profile {
  padding: 18px 20px 18px 22px;
  border: 1px solid rgba(17, 169, 182, 0.22);
  border-radius: 16px 4px 16px 16px;
  background:
    linear-gradient(90deg, rgba(17, 169, 182, 0.11), transparent 46%),
    rgba(255, 255, 255, 0.92);
}

.resume-document.tech-lab-resume .tech-lab-experience,
.resume-document.tech-lab-resume .tech-lab-projects {
  padding: 6px 0 0;
}

.resume-document.tech-lab-resume .tech-lab-card {
  padding: 15px 15px;
  border: 1px solid rgba(16, 24, 39, 0.08);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 14px 30px rgba(7, 22, 36, 0.055);
}

.resume-document.tech-lab-resume .tech-lab-skills {
  color: #effdff;
  background:
    linear-gradient(180deg, rgba(17, 169, 182, 0.18), rgba(155, 197, 61, 0.08)),
    #071624;
}

.resume-document.tech-lab-resume h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 10px;
  color: #0d4d5f;
  font-size: 11.2px;
  font-weight: 950;
  letter-spacing: 0.11em;
  line-height: 1.2;
  text-transform: uppercase;
}

.resume-document.tech-lab-resume h3::before {
  content: "";
  width: 9px;
  height: 9px;
  flex: 0 0 auto;
  border-radius: 2px;
  background: linear-gradient(135deg, var(--tech-cyan), var(--tech-lime));
}

.resume-document.tech-lab-resume .tech-lab-skills h3 {
  color: #e9fdff;
}

.resume-document.tech-lab-resume p,
.resume-document.tech-lab-resume li {
  color: #344257;
  font-size: 12.35px;
  line-height: 1.52;
}

.resume-document.tech-lab-resume ul {
  display: grid;
  gap: 5px;
  margin: 6px 0 0;
  padding-left: 16px;
}

.resume-document.tech-lab-resume .curated-experience-item {
  position: relative;
  display: grid;
  gap: 5px;
  padding: 0 0 14px 20px;
  border-bottom: 1px solid rgba(17, 169, 182, 0.13);
}

.resume-document.tech-lab-resume .curated-experience-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.tech-lab-resume .curated-experience-item::before {
  content: "";
  position: absolute;
  inset: 3px auto 14px 2px;
  width: 8px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--tech-cyan), var(--tech-lime));
  box-shadow: 0 0 0 4px rgba(17, 169, 182, 0.1);
}

.resume-document.tech-lab-resume .curated-entry-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.resume-document.tech-lab-resume .curated-entry-head strong {
  color: #101827;
  font-size: 14.2px;
  font-weight: 950;
}

.resume-document.tech-lab-resume .curated-entry-head span,
.resume-document.tech-lab-resume .curated-entry-meta,
.resume-document.tech-lab-resume .curated-compact-item span,
.resume-document.tech-lab-resume .curated-compact-item em {
  color: var(--tech-muted);
  font-size: 11.2px;
  font-style: normal;
  font-weight: 800;
}

.resume-document.tech-lab-resume .curated-compact-item,
.resume-document.tech-lab-resume .curated-text-list,
.resume-document.tech-lab-resume .curated-link-list {
  display: grid;
  gap: 5px;
}

.resume-document.tech-lab-resume .curated-compact-item strong,
.resume-document.tech-lab-resume .curated-link-list p {
  color: var(--tech-ink);
  font-weight: 900;
}

.resume-document.tech-lab-resume .tech-lab-skill-list {
  display: grid;
  gap: 7px;
}

.resume-document.tech-lab-resume .tech-lab-skill-list span {
  width: 100%;
  padding: 7px 9px;
  border: 1px solid rgba(141, 240, 239, 0.18);
  border-radius: 9px 9px 9px 2px;
  color: #f2feff;
  background: rgba(255, 255, 255, 0.08);
  font-size: 11.2px;
  font-weight: 850;
}

.pdf-export-document.tech-lab-resume {
  box-shadow: none;
}

.resume-document.tech-product-resume {
  --tech-navy: #06192d;
  --tech-navy-2: #0b2438;
  --tech-ink: #101827;
  --tech-muted: #5e6a7d;
  --tech-line: #d9e2ea;
  --tech-cyan: #12b8b0;
  --tech-green: #6fca43;
  --tech-blue: #3f64e9;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(200px, 0.34fr);
  grid-template-rows: auto minmax(0, 1fr);
  gap: 28px 28px;
  padding: 42px 38px 38px 58px;
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, 0.11);
  border-radius: 5px;
  color: var(--tech-ink);
  background: #ffffff;
  box-shadow: 0 24px 62px rgba(15, 23, 42, 0.13);
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.tech-product-resume {
  padding: 42px 38px 38px 58px;
}

.resume-document.tech-product-resume::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 10px;
  background: linear-gradient(180deg, var(--tech-cyan), var(--tech-green) 56%, var(--tech-blue));
}

.resume-document.tech-product-resume .tech-product-top {
  grid-column: 1;
  grid-row: 1;
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1fr);
  gap: 28px;
  align-items: end;
  min-width: 0;
}

.resume-document.tech-product-resume .tech-product-main {
  grid-column: 1;
  grid-row: 2;
  display: grid;
  align-content: start;
  gap: 24px;
  min-width: 0;
}

.resume-document.tech-product-resume .tech-product-sidebar {
  grid-column: 2;
  grid-row: 1 / span 2;
  display: grid;
  align-content: start;
  gap: 17px;
  min-width: 0;
}

.resume-document.tech-product-resume section {
  display: block;
  width: auto;
  grid-column: auto !important;
  grid-row: auto !important;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.resume-document.tech-product-resume section[hidden],
.resume-document.professional-pro-resume section[hidden] {
  display: none !important;
}

.resume-document.tech-product-resume .tech-product-hero {
  position: relative;
  min-height: 142px;
  margin: 0;
  padding: 34px 28px 27px;
  border: 0;
  border-radius: 18px 18px 18px 4px;
  background:
    radial-gradient(circle at 86% 14%, rgba(18, 184, 176, 0.17), transparent 32%),
    linear-gradient(135deg, #06192d, #0a2036 62%, #071827);
  box-shadow: 0 18px 38px rgba(6, 25, 45, 0.22);
}

.resume-document.tech-product-resume .tech-code-mark {
  position: absolute;
  top: -54px;
  left: -2px;
  display: grid;
  place-items: center;
  width: 62px;
  height: 62px;
  border: 2px solid rgba(255, 255, 255, 0.92);
  border-radius: 999px;
  color: var(--tech-cyan);
  background: var(--tech-navy);
  font-size: 20px;
  font-weight: 950;
  letter-spacing: 0;
  box-shadow: 0 14px 28px rgba(6, 25, 45, 0.2);
}

.resume-document.tech-product-resume .tech-code-mark::after {
  content: "";
  position: absolute;
  right: -28px;
  top: 26px;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--tech-blue);
}

.resume-document.tech-product-resume .tech-product-hero > strong {
  display: block;
  margin: 0 0 12px;
  color: var(--tech-cyan);
  font-size: 11.4px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.resume-document.tech-product-resume h2 {
  margin: 0;
  color: #ffffff;
  font-size: 37px;
  font-weight: 950;
  line-height: 0.98;
  letter-spacing: 0;
}

.resume-document.tech-product-resume .tech-product-hero p {
  max-width: 230px;
  margin: 18px 0 0;
  color: #eaf4f7;
  font-size: 13.2px;
  line-height: 1.38;
}

.resume-document.tech-product-resume h3 {
  display: flex;
  align-items: center;
  gap: 9px;
  margin: 0 0 14px;
  color: var(--tech-ink);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.09em;
  line-height: 1.2;
  text-transform: uppercase;
}

.resume-document.tech-product-resume h3::before {
  content: "";
  width: 9px;
  height: 9px;
  flex: 0 0 auto;
  border-radius: 2px;
  background: var(--tech-cyan);
}

.resume-document.tech-product-resume p,
.resume-document.tech-product-resume li {
  color: #263348;
  font-size: 12.35px;
  line-height: 1.55;
}

.resume-document.tech-product-resume ul {
  display: grid;
  gap: 6px;
  margin: 9px 0 0;
  padding-left: 18px;
}

.resume-document.tech-product-resume li::marker {
  color: var(--tech-cyan);
}

.resume-document.tech-product-resume .tech-product-summary {
  align-self: end;
}

.resume-document.tech-product-resume .tech-product-summary > p {
  margin: 0;
  max-width: 300px;
}

.resume-document.tech-product-resume .tech-product-highlights {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  margin-top: 27px;
  padding-top: 18px;
  border-top: 1px solid var(--tech-line);
}

.resume-document.tech-product-resume .tech-product-highlights span {
  display: grid;
  justify-items: center;
  gap: 6px;
  padding: 0 12px;
  border-right: 1px solid var(--tech-line);
  color: #24324a;
  font-size: 10.7px;
  font-weight: 750;
  line-height: 1.25;
  text-align: center;
}

.resume-document.tech-product-resume .tech-product-highlights span:last-child {
  border-right: 0;
}

.resume-document.tech-product-resume .tech-product-highlights .icon {
  width: 22px;
  height: 22px;
  color: var(--tech-navy);
}

.resume-document.tech-product-resume .tech-product-stack,
.resume-document.tech-product-resume .tech-product-contact {
  padding: 19px 17px;
  border-radius: 17px;
  color: #ffffff;
  background:
    radial-gradient(circle at 88% 8%, rgba(18, 184, 176, 0.16), transparent 28%),
    linear-gradient(180deg, #071c30, #0b2438);
  box-shadow: 0 18px 34px rgba(6, 25, 45, 0.18);
}

.resume-document.tech-product-resume .tech-product-stack h3,
.resume-document.tech-product-resume .tech-product-contact h3 {
  color: #ffffff;
}

.resume-document.tech-product-resume .tech-product-stack-list {
  display: grid;
  gap: 0;
}

.resume-document.tech-product-resume .tech-product-stack-list span {
  display: block;
  min-height: 0;
  padding: 6px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.13);
  color: #f5fbff;
  background: transparent;
  font-size: 11.3px;
  font-weight: 850;
}

.resume-document.tech-product-resume .tech-product-stack-list span:last-child {
  border-bottom: 0;
}

.resume-document.tech-product-resume .tech-product-stack-list .icon {
  display: none;
}

.resume-document.tech-product-resume .tech-product-card {
  padding: 17px 16px;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 15px;
  background: #ffffff;
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.055);
}

.resume-document.tech-product-resume .tech-product-credential {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 2px 10px;
  margin: 0;
  padding: 0 0 13px;
  border-bottom: 1px solid rgba(15, 23, 42, 0.08);
}

.resume-document.tech-product-resume .tech-product-credential + .tech-product-credential {
  padding-top: 13px;
}

.resume-document.tech-product-resume .tech-product-credential:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.tech-product-resume .tech-product-credential > span {
  grid-row: 1 / span 3;
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  color: var(--tech-blue);
  background: #eef6ff;
}

.resume-document.tech-product-resume .tech-product-credential .icon {
  width: 16px;
  height: 16px;
}

.resume-document.tech-product-resume .tech-product-credential strong {
  color: var(--tech-ink);
  font-size: 11.8px;
  font-weight: 950;
  line-height: 1.25;
}

.resume-document.tech-product-resume .tech-product-credential small,
.resume-document.tech-product-resume .tech-product-credential em {
  color: var(--tech-muted);
  font-size: 11px;
  font-style: normal;
  font-weight: 650;
  line-height: 1.35;
}

.resume-document.tech-product-resume .tech-product-contact-list {
  display: grid;
  gap: 10px;
}

.resume-document.tech-product-resume .tech-product-contact-list p {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  margin: 0;
  color: #f2fbff;
  font-size: 11.1px;
  overflow-wrap: anywhere;
}

.resume-document.tech-product-resume .tech-product-contact-list .icon {
  width: 15px;
  height: 15px;
  color: #ffffff;
}

.resume-document.tech-product-resume .tech-product-language-list {
  display: grid;
  gap: 9px;
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid rgba(255, 255, 255, 0.22);
}

.resume-document.tech-product-resume .tech-product-language-list p {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
  margin: 0;
  color: #f2fbff;
  font-size: 11.2px;
}

.resume-document.tech-product-resume .tech-product-language-list i {
  display: flex;
  gap: 3px;
}

.resume-document.tech-product-resume .tech-product-language-list b {
  width: 5px;
  height: 5px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.22);
}

.resume-document.tech-product-resume .tech-product-language-list b.active {
  background: var(--tech-cyan);
}

.resume-document.tech-product-resume .tech-product-language-list strong {
  color: #f2fbff;
  font-size: 10.2px;
  font-weight: 750;
}

.resume-document.tech-product-resume .tech-product-experience {
  position: relative;
  padding-left: 34px;
}

.resume-document.tech-product-resume .tech-product-experience::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 44px;
  bottom: 8px;
  width: 1px;
  background: linear-gradient(180deg, var(--tech-cyan), rgba(18, 184, 176, 0.1));
}

.resume-document.tech-product-resume .tech-product-experience h3 {
  margin-left: -34px;
}

.resume-document.tech-product-resume .tech-product-experience-item {
  position: relative;
  display: grid;
  gap: 8px;
  padding: 0 0 21px;
}

.resume-document.tech-product-resume .tech-product-experience-item::before {
  content: "";
  position: absolute;
  left: -31px;
  top: 5px;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--tech-cyan);
  box-shadow: 0 0 0 5px rgba(18, 184, 176, 0.11);
}

.resume-document.tech-product-resume .tech-product-experience-item:last-child {
  padding-bottom: 0;
}

.resume-document.tech-product-resume .tech-product-entry-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}

.resume-document.tech-product-resume .tech-product-entry-head strong {
  color: var(--tech-ink);
  font-size: 15px;
  font-weight: 950;
}

.resume-document.tech-product-resume .tech-product-entry-head p {
  margin: 4px 0 0;
  color: #263348;
  font-size: 12px;
}

.resume-document.tech-product-resume .tech-product-entry-head p span:first-child {
  color: var(--tech-blue);
  font-weight: 850;
}

.resume-document.tech-product-resume .tech-product-entry-head em {
  color: #263348;
  font-size: 11.4px;
  font-style: normal;
  font-weight: 750;
}

.resume-document.tech-product-resume .tech-product-projects > div {
  display: grid;
  gap: 10px;
}

.resume-document.tech-product-resume .tech-product-project {
  display: grid;
  grid-template-columns: 54px minmax(0, 1fr);
  gap: 14px;
  padding: 0 0 12px;
  border-bottom: 1px solid rgba(15, 23, 42, 0.09);
}

.resume-document.tech-product-resume .tech-product-project:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.tech-product-resume .tech-product-project > span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 10px;
  color: var(--tech-blue);
  background: #eef6ff;
}

.resume-document.tech-product-resume .tech-product-project .icon {
  width: 25px;
  height: 25px;
}

.resume-document.tech-product-resume .tech-product-project div div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.resume-document.tech-product-resume .tech-product-project strong {
  color: var(--tech-ink);
  font-size: 13.4px;
  font-weight: 950;
}

.resume-document.tech-product-resume .tech-product-project em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 20px;
  padding: 3px 8px;
  border-radius: 999px;
  color: #ffffff;
  background: var(--tech-cyan);
  font-size: 10.5px;
  font-style: normal;
  font-weight: 850;
}

.resume-document.tech-product-resume .tech-product-project p,
.resume-document.tech-product-resume .tech-product-project b {
  display: block;
  margin: 4px 0 0;
  color: #263348;
  font-size: 11.7px;
  line-height: 1.42;
}

.resume-document.tech-product-resume .tech-product-project b {
  font-weight: 900;
}

.pdf-export-document.tech-product-resume {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(200px, 0.34fr) !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  gap: 28px 28px !important;
  padding: 42px 38px 38px 58px !important;
  box-shadow: none;
}

.resume-document.professional-pro-resume {
  --professional-navy: #061d36;
  --professional-blue: #1477f2;
  --professional-cyan: #56d9d0;
  --professional-ink: #172033;
  --professional-muted: #5d6778;
  --professional-line: #d7dee8;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(235px, 0.39fr);
  grid-template-rows: auto minmax(0, 1fr);
  gap: 26px 38px;
  padding: 45px 45px 36px 58px;
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 5px;
  color: var(--professional-ink);
  background: #ffffff;
  box-shadow: 0 24px 58px rgba(15, 23, 42, 0.12);
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.professional-pro-resume {
  padding: 45px 45px 36px 58px;
}

.resume-document.professional-pro-resume::before {
  content: "";
  position: absolute;
  inset: 26px auto 26px 30px;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--professional-blue), var(--professional-cyan));
}

.resume-document.professional-pro-resume section,
.resume-document.professional-pro-resume header {
  display: block;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.resume-document.resume-template-professional.professional-pro-resume section,
.resume-document.resume-template-professional.professional-pro-resume header {
  order: initial;
  grid-column: auto;
  grid-row: auto;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.resume-document.resume-template-professional.professional-pro-resume section[hidden] {
  display: none !important;
}

.resume-document.professional-pro-resume .professional-pro-header {
  grid-column: 1;
  grid-row: 1;
  padding-top: 8px;
}

.resume-document.professional-pro-resume .professional-pro-header h2 {
  max-width: 390px;
  margin: 0;
  color: #09223e;
  font-size: 43px;
  font-weight: 950;
  line-height: 1.05;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.resume-document.professional-pro-resume .professional-pro-header strong {
  display: block;
  margin-top: 16px;
  color: var(--professional-blue);
  font-size: 16px;
  font-weight: 850;
  letter-spacing: 0.18em;
  line-height: 1.2;
  text-transform: uppercase;
}

.resume-document.professional-pro-resume .professional-pro-header p {
  max-width: 445px;
  margin: 17px 0 0;
  color: #323b4c;
  font-size: 13.3px;
  line-height: 1.62;
}

.resume-document.professional-pro-resume .professional-pro-main {
  grid-column: 1;
  grid-row: 2;
  display: grid;
  align-content: start;
  gap: 24px;
  min-width: 0;
}

.resume-document.professional-pro-resume .professional-pro-sidebar {
  grid-column: 2;
  grid-row: 1 / span 2;
  display: grid;
  align-content: start;
  gap: 18px;
  min-width: 0;
}

.resume-document.professional-pro-resume h3 {
  display: flex;
  align-items: center;
  gap: 11px;
  margin: 0 0 16px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--professional-line);
  color: #172033;
  font-size: 14px;
  font-weight: 950;
  letter-spacing: 0.04em;
  line-height: 1.2;
  text-transform: uppercase;
}

.resume-document.professional-pro-resume h3 > span {
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  color: var(--professional-blue);
}

.resume-document.professional-pro-resume h3 .icon {
  width: 20px;
  height: 20px;
}

.resume-document.professional-pro-resume p,
.resume-document.professional-pro-resume li {
  color: #273142;
  font-size: 12.6px;
  line-height: 1.58;
}

.resume-document.professional-pro-resume ul {
  display: grid;
  gap: 6px;
  margin: 9px 0 0;
  padding-left: 18px;
}

.resume-document.professional-pro-resume li::marker {
  color: var(--professional-blue);
}

.resume-document.professional-pro-resume .professional-pro-contact {
  padding: 25px 23px;
  border-radius: 10px;
  color: #ffffff;
  background:
    radial-gradient(circle at 86% 12%, rgba(20, 119, 242, 0.18), transparent 34%),
    linear-gradient(135deg, #061d36, #082846 58%, #0b2e50);
  box-shadow: 0 18px 38px rgba(6, 29, 54, 0.2);
}

.resume-document.professional-pro-resume .professional-pro-contact h3 {
  margin-bottom: 17px;
  color: #ffffff;
  border-bottom-color: rgba(255, 255, 255, 0.68);
}

.resume-document.professional-pro-resume .professional-pro-contact h3 > span {
  display: none;
}

.resume-document.professional-pro-resume .professional-pro-contact p {
  display: grid;
  grid-template-columns: 21px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  margin: 0;
  color: #f5f9ff;
  font-size: 12.4px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.resume-document.professional-pro-resume .professional-pro-contact p + p {
  margin-top: 15px;
}

.resume-document.professional-pro-resume .professional-pro-contact .icon {
  width: 18px;
  height: 18px;
  color: #ffffff;
}

.resume-document.professional-pro-resume .professional-pro-card {
  padding: 20px 18px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 10px;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.055);
}

.resume-document.professional-pro-resume .professional-pro-skill-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 8px;
}

.resume-document.professional-pro-resume .professional-pro-skill-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 29px;
  padding: 6px 11px;
  border: 1px solid #d9e0e9;
  border-radius: 5px;
  color: #263142;
  background: #fbfcfe;
  font-size: 12.1px;
  font-weight: 650;
  line-height: 1.15;
}

.resume-document.professional-pro-resume .professional-pro-profile p {
  margin: 0;
  max-width: 560px;
}

.resume-document.professional-pro-resume .professional-pro-experience {
  position: relative;
}

.resume-document.professional-pro-resume .professional-pro-experience::after {
  content: "";
  position: absolute;
  top: 58px;
  bottom: 18px;
  left: 5px;
  width: 1px;
  background: linear-gradient(180deg, rgba(20, 119, 242, 0.55), rgba(20, 119, 242, 0.1));
}

.resume-document.professional-pro-resume .professional-pro-experience-item {
  position: relative;
  padding-left: 30px;
  margin-bottom: 20px;
}

.resume-document.professional-pro-resume .professional-pro-experience-item:last-child {
  margin-bottom: 0;
}

.resume-document.professional-pro-resume .professional-pro-experience-item::before {
  content: "";
  position: absolute;
  top: 6px;
  left: 0;
  z-index: 1;
  width: 11px;
  height: 11px;
  border-radius: 999px;
  background: var(--professional-blue);
  box-shadow: 0 0 0 5px rgba(20, 119, 242, 0.11);
}

.resume-document.professional-pro-resume .professional-pro-entry-head,
.resume-document.professional-pro-resume .professional-pro-education-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}

.resume-document.professional-pro-resume .professional-pro-entry-head strong,
.resume-document.professional-pro-resume .professional-pro-education-item strong,
.resume-document.professional-pro-resume .professional-pro-card-entry strong,
.resume-document.professional-pro-resume .professional-pro-cert-item strong {
  color: #141d2d;
  font-size: 13.6px;
  font-weight: 900;
  line-height: 1.25;
}

.resume-document.professional-pro-resume .professional-pro-entry-head p,
.resume-document.professional-pro-resume .professional-pro-education-item p,
.resume-document.professional-pro-resume .professional-pro-card-entry span,
.resume-document.professional-pro-resume .professional-pro-cert-item p {
  margin: 5px 0 0;
  color: var(--professional-muted);
  font-size: 12.1px;
  font-weight: 600;
}

.resume-document.professional-pro-resume .professional-pro-entry-head em,
.resume-document.professional-pro-resume .professional-pro-education-item em,
.resume-document.professional-pro-resume .professional-pro-card-entry em,
.resume-document.professional-pro-resume .professional-pro-cert-item em {
  color: #263142;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  white-space: nowrap;
}

.resume-document.professional-pro-resume .professional-pro-education-item + .professional-pro-education-item,
.resume-document.professional-pro-resume .professional-pro-card-entry + .professional-pro-card-entry {
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid rgba(15, 23, 42, 0.11);
}

.resume-document.professional-pro-resume .professional-pro-card-entry {
  display: block;
  margin: 0;
}

.resume-document.professional-pro-resume .professional-pro-card-entry em {
  display: block;
  margin-top: 5px;
  color: #6a7483;
}

.resume-document.professional-pro-resume .professional-pro-cert-item {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}

.resume-document.professional-pro-resume .professional-pro-cert-item + .professional-pro-cert-item {
  margin-top: 15px;
  padding-top: 15px;
  border-top: 1px solid rgba(15, 23, 42, 0.1);
}

.resume-document.professional-pro-resume .professional-pro-cert-item > span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid #dce5f0;
  border-radius: 5px;
  color: var(--professional-blue);
  background: #f8fbff;
}

.resume-document.professional-pro-resume .professional-pro-cert-item .icon {
  width: 16px;
  height: 16px;
}

.resume-document.professional-pro-resume .professional-pro-courses ul {
  margin-top: 0;
}

.pdf-export-document.professional-pro-resume {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(235px, 0.39fr) !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  gap: 26px 38px !important;
  padding: 45px 45px 36px 58px !important;
  box-shadow: none;
}

.resume-document.sales-pro-resume {
  --sales-navy: #071c34;
  --sales-navy-2: #0b2744;
  --sales-ink: #111827;
  --sales-muted: #5d6675;
  --sales-line: #d7dde6;
  --sales-soft: #f7f8fa;
  --sales-copper: #f26a2c;
  --sales-copper-2: #c8793a;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 285px;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 20px 26px;
  padding: 38px 34px 30px 54px;
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 5px;
  color: var(--sales-ink);
  background: #ffffff;
  box-shadow: 0 24px 60px rgba(15, 23, 42, 0.13);
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.sales-pro-resume {
  padding: 38px 34px 30px 54px;
}

.resume-document.sales-pro-resume::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 24px;
  width: 3px;
  background: linear-gradient(180deg, #1d5aa7, var(--sales-copper));
}

.resume-document.sales-pro-resume::after {
  content: "";
  position: absolute;
  top: 36px;
  bottom: 36px;
  left: calc(100% - 327px);
  width: 1px;
  background: linear-gradient(180deg, rgba(242, 106, 44, 0.78), rgba(242, 106, 44, 0.18));
}

.resume-document.sales-pro-resume section,
.resume-document.sales-pro-resume header {
  display: block;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.resume-document.sales-pro-resume section[hidden] {
  display: none !important;
}

.resume-document.sales-pro-resume .sales-pro-header {
  grid-column: 1;
  grid-row: 1;
  position: relative;
  padding-top: 2px;
}

.resume-document.sales-pro-resume .sales-pro-header > span {
  display: block;
  width: 13px;
  height: 13px;
  margin: 0 0 15px;
  border-radius: 3px;
  background: linear-gradient(135deg, var(--sales-copper), var(--sales-copper-2));
  box-shadow: 0 8px 18px rgba(242, 106, 44, 0.22);
}

.resume-document.sales-pro-resume h2 {
  max-width: 445px;
  margin: 0;
  color: #081d35;
  font-size: 38px;
  font-weight: 950;
  line-height: 1.02;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.resume-document.sales-pro-resume .sales-pro-header > strong {
  display: block;
  margin-top: 13px;
  color: var(--sales-copper);
  font-size: 16px;
  font-weight: 850;
  letter-spacing: 0.08em;
  line-height: 1.22;
  text-transform: uppercase;
}

.resume-document.sales-pro-resume .sales-contact-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9px 15px;
  max-width: 540px;
  margin-top: 17px;
}

.resume-document.sales-pro-resume .sales-contact-list p {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  min-width: 0;
  margin: 0;
  color: #2d3645;
  font-size: 10.8px;
  font-weight: 650;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.resume-document.sales-pro-resume .sales-contact-list .icon {
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
  color: #667085;
}

.resume-document.sales-pro-resume .sales-pro-main {
  grid-column: 1;
  grid-row: 2;
  display: grid;
  align-content: start;
  gap: 17px;
  min-width: 0;
}

.resume-document.sales-pro-resume .sales-pro-sidebar {
  grid-column: 2;
  grid-row: 1 / span 2;
  z-index: 1;
  display: grid;
  align-content: start;
  gap: 13px;
  min-width: 0;
}

.resume-document.sales-pro-resume h3 {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--sales-line);
  color: #111827;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: 0.05em;
  line-height: 1.18;
  text-transform: uppercase;
}

.resume-document.sales-pro-resume h3 > span {
  display: grid;
  place-items: center;
  width: 20px;
  height: 20px;
  flex: 0 0 auto;
  color: var(--sales-copper);
}

.resume-document.sales-pro-resume h3 .icon {
  width: 18px;
  height: 18px;
}

.resume-document.sales-pro-resume p,
.resume-document.sales-pro-resume li {
  color: #273142;
  font-size: 11.4px;
  line-height: 1.44;
}

.resume-document.sales-pro-resume ul {
  display: grid;
  gap: 5px;
  margin: 8px 0 0;
  padding-left: 18px;
}

.resume-document.sales-pro-resume li::marker {
  color: var(--sales-copper);
}

.resume-document.sales-pro-resume .sales-profile p {
  max-width: 570px;
  margin: 0;
}

.resume-document.sales-pro-resume .sales-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(15, 23, 42, 0.1);
  border-bottom: 1px solid rgba(15, 23, 42, 0.1);
}

.resume-document.sales-pro-resume .sales-metric-grid article {
  display: grid;
  justify-items: center;
  gap: 6px;
  min-width: 0;
  padding: 10px 8px 10px;
  border-right: 1px solid rgba(15, 23, 42, 0.13);
  text-align: center;
}

.resume-document.sales-pro-resume .sales-metric-grid article:last-child {
  border-right: 0;
}

.resume-document.sales-pro-resume .sales-metric-grid span {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  color: var(--sales-copper);
}

.resume-document.sales-pro-resume .sales-metric-grid .icon {
  width: 23px;
  height: 23px;
}

.resume-document.sales-pro-resume .sales-metric-grid strong {
  color: var(--sales-copper);
  font-size: 19px;
  font-weight: 950;
  line-height: 1;
  letter-spacing: 0;
  white-space: nowrap;
}

.resume-document.sales-pro-resume .sales-metric-grid p {
  max-width: 105px;
  margin: 0;
  color: #111827;
  font-size: 10px;
  line-height: 1.32;
}

.resume-document.sales-pro-resume .sales-cases > div {
  position: relative;
  display: grid;
  gap: 12px;
  padding-left: 25px;
}

.resume-document.sales-pro-resume .sales-cases > div::before {
  content: "";
  position: absolute;
  left: 4px;
  top: 8px;
  bottom: 9px;
  width: 1px;
  background: linear-gradient(180deg, var(--sales-copper), rgba(242, 106, 44, 0.12));
}

.resume-document.sales-pro-resume .sales-case-item {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 5px;
}

.resume-document.sales-pro-resume .sales-case-item > span {
  position: absolute;
  left: -25px;
  top: 5px;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--sales-copper);
  box-shadow: 0 0 0 4px rgba(242, 106, 44, 0.12);
}

.resume-document.sales-pro-resume .sales-case-item strong,
.resume-document.sales-pro-resume .sales-education-item strong {
  color: #111827;
  font-size: 13.1px;
  font-weight: 900;
  line-height: 1.25;
}

.resume-document.sales-pro-resume .sales-case-item p,
.resume-document.sales-pro-resume .sales-case-item b {
  display: block;
  margin: 4px 0 0;
  font-size: 11px;
  line-height: 1.36;
}

.resume-document.sales-pro-resume .sales-case-item b {
  color: #172033;
  font-weight: 850;
}

.resume-document.sales-pro-resume .sales-education-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}

.resume-document.sales-pro-resume .sales-education-item + .sales-education-item {
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(15, 23, 42, 0.1);
}

.resume-document.sales-pro-resume .sales-education-item p {
  margin: 4px 0 0;
  color: var(--sales-muted);
  font-weight: 650;
}

.resume-document.sales-pro-resume .sales-education-item em {
  color: #263142;
  font-size: 11.5px;
  font-style: normal;
  font-weight: 750;
  white-space: nowrap;
}

.resume-document.sales-pro-resume .sales-courses ul {
  margin-top: 0;
}

.resume-document.sales-pro-resume .sales-experience-card {
  position: relative;
  padding: 18px 17px 18px 24px;
  border-radius: 9px;
  color: #ffffff;
  background:
    radial-gradient(circle at 88% 8%, rgba(242, 106, 44, 0.14), transparent 32%),
    linear-gradient(180deg, var(--sales-navy), var(--sales-navy-2));
  box-shadow: 0 18px 38px rgba(7, 28, 52, 0.2);
}

.resume-document.sales-pro-resume .sales-experience-card h3 {
  color: #ffffff;
  border-bottom-color: rgba(255, 255, 255, 0.24);
}

.resume-document.sales-pro-resume .sales-experience-card h3 > span {
  color: var(--sales-copper);
}

.resume-document.sales-pro-resume .sales-experience-card::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 64px;
  bottom: 24px;
  width: 1px;
  background: rgba(255, 255, 255, 0.2);
}

.resume-document.sales-pro-resume .sales-experience-item {
  position: relative;
  padding-left: 20px;
  margin-bottom: 12px;
}

.resume-document.sales-pro-resume .sales-experience-item:last-child {
  margin-bottom: 0;
}

.resume-document.sales-pro-resume .sales-experience-item::before {
  content: "";
  position: absolute;
  left: -8px;
  top: 6px;
  z-index: 1;
  width: 9px;
  height: 9px;
  border-radius: 999px;
  background: var(--sales-copper);
}

.resume-document.sales-pro-resume .sales-experience-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: start;
}

.resume-document.sales-pro-resume .sales-experience-head strong {
  color: #ffffff;
  font-size: 11.8px;
  font-weight: 900;
  line-height: 1.3;
}

.resume-document.sales-pro-resume .sales-experience-head p,
.resume-document.sales-pro-resume .sales-experience-head em {
  color: #dfe8f4;
  font-size: 10.1px;
  font-style: normal;
  font-weight: 650;
  line-height: 1.35;
}

.resume-document.sales-pro-resume .sales-experience-head p {
  margin: 5px 0 0;
}

.resume-document.sales-pro-resume .sales-experience-head em {
  white-space: nowrap;
}

.resume-document.sales-pro-resume .sales-experience-card li {
  color: #f5f8fc;
  font-size: 9.8px;
  line-height: 1.32;
}

.resume-document.sales-pro-resume .sales-skill-card,
.resume-document.sales-pro-resume .sales-cert-card {
  padding: 15px 14px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 9px;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.055);
}

.resume-document.sales-pro-resume .sales-skill-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.resume-document.sales-pro-resume .sales-skill-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 5px 8px;
  border: 1px solid #dbe1e9;
  border-radius: 5px;
  color: #1f2937;
  background: #f7f8fa;
  font-size: 10.4px;
  font-weight: 700;
  line-height: 1.15;
}

.resume-document.sales-pro-resume .sales-cert-item {
  display: grid;
  grid-template-columns: 29px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
}

.resume-document.sales-pro-resume .sales-cert-item + .sales-cert-item {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(15, 23, 42, 0.1);
}

.resume-document.sales-pro-resume .sales-cert-item > span {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 7px;
  color: var(--sales-copper);
  background: #fff4ee;
}

.resume-document.sales-pro-resume .sales-cert-item .icon {
  width: 14px;
  height: 14px;
}

.resume-document.sales-pro-resume .sales-cert-item strong {
  color: #111827;
  font-size: 10.5px;
  font-weight: 900;
  line-height: 1.3;
}

.resume-document.sales-pro-resume .sales-cert-item p,
.resume-document.sales-pro-resume .sales-cert-item em {
  margin: 4px 0 0;
  color: var(--sales-muted);
  font-size: 9.8px;
  font-style: normal;
  font-weight: 650;
  line-height: 1.3;
}

.resume-document.sales-pro-resume .sales-cert-item em {
  color: #253044;
  white-space: nowrap;
}

.pdf-export-document.sales-pro-resume {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 285px !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  gap: 20px 26px !important;
  padding: 38px 34px 30px 54px !important;
  box-shadow: none;
}

.resume-document.resume-template-sales.sales-pro-resume {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 285px;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 20px 26px;
}

.resume-document.resume-template-sales.sales-pro-resume header,
.resume-document.resume-template-sales.sales-pro-resume section {
  width: auto;
  min-width: 0;
  margin: 0;
  border: 0;
  box-shadow: none;
}

.resume-document.resume-template-sales.sales-pro-resume header {
  grid-column: 1 !important;
  grid-row: 1 !important;
  padding: 2px 0 0;
  border-radius: 0;
  background: transparent;
  text-align: left;
}

.resume-document.resume-template-sales.sales-pro-resume section {
  grid-column: auto !important;
  grid-row: auto !important;
  padding: 0;
  border-radius: 0;
  background: transparent;
}

.resume-document.resume-template-sales.sales-pro-resume .sales-pro-main,
.resume-document.resume-template-sales.sales-pro-resume .sales-pro-sidebar {
  min-width: 0;
}

.resume-document.resume-template-sales.sales-pro-resume .sales-profile,
.resume-document.resume-template-sales.sales-pro-resume .sales-metrics,
.resume-document.resume-template-sales.sales-pro-resume .sales-cases,
.resume-document.resume-template-sales.sales-pro-resume .sales-education,
.resume-document.resume-template-sales.sales-pro-resume .sales-courses {
  padding: 0;
  border-left: 0;
  border-radius: 0;
  background: transparent;
}

.resume-document.resume-template-sales.sales-pro-resume .sales-experience-card {
  grid-column: auto !important;
  padding: 18px 17px 18px 24px;
  border-radius: 9px;
  color: #ffffff;
  background:
    radial-gradient(circle at 88% 8%, rgba(242, 106, 44, 0.14), transparent 32%),
    linear-gradient(180deg, var(--sales-navy), var(--sales-navy-2));
  box-shadow: 0 18px 38px rgba(7, 28, 52, 0.2);
}

.resume-document.resume-template-sales.sales-pro-resume .sales-skill-card,
.resume-document.resume-template-sales.sales-pro-resume .sales-cert-card {
  grid-column: auto !important;
  padding: 15px 14px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 9px;
  background: #ffffff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.055);
}

.resume-document.resume-template-sales.sales-pro-resume .sales-metric-grid {
  width: 100%;
  min-width: 0;
}

.resume-document.resume-template-sales.sales-pro-resume .sales-metric-grid article {
  min-width: 0;
}

.resume-document.resume-template-sales.sales-pro-resume .sales-metric-grid strong,
.resume-document.resume-template-sales.sales-pro-resume .sales-metric-grid p {
  overflow-wrap: normal;
  word-break: normal;
}

.resume-document.curated-tone-international,
.resume-document.curated-tone-global,
.resume-document.curated-tone-remote {
  --curated-accent: #1f69d5;
  --curated-accent-2: #17a8b8;
  --curated-dark: #0a1733;
}

.resume-document.resume-template-international.curated-resume {
  --curated-ink: #101827;
  --curated-muted: #5a6a82;
  --curated-line: #d9e5f2;
  --curated-soft: #f5f9fd;
  --curated-accent: #1768d5;
  --curated-accent-2: #17a8b8;
  --curated-dark: #071833;
  position: relative;
  grid-template-columns: minmax(0, 1fr) minmax(188px, 0.34fr);
  grid-auto-flow: row dense;
  gap: 14px 26px;
  align-content: start;
  padding: 0 40px 34px;
  overflow: hidden;
  border: 1px solid rgba(23, 104, 213, 0.14);
  border-radius: 7px;
  background:
    linear-gradient(90deg, rgba(23, 104, 213, 0.03), transparent 43%),
    #ffffff;
  box-shadow: 0 28px 70px rgba(7, 24, 51, 0.15);
}

.resume-document.resume-template-international.curated-resume::before {
  content: "";
  position: absolute;
  top: 118px;
  right: 40px;
  bottom: 34px;
  width: min(188px, 31%);
  border: 1px solid rgba(217, 229, 242, 0.86);
  border-radius: 12px;
  background:
    linear-gradient(180deg, rgba(235, 247, 251, 0.72), rgba(245, 249, 253, 0.54)),
    #f7fbff;
}

.resume-document.resume-template-international.curated-resume section,
.resume-document.resume-template-international.curated-resume .curated-header {
  position: relative;
  z-index: 1;
}

.resume-document.resume-template-international.curated-resume .curated-header {
  grid-column: 1 / -1;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 8px 14px;
  align-items: center;
  margin: 0 -40px 6px;
  padding: 24px 40px 20px;
  border: 0;
  color: #ffffff;
  background:
    radial-gradient(circle at 85% 8%, rgba(23, 168, 184, 0.46), transparent 28%),
    linear-gradient(135deg, #071833 0%, #123c78 58%, #0f7384 100%);
}

.resume-document.resume-template-international.curated-resume .curated-header-mark {
  width: 40px;
  height: 40px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(143, 232, 245, 0.82)),
    linear-gradient(135deg, var(--curated-accent), var(--curated-accent-2));
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.24);
}

.resume-document.resume-template-international.curated-resume .curated-header h2 {
  color: #ffffff;
  font-size: 31px;
  line-height: 1;
  letter-spacing: 0;
}

.resume-document.resume-template-international.curated-resume .curated-header strong {
  color: rgba(221, 248, 255, 0.94);
  font-size: 14px;
}

.resume-document.resume-template-international.curated-resume .curated-contact-line {
  color: rgba(235, 248, 255, 0.78);
  font-size: 10.8px;
}

.resume-document.resume-template-international.curated-resume p,
.resume-document.resume-template-international.curated-resume li {
  font-size: 12.1px;
  line-height: 1.43;
}

.resume-document.resume-template-international.curated-resume .curated-main-section {
  grid-column: 1;
  align-self: start;
}

.resume-document.resume-template-international.curated-resume .curated-side-section {
  grid-column: 2;
  align-self: start;
  padding: 12px 13px !important;
  border: 1px solid rgba(217, 229, 242, 0.82) !important;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.76) !important;
  box-shadow: 0 10px 24px rgba(18, 60, 145, 0.04);
}

.resume-document.resume-template-international.curated-resume .curated-summary {
  padding: 0 0 12px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--curated-line) !important;
  background: transparent !important;
}

.resume-document.resume-template-international.curated-resume .curated-summary p {
  max-width: 57ch;
  color: #2f3d53;
  font-size: 12.7px;
  line-height: 1.48;
}

.resume-document.resume-template-international.curated-resume h3 {
  margin-bottom: 7px;
  color: var(--curated-dark);
  font-size: 10.8px;
  letter-spacing: 0.07em;
}

.resume-document.resume-template-international.curated-resume .curated-summary h3,
.resume-document.resume-template-international.curated-resume .curated-experience h3,
.resume-document.resume-template-international.curated-resume .curated-projects h3 {
  color: var(--curated-accent);
}

.resume-document.resume-template-international.curated-resume .curated-experience {
  gap: 10px;
}

.resume-document.resume-template-international.curated-resume .curated-experience-item {
  gap: 4px;
  padding: 0 0 10px 16px;
}

.resume-document.resume-template-international.curated-resume .curated-experience-item::before {
  width: 3px;
  background: linear-gradient(180deg, var(--curated-accent), var(--curated-accent-2));
}

.resume-document.resume-template-international.curated-resume .curated-entry-head strong {
  color: #111827;
  font-size: 13.6px;
}

.resume-document.resume-template-international.curated-resume .curated-entry-head span {
  color: #315c91;
}

.resume-document.resume-template-international.curated-resume .curated-entry-meta,
.resume-document.resume-template-international.curated-resume .curated-compact-item span,
.resume-document.resume-template-international.curated-resume .curated-compact-item em {
  font-size: 10.7px;
}

.resume-document.resume-template-international.curated-resume .curated-projects {
  padding: 12px 14px !important;
  border: 1px solid rgba(23, 104, 213, 0.11) !important;
  border-radius: 9px;
  background: linear-gradient(135deg, rgba(245, 249, 253, 0.98), rgba(255, 255, 255, 0.98)) !important;
}

.resume-document.resume-template-international.curated-resume .curated-skills {
  background: linear-gradient(180deg, rgba(235, 247, 251, 0.92), rgba(245, 249, 253, 0.92)) !important;
}

.resume-document.resume-template-international.curated-resume .curated-skill-list {
  gap: 6px;
}

.resume-document.resume-template-international.curated-resume .curated-skill-list span {
  padding: 5px 7px;
  border-color: rgba(23, 104, 213, 0.14);
  color: #0f2f5b;
  background: #ffffff;
  font-size: 10.8px;
}

.resume-document.resume-template-international.curated-resume .curated-compact-item strong,
.resume-document.resume-template-international.curated-resume .curated-link-list p {
  color: #12213a;
}

.resume-document.resume-template-international.curated-resume .curated-languages p,
.resume-document.resume-template-international.curated-resume .curated-certifications p {
  color: #40506a;
  font-weight: 650;
}

.pdf-export-document.resume-template-international.curated-resume {
  grid-template-columns: minmax(0, 1fr) minmax(48mm, 0.34fr) !important;
  grid-auto-flow: row dense !important;
  gap: 4mm 7mm !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
}

.pdf-export-document.resume-template-international.curated-resume::before {
  top: 31mm !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 48mm !important;
  border-radius: 3mm !important;
}

.pdf-export-document.resume-template-international.curated-resume .curated-header {
  margin: 0 0 2mm !important;
  padding: 7mm 9mm 6mm !important;
}

.pdf-export-document.resume-template-international.curated-resume .curated-header h2 {
  font-size: 24pt !important;
}

.pdf-export-document.resume-template-international.curated-resume .curated-side-section {
  padding: 3.5mm !important;
}

.pdf-export-document.resume-template-international.curated-resume .curated-projects {
  padding: 3.8mm 4.2mm !important;
}

.resume-document.resume-template-international.international-resume {
  --international-ink: #102033;
  --international-muted: #5d6d82;
  --international-line: #d8e5ef;
  --international-blue: #123f9f;
  --international-cyan: #11a7b7;
  --international-gold: #c99a3f;
  --international-navy: #06162d;
  --international-forest: #0b4c58;
  display: flex !important;
  flex-direction: column;
  padding: 0 !important;
  overflow: hidden;
  border: 1px solid rgba(9, 33, 64, 0.1);
  border-radius: 10px;
  background:
    linear-gradient(90deg, rgba(17, 167, 183, 0.045), transparent 34%),
    linear-gradient(180deg, rgba(201, 154, 63, 0.04), transparent 26%),
    #ffffff;
  box-shadow: 0 36px 82px rgba(7, 24, 51, 0.2);
}

.resume-document.resume-template-international.international-resume::before {
  content: none !important;
}

.resume-document.resume-template-international.international-resume .international-header {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) minmax(150px, 0.48fr);
  gap: 10px 18px;
  align-items: center;
  margin: 0;
  padding: 29px 35px 24px;
  border: 0;
  background:
    radial-gradient(circle at 88% 18%, rgba(17, 167, 183, 0.32), transparent 22%),
    linear-gradient(135deg, rgba(6, 22, 45, 0.99), rgba(13, 43, 91, 0.98) 52%, rgba(8, 84, 97, 0.98)),
    #071b35;
  color: #ffffff;
}

.resume-document.resume-template-international.international-resume .international-header::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg, var(--international-gold), #67d8df, var(--international-blue));
}

.resume-document.resume-template-international.international-resume .international-header::after {
  content: "";
  position: absolute;
  inset: auto 0 0 auto;
  width: 48%;
  height: 100%;
  pointer-events: none;
  background:
    linear-gradient(135deg, transparent 0 40%, rgba(255, 255, 255, 0.09) 40% 41%, transparent 41%),
    linear-gradient(135deg, transparent 0 60%, rgba(201, 154, 63, 0.2) 60% 61%, transparent 61%);
}

.resume-document.resume-template-international.international-resume .international-mark {
  grid-row: 1 / span 2;
  position: relative;
  z-index: 1;
  width: 54px;
  height: 54px;
  border: 1px solid rgba(255, 255, 255, 0.38);
  border-radius: 18px;
  background:
    radial-gradient(circle at 30% 28%, rgba(255, 255, 255, 0.98) 0 16%, transparent 17%),
    linear-gradient(135deg, rgba(201, 154, 63, 0.98), rgba(91, 220, 226, 0.92) 48%, rgba(18, 63, 159, 0.95));
  box-shadow: 0 18px 34px rgba(0, 0, 0, 0.28);
}

.resume-document.resume-template-international.international-resume .international-mark::before,
.resume-document.resume-template-international.international-resume .international-mark::after {
  content: "";
  position: absolute;
  inset: 12px 9px;
  border: 1px solid rgba(6, 25, 50, 0.38);
  border-radius: 999px;
}

.resume-document.resume-template-international.international-resume .international-mark::after {
  inset: 9px 17px;
  border-width: 0 1px;
  border-radius: 0;
}

.resume-document.resume-template-international.international-resume .international-kicker {
  display: block;
  margin-bottom: 5px;
  color: rgba(231, 245, 252, 0.84);
  font-size: 9.5px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.resume-document.resume-template-international.international-resume .international-identity {
  position: relative;
  z-index: 1;
}

.resume-document.resume-template-international.international-resume .international-header h2 {
  margin: 0;
  color: #ffffff;
  font-size: 34px;
  font-weight: 900;
  line-height: 0.98;
  letter-spacing: 0;
}

.resume-document.resume-template-international.international-resume .international-header strong {
  display: block;
  margin-top: 5px;
  color: rgba(224, 249, 252, 0.92);
  font-size: 13.4px;
  font-weight: 850;
}

.resume-document.resume-template-international.international-resume .international-contact-panel {
  position: relative;
  z-index: 1;
  grid-column: 3;
  grid-row: 1 / span 2;
  align-self: stretch;
  display: grid;
  align-content: center;
  gap: 7px;
  padding: 12px 13px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
}

.resume-document.resume-template-international.international-resume .international-contact-panel span {
  color: rgba(220, 244, 250, 0.76);
  font-size: 8.6px;
  font-weight: 950;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.resume-document.resume-template-international.international-resume .international-contact {
  margin: 0;
  color: rgba(237, 248, 255, 0.78);
  font-size: 9.6px;
  line-height: 1.42;
}

.resume-document.resume-template-international.international-resume .international-signal-row {
  position: relative;
  z-index: 1;
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 2px;
}

.resume-document.resume-template-international.international-resume .international-signal-row span {
  display: inline-flex;
  align-items: center;
  min-height: 19px;
  padding: 0 7px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.92);
  background: rgba(255, 255, 255, 0.1);
  font-size: 8.8px;
  font-weight: 900;
  text-transform: uppercase;
}

.resume-document.resume-template-international.international-resume .international-route-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  min-height: 34px;
  border-bottom: 1px solid rgba(16, 60, 105, 0.12);
  background:
    linear-gradient(90deg, #f7f1e5, #eef9fb 42%, #edf3ff);
}

.resume-document.resume-template-international.international-resume .international-route-strip span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 8px;
  color: #173052;
  font-size: 9px;
  font-weight: 950;
  letter-spacing: 0.1em;
  text-align: center;
  text-transform: uppercase;
}

.resume-document.resume-template-international.international-resume .international-route-strip span + span {
  border-left: 1px solid rgba(20, 86, 200, 0.12);
}

.resume-document.resume-template-international.international-resume .international-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 224px;
  flex: 1 1 auto;
  min-height: 0;
  background:
    linear-gradient(90deg, transparent 0 calc(100% - 224px), rgba(9, 41, 68, 0.05) calc(100% - 224px)),
    #ffffff;
}

.resume-document.resume-template-international.international-resume .international-main {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 25px 28px 31px 35px;
  background:
    radial-gradient(circle at 0 0, rgba(17, 167, 183, 0.07), transparent 26%),
    linear-gradient(180deg, #ffffff, #fbfdff 76%, #f7fbff);
}

.resume-document.resume-template-international.international-resume .international-sidebar {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 11px;
  min-height: 100%;
  padding: 25px 17px 24px;
  background:
    linear-gradient(180deg, #071d39, #0d364f 100%);
}

.resume-document.resume-template-international.international-resume .international-sidebar::before {
  content: "GLOBAL";
  position: absolute;
  top: 16px;
  right: -4px;
  color: rgba(255, 255, 255, 0.1);
  font-size: 34px;
  font-weight: 950;
  letter-spacing: 0.05em;
  line-height: 1;
}

.resume-document.resume-template-international.international-resume section {
  grid-column: auto !important;
  margin: 0;
  min-width: 0;
  padding: 0;
  border-left: 0;
  background: transparent;
}

.resume-document.resume-template-international.international-resume h3 {
  display: flex;
  align-items: center;
  gap: 7px;
  margin: 0 0 8px;
  color: #123f9f;
  font-size: 10.7px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.resume-document.resume-template-international.international-resume h3::before {
  content: "";
  width: 18px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--international-gold), var(--international-cyan));
}

.resume-document.resume-template-international.international-resume p,
.resume-document.resume-template-international.international-resume li {
  color: #304158;
  font-size: 11.8px;
  line-height: 1.45;
}

.resume-document.resume-template-international.international-resume ul {
  display: grid;
  gap: 4px;
  margin: 6px 0 0;
  padding-left: 16px;
}

.resume-document.resume-template-international.international-resume .international-profile {
  position: relative;
  padding: 17px 18px 17px !important;
  border: 1px solid rgba(17, 167, 183, 0.18);
  border-left: 4px solid var(--international-gold) !important;
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(232, 247, 250, 0.8), rgba(255, 255, 255, 0.96)),
    #ffffff !important;
  box-shadow: 0 17px 36px rgba(14, 45, 88, 0.08);
}

.resume-document.resume-template-international.international-resume .international-profile p {
  max-width: 61ch;
  color: #263a53;
  font-size: 12.8px;
  line-height: 1.55;
}

.resume-document.resume-template-international.international-resume .international-experience {
  display: grid;
  gap: 10px;
  padding: 6px 0 0;
}

.resume-document.resume-template-international.international-resume .curated-experience-item {
  position: relative;
  display: grid;
  gap: 5px;
  padding: 12px 14px 12px 18px;
  border: 1px solid rgba(216, 229, 239, 0.9);
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 12px 28px rgba(14, 45, 88, 0.055);
}

.resume-document.resume-template-international.international-resume .curated-experience-item:last-child {
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(216, 229, 239, 0.9);
}

.resume-document.resume-template-international.international-resume .curated-experience-item::before {
  content: "";
  position: absolute;
  inset: 12px auto 12px 0;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--international-gold), var(--international-cyan), var(--international-blue));
}

.resume-document.resume-template-international.international-resume .curated-entry-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
}

.resume-document.resume-template-international.international-resume .curated-entry-head strong {
  color: var(--international-ink);
  font-size: 13.5px;
  font-weight: 950;
}

.resume-document.resume-template-international.international-resume .curated-entry-head span,
.resume-document.resume-template-international.international-resume .curated-entry-meta,
.resume-document.resume-template-international.international-resume .curated-compact-item span,
.resume-document.resume-template-international.international-resume .curated-compact-item em {
  color: var(--international-muted);
  font-size: 10.5px;
  font-style: normal;
  font-weight: 800;
}

.resume-document.resume-template-international.international-resume .international-projects {
  margin-top: 1px;
  padding: 14px 16px !important;
  border: 1px solid rgba(16, 169, 184, 0.16);
  border-left: 1px solid rgba(16, 169, 184, 0.16) !important;
  border-radius: 12px;
  background:
    linear-gradient(135deg, rgba(239, 249, 251, 0.96), rgba(255, 255, 255, 0.98)) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.resume-document.resume-template-international.international-resume .international-card {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding: 12px 12px 13px !important;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-left: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 12px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 252, 253, 0.95)) !important;
  box-shadow: 0 15px 30px rgba(5, 19, 39, 0.12);
}

.resume-document.resume-template-international.international-resume .international-card:first-child {
  margin-top: 3px;
}

.resume-document.resume-template-international.international-resume .international-card h3 {
  color: #13365f;
  font-size: 9.8px;
}

.resume-document.resume-template-international.international-resume .international-skills {
  border-color: rgba(212, 168, 77, 0.28);
  background:
    linear-gradient(135deg, rgba(255, 250, 238, 0.96), rgba(237, 250, 252, 0.96)) !important;
}

.resume-document.resume-template-international.international-resume .curated-skill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.resume-document.resume-template-international.international-resume .curated-skill-list span {
  padding: 5px 7px 5px 8px;
  border: 1px solid rgba(20, 86, 200, 0.12);
  border-radius: 999px;
  color: #0f2f5b;
  background: #ffffff;
  font-size: 10.2px;
  font-weight: 900;
}

.resume-document.resume-template-international.international-resume .curated-compact-item {
  display: grid;
  gap: 4px;
}

.resume-document.resume-template-international.international-resume .curated-compact-item strong,
.resume-document.resume-template-international.international-resume .curated-link-list p {
  color: #102033;
  font-weight: 900;
}

.resume-document.resume-template-international.international-resume .international-sidebar p {
  color: #40506a;
  font-size: 10.7px;
  font-weight: 760;
  overflow-wrap: anywhere;
}

.pdf-export-document.resume-template-international.international-resume,
.pdf-fit-export-document.resume-template-international.international-resume {
  display: flex !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #ffffff !important;
}

.pdf-export-document.resume-template-international.international-resume .international-header,
.pdf-fit-export-document.resume-template-international.international-resume .international-header {
  padding: 7mm 9mm 6mm !important;
  grid-template-columns: auto minmax(0, 1fr) 45mm !important;
}

.pdf-export-document.resume-template-international.international-resume .international-contact-panel,
.pdf-fit-export-document.resume-template-international.international-resume .international-contact-panel {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
}

.pdf-export-document.resume-template-international.international-resume .international-contact-panel *,
.pdf-export-document.resume-template-international.international-resume .international-contact,
.pdf-fit-export-document.resume-template-international.international-resume .international-contact-panel *,
.pdf-fit-export-document.resume-template-international.international-resume .international-contact {
  display: block !important;
  width: auto !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  filter: none !important;
}

.pdf-export-document.resume-template-international.international-resume .international-contact-panel span,
.pdf-fit-export-document.resume-template-international.international-resume .international-contact-panel span {
  margin-bottom: 1.4mm !important;
  color: rgba(220, 244, 250, 0.82) !important;
}

.pdf-export-document.resume-template-international.international-resume .international-route-strip,
.pdf-fit-export-document.resume-template-international.international-resume .international-route-strip {
  min-height: 8mm !important;
}

.pdf-export-document.resume-template-international.international-resume .international-route-strip span,
.pdf-fit-export-document.resume-template-international.international-resume .international-route-strip span {
  font-size: 2.3mm !important;
}

.pdf-export-document.resume-template-international.international-resume .international-body,
.pdf-fit-export-document.resume-template-international.international-resume .international-body {
  grid-template-columns: minmax(0, 1fr) 53mm !important;
}

.pdf-export-document.resume-template-international.international-resume .international-main,
.pdf-fit-export-document.resume-template-international.international-resume .international-main {
  padding: 7mm 7mm 7mm 9mm !important;
}

.pdf-export-document.resume-template-international.international-resume .international-sidebar,
.pdf-fit-export-document.resume-template-international.international-resume .international-sidebar {
  padding: 6mm 4.5mm !important;
}

.resume-document.global-impact-resume {
  --global-navy: #07162e;
  --global-navy-2: #0b2d5c;
  --global-cyan: #58d5f5;
  --global-violet: #7c5cff;
  --global-ink: #111827;
  --global-muted: #64748b;
  --global-line: #e2e8f0;
  --global-soft: #f7fafc;
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 0;
  padding: 0;
  overflow: visible;
  border: 1px solid rgba(15, 23, 42, 0.08);
  border-radius: 5px;
  color: var(--global-ink);
  background: #ffffff;
  box-shadow: 0 28px 70px rgba(7, 22, 46, 0.14);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.resume-document.global-impact-resume,
.resume-document.global-impact-resume * {
  box-sizing: border-box;
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.global-impact-resume {
  padding: 0;
}

.resume-document.global-impact-resume .global-impact-header {
  position: relative;
  display: grid;
  grid-template-columns: 62px minmax(0, 1fr);
  gap: 18px 22px;
  align-items: center;
  margin: 0;
  padding: 36px 46px 27px;
  border: 0;
  border-radius: 0;
  color: #ffffff;
  background:
    radial-gradient(circle at 82% 18%, rgba(88, 213, 245, 0.24), transparent 28%),
    linear-gradient(135deg, var(--global-navy), var(--global-navy-2) 58%, #061126);
  text-align: left;
}

.resume-document.global-impact-resume .global-impact-header::after {
  content: "";
  position: absolute;
  left: 46px;
  right: 46px;
  bottom: 0;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--global-cyan), var(--global-violet), transparent 72%);
}

.resume-document.global-impact-resume .global-impact-monogram {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 16px;
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(88, 213, 245, 0.24), rgba(124, 92, 255, 0.54)),
    rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 18px 34px rgba(2, 8, 23, 0.28);
  font-size: 17px;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.resume-document.global-impact-resume .global-impact-identity {
  min-width: 0;
}

.resume-document.global-impact-resume h2 {
  margin: 0;
  color: #ffffff;
  font-size: 35px;
  font-weight: 900;
  line-height: 1.02;
  letter-spacing: 0;
}

.resume-document.global-impact-resume .global-impact-identity strong {
  display: block;
  margin-top: 7px;
  color: rgba(232, 244, 255, 0.9);
  font-size: 14.4px;
  font-weight: 750;
  line-height: 1.35;
}

.resume-document.global-impact-resume .global-impact-header-contact {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  min-width: 0;
  margin: -4px 0 0;
  color: rgba(226, 232, 240, 0.86);
  font-size: 12px;
  font-weight: 650;
  line-height: 1.35;
}

.resume-document.global-impact-resume .global-impact-header-contact span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.resume-document.global-impact-resume .global-impact-header-contact span:not(:last-child)::after {
  content: "";
  display: inline-block;
  width: 4px;
  height: 4px;
  margin-left: 12px;
  border-radius: 999px;
  background: var(--global-cyan);
  vertical-align: middle;
}

.resume-document.global-impact-resume .global-impact-body {
  display: grid;
  grid-template-columns: minmax(192px, 0.29fr) minmax(0, 1fr);
  gap: 32px;
  align-items: start;
  align-content: start;
  padding: 30px 40px 20px;
}

.resume-document.global-impact-resume .global-impact-sidebar {
  display: grid;
  align-self: start;
  align-content: start;
  gap: 16px;
  min-width: 0;
  padding: 19px 17px 21px;
  border: 1px solid rgba(226, 232, 240, 0.78);
  border-radius: 10px;
  background: linear-gradient(180deg, #f9fbff, #ffffff);
}

.resume-document.global-impact-resume .global-impact-main {
  display: grid;
  align-self: start;
  align-content: start;
  gap: 20px;
  min-width: 0;
}

.resume-document.global-impact-resume section {
  display: block;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  break-inside: avoid;
}

.resume-document.global-impact-resume h3 {
  display: grid;
  grid-template-columns: auto minmax(28px, 1fr);
  gap: 10px;
  align-items: center;
  margin: 0 0 12px;
  color: var(--global-navy);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.12em;
  line-height: 1.25;
  text-transform: uppercase;
}

.resume-document.global-impact-resume h3::after {
  content: "";
  height: 1px;
  background: linear-gradient(90deg, rgba(88, 213, 245, 0.8), rgba(124, 92, 255, 0.32), transparent);
}

.resume-document.global-impact-resume p,
.resume-document.global-impact-resume li {
  color: #334155;
  font-size: 13.8px;
  line-height: 1.64;
  overflow-wrap: anywhere;
  word-break: normal;
}

.resume-document.global-impact-resume ul {
  display: grid;
  gap: 6px;
  margin: 9px 0 0;
  padding-left: 18px;
}

.resume-document.global-impact-resume .global-impact-profile {
  position: relative;
  padding: 0 0 0 16px;
}

.resume-document.global-impact-resume .global-impact-profile::before {
  content: "";
  position: absolute;
  inset: 1px auto 2px 0;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--global-cyan), var(--global-violet));
}

.resume-document.global-impact-resume .global-impact-profile p {
  margin: 0;
  font-size: 14.4px;
  line-height: 1.68;
}

.resume-document.global-impact-resume .global-impact-highlight-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 168px), 1fr));
  gap: 12px;
}

.resume-document.global-impact-resume .global-impact-highlight-card {
  min-width: 0;
  overflow: hidden;
  padding: 13px 14px 12px;
  border: 1px solid rgba(226, 232, 240, 0.86);
  border-radius: 10px;
  background: linear-gradient(180deg, #ffffff, #f9fbff);
  break-inside: avoid;
}

.resume-document.global-impact-resume .global-impact-highlight-card span {
  display: block;
  margin-bottom: 7px;
  color: var(--global-violet);
  font-size: 10px;
  font-weight: 900;
}

.resume-document.global-impact-resume .global-impact-highlight-card strong {
  display: block;
  color: var(--global-ink);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.resume-document.global-impact-resume .global-impact-highlight-card p {
  margin: 5px 0 0;
  color: var(--global-muted);
  font-size: 12.1px;
  line-height: 1.52;
  overflow-wrap: anywhere;
}

@supports (-webkit-line-clamp: 5) {
  .resume-document.global-impact-resume .global-impact-highlight-card p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
  }
}

.resume-document.global-impact-resume .global-impact-experience-item {
  position: relative;
  display: grid;
  gap: 6px;
  padding: 0 0 19px 20px;
  border-bottom: 1px solid var(--global-line);
  break-inside: avoid;
}

.resume-document.global-impact-resume .global-impact-experience-item + .global-impact-experience-item {
  margin-top: 1px;
}

.resume-document.global-impact-resume .global-impact-experience-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.global-impact-resume .global-impact-experience-item::before {
  content: "";
  position: absolute;
  inset: 5px auto 16px 0;
  width: 2px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--global-cyan), rgba(124, 92, 255, 0.38));
}

.resume-document.global-impact-resume .global-impact-experience-item::after {
  content: "";
  position: absolute;
  top: 4px;
  left: -3px;
  width: 8px;
  height: 8px;
  border: 2px solid #ffffff;
  border-radius: 999px;
  background: var(--global-cyan);
  box-shadow: 0 0 0 2px rgba(88, 213, 245, 0.18);
}

.resume-document.global-impact-resume .global-impact-entry-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, max-content);
  gap: 12px;
  align-items: start;
}

.resume-document.global-impact-resume .global-impact-entry-head > div {
  min-width: 0;
}

.resume-document.global-impact-resume .global-impact-entry-head strong {
  color: var(--global-ink);
  font-size: 15.8px;
  font-weight: 900;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.resume-document.global-impact-resume .global-impact-entry-head p {
  margin: 3px 0 0;
  color: var(--global-muted);
  font-size: 12.6px;
  font-weight: 700;
  line-height: 1.35;
}

.resume-document.global-impact-resume .global-impact-entry-head em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 120px;
  padding: 4px 8px;
  border: 1px solid rgba(88, 213, 245, 0.28);
  border-radius: 999px;
  color: var(--global-navy-2);
  background: rgba(88, 213, 245, 0.08);
  font-size: 11.2px;
  font-style: normal;
  font-weight: 850;
  line-height: 1.2;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
}

.resume-document.global-impact-resume .global-impact-project-list,
.resume-document.global-impact-resume .global-impact-education-list {
  display: grid;
  gap: 11px;
}

.resume-document.global-impact-resume .global-impact-project-item {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 10px 0 0;
  border-top: 1px solid rgba(226, 232, 240, 0.8);
  break-inside: avoid;
}

.resume-document.global-impact-resume .global-impact-project-item > div {
  min-width: 0;
}

.resume-document.global-impact-resume .global-impact-project-item:first-child {
  padding-top: 0;
  border-top: 0;
}

.resume-document.global-impact-resume .global-impact-project-item > span {
  color: var(--global-violet);
  font-size: 10px;
  font-weight: 900;
}

.resume-document.global-impact-resume .global-impact-project-item strong,
.resume-document.global-impact-resume .global-impact-education-item strong {
  display: block;
  color: var(--global-ink);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.resume-document.global-impact-resume .global-impact-project-item p,
.resume-document.global-impact-resume .global-impact-education-item p {
  margin: 4px 0 0;
  color: var(--global-muted);
  font-size: 12.7px;
  line-height: 1.54;
}

.resume-document.global-impact-resume .global-impact-education-item {
  padding: 12px 13px;
  border: 1px solid rgba(226, 232, 240, 0.78);
  border-radius: 10px;
  background: #ffffff;
  break-inside: avoid;
}

.resume-document.global-impact-resume .global-impact-education-item em {
  display: block;
  margin-top: 4px;
  color: var(--global-navy-2);
  font-size: 11.4px;
  font-style: normal;
  font-weight: 800;
}

.resume-document.global-impact-resume .global-impact-side-section {
  padding-bottom: 14px;
  border-bottom: 1px solid rgba(226, 232, 240, 0.72);
}

.resume-document.global-impact-resume .global-impact-side-section:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.global-impact-resume .global-impact-side-section h3 {
  margin-bottom: 9px;
  font-size: 10.9px;
}

.resume-document.global-impact-resume .global-impact-contact-list,
.resume-document.global-impact-resume .global-impact-language-list,
.resume-document.global-impact-resume .global-impact-cert-list,
.resume-document.global-impact-resume .global-impact-link-list {
  display: grid;
  gap: 10px;
}

.resume-document.global-impact-resume .global-impact-contact-list p,
.resume-document.global-impact-resume .global-impact-link-list p,
.resume-document.global-impact-resume .global-impact-language-list p,
.resume-document.global-impact-resume .global-impact-cert-list p {
  display: grid;
  gap: 2px;
  margin: 0;
}

.resume-document.global-impact-resume .global-impact-contact-list span,
.resume-document.global-impact-resume .global-impact-link-list span,
.resume-document.global-impact-resume .global-impact-language-list span,
.resume-document.global-impact-resume .global-impact-cert-list span {
  color: var(--global-muted);
  font-size: 10.8px;
  font-weight: 750;
  line-height: 1.3;
}

.resume-document.global-impact-resume .global-impact-contact-list strong,
.resume-document.global-impact-resume .global-impact-link-list strong,
.resume-document.global-impact-resume .global-impact-language-list strong,
.resume-document.global-impact-resume .global-impact-cert-list strong {
  min-width: 0;
  color: var(--global-ink);
  font-size: 12px;
  font-weight: 820;
  line-height: 1.44;
  overflow-wrap: anywhere;
}

.resume-document.global-impact-resume .global-impact-chip-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.resume-document.global-impact-resume .global-impact-chip-list span {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: 25px;
  padding: 5px 9px;
  border: 1px solid rgba(124, 92, 255, 0.18);
  border-radius: 999px;
  color: #16213a;
  background: linear-gradient(180deg, #ffffff, #f1f5ff);
  font-size: 11.5px;
  font-weight: 800;
  line-height: 1.2;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.resume-document.global-impact-resume .global-impact-tool-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 6px;
}

.resume-document.global-impact-resume .global-impact-tool-list span {
  min-width: 0;
  padding: 7px 8px;
  border: 1px solid rgba(226, 232, 240, 0.95);
  border-radius: 7px;
  color: var(--global-navy);
  background: #ffffff;
  font-size: 11.3px;
  font-weight: 800;
  line-height: 1.2;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.resume-document.global-impact-resume .global-impact-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  padding: 8px 36px 12px;
  color: var(--global-muted);
  font-size: 10.2px;
  font-weight: 750;
  letter-spacing: 0.08em;
  line-height: 1.3;
  text-align: center;
  text-transform: uppercase;
  overflow-wrap: anywhere;
  word-break: normal;
}

.resume-document.global-impact-resume.global-impact-sample-preview .global-impact-body {
  grid-template-columns: minmax(182px, 0.28fr) minmax(0, 1fr);
  gap: 34px;
}

.resume-document.global-impact-resume.global-impact-sample-preview .global-impact-highlight-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@supports (-webkit-line-clamp: 3) {
  .resume-document.global-impact-resume.global-impact-sample-preview .global-impact-profile p,
  .resume-document.global-impact-resume.global-impact-sample-preview .global-impact-project-item p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }

  .resume-document.global-impact-resume.global-impact-sample-preview .global-impact-highlight-card p {
    -webkit-line-clamp: 3;
  }
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.global-impact-resume.global-impact-sample-preview .global-impact-sidebar {
  gap: 14px;
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.global-impact-resume.global-impact-sample-preview .global-impact-side-section {
  padding-bottom: 12px;
}

.pdf-export-document.global-impact-resume,
.pdf-fit-export-document.global-impact-resume {
  padding: 0 !important;
  box-shadow: none !important;
}

.pdf-export-document.global-impact-resume .global-impact-header,
.pdf-fit-export-document.global-impact-resume .global-impact-header {
  padding: 9mm 11mm 6.5mm !important;
}

.pdf-export-document.global-impact-resume .global-impact-header::after,
.pdf-fit-export-document.global-impact-resume .global-impact-header::after {
  left: 11mm;
  right: 11mm;
}

.pdf-export-document.global-impact-resume .global-impact-body,
.pdf-fit-export-document.global-impact-resume .global-impact-body {
  grid-template-columns: 54mm minmax(0, 1fr) !important;
  gap: 8mm !important;
  padding: 7.5mm 9.5mm 4.5mm !important;
}

.pdf-export-document.global-impact-resume .global-impact-sidebar,
.pdf-fit-export-document.global-impact-resume .global-impact-sidebar {
  padding: 5.5mm 4.6mm 6mm !important;
}

.pdf-export-document.global-impact-resume section,
.pdf-export-document.global-impact-resume article,
.pdf-fit-export-document.global-impact-resume section,
.pdf-fit-export-document.global-impact-resume article {
  break-inside: avoid;
  page-break-inside: avoid;
}

.resume-document.global-executive-signature-resume {
  --signature-navy: #0f172a;
  --signature-ink: #111827;
  --signature-muted: #4b5563;
  --signature-soft: #f8fafc;
  --signature-line: #cbd5e1;
  --signature-violet: #7c3aed;
  --signature-cyan: #67e8f9;
  position: relative;
  display: grid;
  grid-template-rows: minmax(0, 1fr) auto;
  width: var(--resume-page-width);
  min-height: var(--resume-page-height);
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, 0.1);
  border-radius: 5px;
  color: var(--signature-ink);
  background: #ffffff;
  box-shadow: 0 28px 70px rgba(15, 23, 42, 0.14);
  font-family: Inter, Manrope, "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
}

.resume-document.global-executive-signature-resume,
.resume-document.global-executive-signature-resume * {
  box-sizing: border-box;
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.global-executive-signature-resume {
  padding: 0;
}

.resume-document.global-executive-signature-resume .global-executive-signature-layout {
  display: grid;
  grid-template-columns: minmax(190px, 0.28fr) minmax(0, 0.72fr);
  min-height: 0;
  height: 100%;
}

.resume-document.global-executive-signature-resume .signature-main {
  grid-column: 2;
  grid-row: 1;
  display: grid;
  align-content: start;
  gap: 16px;
  min-width: 0;
  padding: 38px 42px 24px;
  background: #ffffff;
}

.resume-document.global-executive-signature-resume .signature-sidebar {
  grid-column: 1;
  grid-row: 1;
  display: grid;
  align-content: start;
  gap: 17px;
  min-width: 0;
  padding: 34px 22px 24px;
  color: #e5e7eb;
  background: var(--signature-navy);
}

.resume-document.global-executive-signature-resume header,
.resume-document.global-executive-signature-resume section {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.resume-document.global-executive-signature-resume section,
.resume-document.global-executive-signature-resume article {
  break-inside: avoid;
  page-break-inside: avoid;
}

.resume-document.global-executive-signature-resume section[hidden] {
  display: none !important;
}

.resume-document.global-executive-signature-resume .signature-header {
  display: block;
  padding: 0 0 7px;
}

.resume-document.global-executive-signature-resume h2 {
  margin: 0;
  color: var(--signature-ink);
  font-size: 33px;
  font-weight: 850;
  line-height: 1.03;
  letter-spacing: 0;
  overflow-wrap: anywhere;
}

.resume-document.global-executive-signature-resume .signature-header strong {
  display: block;
  margin-top: 7px;
  color: #1f2937;
  font-size: 15.4px;
  font-weight: 760;
  line-height: 1.28;
  overflow-wrap: anywhere;
}

.resume-document.global-executive-signature-resume .signature-header-rule {
  display: block;
  width: 118px;
  height: 2px;
  margin: 13px 0 10px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--signature-violet), var(--signature-cyan));
}

.resume-document.global-executive-signature-resume .signature-header p {
  max-width: 520px;
  margin: 0;
  color: var(--signature-muted);
  font-size: 11.6px;
  font-weight: 680;
  line-height: 1.52;
}

.resume-document.global-executive-signature-resume h3 {
  display: grid;
  grid-template-columns: auto minmax(28px, 1fr);
  gap: 10px;
  align-items: center;
  margin: 0 0 9px;
  color: var(--signature-ink);
  font-size: 10.8px;
  font-weight: 850;
  letter-spacing: 0.08em;
  line-height: 1.25;
  text-transform: uppercase;
}

.resume-document.global-executive-signature-resume h3::after {
  content: "";
  height: 1px;
  background: linear-gradient(90deg, rgba(124, 58, 237, 0.42), rgba(103, 232, 249, 0.72), transparent);
}

.resume-document.global-executive-signature-resume p,
.resume-document.global-executive-signature-resume li {
  color: #374151;
  font-size: 10.9px;
  line-height: 1.55;
  overflow-wrap: anywhere;
  word-break: normal;
}

.resume-document.global-executive-signature-resume ul {
  display: grid;
  gap: 4px;
  margin: 7px 0 0;
  padding-left: 16px;
}

.resume-document.global-executive-signature-resume li::marker {
  color: var(--signature-violet);
}

.resume-document.global-executive-signature-resume .signature-summary {
  padding: 13px 15px 13px 16px;
  border: 1px solid rgba(203, 213, 225, 0.86);
  border-left: 3px solid var(--signature-violet);
  border-radius: 8px;
  background: var(--signature-soft);
}

.resume-document.global-executive-signature-resume .signature-summary p {
  margin: 0;
  color: #1f2937;
  font-size: 11.3px;
  line-height: 1.58;
}

.resume-document.global-executive-signature-resume .signature-experience {
  display: grid;
  gap: 0;
}

.resume-document.global-executive-signature-resume .signature-experience-item {
  position: relative;
  display: grid;
  gap: 5px;
  padding: 0 0 15px 18px;
}

.resume-document.global-executive-signature-resume .signature-experience-item:last-child {
  padding-bottom: 0;
}

.resume-document.global-executive-signature-resume .signature-experience-item::before {
  content: "";
  position: absolute;
  inset: 4px auto 11px 0;
  width: 2px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--signature-cyan), rgba(124, 58, 237, 0.42));
}

.resume-document.global-executive-signature-resume .signature-experience-item::after {
  content: "";
  position: absolute;
  top: 3px;
  left: -3px;
  width: 8px;
  height: 8px;
  border: 2px solid #ffffff;
  border-radius: 999px;
  background: var(--signature-cyan);
  box-shadow: 0 0 0 2px rgba(103, 232, 249, 0.22);
}

.resume-document.global-executive-signature-resume .signature-entry-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  gap: 10px;
  align-items: start;
}

.resume-document.global-executive-signature-resume .signature-entry-head > div {
  min-width: 0;
}

.resume-document.global-executive-signature-resume .signature-entry-head strong {
  display: block;
  color: var(--signature-ink);
  font-size: 12.6px;
  font-weight: 850;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.resume-document.global-executive-signature-resume .signature-entry-head p {
  margin: 3px 0 0;
  color: var(--signature-muted);
  font-size: 10.2px;
  font-weight: 720;
  line-height: 1.35;
}

.resume-document.global-executive-signature-resume .signature-entry-head em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  max-width: 118px;
  padding: 4px 8px;
  border: 1px solid rgba(203, 213, 225, 0.9);
  border-radius: 999px;
  color: #312e81;
  background: #f8fafc;
  font-size: 9.4px;
  font-style: normal;
  font-weight: 780;
  line-height: 1.15;
  text-align: center;
  white-space: normal;
}

.resume-document.global-executive-signature-resume .signature-achievements {
  padding: 12px 15px;
  border: 1px solid rgba(203, 213, 225, 0.78);
  border-left: 3px solid var(--signature-cyan);
  border-radius: 8px;
  background: var(--signature-soft);
}

.resume-document.global-executive-signature-resume .signature-achievements ul {
  margin-top: 0;
}

.resume-document.global-executive-signature-resume .signature-education-list,
.resume-document.global-executive-signature-resume .signature-project-list {
  display: grid;
  gap: 9px;
}

.resume-document.global-executive-signature-resume .signature-education-item,
.resume-document.global-executive-signature-resume .signature-project-item {
  padding: 10px 0 0;
  border-top: 1px solid rgba(203, 213, 225, 0.72);
}

.resume-document.global-executive-signature-resume .signature-education-item:first-child,
.resume-document.global-executive-signature-resume .signature-project-item:first-child {
  padding-top: 0;
  border-top: 0;
}

.resume-document.global-executive-signature-resume .signature-education-item strong,
.resume-document.global-executive-signature-resume .signature-project-item strong {
  display: block;
  color: var(--signature-ink);
  font-size: 11.7px;
  font-weight: 820;
  line-height: 1.28;
  overflow-wrap: anywhere;
}

.resume-document.global-executive-signature-resume .signature-education-item p,
.resume-document.global-executive-signature-resume .signature-project-item p {
  margin: 4px 0 0;
  color: var(--signature-muted);
  font-size: 10.4px;
  line-height: 1.48;
}

.resume-document.global-executive-signature-resume .signature-education-item em {
  display: block;
  margin-top: 3px;
  color: #312e81;
  font-size: 9.8px;
  font-style: normal;
  font-weight: 760;
}

.resume-document.global-executive-signature-resume .signature-monogram {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border: 1px solid rgba(103, 232, 249, 0.34);
  border-radius: 8px;
  color: #ffffff;
  background: rgba(255, 255, 255, 0.06);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
  font-size: 24px;
  font-weight: 850;
  line-height: 1;
}

.resume-document.global-executive-signature-resume .signature-side-section {
  display: grid;
  gap: 0;
  padding: 0 0 14px;
  border-bottom: 1px solid rgba(203, 213, 225, 0.18);
}

.resume-document.global-executive-signature-resume .signature-side-section:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.global-executive-signature-resume .signature-sidebar h3 {
  margin-bottom: 8px;
  color: rgba(248, 250, 252, 0.92);
  font-size: 9.4px;
  letter-spacing: 0.1em;
}

.resume-document.global-executive-signature-resume .signature-sidebar h3::after {
  background: linear-gradient(90deg, rgba(103, 232, 249, 0.62), rgba(124, 58, 237, 0.42), transparent);
}

.resume-document.global-executive-signature-resume .signature-contact-list,
.resume-document.global-executive-signature-resume .signature-side-text-list {
  display: grid;
  gap: 8px;
}

.resume-document.global-executive-signature-resume .signature-contact-list p,
.resume-document.global-executive-signature-resume .signature-side-text-list p {
  display: grid;
  gap: 2px;
  margin: 0;
}

.resume-document.global-executive-signature-resume .signature-contact-list span,
.resume-document.global-executive-signature-resume .signature-side-text-list span {
  color: rgba(203, 213, 225, 0.72);
  font-size: 8.9px;
  font-weight: 720;
  line-height: 1.25;
}

.resume-document.global-executive-signature-resume .signature-contact-list strong,
.resume-document.global-executive-signature-resume .signature-side-text-list strong {
  color: #f8fafc;
  font-size: 9.6px;
  font-weight: 760;
  line-height: 1.38;
  overflow-wrap: anywhere;
}

.resume-document.global-executive-signature-resume .signature-skill-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.resume-document.global-executive-signature-resume .signature-skill-tags span {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  min-height: 21px;
  padding: 4px 7px;
  border: 1px solid rgba(203, 213, 225, 0.2);
  border-radius: 999px;
  color: #f8fafc;
  background: rgba(255, 255, 255, 0.07);
  font-size: 8.9px;
  font-weight: 740;
  line-height: 1.2;
  white-space: normal;
  overflow-wrap: anywhere;
}

.resume-document.global-executive-signature-resume .signature-tool-tags span {
  border-color: rgba(103, 232, 249, 0.3);
  color: #cffafe;
}

.resume-document.global-executive-signature-resume .signature-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 8px 30px 10px;
  border-top: 1px solid rgba(203, 213, 225, 0.74);
  color: #64748b;
  background: #ffffff;
  font-size: 9.3px;
  font-weight: 720;
  letter-spacing: 0.08em;
  line-height: 1.25;
  text-align: center;
  text-transform: uppercase;
  overflow-wrap: anywhere;
}

.resume-document.global-executive-signature-resume.global-executive-signature-sample-preview .signature-main {
  gap: 14px;
  padding: 34px 40px 20px;
}

.resume-document.global-executive-signature-resume.global-executive-signature-sample-preview .signature-sidebar {
  gap: 15px;
  padding: 31px 20px 22px;
}

@supports (-webkit-line-clamp: 3) {
  .resume-document.global-executive-signature-resume.global-executive-signature-sample-preview .signature-summary p,
  .resume-document.global-executive-signature-resume.global-executive-signature-sample-preview .signature-project-item p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
  }
}

.pdf-export-document.global-executive-signature-resume,
.pdf-fit-export-document.global-executive-signature-resume {
  width: var(--resume-page-width) !important;
  min-height: var(--resume-page-height) !important;
  padding: 0 !important;
  box-shadow: none !important;
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
}

.pdf-export-document.global-executive-signature-resume .global-executive-signature-layout,
.pdf-fit-export-document.global-executive-signature-resume .global-executive-signature-layout {
  grid-template-columns: 58mm minmax(0, 1fr) !important;
}

.pdf-export-document.global-executive-signature-resume .signature-main,
.pdf-fit-export-document.global-executive-signature-resume .signature-main {
  padding: 8mm 9mm 5.5mm !important;
}

.pdf-export-document.global-executive-signature-resume .signature-sidebar,
.pdf-fit-export-document.global-executive-signature-resume .signature-sidebar {
  padding: 7mm 5mm 5.5mm !important;
  background: #0f172a !important;
}

.pdf-export-document.global-executive-signature-resume h2,
.pdf-fit-export-document.global-executive-signature-resume h2 {
  font-size: 25pt !important;
}

.pdf-export-document.global-executive-signature-resume h3,
.pdf-fit-export-document.global-executive-signature-resume h3 {
  font-size: 8.4pt !important;
}

.pdf-export-document.global-executive-signature-resume p,
.pdf-export-document.global-executive-signature-resume li,
.pdf-fit-export-document.global-executive-signature-resume p,
.pdf-fit-export-document.global-executive-signature-resume li {
  font-size: 8.2pt !important;
}

.pdf-export-document.global-executive-signature-resume section,
.pdf-export-document.global-executive-signature-resume article,
.pdf-fit-export-document.global-executive-signature-resume section,
.pdf-fit-export-document.global-executive-signature-resume article {
  break-inside: avoid;
  page-break-inside: avoid;
}

.resume-document.curated-tone-elegant {
  --curated-accent: #8a6f3f;
  --curated-accent-2: #2f6675;
  --curated-soft: #fbfaf7;
}

.resume-document.elegant-premium-resume {
  --elegant-ink: #151923;
  --elegant-muted: #6e7480;
  --elegant-line: #ded7c9;
  --elegant-soft: #fbfaf6;
  --elegant-deep: #16343d;
  --elegant-gold: #b4975a;
  --elegant-mist: #edf3f1;
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid #dedbd2;
  border-radius: 4px;
  color: var(--elegant-ink);
  background:
    linear-gradient(90deg, rgba(180, 151, 90, 0.06), transparent 36%),
    linear-gradient(180deg, #fffdf8, #ffffff 46%, #fbfaf6);
  box-shadow: 0 24px 60px rgba(22, 52, 61, 0.13);
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.elegant-premium-resume {
  padding: 0;
}

.resume-document.elegant-premium-resume::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 9px;
  background: linear-gradient(90deg, var(--elegant-deep), var(--elegant-gold) 44%, rgba(22, 52, 61, 0.28));
}

.resume-document.elegant-premium-resume .elegant-premium-header {
  position: relative;
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin: 0;
  padding: 42px 56px 25px;
  border: 0;
  border-radius: 0;
  background: transparent;
  text-align: left;
}

.resume-document.elegant-premium-resume .elegant-premium-header::after {
  content: "";
  position: absolute;
  left: 56px;
  right: 56px;
  bottom: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(180, 151, 90, 0.72), rgba(22, 52, 61, 0.22), transparent);
}

.resume-document.elegant-premium-resume .elegant-monogram {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border: 1px solid rgba(180, 151, 90, 0.58);
  border-radius: 999px;
  color: var(--elegant-deep);
  background: linear-gradient(135deg, #ffffff, #f4efe2);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0.08em;
  box-shadow: 0 14px 26px rgba(22, 52, 61, 0.08);
}

.resume-document.elegant-premium-resume .elegant-identity {
  min-width: 0;
}

.resume-document.elegant-premium-resume h2 {
  margin: 0;
  color: var(--elegant-ink);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 38px;
  font-weight: 700;
  line-height: 1.02;
  letter-spacing: 0;
}

.resume-document.elegant-premium-resume .elegant-identity strong {
  display: block;
  margin-top: 7px;
  color: var(--elegant-deep);
  font-size: 12.9px;
  font-weight: 850;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.resume-document.elegant-premium-resume .elegant-contact {
  grid-column: 1 / -1;
  margin: 0;
  padding: 8px 0 0 70px;
  color: var(--elegant-muted);
  font-size: 11.9px;
  font-weight: 650;
  line-height: 1.45;
}

.resume-document.elegant-premium-resume .elegant-body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, 0.35fr);
  gap: 22px 30px;
  align-content: start;
  padding: 28px 54px 42px;
}

.resume-document.elegant-premium-resume .elegant-main,
.resume-document.elegant-premium-resume .elegant-sidebar {
  display: grid;
  align-content: start;
  gap: 18px;
  min-width: 0;
}

.resume-document.elegant-premium-resume section {
  display: block;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  vertical-align: initial;
}

.resume-document.elegant-premium-resume .elegant-profile {
  padding: 0 0 16px;
  border-bottom: 1px solid rgba(180, 151, 90, 0.28);
}

.resume-document.elegant-premium-resume .elegant-experience {
  padding-top: 1px;
}

.resume-document.elegant-premium-resume .elegant-projects {
  padding: 15px 17px;
  border: 1px solid rgba(180, 151, 90, 0.18);
  border-radius: 8px;
  background: rgba(251, 250, 246, 0.78);
}

.resume-document.elegant-premium-resume .elegant-panel {
  padding: 16px 16px 15px;
  border: 1px solid rgba(180, 151, 90, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
}

.resume-document.elegant-premium-resume .elegant-skills {
  background: linear-gradient(180deg, #f8f4eb, #ffffff);
}

.resume-document.elegant-premium-resume h3 {
  display: grid;
  grid-template-columns: auto minmax(24px, 1fr);
  gap: 10px;
  align-items: center;
  margin: 0 0 10px;
  color: var(--elegant-deep);
  font-size: 11.4px;
  font-weight: 900;
  letter-spacing: 0.14em;
  line-height: 1.2;
  text-transform: uppercase;
}

.resume-document.elegant-premium-resume h3::after {
  content: "";
  height: 1px;
  background: linear-gradient(90deg, rgba(180, 151, 90, 0.72), transparent);
}

.resume-document.elegant-premium-resume p,
.resume-document.elegant-premium-resume li {
  color: #353b46;
  font-size: 13.2px;
  line-height: 1.58;
}

.resume-document.elegant-premium-resume ul {
  display: grid;
  gap: 5px;
  margin: 7px 0 0;
  padding-left: 17px;
}

.resume-document.elegant-premium-resume .curated-experience-item {
  position: relative;
  display: grid;
  gap: 5px;
  padding: 0 0 15px 18px;
  border-bottom: 1px solid rgba(180, 151, 90, 0.22);
}

.resume-document.elegant-premium-resume .curated-experience-item + .curated-experience-item {
  margin-top: 1px;
}

.resume-document.elegant-premium-resume .curated-experience-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.elegant-premium-resume .curated-experience-item::before {
  content: "";
  position: absolute;
  inset: 4px auto 15px 0;
  width: 3px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--elegant-gold), rgba(22, 52, 61, 0.28));
}

.resume-document.elegant-premium-resume .curated-entry-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: baseline;
}

.resume-document.elegant-premium-resume .curated-entry-head strong {
  color: var(--elegant-ink);
  font-size: 15.3px;
  font-weight: 900;
}

.resume-document.elegant-premium-resume .curated-entry-head span {
  color: var(--elegant-deep);
  font-size: 11.3px;
  font-weight: 850;
  white-space: nowrap;
}

.resume-document.elegant-premium-resume .curated-entry-meta,
.resume-document.elegant-premium-resume .curated-compact-item span,
.resume-document.elegant-premium-resume .curated-compact-item em {
  color: var(--elegant-muted);
  font-size: 11.85px;
  font-style: normal;
  font-weight: 750;
}

.resume-document.elegant-premium-resume .curated-compact-item,
.resume-document.elegant-premium-resume .curated-text-list,
.resume-document.elegant-premium-resume .curated-link-list {
  display: grid;
  gap: 5px;
}

.resume-document.elegant-premium-resume .curated-compact-item strong,
.resume-document.elegant-premium-resume .curated-link-list p {
  color: var(--elegant-ink);
  font-weight: 850;
}

.resume-document.elegant-premium-resume .elegant-skill-list {
  display: grid;
  gap: 0;
}

.resume-document.elegant-premium-resume .elegant-skill-list span {
  display: block;
  padding: 7px 0;
  border: 0;
  border-bottom: 1px solid rgba(180, 151, 90, 0.18);
  border-radius: 0;
  color: var(--elegant-ink);
  background: transparent;
  font-size: 12.1px;
  font-weight: 800;
}

.resume-document.elegant-premium-resume .elegant-skill-list span:last-child {
  border-bottom: 0;
}

.pdf-export-document.elegant-premium-resume {
  padding: 0 !important;
  box-shadow: none;
}

.resume-document.curated-tone-finance,
.resume-document.curated-tone-corporate,
.resume-document.curated-tone-operations {
  --curated-accent: #244f80;
  --curated-accent-2: #5b7c99;
  --curated-dark: #0d1b2a;
}

.resume-document.curated-tone-healthcare,
.resume-document.curated-tone-service {
  --curated-accent: #177c73;
  --curated-accent-2: #64b8a5;
  --curated-soft: #f2fbf8;
}

.resume-document.resume-template-healthcare.curated-resume {
  --care-ink: #07132d;
  --care-muted: #4f6377;
  --care-line: #d7e6e7;
  --care-accent: #178574;
  --care-accent-2: #5bc2a6;
  --care-soft: #f2fbf8;
  --care-soft-2: #eaf7f4;
  --care-shadow: rgba(8, 42, 64, 0.1);
  grid-template-columns: minmax(0, 1.45fr) minmax(245px, 0.82fr);
  gap: 18px 26px;
  padding: 44px 46px 42px;
  border: 1px solid #dce8ea;
  border-radius: 8px;
  color: var(--care-ink);
  background:
    radial-gradient(circle at 15% 18%, rgba(91, 194, 166, 0.14), transparent 28%),
    radial-gradient(circle at 88% 10%, rgba(23, 133, 116, 0.1), transparent 24%),
    linear-gradient(180deg, #ffffff 0%, #fbfefd 58%, #ffffff 100%);
  box-shadow: 0 28px 74px rgba(16, 44, 72, 0.14);
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.resume-template-healthcare.curated-resume {
  padding: 44px 46px 42px;
}

.resume-document.resume-template-healthcare.curated-resume .curated-header {
  grid-column: 1 / -1;
  grid-template-columns: 76px minmax(0, 1fr);
  gap: 10px 22px;
  align-items: center;
  margin: 0 0 8px;
  padding: 0 0 24px;
  border-bottom: 1px solid var(--care-line);
}

.resume-document.resume-template-healthcare.curated-resume .curated-header-mark {
  position: relative;
  grid-row: 1 / span 2;
  width: 64px;
  height: 64px;
  border-radius: 18px;
  background:
    radial-gradient(circle at 30% 24%, rgba(255, 255, 255, 0.42), transparent 28%),
    linear-gradient(135deg, var(--care-accent), var(--care-accent-2));
  box-shadow: 0 18px 38px rgba(23, 133, 116, 0.2);
}

.resume-document.resume-template-healthcare.curated-resume .curated-header-mark::before,
.resume-document.resume-template-healthcare.curated-resume .curated-header-mark::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  transform: translate(-50%, -50%);
}

.resume-document.resume-template-healthcare.curated-resume .curated-header-mark::before {
  width: 28px;
  height: 8px;
}

.resume-document.resume-template-healthcare.curated-resume .curated-header-mark::after {
  width: 8px;
  height: 28px;
}

.resume-document.resume-template-healthcare.curated-resume .curated-header h2 {
  color: var(--care-ink);
  font-size: 39px;
  letter-spacing: 0;
}

.resume-document.resume-template-healthcare.curated-resume .curated-header strong {
  margin-top: 7px;
  color: var(--care-accent);
  font-size: 18px;
  font-weight: 900;
}

.resume-document.resume-template-healthcare.curated-resume .curated-contact-line {
  grid-column: 2;
  display: block;
  margin-top: 4px;
  color: var(--care-muted);
  font-size: 11.4px;
  line-height: 1.5;
}

.resume-document.resume-template-healthcare.curated-resume section {
  position: relative;
  padding: 20px 20px 22px !important;
  border: 1px solid var(--care-line) !important;
  border-radius: 11px;
  background:
    linear-gradient(135deg, rgba(242, 251, 248, 0.74), rgba(255, 255, 255, 0.98) 58%),
    #ffffff !important;
  box-shadow: 0 16px 34px var(--care-shadow) !important;
}

.resume-document.resume-template-healthcare.curated-resume .curated-summary {
  min-height: 210px;
  border-left: 4px solid var(--care-accent) !important;
  background:
    linear-gradient(90deg, rgba(23, 133, 116, 0.08), transparent 62%),
    linear-gradient(135deg, #f2fbf8, #ffffff) !important;
}

.resume-document.resume-template-healthcare.curated-resume .curated-main-section {
  grid-column: 1;
}

.resume-document.resume-template-healthcare.curated-resume .curated-side-section {
  grid-column: 2;
  align-self: start;
}

.resume-document.resume-template-healthcare.curated-resume .curated-summary {
  grid-row: 2;
}

.resume-document.resume-template-healthcare.curated-resume .curated-projects {
  grid-row: 3;
  min-height: 174px;
}

.resume-document.resume-template-healthcare.curated-resume .curated-education {
  grid-column: 1;
  grid-row: 4;
}

.resume-document.resume-template-healthcare.curated-resume .curated-languages {
  grid-column: 1;
  grid-row: 5;
  min-height: 128px;
}

.resume-document.resume-template-healthcare.curated-resume .curated-experience {
  grid-column: 2;
  grid-row: 2 / span 2;
}

.resume-document.resume-template-healthcare.curated-resume .curated-skills {
  grid-row: 4;
}

.resume-document.resume-template-healthcare.curated-resume .curated-certifications {
  grid-row: 5;
}

.resume-document.resume-template-healthcare.curated-resume .curated-links {
  grid-row: 6;
}

.resume-document.resume-template-healthcare.curated-resume h3 {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 16px;
  color: var(--care-ink);
  font-size: 13px;
  letter-spacing: 0.08em;
}

.resume-document.resume-template-healthcare.curated-resume h3::before {
  content: "";
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, rgba(255, 255, 255, 0.92) 0 22%, transparent 23%),
    linear-gradient(135deg, var(--care-accent), var(--care-accent-2));
  box-shadow: inset 0 0 0 7px rgba(255, 255, 255, 0.16), 0 10px 22px rgba(23, 133, 116, 0.18);
}

.resume-document.resume-template-healthcare.curated-resume .curated-experience h3::before,
.resume-document.resume-template-healthcare.curated-resume .curated-skills h3::before,
.resume-document.resume-template-healthcare.curated-resume .curated-certifications h3::before,
.resume-document.resume-template-healthcare.curated-resume .curated-links h3::before {
  background:
    radial-gradient(circle at center, var(--care-accent) 0 16%, transparent 17%),
    linear-gradient(135deg, #e7f6f2, #d8eee9);
  box-shadow: inset 0 0 0 1px rgba(23, 133, 116, 0.08), 0 10px 20px rgba(23, 133, 116, 0.08);
}

.resume-document.resume-template-healthcare.curated-resume p,
.resume-document.resume-template-healthcare.curated-resume li {
  color: #2f4054;
  font-size: 12.8px;
  line-height: 1.62;
}

.resume-document.resume-template-healthcare.curated-resume .curated-summary p {
  font-size: 13.2px;
  line-height: 1.72;
}

.resume-document.resume-template-healthcare.curated-resume .curated-experience-item {
  gap: 7px;
  padding: 0 0 16px 16px;
  border-bottom: 1px solid rgba(23, 133, 116, 0.13);
}

.resume-document.resume-template-healthcare.curated-resume .curated-experience-item::before {
  inset: 4px auto 17px 0;
  width: 3px;
  background: linear-gradient(180deg, var(--care-accent), rgba(91, 194, 166, 0.38));
}

.resume-document.resume-template-healthcare.curated-resume .curated-entry-head {
  gap: 10px;
}

.resume-document.resume-template-healthcare.curated-resume .curated-entry-head strong {
  color: var(--care-ink);
  font-size: 14.2px;
}

.resume-document.resume-template-healthcare.curated-resume .curated-entry-head span {
  color: var(--care-accent);
  font-size: 11.5px;
  font-weight: 900;
}

.resume-document.resume-template-healthcare.curated-resume .curated-entry-meta,
.resume-document.resume-template-healthcare.curated-resume .curated-compact-item span,
.resume-document.resume-template-healthcare.curated-resume .curated-compact-item em {
  color: var(--care-muted);
}

.resume-document.resume-template-healthcare.curated-resume ul {
  gap: 8px;
  padding-left: 16px;
}

.resume-document.resume-template-healthcare.curated-resume li::marker {
  color: var(--care-accent);
}

.resume-document.resume-template-healthcare.curated-resume .curated-skill-list {
  gap: 8px;
}

.resume-document.resume-template-healthcare.curated-resume .curated-skill-list span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 7px 10px;
  border: 1px solid rgba(23, 133, 116, 0.18);
  border-radius: 999px;
  color: #15243a;
  background: rgba(255, 255, 255, 0.92);
  font-size: 11.4px;
  font-weight: 850;
  box-shadow: 0 8px 18px rgba(8, 42, 64, 0.045);
}

.resume-document.resume-template-healthcare.curated-resume .curated-skill-list span::before {
  content: "";
  flex: 0 0 auto;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--care-accent);
}

.resume-document.resume-template-healthcare.curated-resume .curated-compact-item {
  gap: 3px;
}

.resume-document.resume-template-healthcare.curated-resume .curated-compact-item strong,
.resume-document.resume-template-healthcare.curated-resume .curated-link-list p {
  color: var(--care-ink);
}

.resume-document.resume-template-healthcare.curated-resume .curated-link-list p {
  padding-left: 16px;
  border-left: 3px solid rgba(23, 133, 116, 0.28);
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume {
  gap: 14px 22px;
  padding: 40px 44px 38px;
}

.template-sample-thumb .resume-document-shell[data-preview-scaled="true"] .resume-document.resume-template-healthcare.curated-resume {
  padding: 40px 44px 38px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-header {
  margin-bottom: 4px;
  padding-bottom: 18px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-header-mark {
  width: 58px;
  height: 58px;
  border-radius: 16px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-header h2 {
  font-size: 34px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-header strong {
  font-size: 15px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-contact-line {
  font-size: 9.8px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume section {
  padding: 15px 16px 16px !important;
  border-radius: 9px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-summary {
  min-height: 168px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-projects {
  min-height: 128px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-languages {
  min-height: 88px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume h3 {
  gap: 9px;
  margin-bottom: 11px;
  font-size: 11px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume h3::before {
  width: 26px;
  height: 26px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume p,
.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume li {
  font-size: 10.9px;
  line-height: 1.46;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-summary p {
  font-size: 11px;
  line-height: 1.52;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-experience-item {
  gap: 5px;
  padding-bottom: 11px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-entry-head strong {
  font-size: 12.1px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-entry-head span,
.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-entry-meta,
.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-compact-item span,
.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-compact-item em {
  font-size: 9.8px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume ul {
  gap: 5px;
  margin-top: 4px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-skill-list {
  gap: 5px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-skill-list span {
  gap: 4px;
  padding: 5px 7px;
  font-size: 9.6px;
}

.template-sample-thumb .resume-document.resume-template-healthcare.curated-resume .curated-skill-list span::before {
  width: 5px;
  height: 5px;
}

.pdf-export-document.resume-template-healthcare.curated-resume {
  box-shadow: none;
}

.resume-document.curated-tone-senior,
.resume-document.curated-tone-manager,
.resume-document.curated-tone-consultant {
  --curated-accent: #c6a15b;
  --curated-accent-2: #7aa5c8;
  --curated-dark: #08162f;
}

.resume-document.executive-signature-resume {
  --exec-navy: #07164a;
  --exec-navy-2: #020b2d;
  --exec-violet: #6f5cf6;
  --exec-violet-2: #8a72ff;
  --exec-blue: #2e65ff;
  --exec-ink: #101833;
  --exec-muted: #626b82;
  --exec-line: #d9ddea;
  position: relative;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(16, 24, 51, 0.16);
  border-radius: 4px;
  color: var(--exec-ink);
  background:
    radial-gradient(circle at 88% 10%, rgba(111, 92, 246, 0.12), transparent 18%),
    linear-gradient(180deg, #ffffff, #fbfcff 58%, #ffffff);
  box-shadow: 0 28px 70px rgba(7, 18, 57, 0.2);
}

.resume-document.executive-signature-resume .exec-signature-header,
.resume-document.executive-signature-resume .exec-signature-body,
.resume-document.executive-signature-resume .exec-signature-footer {
  grid-column: 1 / -1;
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.executive-signature-resume {
  padding: 0;
}

.resume-document.executive-signature-resume .exec-signature-header {
  position: relative;
  display: grid;
  grid-template-columns: 126px minmax(0, 1fr) 132px;
  gap: 34px;
  align-items: start;
  min-height: 214px;
  margin: 0;
  padding: 0 48px 26px 70px;
  border: 0;
  background: transparent;
}

.resume-document.executive-signature-resume .exec-ribbon {
  position: relative;
  display: grid;
  place-items: start center;
  width: 104px;
  height: 198px;
  padding-top: 60px;
  border-radius: 0 0 46px 46px;
  overflow: hidden;
  color: #ffffff;
  background:
    radial-gradient(circle at 64% 22%, rgba(141, 114, 255, 0.35), transparent 26%),
    linear-gradient(180deg, #06164d, #020b2d);
  box-shadow: 10px 0 0 rgba(111, 92, 246, 0.74), 0 18px 38px rgba(7, 18, 57, 0.22);
}

.resume-document.executive-signature-resume .exec-ribbon::before {
  content: "";
  position: absolute;
  inset: auto -22px 8px 20px;
  height: 74px;
  border-radius: 50% 50% 0 0;
  border-top: 1px solid rgba(143, 130, 255, 0.78);
  box-shadow:
    0 -8px 0 -1px rgba(143, 130, 255, 0.5),
    0 -16px 0 -1px rgba(143, 130, 255, 0.36),
    0 -24px 0 -1px rgba(143, 130, 255, 0.24);
}

.resume-document.executive-signature-resume .exec-ribbon span {
  position: relative;
  z-index: 1;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 58px;
  font-weight: 500;
  line-height: 1;
}

.resume-document.executive-signature-resume .exec-title-block {
  align-self: center;
  min-width: 0;
  padding-top: 54px;
}

.resume-document.executive-signature-resume h2 {
  max-width: 410px;
  margin: 0;
  color: var(--exec-navy-2);
  font-family: Georgia, "Times New Roman", serif;
  font-size: 48px;
  font-weight: 700;
  line-height: 0.92;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.resume-document.executive-signature-resume .exec-title-block strong {
  display: block;
  margin-top: 14px;
  color: var(--exec-violet);
  font-size: 13.2px;
  font-weight: 900;
  letter-spacing: 0.18em;
  text-transform: uppercase;
}

.resume-document.executive-signature-resume .exec-title-block p {
  max-width: 440px;
  margin: 10px 0 0;
  color: #3a4154;
  font-size: 12.7px;
  line-height: 1.48;
  font-weight: 650;
}

.resume-document.executive-signature-resume .exec-dot-field {
  width: 112px;
  height: 112px;
  margin-top: 38px;
  opacity: 0.64;
  background-image: radial-gradient(circle, rgba(111, 92, 246, 0.78) 1.45px, transparent 1.45px);
  background-size: 14px 14px;
}

.resume-document.executive-signature-resume .exec-signature-body {
  display: grid;
  grid-template-columns: minmax(238px, 0.38fr) minmax(0, 1fr);
  gap: 28px;
  align-content: start;
  padding: 6px 48px 32px;
}

.resume-document.executive-signature-resume .exec-sidebar {
  display: grid;
  align-content: start;
  gap: 22px;
  padding: 0 22px 0 0;
  border-right: 1px solid rgba(16, 24, 51, 0.14);
}

.resume-document.executive-signature-resume .exec-main {
  display: grid;
  align-content: start;
  gap: 22px;
  min-width: 0;
}

.resume-document.executive-signature-resume section {
  display: block;
  width: auto;
  grid-column: auto !important;
  grid-row: auto !important;
  order: initial;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.resume-document.executive-signature-resume .exec-section-title {
  display: grid;
  grid-template-columns: 32px auto minmax(24px, 1fr);
  gap: 11px;
  align-items: center;
  margin: 0 0 13px;
}

.resume-document.executive-signature-resume .exec-section-title > span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 9px;
  color: #ffffff;
  background: linear-gradient(135deg, var(--exec-violet), var(--exec-blue));
  box-shadow: 0 9px 20px rgba(111, 92, 246, 0.22);
}

.resume-document.executive-signature-resume .exec-section-title .icon {
  width: 17px;
  height: 17px;
}

.resume-document.executive-signature-resume .exec-section-title h3 {
  margin: 0;
  color: var(--exec-navy-2);
  font-size: 12.2px;
  font-weight: 950;
  letter-spacing: 0.12em;
  line-height: 1.2;
  text-transform: uppercase;
}

.resume-document.executive-signature-resume .exec-section-title::after {
  content: "";
  height: 1px;
  background: linear-gradient(90deg, var(--exec-violet), rgba(111, 92, 246, 0.08));
  box-shadow: 5px 0 0 0 var(--exec-violet);
}

.resume-document.executive-signature-resume p,
.resume-document.executive-signature-resume li {
  color: #26304a;
  font-size: 12.35px;
  line-height: 1.48;
}

.resume-document.executive-signature-resume ul {
  display: grid;
  gap: 6px;
  margin: 7px 0 0;
  padding-left: 17px;
}

.resume-document.executive-signature-resume li::marker {
  color: var(--exec-violet);
}

.resume-document.executive-signature-resume .exec-contact p {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  margin: 0 0 10px;
  color: #26304a;
  font-size: 11.8px;
  font-weight: 650;
  line-height: 1.35;
  overflow-wrap: normal;
  word-break: normal;
}

.resume-document.executive-signature-resume .exec-contact-icon {
  display: grid;
  place-items: center;
  min-width: 18px;
}

.resume-document.executive-signature-resume .exec-contact-value {
  min-width: 0;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: none;
}

.resume-document.executive-signature-resume .exec-contact .icon {
  width: 15px;
  height: 15px;
  color: var(--exec-violet);
}

.resume-document.executive-signature-resume .exec-skill-meter-list {
  display: grid;
  gap: 9px;
}

.resume-document.executive-signature-resume .exec-skill-meter-list p {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 88px;
  gap: 10px;
  align-items: center;
  margin: 0;
  font-size: 11.2px;
}

.resume-document.executive-signature-resume .exec-skill-meter-list em {
  display: block;
  height: 5px;
  overflow: hidden;
  border-radius: 999px;
  background: #dfe2ea;
}

.resume-document.executive-signature-resume .exec-skill-meter-list i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--exec-violet), var(--exec-blue));
}

.resume-document.executive-signature-resume .exec-language-list {
  display: grid;
  gap: 9px;
}

.resume-document.executive-signature-resume .exec-language-list p {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  margin: 0;
  padding-bottom: 7px;
  border-bottom: 1px dotted rgba(16, 24, 51, 0.2);
  font-size: 11.6px;
}

.resume-document.executive-signature-resume .exec-language-list strong {
  color: var(--exec-navy);
  font-size: 11px;
  font-weight: 750;
}

.resume-document.executive-signature-resume .exec-certifications ul {
  gap: 8px;
}

.resume-document.executive-signature-resume .exec-main-section > p {
  margin: 0;
}

.resume-document.executive-signature-resume .exec-experience {
  display: grid;
}

.resume-document.executive-signature-resume .exec-experience-item {
  display: grid;
  gap: 7px;
  padding: 0 0 18px;
  border-bottom: 1px dashed rgba(16, 24, 51, 0.2);
}

.resume-document.executive-signature-resume .exec-experience-item + .exec-experience-item {
  padding-top: 3px;
}

.resume-document.executive-signature-resume .exec-experience-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.executive-signature-resume .exec-entry-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: start;
}

.resume-document.executive-signature-resume .exec-entry-top strong {
  display: block;
  color: var(--exec-ink);
  font-size: 15.4px;
  font-weight: 950;
  line-height: 1.18;
}

.resume-document.executive-signature-resume .exec-entry-top p {
  margin: 4px 0 0;
  color: var(--exec-violet);
  font-size: 12.2px;
  font-weight: 850;
}

.resume-document.executive-signature-resume .exec-entry-top em,
.resume-document.executive-signature-resume .curated-compact-item em,
.resume-document.executive-signature-resume .exec-project-item em {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 22px;
  padding: 4px 10px;
  border-radius: 999px;
  color: #26304a;
  background: #f0f1f7;
  font-size: 10.8px;
  font-style: normal;
  font-weight: 850;
  white-space: nowrap;
}

.resume-document.executive-signature-resume .curated-compact-item {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 14px;
  align-items: start;
  margin: 0;
}

.resume-document.executive-signature-resume .curated-compact-item strong {
  color: var(--exec-ink);
  font-size: 14px;
  font-weight: 950;
}

.resume-document.executive-signature-resume .curated-compact-item span {
  grid-column: 1;
  color: var(--exec-violet);
  font-size: 12px;
  font-weight: 800;
}

.resume-document.executive-signature-resume .curated-compact-item em {
  grid-column: 2;
  grid-row: 1 / span 2;
}

.resume-document.executive-signature-resume .exec-project-list {
  display: grid;
  gap: 11px;
}

.resume-document.executive-signature-resume .exec-project-item {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 4px 12px;
  padding-bottom: 10px;
  border-bottom: 1px dotted rgba(16, 24, 51, 0.18);
}

.resume-document.executive-signature-resume .exec-project-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.executive-signature-resume .exec-project-item strong {
  color: var(--exec-ink);
  font-size: 13px;
  font-weight: 950;
}

.resume-document.executive-signature-resume .exec-project-item p {
  grid-column: 1;
  margin: 0;
  font-size: 11.7px;
}

.resume-document.executive-signature-resume .exec-project-item em {
  grid-column: 2;
  grid-row: 1 / span 2;
}

.resume-document.executive-signature-resume .exec-signature-footer {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-height: 37px;
  margin: 0;
  padding: 9px 120px 9px 48px;
  color: #ffffff;
  background: linear-gradient(90deg, var(--exec-navy-2), var(--exec-navy));
  font-size: 11.2px;
  font-weight: 900;
  letter-spacing: 0.14em;
}

.resume-document.executive-signature-resume .exec-signature-footer::after {
  content: "";
  position: absolute;
  z-index: 0;
  right: -12px;
  bottom: 0;
  width: 170px;
  height: 37px;
  border-radius: 38px 0 0 0;
  background: linear-gradient(135deg, var(--exec-violet), var(--exec-violet-2));
}

.resume-document.executive-signature-resume .exec-signature-footer span {
  position: relative;
  z-index: 1;
  width: 4px;
  height: 4px;
  border-radius: 999px;
  background: var(--exec-violet-2);
}

.resume-document.executive-signature-resume .exec-signature-footer strong {
  position: relative;
  z-index: 1;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
}

.resume-document.executive-signature-resume.executive-signature-sample-preview .exec-signature-header {
  min-height: 192px;
  padding-bottom: 18px;
}

.resume-document.executive-signature-resume.executive-signature-sample-preview .exec-ribbon {
  height: 182px;
  padding-top: 54px;
}

.resume-document.executive-signature-resume.executive-signature-sample-preview .exec-title-block {
  padding-top: 48px;
}

.resume-document.executive-signature-resume.executive-signature-sample-preview .exec-dot-field {
  margin-top: 32px;
}

.resume-document.executive-signature-resume.executive-signature-sample-preview .exec-signature-body {
  grid-template-columns: minmax(218px, 0.35fr) minmax(0, 1fr);
  gap: 24px;
  padding-bottom: 24px;
}

.resume-document.executive-signature-resume.executive-signature-sample-preview .exec-sidebar,
.resume-document.executive-signature-resume.executive-signature-sample-preview .exec-main {
  gap: 17px;
}

.resume-document.executive-signature-resume.executive-signature-sample-preview .exec-section-title {
  margin-bottom: 10px;
}

.resume-document.executive-signature-resume.executive-signature-sample-preview ul {
  gap: 5px;
  margin-top: 6px;
}

.resume-document.executive-signature-resume.executive-signature-sample-preview .exec-experience-item {
  gap: 6px;
  padding-bottom: 13px;
}

.resume-document.executive-signature-resume.executive-signature-sample-preview .exec-project-list {
  gap: 8px;
}

.pdf-export-document.executive-signature-resume {
  padding: 0 !important;
  box-shadow: none;
}

.resume-document.curated-tone-classic,
.resume-document.curated-tone-legal,
.resume-document.curated-tone-academic,
.resume-document.curated-tone-clean,
.resume-document.curated-tone-modern-ats,
.resume-document.curated-tone-graduate {
  --curated-accent: #2d4f73;
  --curated-accent-2: #7a8698;
  --curated-soft: #f8fafc;
}

.resume-document.resume-template-legal.curated-resume {
  --legal-ink: #111827;
  --legal-muted: #536174;
  --legal-line: #dce3ec;
  --legal-rule: #cfd8e3;
  --legal-accent: #2d4f73;
  --legal-soft: #f8fafc;
  display: block;
  padding: 52px 58px 48px;
  border: 1px solid #d9e1eb;
  border-top: 0;
  border-radius: 4px;
  color: var(--legal-ink);
  background:
    linear-gradient(180deg, #ffffff 0%, #fbfcfe 100%);
  box-shadow: 0 30px 80px rgba(15, 23, 42, 0.14);
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.resume-template-legal.curated-resume {
  padding: 52px 58px 48px;
}

.resume-document.resume-template-legal.curated-resume .curated-header {
  display: block;
  margin: 0 0 20px;
  padding: 0 0 16px;
  border: 0;
  border-bottom: 1px solid var(--legal-line);
  text-align: center;
  background: transparent;
}

.resume-document.resume-template-legal.curated-resume .curated-header-mark {
  display: none;
}

.resume-document.resume-template-legal.curated-resume .curated-header h2 {
  margin: 0;
  color: var(--legal-ink);
  font-size: 34px;
  font-weight: 950;
  line-height: 1;
  letter-spacing: 0;
}

.resume-document.resume-template-legal.curated-resume .curated-header strong {
  display: block;
  margin-top: 5px;
  color: var(--legal-accent);
  font-size: 13px;
  font-weight: 900;
  line-height: 1.2;
}

.resume-document.resume-template-legal.curated-resume .curated-contact-line {
  display: block;
  margin-top: 7px;
  color: var(--legal-muted);
  font-size: 10.6px;
  line-height: 1.35;
  text-align: center;
}

.resume-document.resume-template-legal.curated-resume section {
  display: block;
  margin: 0 0 16px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0;
  background: transparent !important;
  box-shadow: none !important;
}

.resume-document.resume-template-legal.curated-resume h3 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  margin: 0 0 10px;
  color: var(--legal-ink);
  font-size: 10.8px;
  font-weight: 950;
  letter-spacing: 0.14em;
  line-height: 1.1;
  text-align: center;
  text-transform: uppercase;
}

.resume-document.resume-template-legal.curated-resume h3::before,
.resume-document.resume-template-legal.curated-resume h3::after {
  content: "";
  display: block;
  height: 1px;
  background: var(--legal-rule);
}

.resume-document.resume-template-legal.curated-resume p,
.resume-document.resume-template-legal.curated-resume li {
  color: #2f3c4f;
  font-size: 12.1px;
  line-height: 1.52;
}

.resume-document.resume-template-legal.curated-resume .curated-summary {
  padding: 11px 0 11px 11px !important;
  border-left: 4px solid var(--legal-accent) !important;
  background: linear-gradient(90deg, rgba(45, 79, 115, 0.055), transparent 82%) !important;
}

.resume-document.resume-template-legal.curated-resume .curated-summary h3 {
  margin-left: -11px;
}

.resume-document.resume-template-legal.curated-resume .curated-experience {
  display: block;
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item {
  position: relative;
  display: grid;
  gap: 5px;
  padding: 0 0 16px 13px;
  border-bottom: 1px solid rgba(207, 216, 227, 0.78);
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item + .curated-experience-item {
  padding-top: 14px;
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  bottom: 16px;
  width: 3px;
  border-radius: 999px;
  background: var(--legal-accent);
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item + .curated-experience-item::before {
  top: 17px;
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item:last-child::before {
  bottom: 0;
}

.resume-document.resume-template-legal.curated-resume .curated-entry-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) max-content;
  gap: 18px;
  align-items: baseline;
}

.resume-document.resume-template-legal.curated-resume .curated-entry-head strong {
  color: var(--legal-ink);
  font-size: 13.8px;
  font-weight: 950;
}

.resume-document.resume-template-legal.curated-resume .curated-entry-head span {
  color: var(--legal-accent);
  font-size: 10.7px;
  font-weight: 900;
}

.resume-document.resume-template-legal.curated-resume .curated-entry-meta,
.resume-document.resume-template-legal.curated-resume .curated-compact-item span,
.resume-document.resume-template-legal.curated-resume .curated-compact-item em {
  color: var(--legal-muted);
  font-size: 10.8px;
  font-style: normal;
  font-weight: 800;
}

.resume-document.resume-template-legal.curated-resume ul {
  gap: 4px;
  margin: 5px 0 0;
  padding-left: 18px;
}

.resume-document.resume-template-legal.curated-resume .curated-projects {
  padding-bottom: 2px !important;
}

.resume-document.resume-template-legal.curated-resume .curated-skills,
.resume-document.resume-template-legal.curated-resume .curated-education,
.resume-document.resume-template-legal.curated-resume .curated-certifications,
.resume-document.resume-template-legal.curated-resume .curated-languages,
.resume-document.resume-template-legal.curated-resume .curated-links {
  padding: 13px 14px 14px !important;
  border: 1px solid var(--legal-line) !important;
  border-radius: 6px;
  background: var(--legal-soft) !important;
}

.resume-document.resume-template-legal.curated-resume .curated-skill-list {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.resume-document.resume-template-legal.curated-resume .curated-skill-list span {
  padding: 6px 8px;
  border: 1px solid var(--legal-line);
  border-radius: 3px;
  color: var(--legal-ink);
  background: #ffffff;
  font-size: 10.6px;
  font-weight: 950;
}

.resume-document.resume-template-legal.curated-resume .curated-compact-item,
.resume-document.resume-template-legal.curated-resume .curated-link-list,
.resume-document.resume-template-legal.curated-resume .curated-text-list {
  display: grid;
  gap: 4px;
}

.resume-document.resume-template-legal.curated-resume .curated-compact-item strong,
.resume-document.resume-template-legal.curated-resume .curated-link-list p {
  color: var(--legal-ink);
  font-weight: 950;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume {
  padding: 46px 54px 44px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-header {
  margin-bottom: 16px;
  padding-bottom: 13px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-header h2 {
  font-size: 30px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-contact-line {
  font-size: 9.4px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume section {
  margin-bottom: 12px !important;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume h3 {
  gap: 10px;
  margin-bottom: 8px;
  font-size: 9.6px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume p,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume li {
  font-size: 10.1px;
  line-height: 1.38;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-skill-list {
  gap: 5px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-skill-list span {
  padding: 5px 6px;
  font-size: 9px;
}

.resume-document.resume-template-legal.curated-resume {
  padding: 42px 48px 40px;
  border: 1px solid #d8dee8;
  border-radius: 7px;
  background: #ffffff;
}

.resume-document-shell[data-preview-scaled="true"] .resume-document.resume-template-legal.curated-resume {
  padding: 42px 48px 40px;
}

.resume-document.resume-template-legal.curated-resume .curated-header {
  margin: 0 0 16px;
  padding: 0 0 18px;
  border-bottom: 0;
  text-align: center;
}

.resume-document.resume-template-legal.curated-resume .curated-header h2 {
  color: #0d2348;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 52px;
  font-weight: 700;
  line-height: 0.96;
}

.resume-document.resume-template-legal.curated-resume .curated-header strong {
  margin-top: 9px;
  color: #0d2348;
  font-size: 16px;
  font-weight: 900;
  letter-spacing: 0.34em;
  text-transform: uppercase;
}

.resume-document.resume-template-legal.curated-resume .curated-header strong::after {
  content: "";
  display: block;
  width: 6px;
  height: 6px;
  margin: 8px auto 0;
  transform: rotate(45deg);
  background: #0d2348;
}

.resume-document.resume-template-legal.curated-resume .curated-contact-line {
  margin-top: 12px;
  color: #26354f;
  font-size: 14px;
  font-weight: 700;
}

.resume-document.resume-template-legal.curated-resume section {
  position: relative;
  margin: 0 0 10px !important;
  padding: 16px 18px 16px 64px !important;
  border: 1px solid #d8dee8 !important;
  border-radius: 8px;
  background: #ffffff !important;
}

.resume-document.resume-template-legal.curated-resume section::before {
  content: "";
  position: absolute;
  left: 20px;
  top: 15px;
  width: 30px;
  height: 30px;
  border: 1px solid #cfd7e3;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #0d2348 0 22%, transparent 23%),
    #ffffff;
  box-shadow: 0 0 0 1px rgba(13, 35, 72, 0.02);
}

.resume-document.resume-template-legal.curated-resume section::after {
  content: "";
  position: absolute;
  left: 35px;
  top: 47px;
  bottom: 12px;
  width: 1px;
  background: #d7dee8;
}

.resume-document.resume-template-legal.curated-resume h3 {
  grid-template-columns: max-content minmax(0, 1fr);
  gap: 18px;
  margin: 0 0 12px;
  color: #0d2348;
  font-size: 16.6px;
  letter-spacing: 0.18em;
  text-align: left;
}

.resume-document.resume-template-legal.curated-resume h3::before {
  display: none;
}

.resume-document.resume-template-legal.curated-resume h3::after {
  align-self: center;
  height: 1px;
  background: #9ca8b8;
}

.resume-document.resume-template-legal.curated-resume p,
.resume-document.resume-template-legal.curated-resume li {
  color: #1f2b40;
  font-size: 15.4px;
  line-height: 1.55;
}

.resume-document.resume-template-legal.curated-resume .curated-summary {
  padding: 16px 18px 16px 64px !important;
  border-left: 1px solid #d8dee8 !important;
  background: #ffffff !important;
}

.resume-document.resume-template-legal.curated-resume .curated-summary h3 {
  margin-left: 0;
}

.resume-document.resume-template-legal.curated-resume .curated-experience {
  padding-bottom: 14px !important;
}

.resume-document.resume-template-legal.curated-resume .curated-experience::after {
  display: none;
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item {
  padding: 0 0 15px 0;
  border-bottom: 0;
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item + .curated-experience-item {
  padding-top: 4px;
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item::before {
  left: -41px;
  top: 4px;
  bottom: auto;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #0d2348;
  box-shadow: 0 0 0 3px #ffffff;
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item::after {
  content: "";
  position: absolute;
  left: -37px;
  top: 17px;
  bottom: -2px;
  width: 1px;
  background: #cfd7e3;
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item:last-child::after {
  display: none;
}

.resume-document.resume-template-legal.curated-resume .curated-experience-item::before,
.resume-document.resume-template-legal.curated-resume .curated-experience-item::after {
  display: none;
}

.resume-document.resume-template-legal.curated-resume .curated-entry-head {
  grid-template-columns: minmax(0, 1fr) max-content;
}

.resume-document.resume-template-legal.curated-resume .curated-entry-head strong {
  color: #0d1730;
  font-size: 18.2px;
}

.resume-document.resume-template-legal.curated-resume .curated-entry-head span {
  color: #0d2348;
  font-size: 14.6px;
}

.resume-document.resume-template-legal.curated-resume .curated-entry-meta {
  color: #223657;
  font-size: 14.6px;
  font-style: italic;
}

.resume-document.resume-template-legal.curated-resume ul {
  gap: 6px;
  margin-top: 8px;
  padding-left: 20px;
}

.resume-document.resume-template-legal.curated-resume li::marker {
  color: #0d2348;
}

.resume-document.resume-template-legal.curated-resume .curated-projects,
.resume-document.resume-template-legal.curated-resume .curated-skills,
.resume-document.resume-template-legal.curated-resume .curated-education,
.resume-document.resume-template-legal.curated-resume .curated-certifications,
.resume-document.resume-template-legal.curated-resume .curated-languages,
.resume-document.resume-template-legal.curated-resume .curated-links {
  padding: 14px 18px 14px 64px !important;
  border: 1px solid #d8dee8 !important;
  border-radius: 8px;
  background: #ffffff !important;
}

.resume-document.resume-template-legal.curated-resume .curated-skill-list {
  gap: 10px;
}

.resume-document.resume-template-legal.curated-resume .curated-skill-list span {
  padding: 6px 10px;
  border-color: #cbd3df;
  border-radius: 5px;
  color: #0d2348;
  background: #ffffff;
  font-size: 13.4px;
}

.resume-document.resume-template-legal.curated-resume .curated-education .curated-compact-item,
.resume-document.resume-template-legal.curated-resume .curated-certifications p,
.resume-document.resume-template-legal.curated-resume .curated-languages p,
.resume-document.resume-template-legal.curated-resume .curated-links .curated-link-list {
  padding: 10px 13px;
  border: 1px solid #d8dee8;
  border-radius: 7px;
  background: #ffffff;
}

.resume-document.resume-template-legal.curated-resume .curated-education .curated-compact-item {
  display: grid;
  gap: 4px;
}

.resume-document.resume-template-legal.curated-resume .curated-education-location {
  color: #223657;
}

.resume-document.resume-template-legal.curated-resume .curated-education-description {
  margin: 3px 0 0;
  color: #1f2b40;
}

.resume-document.resume-template-legal.curated-resume .curated-languages p,
.resume-document.resume-template-legal.curated-resume .curated-links .curated-link-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.resume-document.resume-template-legal.curated-resume .curated-links .curated-link-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact {
  padding: 42px 50px 38px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense {
  padding: 32px 40px 28px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-header {
  margin-bottom: 14px;
  padding-bottom: 12px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-header {
  margin-bottom: 9px;
  padding-bottom: 8px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-header h2 {
  font-size: 44px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-header h2 {
  font-size: 36px;
  line-height: 1;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-header strong {
  font-size: 13px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-header strong {
  font-size: 10.5px;
  letter-spacing: 0.32em;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-contact-line {
  margin-top: 8px;
  font-size: 12px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-contact-line {
  margin-top: 5px;
  font-size: 9.8px;
  line-height: 1.25;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact section {
  margin-bottom: 8px !important;
  padding: 13px 15px 13px 56px !important;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense section {
  margin-bottom: 5px !important;
  padding: 10px 12px 10px 48px !important;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact section::before {
  left: 17px;
  top: 13px;
  width: 26px;
  height: 26px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense section::before {
  left: 14px;
  top: 10px;
  width: 22px;
  height: 22px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact section::after {
  left: 30px;
  top: 42px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense section::after {
  left: 25px;
  top: 34px;
  bottom: 8px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact h3 {
  margin-bottom: 8px;
  font-size: 14px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense h3 {
  gap: 12px;
  margin-bottom: 5px;
  font-size: 11.4px;
  line-height: 1.1;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact p,
.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact li {
  font-size: 13px;
  line-height: 1.4;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense p,
.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense li {
  font-size: 10.7px;
  line-height: 1.3;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-entry-head strong {
  font-size: 15.4px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-entry-head strong {
  font-size: 12.8px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-entry-head span,
.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-entry-meta {
  font-size: 12.3px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-entry-head span,
.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-entry-meta {
  font-size: 10px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact ul {
  gap: 4px;
  margin-top: 5px;
  padding-left: 17px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense ul {
  gap: 2px;
  margin-top: 3px;
  padding-left: 14px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-skill-list {
  gap: 7px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-skill-list {
  gap: 4px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-skill-list span {
  padding: 4px 8px;
  font-size: 11.4px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-skill-list span {
  padding: 3px 6px;
  font-size: 9.2px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-education .curated-compact-item,
.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-certifications p,
.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-languages p,
.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-compact .curated-links .curated-link-list {
  padding: 8px 10px;
}

.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-education .curated-compact-item,
.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-certifications p,
.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-languages p,
.resume-document.resume-template-legal.curated-resume.resume-fit-document.resume-density-dense .curated-links .curated-link-list {
  gap: 2px;
  padding: 6px 8px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume {
  padding: 38px 44px 34px;
}

.template-sample-thumb .resume-document-shell[data-preview-scaled="true"] .resume-document.resume-template-legal.curated-resume {
  padding: 38px 44px 34px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-header {
  margin-bottom: 11px;
  padding-bottom: 12px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-header h2 {
  font-size: 36px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-header strong {
  margin-top: 6px;
  font-size: 11px;
  letter-spacing: 0.28em;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-header strong::after {
  width: 5px;
  height: 5px;
  margin-top: 5px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-contact-line {
  margin-top: 9px;
  font-size: 10px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume section,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-summary,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-projects,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-skills,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-education,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-certifications,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-languages,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-links {
  margin-bottom: 8px !important;
  padding: 10px 12px 10px 48px !important;
  border-radius: 6px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume section::before {
  left: 16px;
  top: 10px;
  width: 24px;
  height: 24px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume section::after {
  left: 28px;
  top: 35px;
  bottom: 9px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume h3 {
  gap: 10px;
  margin-bottom: 7px;
  font-size: 11.2px;
  letter-spacing: 0.14em;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume p,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume li {
  font-size: 11px;
  line-height: 1.43;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-experience {
  padding-bottom: 10px !important;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-experience-item {
  gap: 3px;
  padding-bottom: 10px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-experience-item + .curated-experience-item {
  padding-top: 2px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-experience-item::before {
  left: -34px;
  top: 3px;
  width: 7px;
  height: 7px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-experience-item::after {
  left: -31px;
  top: 12px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-entry-head strong {
  font-size: 13px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-entry-head span,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-entry-meta {
  font-size: 10.2px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume ul {
  gap: 3px;
  margin-top: 5px;
  padding-left: 14px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-education .curated-compact-item,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-certifications p,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-languages p,
.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-links .curated-link-list {
  padding: 7px 9px;
  border-radius: 5px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-skill-list {
  gap: 5px;
}

.template-sample-thumb .resume-document.resume-template-legal.curated-resume .curated-skill-list span {
  padding: 4px 7px;
  font-size: 9.8px;
}

.pdf-export-document.resume-template-legal.curated-resume,
.pdf-fit-export-document.resume-template-legal.curated-resume {
  box-shadow: none !important;
}

.pdf-export-document.curated-resume {
  box-shadow: none !important;
}

.delete-resume-dialog {
  position: relative;
  z-index: 1;
  width: min(460px, 94vw);
  padding: 26px;
  border: 1px solid rgba(229, 234, 244, 0.95);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 34px 90px rgba(7, 15, 35, 0.28);
}

.delete-resume-dialog h2 {
  margin: 0 0 10px;
  font-size: 24px;
}

.delete-resume-dialog p {
  margin: 0 0 16px;
  color: var(--muted);
  line-height: 1.55;
}

.delete-resume-dialog strong {
  display: block;
  margin-bottom: 20px;
}

.danger-button {
  background: #b4233a;
}

.suggestions-panel {
  padding: 18px;
}

.suggestions-panel h3 {
  margin: 0 0 12px;
}

.suggestions-panel ul {
  display: grid;
  gap: 9px;
  margin: 0 0 16px;
  padding-left: 18px;
  color: var(--muted);
  line-height: 1.45;
}

.ai-page {
  display: grid;
  grid-template-columns: minmax(320px, 0.88fr) minmax(420px, 1.12fr);
  gap: clamp(18px, 2.4vw, 28px);
  align-items: start;
}

.ai-empty-page {
  grid-template-columns: 1fr;
}

.cover-letter-library {
  display: grid;
  gap: 16px;
}

.cover-letter-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  padding: clamp(18px, 2.2vw, 24px);
  border: 1px solid var(--line);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 16px 42px rgba(18, 60, 145, 0.08);
}

.cover-letter-card-main {
  display: grid;
  gap: 9px;
  min-width: 0;
}

.status-pill {
  width: max-content;
  padding: 5px 10px;
  border: 1px solid rgba(74, 112, 255, 0.2);
  border-radius: 999px;
  background: rgba(114, 229, 255, 0.16);
  color: #2444a4;
  font-size: 12px;
  font-weight: 800;
}

.cover-letter-card h2 {
  margin: 0;
  color: #10214a;
  font-size: clamp(20px, 2vw, 26px);
}

.cover-letter-card p {
  margin: 0;
  color: var(--muted);
}

.cover-letter-card-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.cover-letter-card-meta span {
  max-width: 100%;
  padding: 6px 10px;
  border: 1px solid rgba(84, 97, 125, 0.16);
  border-radius: 999px;
  background: rgba(245, 248, 255, 0.88);
  color: #54617d;
  font-size: 13px;
  font-weight: 700;
}

.cover-letter-card small {
  color: #64708e;
}

.cover-letter-card-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 9px;
  max-width: 420px;
}

.danger-link {
  color: #a41f35;
  border-color: rgba(164, 31, 53, 0.22);
}

.cover-letter-builder,
.cover-letter-builder-page {
  display: grid;
  grid-template-columns: minmax(360px, 0.95fr) minmax(420px, 1.05fr);
  gap: clamp(18px, 2.4vw, 28px);
  align-items: start;
}

.cover-letter-mobile-tabs {
  display: none;
}

.cover-letter-builder-topbar {
  grid-column: 1;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.cover-letter-builder-topbar .ghost-button {
  min-height: 40px;
  padding-inline: 14px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 10px 24px rgba(18, 60, 145, 0.08);
}

.letter-form-panel,
.letter-preview-panel {
  padding: clamp(20px, 2.4vw, 28px);
  border: 1px solid var(--line);
  border-radius: 26px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 16px 42px rgba(18, 60, 145, 0.08);
}

.letter-form-panel {
  grid-column: 1;
  display: grid;
  gap: 16px;
  min-width: 0;
}

.letter-form-panel textarea {
  min-height: 110px;
}

.letter-job-field {
  min-height: 140px;
}

.letter-editor-head {
  display: grid;
  gap: 14px;
}

.letter-editor-head label {
  margin: 0;
  color: #10214a;
  font-weight: 800;
}

.letter-ai-helper {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
  margin: 5px 0 0;
}

.cover-letter-ai-panel {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.cover-letter-ai-primary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
}

.cover-letter-ai-primary .cover-letter-ai-button {
  justify-content: center;
  min-height: 52px;
  font-size: 15px;
  min-width: 0;
  white-space: normal;
  box-shadow: 0 14px 30px rgba(31, 105, 213, 0.22);
}

.cover-letter-ai-tools {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.cover-letter-ai-button {
  justify-content: flex-start;
  gap: 9px;
  min-height: 44px;
  min-width: 0;
  padding-inline: 13px;
  text-align: left;
  white-space: normal;
}

.cover-letter-ai-button .icon {
  flex: 0 0 auto;
}

.cover-letter-ai-button span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.cover-letter-ai-tools .cover-letter-ai-button {
  width: 100%;
  border-color: rgba(37, 99, 235, 0.16);
  background: rgba(255, 255, 255, 0.92);
}

.cover-letter-ai-tools .cover-letter-ai-button:hover {
  background: #eef5ff;
  border-color: rgba(37, 99, 235, 0.26);
}

.cover-letter-ai-panel .ai-credit-balance-note {
  min-height: 42px;
  justify-content: center;
  padding-inline: 14px;
  min-width: 0;
  white-space: normal;
}

.cover-letter-body-editor {
  min-height: 280px;
  line-height: 1.6;
}

.letter-option-check {
  min-height: 52px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 16px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  color: #10214a;
  font-weight: 800;
}

.letter-option-check input {
  width: 18px;
  height: 18px;
  accent-color: #1f69d5;
}

.letter-option-check span {
  line-height: 1.3;
}

.cover-letter-builder-actions {
  align-items: center;
}

.letter-preview-panel {
  grid-column: 2;
  grid-row: 1 / span 2;
  position: sticky;
  top: 86px;
  display: grid;
  gap: 14px;
  min-width: 0;
}

.letter-document {
  box-sizing: border-box;
  width: min(100%, 820px);
  min-height: 0;
  margin: 0 auto;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 50px rgba(12, 28, 64, 0.12);
  color: #26334f;
  overflow: visible;
  overflow-wrap: break-word;
}

.letter-document p {
  margin: 0;
}

.cover-letter-document {
  box-sizing: border-box;
  min-height: 900px;
  padding: clamp(46px, 5vw, 62px) clamp(48px, 5.2vw, 68px);
  display: flex;
  flex-direction: column;
  color: #162542;
  font-family: Inter, Arial, Helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.62;
  overflow-wrap: break-word;
}

.cover-letter-doc-header {
  padding-bottom: 18px;
  border-bottom: 1px solid #d7e0ee;
  margin-bottom: 24px;
}

.cover-letter-doc-header h2 {
  margin: 0 0 9px;
  color: #10214a;
  font-size: 34px;
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: 0;
}

.cover-letter-doc-header p,
.cover-letter-doc-meta p {
  margin: 0;
  color: #50607a;
  font-size: 14px;
  line-height: 1.45;
}

.cover-letter-doc-meta {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
  gap: 18px;
  margin-bottom: 26px;
  padding: 14px 16px;
  border: 1px solid #e1e8f4;
  border-radius: 8px;
  background: #f8fbff;
}

.cover-letter-doc-body p {
  margin: 0 0 17px;
}

.cover-letter-brand-footer {
  margin-top: auto;
  padding-top: 18px;
  border-top: 1px solid #e3eaf6;
  color: #7d88a5;
  font-size: 11.5px;
  text-align: center;
}

.cover-letter-preview-content {
  background: #f5f8ff;
  padding: clamp(16px, 2vw, 26px);
}

.cover-letter-preview-content .letter-document {
  max-width: 820px;
  margin: 0 auto;
}

.cover-letter-pdf-page {
  padding: 0;
}

.cover-letter-pdf-content {
  box-sizing: border-box;
  padding: 0;
}

.cover-letter-pdf-content .cover-letter-document {
  width: 100%;
  min-height: calc(var(--resume-page-height-print, 297mm) - 1px);
  padding: 17mm 17mm 15mm;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  font-size: 15.4px;
  line-height: 1.58;
  background: #ffffff;
}

.cover-letter-pdf-content .cover-letter-doc-header h2 {
  font-size: 32px;
}

.cover-letter-pdf-content .cover-letter-doc-meta {
  margin-bottom: 22px;
  padding: 12px 14px;
}

.cover-letter-pdf-content .cover-letter-doc-body p {
  margin-bottom: 15px;
}

@media (max-width: 720px) {
  .cover-letter-document {
    min-height: 0;
    padding: 34px 28px;
    font-size: 14.5px;
  }

  .cover-letter-doc-header h2 {
    font-size: 28px;
  }

  .cover-letter-doc-meta {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

.ai-input-panel {
  display: grid;
  gap: 18px;
  padding: clamp(20px, 2.5vw, 28px);
}

.ai-panel-head {
  display: grid;
  gap: 8px;
}

.ai-panel-head h2,
.ai-input-panel h2 {
  margin: 0;
  color: #10214a;
  font-size: clamp(25px, 3vw, 34px);
  line-height: 1.08;
}

.ai-panel-head p {
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.ai-input-panel form {
  display: grid;
  gap: 14px;
}

.ai-status-note {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 12px;
  color: var(--blue-3);
  background: rgba(31, 105, 213, 0.07);
  font-size: 13px;
  font-weight: 750;
  line-height: 1.35;
}

.ai-status-note::before {
  content: "";
  flex: 0 0 auto;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: var(--blue-2);
  box-shadow: 0 0 0 6px rgba(31, 105, 213, 0.1);
}

.ai-form-actions,
.ai-action-row {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.ai-form-actions {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  align-items: center;
}

.ai-action-row {
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  align-items: center;
}

.ai-action-row > button {
  max-width: 100%;
  min-width: 0;
  white-space: normal;
}

.ai-form-actions > button,
.ai-action-row > button {
  justify-content: center;
}

.ai-form-actions > button .icon,
.ai-action-row > button .icon {
  flex: 0 0 auto;
}

.ai-form-actions > button span,
.ai-action-row > button span {
  min-width: 0;
  overflow-wrap: anywhere;
  white-space: normal;
}

.ai-form-actions .full {
  width: 100%;
}

.ai-form-actions .ai-credit-balance-note,
.ai-action-row .ai-credit-balance-note {
  justify-content: center;
  min-width: 0;
  max-width: 100%;
  white-space: normal;
  text-align: center;
}

.ai-credit-balance-note {
  align-items: center;
  align-self: center;
  border: 1px solid rgba(37, 99, 235, 0.18);
  border-radius: 999px;
  color: var(--muted);
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  gap: 4px;
  min-height: 32px;
  padding: 6px 10px;
  white-space: nowrap;
}

.ai-credit-balance-note [data-ai-credit-balance] {
  color: var(--ink);
}

.ai-input-panel label {
  margin: 0;
}

.ai-input-panel textarea {
  min-height: 220px;
  resize: vertical;
}

.ai-form-error {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid rgba(180, 35, 58, 0.18);
  border-radius: 12px;
  color: #b4233a;
  background: #fff4f6;
  font-size: 13px;
  font-weight: 800;
}

.ai-results {
  display: grid;
  gap: 18px;
}

.ai-score-card {
  display: grid;
  gap: 10px;
  padding: clamp(20px, 2.5vw, 28px);
  background:
    radial-gradient(circle at 88% 10%, rgba(105, 216, 242, 0.16), transparent 30%),
    linear-gradient(135deg, #fff, #f7faff);
}

.ai-score-card em {
  width: fit-content;
  padding: 6px 10px;
  border-radius: 999px;
  color: var(--blue);
  background: #eef5ff;
  font-style: normal;
  font-size: 12px;
  font-weight: 900;
}

.ai-score-summary {
  margin: 0;
  color: #354260;
  line-height: 1.45;
}

.ai-score-summary strong {
  display: block;
  margin-bottom: 3px;
  color: #10214a;
  font-size: 13px;
}

.ats-disclaimer {
  margin: 0;
  color: var(--muted);
  font-size: 12.5px;
  line-height: 1.45;
}

.ats-score .progress {
  background: #edf3fb;
}

.ai-suggestions-panel {
  display: grid;
  gap: 14px;
}

.ai-section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.ai-section-head > div {
  display: grid;
  gap: 4px;
}

.ai-section-head p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.4;
}

.ai-section-head h3,
.ai-keyword-card h3,
.ai-match-card h3 {
  margin: 0;
  color: #10214a;
  font-size: 17px;
}

.ai-section-head span {
  padding: 6px 9px;
  border-radius: 999px;
  color: #7256d6;
  background: #f1edff;
  font-size: 12px;
  font-weight: 900;
}

.ai-suggestion-grid,
.ai-keyword-grid {
  display: grid;
  gap: 14px;
}

.ai-ats-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.ai-ats-metric {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  padding: 14px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 10px 24px rgba(18, 60, 145, 0.06);
}

.ai-ats-metric > span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 12px;
  color: var(--blue);
  background: #eef5ff;
}

.ai-ats-metric .icon {
  width: 18px;
  height: 18px;
}

.ai-ats-metric strong {
  display: block;
  color: #10214a;
  font-size: 22px;
  line-height: 1;
}

.ai-ats-metric p,
.ai-ats-metric small {
  display: block;
  margin: 4px 0 0;
  color: var(--muted);
  line-height: 1.35;
}

.ai-ats-metric p {
  font-weight: 850;
}

.ai-ats-command-center {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  gap: 14px;
}

.ai-ats-command-center > .dash-card {
  display: grid;
  align-content: start;
  gap: 14px;
  padding: 18px;
}

.ai-ats-action-plan,
.ai-ats-explain-card {
  grid-column: span 1;
}

.ai-ats-diagnostics,
.ai-keyword-grid.compact {
  grid-column: 1 / -1;
}

.ai-priority-keyword-list,
.ai-action-plan-list,
.ai-section-diagnostics {
  display: grid;
  gap: 10px;
}

.ai-priority-keyword {
  display: grid;
  gap: 6px;
  padding: 11px 12px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 14px;
  background: #f8fbff;
}

.ai-priority-keyword div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.ai-priority-keyword strong {
  min-width: 0;
  color: #10214a;
  overflow-wrap: anywhere;
}

.ai-priority-keyword span {
  flex: 0 0 auto;
  padding: 4px 7px;
  border-radius: 999px;
  color: #0f5d42;
  background: #e8f8ef;
  font-size: 11px;
  font-weight: 900;
}

.ai-priority-keyword.high span {
  color: #a33b00;
  background: #fff0df;
}

.ai-priority-keyword.medium span {
  color: #7256d6;
  background: #f1edff;
}

.ai-priority-keyword small,
.ai-action-plan-item small,
.ai-ats-muted {
  color: var(--muted);
  line-height: 1.4;
}

.ai-action-plan-item {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px;
  padding: 12px;
  border-radius: 14px;
  background: #f8fbff;
}

.ai-action-plan-item > span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 12px;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), #7458e8);
  font-size: 12px;
  font-weight: 950;
}

.ai-action-plan-item strong {
  color: var(--blue);
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.ai-action-plan-item p,
.ai-ats-explain-card p {
  margin: 5px 0;
  color: #38465f;
  line-height: 1.5;
}

.ai-section-diagnostic-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px;
  gap: 8px 12px;
  align-items: center;
}

.ai-section-diagnostic-row span {
  color: #10214a;
  font-weight: 850;
}

.ai-section-diagnostic-row strong {
  justify-self: end;
  color: var(--blue);
}

.ai-section-diagnostic-row i {
  grid-column: 1 / -1;
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: #e8eef8;
}

.ai-section-diagnostic-row b {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--blue), #69d8f2);
}

.ai-keyword-grid.compact {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

@media (max-width: 980px) {
  .ai-ats-metrics,
  .ai-ats-command-center,
  .ai-keyword-grid.compact {
    grid-template-columns: 1fr;
  }
}

.ai-tool-suggestion-card {
  display: grid;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 12px 30px rgba(18, 60, 145, 0.07);
}

.ai-tool-suggestion-card > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
}

.ai-tool-suggestion-card span {
  color: var(--blue);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.ai-tool-suggestion-card em {
  padding: 5px 8px;
  border-radius: 999px;
  color: #7256d6;
  background: #f1edff;
  font-style: normal;
  font-size: 11px;
  font-weight: 900;
}

.ai-tool-suggestion-card p {
  margin: 0;
  color: #38465f;
  line-height: 1.5;
}

.ai-tool-suggestion-card footer {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.ai-tool-suggestion-card.locked-feature {
  border-color: rgba(155, 124, 247, 0.22);
  background: linear-gradient(135deg, rgba(248, 246, 255, 0.94), #fff);
}

.ai-suggestion-dialog {
  max-width: 760px;
}

.resume-tailoring-dialog {
  width: min(980px, calc(100vw - 24px));
  height: auto;
  max-height: calc(100dvh - 24px);
}

.resume-tailoring-content {
  display: grid;
  align-items: stretch;
  justify-content: stretch;
  gap: 14px;
  padding: clamp(14px, 2vw, 22px);
}

.resume-tailoring-content section {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.9);
}

.resume-tailoring-content h3,
.resume-tailoring-entry strong {
  margin: 0;
  color: var(--ink);
}

.resume-tailoring-content p,
.resume-tailoring-content li,
.resume-tailoring-entry small {
  color: var(--muted);
  line-height: 1.5;
}

.resume-tailoring-content p,
.resume-tailoring-content ul {
  margin: 0;
}

.resume-tailoring-entry {
  display: grid;
  gap: 8px;
  padding: 12px;
  border-radius: 14px;
  background: #f8fbff;
}

.resume-tailoring-actions {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.resume-tailoring-actions .primary-button,
.resume-tailoring-actions .secondary-button,
.resume-tailoring-actions .ghost-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding-inline: 18px;
  transition: transform 0.16s ease, box-shadow 0.16s ease, opacity 0.16s ease, background 0.16s ease, border-color 0.16s ease;
}

.resume-tailoring-actions .primary-button:disabled,
.resume-tailoring-actions .secondary-button:disabled,
.resume-tailoring-actions .ghost-button:disabled {
  cursor: default;
}

.resume-tailoring-actions .primary-button.is-loading,
.resume-tailoring-actions .secondary-button.is-loading,
.resume-tailoring-actions .ghost-button.is-loading {
  opacity: 0.96;
  transform: translateY(-1px);
}

.resume-tailoring-actions .primary-button.is-applied,
.resume-tailoring-actions .secondary-button.is-applied,
.resume-tailoring-actions .ghost-button.is-applied {
  border-color: rgba(20, 135, 92, 0.28);
  color: #0f6b49;
  background: linear-gradient(135deg, rgba(231, 250, 242, 0.98), rgba(246, 255, 251, 0.98));
  box-shadow: 0 10px 24px rgba(20, 135, 92, 0.12);
}

.resume-tailoring-actions .is-applied .icon {
  width: 16px;
  height: 16px;
}

.button-spinner {
  width: 15px;
  height: 15px;
  border: 2px solid currentColor;
  border-right-color: transparent;
  border-radius: 999px;
  opacity: 0.9;
  animation: tailoringButtonSpin 0.72s linear infinite;
}

.resume-tailoring-content [data-tailoring-status] {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 2px;
  padding: 11px 13px;
  border: 1px solid rgba(20, 135, 92, 0.22);
  border-radius: 12px;
  color: #0f6b49;
  background: linear-gradient(135deg, rgba(231, 250, 242, 0.96), rgba(248, 255, 252, 0.96));
  box-shadow: 0 12px 30px rgba(20, 135, 92, 0.1);
  opacity: 0;
  transform: translateY(4px);
}

.resume-tailoring-content [data-tailoring-status][hidden] {
  display: none;
}

.resume-tailoring-content [data-tailoring-status]::before {
  content: "";
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #18a66f;
  box-shadow: 0 0 0 4px rgba(24, 166, 111, 0.12);
}

.resume-tailoring-content [data-tailoring-status].is-visible {
  animation: tailoringStatusIn 0.22s ease forwards;
}

.resume-tailoring-content [data-tailoring-status].error {
  border-color: rgba(180, 44, 62, 0.22);
  color: #9f2f3d;
  background: linear-gradient(135deg, rgba(255, 242, 244, 0.98), rgba(255, 249, 250, 0.98));
  box-shadow: 0 12px 30px rgba(180, 44, 62, 0.08);
}

.resume-tailoring-content [data-tailoring-status].error::before {
  background: #c63d50;
  box-shadow: 0 0 0 4px rgba(198, 61, 80, 0.12);
}

.builder-preview-frame.tailoring-preview-updated {
  animation: tailoringPreviewPulse 0.82s ease both;
}

@keyframes tailoringButtonSpin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes tailoringStatusIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes tailoringPreviewPulse {
  0% {
    box-shadow: 0 0 0 rgba(31, 105, 213, 0);
  }
  28% {
    box-shadow: 0 0 0 4px rgba(31, 105, 213, 0.14), 0 18px 48px rgba(31, 105, 213, 0.14);
  }
  100% {
    box-shadow: 0 0 0 rgba(31, 105, 213, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .button-spinner,
  .resume-tailoring-content [data-tailoring-status].is-visible,
  .builder-preview-frame.tailoring-preview-updated {
    animation: none !important;
  }

  .resume-tailoring-content [data-tailoring-status] {
    opacity: 1;
    transform: none;
  }

  .resume-tailoring-actions .primary-button,
  .resume-tailoring-actions .secondary-button,
  .resume-tailoring-actions .ghost-button {
    transition: none;
  }
}

.ai-suggestion-textarea {
  min-height: 280px;
  line-height: 1.55;
  resize: vertical;
}

.ai-keyword-grid {
  grid-column: 1 / -1;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.ai-recommendation-card {
  grid-column: span 2;
}

.ai-keyword-card,
.ai-match-card {
  display: grid;
  align-content: start;
  gap: 12px;
  padding: 18px;
}

.ai-match-card strong {
  color: var(--blue);
  font-size: 32px;
  line-height: 1;
}

.ai-match-card p {
  margin: 0;
  color: var(--muted);
  line-height: 1.45;
}

.ai-empty-panel {
  display: grid;
  place-items: center;
  gap: 10px;
  min-height: 150px;
  padding: 22px;
  border: 1px dashed rgba(31, 105, 213, 0.22);
  border-radius: 18px;
  color: var(--muted);
  background: rgba(247, 250, 255, 0.72);
  text-align: center;
}

.ai-empty-panel.wide {
  grid-column: 1 / -1;
}

.ai-empty-panel .icon {
  width: 24px;
  height: 24px;
  color: var(--blue-2);
}

.ai-empty-panel p {
  margin: 0;
  max-width: 420px;
  line-height: 1.5;
}

.keyword-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.keyword-cloud span {
  max-width: 100%;
  padding: 8px 12px;
  border-radius: 999px;
  color: var(--blue);
  background: #eef5ff;
  font-weight: 800;
  font-size: 13px;
  overflow-wrap: anywhere;
  white-space: normal;
}

.keyword-cloud small {
  color: var(--muted);
  font-weight: 800;
}

.settings-page {
  max-width: 1120px;
}

.profile-page {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  align-content: start;
  background:
    linear-gradient(rgba(31, 105, 213, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(31, 105, 213, 0.035) 1px, transparent 1px);
  background-size: 52px 52px;
}

.settings-page-premium {
  align-content: start;
}

.profile-page .settings-card {
  border: 1px solid rgba(191, 211, 242, 0.72);
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(248, 251, 255, 0.96));
  box-shadow: 0 22px 60px rgba(18, 60, 145, 0.11);
}

.profile-page .profile-hero-card {
  position: relative;
  overflow: hidden;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 28px;
  min-height: 238px;
  padding: clamp(28px, 4.2vw, 42px);
  border: 1px solid rgba(178, 208, 255, 0.24);
  border-radius: 30px;
  background:
    linear-gradient(115deg, rgba(255, 255, 255, 0.12) 0 1px, transparent 1px 34%),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.055) 0 1px, transparent 1px 128px),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.045) 0 1px, transparent 1px 92px),
    linear-gradient(132deg, #071022 0%, #0f2c72 45%, #315fd0 72%, #765ce4 100%);
  box-shadow:
    0 34px 90px rgba(16, 44, 118, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.profile-page .profile-hero-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(100deg, transparent 0 54%, rgba(255, 255, 255, 0.13) 54% 55%, transparent 55%),
    linear-gradient(100deg, transparent 0 68%, rgba(120, 213, 255, 0.16) 68% 69%, transparent 69%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.12), transparent 38%);
  opacity: 0.78;
}

.profile-page .profile-hero-card::after {
  content: "";
  position: absolute;
  inset: 18px;
  pointer-events: none;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 26px;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    inset 0 -1px 0 rgba(120, 213, 255, 0.12);
}

.profile-page .profile-hero-avatar {
  position: relative;
  z-index: 1;
  width: 104px;
  height: 104px;
  border: 1px solid rgba(226, 238, 255, 0.42);
  border-radius: 32px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.08)),
    linear-gradient(145deg, rgba(90, 209, 255, 0.34), rgba(140, 113, 247, 0.46));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.34),
    inset 0 -18px 34px rgba(8, 23, 56, 0.18),
    0 22px 54px rgba(2, 12, 33, 0.32);
  font-size: 32px;
}

.profile-page .profile-hero-avatar::after {
  content: "";
  position: absolute;
  inset: 13px;
  border: 1px solid rgba(255, 255, 255, 0.26);
  border-radius: 23px;
  pointer-events: none;
}

.profile-page .profile-hero-main {
  position: relative;
  z-index: 1;
  min-width: 0;
}

.profile-page .profile-hero-main h2 {
  max-width: 760px;
  margin-top: 9px;
  font-size: clamp(38px, 5.3vw, 58px);
  letter-spacing: 0;
  text-shadow: 0 12px 34px rgba(0, 0, 0, 0.18);
}

.profile-page .profile-hero-main p {
  color: rgba(238, 246, 255, 0.94);
  font-size: clamp(17px, 2vw, 22px);
  font-weight: 650;
}

.profile-page .profile-hero-main .eyebrow {
  color: #65c8ff;
  letter-spacing: 0.12em;
}

.profile-hero-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 11px;
  margin-top: 24px;
}

.profile-hero-badges span,
.profile-plan-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 15px;
  border: 1px solid rgba(220, 236, 255, 0.22);
  border-radius: 999px;
  color: #ffffff;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.19), rgba(255, 255, 255, 0.08));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    0 10px 24px rgba(2, 12, 33, 0.12);
  font-size: 13px;
  font-weight: 850;
  backdrop-filter: blur(16px);
}

.profile-hero-badges .icon {
  width: 16px;
  height: 16px;
}

.profile-account-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.42fr) minmax(340px, 0.78fr);
  align-items: start;
  gap: 22px;
}

.profile-account-main,
.profile-account-side {
  display: grid;
  gap: 18px;
  min-width: 0;
}

.profile-form-card {
  padding: clamp(22px, 3vw, 30px);
}

.profile-field-grid {
  gap: 18px;
}

.profile-field-grid label,
.profile-preference-stack label {
  color: #33415f;
  font-size: 13px;
  font-weight: 850;
}

.profile-field-grid input,
.profile-field-grid select,
.profile-preference-stack select {
  min-height: 52px;
  margin-top: 8px;
  border-color: rgba(191, 211, 242, 0.92);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.profile-field-grid input:focus,
.profile-field-grid select:focus,
.profile-preference-stack select:focus {
  border-color: rgba(45, 116, 223, 0.76);
  box-shadow: 0 0 0 4px rgba(45, 116, 223, 0.12);
}

.profile-unsaved-status {
  color: #80540b;
  background: #fff8e7;
}

.profile-form-actions {
  justify-content: flex-end;
  margin-top: 4px;
}

.profile-summary-card,
.profile-side-card {
  padding: 22px;
}

.profile-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

.profile-metric {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 16px;
  border: 1px solid rgba(191, 211, 242, 0.7);
  border-radius: 18px;
  background: #ffffff;
}

.profile-metric .icon {
  width: 20px;
  height: 20px;
  color: var(--blue-2);
}

.profile-metric span,
.profile-activity-row span,
.profile-detail-list small,
.profile-preference-item span,
.profile-plan-meta span,
.profile-benefit-list span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 850;
}

.profile-metric strong {
  color: var(--ink);
  font-size: 24px;
  line-height: 1;
}

.profile-activity-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 14px;
  padding: 14px 16px;
  border-radius: 18px;
  background: linear-gradient(135deg, #eef8ff, #f7f4ff);
}

.profile-activity-row span,
.profile-activity-row strong {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.profile-activity-row strong {
  color: var(--ink);
  text-align: right;
}

.profile-side-card {
  overflow: hidden;
}

.profile-detail-list,
.profile-plan-meta,
.profile-benefit-list,
.profile-preference-stack {
  display: grid;
  gap: 12px;
}

.profile-detail-list span,
.profile-plan-meta span,
.profile-benefit-list span,
.profile-preference-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 6px 10px;
  padding: 12px;
  border: 1px solid rgba(191, 211, 242, 0.64);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.88);
}

.profile-detail-list .icon,
.profile-plan-meta .icon,
.profile-benefit-list .icon {
  grid-row: span 2;
  width: 18px;
  height: 18px;
  color: var(--blue-2);
}

.profile-detail-list strong,
.profile-preference-item strong {
  min-width: 0;
  color: var(--ink);
  font-size: 14px;
  overflow-wrap: anywhere;
}

.profile-preference-item {
  grid-template-columns: minmax(0, 1fr) auto;
}

.profile-preference-item small {
  grid-column: 1 / -1;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.profile-static-options {
  display: inline-flex;
  gap: 6px;
  padding: 4px;
  border-radius: 999px;
  background: #eef4ff;
}

.profile-static-options strong {
  min-width: 54px;
  padding: 6px 10px;
  border-radius: 999px;
  color: var(--muted);
  text-align: center;
  font-size: 12px;
}

.profile-static-options strong.active {
  color: #ffffff;
  background: linear-gradient(135deg, var(--blue), var(--purple));
}

.profile-plan-card {
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.2), transparent 28%),
    linear-gradient(180deg, #ffffff, #f7faff);
}

.profile-plan-card p {
  margin: 0 0 16px;
  color: var(--muted);
  line-height: 1.5;
}

.profile-plan-badge {
  color: var(--blue);
  border-color: rgba(31, 105, 213, 0.16);
  background: #eef5ff;
  box-shadow: none;
  backdrop-filter: none;
}

.profile-plan-card .full {
  width: 100%;
  margin-top: 16px;
  justify-content: center;
}

@media (max-width: 1180px) {
  .profile-account-layout {
    grid-template-columns: 1fr;
  }

  .profile-account-side {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .profile-plan-card {
    grid-column: 1 / -1;
  }
}

@media (max-width: 820px) {
  .profile-page .profile-hero-card {
    grid-template-columns: 1fr;
    min-height: 0;
  }

  .profile-hero-badges,
  .profile-form-actions {
    justify-content: flex-start;
  }

  .profile-account-side,
  .profile-metric-grid {
    grid-template-columns: 1fr;
  }

  .profile-activity-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .profile-activity-row strong {
    text-align: left;
  }
}

@media (max-width: 560px) {
  .profile-page {
    background-size: 38px 38px;
  }

  .profile-page .profile-hero-card,
  .profile-form-card,
  .profile-summary-card,
  .profile-side-card {
    border-radius: 20px;
  }

  .profile-page .profile-hero-avatar {
    width: 74px;
    height: 74px;
    border-radius: 24px;
    font-size: 24px;
  }

  .profile-hero-badges span {
    width: 100%;
    justify-content: flex-start;
  }

  .profile-form-actions .primary-button,
  .profile-form-actions .secondary-button {
    width: 100%;
    justify-content: center;
  }
}

.settings-hero-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  padding: clamp(24px, 4vw, 34px);
  border: 1px solid rgba(229, 234, 244, 0.82);
  border-radius: 28px;
  color: #fff;
  background:
    radial-gradient(circle at 84% 18%, rgba(105, 216, 242, 0.28), transparent 26%),
    linear-gradient(135deg, #0b1736, #123c91 58%, #6d5bd7);
  box-shadow: var(--shadow);
}

.settings-hero-card h2 {
  margin: 7px 0 5px;
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.08;
}

.settings-hero-card p {
  margin: 0;
  color: #dce8ff;
}

.settings-avatar {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 24px;
  color: #fff;
  background: linear-gradient(135deg, rgba(105, 216, 242, 0.26), rgba(155, 124, 247, 0.32));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.24);
  font-size: 24px;
  font-weight: 900;
}

.settings-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}

.settings-card-head h2 {
  margin: 7px 0 0;
  font-size: 24px;
}

.settings-status,
.settings-status-list span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 0 12px;
  border-radius: 999px;
  color: var(--blue);
  background: #eef5ff;
  font-size: 13px;
  font-weight: 850;
}

.settings-message {
  margin: 0;
  padding: 11px 13px;
  border: 1px solid rgba(50, 159, 105, 0.18);
  border-radius: 14px;
  color: #23784d;
  background: #effbf5;
  font-weight: 850;
}

.settings-message.error {
  border-color: rgba(159, 58, 69, 0.18);
  color: #9f3a45;
  background: #fff4f6;
}

.settings-preference-grid,
.settings-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--grid-gap);
}

.settings-status-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 16px;
}

.password-action-row {
  display: flex;
  justify-content: flex-start;
  margin-top: 14px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.password-action-row .secondary-button {
  min-width: 190px;
}

.support-page {
  align-content: start;
}

.support-hero-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: clamp(24px, 4vw, 36px);
  overflow: hidden;
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 30px;
  color: #fff;
  background:
    radial-gradient(circle at 84% 16%, rgba(105, 216, 242, 0.24), transparent 28%),
    radial-gradient(circle at 8% 100%, rgba(155, 124, 247, 0.22), transparent 28%),
    linear-gradient(135deg, #0b1736, #123c91 58%, #6d5bd7);
  box-shadow: var(--shadow);
}

.support-hero-card h2 {
  margin: 8px 0 6px;
  font-size: clamp(30px, 4vw, 46px);
  line-height: 1.06;
}

.support-hero-card p {
  max-width: 720px;
  margin: 0;
  color: #dce8ff;
  line-height: 1.6;
}

.support-layout {
  display: grid;
  grid-template-columns: minmax(320px, 0.9fr) minmax(0, 1.1fr);
  gap: var(--grid-gap);
  align-items: start;
}

.support-form-card,
.support-history-card {
  padding: clamp(20px, 2.4vw, 28px);
  box-shadow: 0 18px 48px rgba(18, 60, 145, 0.09);
}

.support-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.support-form-grid label {
  display: grid;
  gap: 8px;
  color: var(--ink);
  font-size: 13px;
  font-weight: 900;
}

.support-form-grid input,
.support-form-grid select,
.support-form-grid textarea {
  width: 100%;
  min-height: 46px;
  padding: 0 13px;
  border: 1px solid var(--line);
  border-radius: 14px;
  color: var(--ink);
  background: #fff;
}

.support-form-grid textarea {
  min-height: 160px;
  padding: 13px;
  resize: vertical;
  line-height: 1.55;
}

.support-message-field {
  grid-column: 1 / -1;
}

.support-ticket-list {
  display: grid;
  gap: clamp(18px, 1.7vw, 24px);
}

.support-ticket-card {
  display: grid;
  gap: 14px;
  padding: 18px;
  border: 1px solid rgba(229, 234, 244, 0.9);
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.1), transparent 32%),
    linear-gradient(180deg, #ffffff, #f8fbff);
}

.support-ticket-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.support-ticket-head h3 {
  margin: 6px 0 5px;
  font-size: 18px;
}

.support-ticket-head small,
.support-reply-box small {
  color: var(--muted);
  font-weight: 800;
}

.support-ticket-card p {
  margin: 0;
  color: #465671;
  line-height: 1.6;
}

.support-ticket-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.support-badge,
.support-alert {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  font-weight: 900;
}

.support-badge {
  min-height: 28px;
  padding: 5px 10px;
  color: #123c91;
  background: #eef5ff;
  font-size: 12px;
  white-space: nowrap;
}

.support-status-open {
  color: #875d00;
  background: #fff7db;
}

.support-status-in_progress {
  color: #123c91;
  background: #eaf3ff;
}

.support-status-answered,
.support-priority-low {
  color: #166138;
  background: #e9f8ef;
}

.support-status-closed {
  color: #52627e;
  background: #eef1f6;
}

.support-priority-medium {
  color: #875d00;
  background: #fff7db;
}

.support-priority-high {
  color: #9f3a45;
  background: #fff0f2;
}

.support-reply-box {
  display: grid;
  gap: 6px;
  padding: 14px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 18px;
  color: #52637f;
  background: #f7faff;
}

.support-reply-box.has-reply {
  border-color: rgba(50, 159, 105, 0.18);
  background: #effbf5;
}

.support-reply-box strong {
  color: var(--ink);
}

.support-alert {
  min-height: 44px;
  padding: 0 15px;
  color: #083f69;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 16px 34px rgba(7, 15, 35, 0.12);
}

.support-alert .icon {
  color: var(--blue-2);
}

.dashboard-support-alert {
  justify-content: space-between;
  border: 1px solid rgba(105, 216, 242, 0.24);
  border-radius: 20px;
  background: linear-gradient(135deg, #eefbff, #f7f4ff);
  box-shadow: 0 16px 42px rgba(18, 60, 145, 0.08);
}

.dashboard-support-alert > div {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.support-admin-filters {
  flex-wrap: wrap;
}

.support-admin-table {
  min-width: 1120px;
}

.support-ticket-detail-grid {
  margin-bottom: 18px;
}

.support-reply-form {
  padding-top: 18px;
  border-top: 1px solid var(--line);
}

.security-settings-card,
.account-settings-card,
.profile-settings-card,
.preferences-settings-card {
  box-shadow: 0 16px 42px rgba(18, 60, 145, 0.08);
}

.legal-back-dashboard {
  margin-top: 18px;
}

.dashboard-templates,
.templates-catalog-page,
.builder-template-selection,
.resume-library-page {
  width: 100%;
  max-width: none;
}

.templates-catalog-hero,
.resume-library-hero {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 18px;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 28px;
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.2), transparent 32%),
    linear-gradient(135deg, #fff, #f5f9ff);
  box-shadow: 0 18px 50px rgba(18, 60, 145, 0.09);
}

.templates-catalog-hero h1,
.resume-library-hero h1 {
  margin: 8px 0 8px;
  color: var(--ink);
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1.06;
}

.templates-catalog-hero p,
.resume-library-hero p {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.template-search,
.resume-library-search {
  display: flex;
  align-items: center;
  gap: 8px;
  width: min(100%, 340px);
  min-height: 46px;
  padding: 0 14px;
  border: 1px solid rgba(191, 211, 242, 0.8);
  border-radius: 16px;
  background: #fff;
  color: var(--muted);
}

.template-search input,
.resume-library-search input {
  width: 100%;
  min-width: 0;
  border: 0;
  outline: 0;
  color: var(--ink);
  background: transparent;
  font: inherit;
}

.template-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 22px;
}

.template-filter-control {
  min-width: 0;
}

.template-filter-select {
  display: none;
  width: 100%;
  margin-bottom: 18px;
}

.template-filter-select span {
  display: block;
  margin: 0 0 8px;
  color: #52627e;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.template-filter-select select {
  width: 100%;
  min-height: 48px;
  padding: 0 42px 0 16px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
  color: var(--ink);
  font: inherit;
  font-weight: 850;
  outline: 0;
}

.template-filter-select select:focus {
  border-color: rgba(31, 105, 213, 0.42);
  box-shadow: 0 0 0 4px rgba(31, 105, 213, 0.1);
}

.template-filter-row button {
  min-height: 38px;
  padding: 0 15px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: #fff;
  color: #52627e;
  cursor: pointer;
  font: inherit;
  font-size: 14px;
  font-weight: 850;
}

.template-filter-row button:hover,
.template-filter-row button.active {
  color: var(--blue);
  border-color: rgba(31, 105, 213, 0.22);
  background: #eef5ff;
}

@media (max-width: 680px) {
  .template-filter-select {
    display: block;
  }

  .template-filter-row {
    display: none;
  }
}

.locked-feature {
  position: relative;
  overflow: hidden;
}

.locked-feature::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background:
    radial-gradient(circle at 88% 12%, rgba(105, 216, 242, 0.16), transparent 30%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(238, 245, 255, 0.34));
  box-shadow: inset 0 0 0 1px rgba(35, 99, 235, 0.08);
}

.locked-badge,
.feature-lock {
  position: relative;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: fit-content;
  max-width: 100%;
  min-height: 28px;
  padding: 6px 10px;
  border: 1px solid rgba(37, 99, 235, 0.18);
  border-radius: 999px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.92), rgba(237, 246, 255, 0.86)),
    radial-gradient(circle at 18% 12%, rgba(105, 216, 242, 0.28), transparent 34%);
  color: #12377f;
  box-shadow: 0 12px 30px rgba(31, 105, 213, 0.12);
  font-size: 11px;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0;
  white-space: normal;
}

.locked-badge .icon,
.feature-lock .icon,
.locked-action .icon {
  width: 14px;
  height: 14px;
  flex: 0 0 auto;
}

.feature-lock {
  color: #4f46e5;
}

.locked-action {
  position: relative;
  isolation: isolate;
  border-color: rgba(37, 99, 235, 0.2) !important;
  background:
    linear-gradient(135deg, rgba(239, 246, 255, 0.96), rgba(255, 255, 255, 0.96)) !important;
  color: #173b7a !important;
  box-shadow: 0 12px 28px rgba(31, 105, 213, 0.1);
}

.primary-button.locked-action {
  background: linear-gradient(135deg, #174aab, #6d5df2) !important;
  color: #fff !important;
  box-shadow: 0 18px 42px rgba(31, 105, 213, 0.26);
}

.locked-action:hover {
  transform: translateY(-1px);
  filter: drop-shadow(0 8px 18px rgba(41, 150, 245, 0.18));
}

.template-switch button.locked {
  color: var(--muted);
  border-color: rgba(31, 105, 213, 0.12);
  background: #f7faff;
}

.template-switch button.locked em {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.access-dialog {
  grid-template-rows: auto auto;
  max-width: 560px;
  height: auto;
  max-height: min(92vh, 680px);
  overflow: visible;
}

.access-feature-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 12px 0 4px;
}

.access-feature-row strong {
  color: var(--ink);
  font-size: 16px;
}

.access-benefits-wrap {
  display: grid;
  gap: 10px;
  margin: 14px 0 0;
}

.access-benefits-wrap > strong {
  color: var(--ink);
  font-size: 13px;
  font-weight: 900;
}

.access-benefits {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.access-benefits li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: #42506a;
  font-size: 14px;
  line-height: 1.45;
}

.access-benefits li::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-top: 7px;
  flex: 0 0 auto;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--cyan), var(--blue));
  box-shadow: 0 0 0 4px rgba(31, 105, 213, 0.08);
}

.access-actions {
  justify-content: flex-end;
}

:root[data-theme="dark"] .locked-badge,
:root[data-theme="dark"] .feature-lock,
:root[data-theme="dark"] .locked-action {
  border-color: rgba(105, 216, 242, 0.22) !important;
  background:
    linear-gradient(135deg, rgba(19, 33, 60, 0.96), rgba(11, 22, 43, 0.94)) !important;
  color: #dbeafe !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.28);
}

:root[data-theme="dark"] .primary-button.locked-action {
  background: linear-gradient(135deg, #1e5bd7, #7668f5) !important;
  color: #fff !important;
}

:root[data-theme="dark"] .locked-feature::after {
  background:
    radial-gradient(circle at 88% 12%, rgba(105, 216, 242, 0.12), transparent 30%),
    linear-gradient(180deg, rgba(15, 23, 42, 0), rgba(31, 105, 213, 0.12));
  box-shadow: inset 0 0 0 1px rgba(105, 216, 242, 0.1);
}

:root[data-theme="dark"] .access-feature-row strong,
:root[data-theme="dark"] .access-benefits-wrap > strong {
  color: #f8fbff;
}

:root[data-theme="dark"] .access-benefits li {
  color: #cbd5e1;
}

.watermark-dialog {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 16px;
  width: min(560px, 94vw);
  padding: clamp(20px, 3vw, 28px);
  overflow: hidden;
  border: 1px solid rgba(229, 234, 244, 0.94);
  border-radius: 28px;
  background:
    radial-gradient(circle at 86% 4%, rgba(105, 216, 242, 0.24), transparent 28%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), #f8fbff);
  box-shadow:
    0 34px 90px rgba(7, 15, 35, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.watermark-dialog::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: linear-gradient(90deg, var(--cyan), var(--blue-2), var(--purple));
}

.watermark-close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 2;
}

.watermark-hero {
  display: grid;
  gap: 8px;
  padding-right: 42px;
}

.watermark-hero h2 {
  margin: 0;
  color: #0b1736;
  font-size: clamp(26px, 4vw, 34px);
  line-height: 1.05;
}

.watermark-hero p {
  max-width: 490px;
  margin: 0;
  color: #52637f;
  font-size: 14.5px;
  line-height: 1.55;
}

.watermark-benefits {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.74);
}

.watermark-benefits span {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: #34435f;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
}

.watermark-benefits .icon {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  color: #1fa5c8;
}

.watermark-offer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-width: 0;
  padding: 16px;
  border: 1px solid rgba(31, 105, 213, 0.18);
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(238, 245, 255, 0.96), rgba(245, 241, 255, 0.9)),
    #fff;
  box-shadow: 0 18px 42px rgba(18, 60, 145, 0.12);
}

.watermark-offer > div {
  display: grid;
  gap: 5px;
  flex: 1 1 220px;
  min-width: 0;
}

.watermark-badge {
  width: fit-content;
  padding: 5px 9px;
  border-radius: 999px;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--purple));
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.watermark-offer strong {
  color: #10214a;
  font-size: clamp(20px, 3vw, 25px);
  line-height: 1.12;
  overflow-wrap: break-word;
}

.watermark-offer small {
  color: #63708a;
  font-size: 12.5px;
  font-weight: 800;
}

.watermark-paid-cta {
  flex: 0 0 auto;
  min-width: max-content;
  min-height: 48px;
  max-width: 100%;
  padding-inline: 20px;
  white-space: normal;
  overflow-wrap: normal;
  box-shadow: 0 18px 42px rgba(31, 105, 213, 0.24), 0 0 0 5px rgba(105, 216, 242, 0.08);
}

.watermark-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
}

.watermark-actions .secondary-button {
  color: #52637f;
  background: rgba(255, 255, 255, 0.7);
}

.watermark-actions .ghost-button {
  border-color: transparent;
  color: var(--blue);
  background: transparent;
}

.billing-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 24px;
  border-color: rgba(31, 105, 213, 0.18);
  background:
    radial-gradient(circle at 88% 4%, rgba(105, 216, 242, 0.2), transparent 30%),
    radial-gradient(circle at 8% 100%, rgba(155, 124, 247, 0.1), transparent 32%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(246, 250, 255, 0.92));
  box-shadow:
    0 22px 58px rgba(18, 60, 145, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.95);
}

.billing-summary h2 {
  margin: 6px 0;
}

.billing-summary p {
  margin: 0;
  color: #52637f;
  font-weight: 820;
}

.billing-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}

.payment-history-card h2 {
  margin: 0;
  font-size: 20px;
}

.payment-history-card {
  margin-top: clamp(44px, 5vw, 78px);
  margin-bottom: clamp(36px, 5vw, 68px);
}

.payment-history-card + .payment-faq {
  margin-top: clamp(12px, 2vw, 24px);
}

.dashboard-template-card {
  display: flex;
  flex-direction: column;
  padding: 18px;
  border-color: rgba(191, 211, 242, 0.65);
  background:
    radial-gradient(circle at 100% 0%, rgba(105, 216, 242, 0.08), transparent 26%),
    #fff;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease;
}

.dashboard-template-card:hover {
  transform: translateY(-4px);
  border-color: rgba(31, 105, 213, 0.2);
  box-shadow: 0 22px 58px rgba(18, 60, 145, 0.12);
}

.dashboard-template-card.is-hidden {
  display: none;
}

.dashboard-template-card .template-paper {
  min-height: 0;
}

.dashboard-template-card h3 {
  margin-top: 16px;
  line-height: 1.2;
}

.dashboard-template-card .secondary-button {
  margin-top: auto;
}

.template-badge {
  align-self: flex-start;
  margin-bottom: 10px;
  padding: 6px 10px;
  border-radius: 999px;
  color: var(--blue);
  background: rgba(238, 245, 255, 0.94);
  box-shadow: 0 10px 24px rgba(18, 60, 145, 0.12);
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.template-card-topline .template-badge {
  margin-bottom: 0;
}

.template-card-topline .template-badge:first-child {
  max-width: min(100%, 260px);
}

.template-card-topline .template-badge:last-child {
  max-width: min(100%, 150px);
  justify-content: center;
}

.builder-template-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 22px;
  padding: clamp(22px, 3vw, 34px);
  border: 1px solid rgba(229, 234, 244, 0.92);
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(238, 245, 255, 0.86)),
    #fff;
  box-shadow: 0 18px 52px rgba(18, 60, 145, 0.09);
}

.builder-template-hero h1 {
  max-width: 760px;
  margin: 8px 0 10px;
  font-size: clamp(32px, 4vw, 54px);
  letter-spacing: 0;
}

.builder-template-hero p {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  line-height: 1.65;
}

.builder-template-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  width: 100%;
}

.builder-template-card {
  min-width: 0;
  padding: 18px;
  border-radius: 24px;
}

.builder-template-card .template-card-topline {
  gap: 7px;
  margin-bottom: 10px;
}

.builder-template-card .template-badge {
  margin-bottom: 0;
  padding: 5px 8px;
  font-size: 11px;
}

.builder-template-card .template-sample-thumb {
  height: var(--resume-card-preview-height);
  margin: 0;
  padding: var(--resume-card-preview-padding);
  border-radius: 18px;
  background:
    linear-gradient(180deg, #f8fbff, #eef5ff);
}

.builder-template-card h3 {
  margin: 16px 0 5px;
  font-size: 20px;
}

.builder-template-card p {
  margin: 0;
  font-size: 15px;
  line-height: 1.45;
}

.builder-template-meta {
  min-height: 76px;
}

.builder-template-card .template-actions {
  margin-top: 16px;
  justify-content: space-between;
}

.builder-template-card .template-actions .small {
  flex: 1 1 0;
}

.app-shell.builder-workspace {
  height: 100vh;
  min-height: 100vh;
  overflow: hidden;
}

.app-shell.builder-workspace .dashboard-main {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  height: 100vh;
  min-height: 0;
  overflow: hidden;
}

.app-shell.builder-workspace .dashboard-topbar {
  padding: 8px 18px;
}

.app-shell.builder-workspace .dashboard-topbar h1 {
  margin-top: 2px;
  font-size: 21px;
}

.app-shell.builder-workspace .dashboard-search {
  max-width: 360px;
}

.builder-page {
  --builder-sidebar-w: 240px;
  --builder-form-w: 640px;
  --builder-preview-w: 560px;
  --builder-gap: 16px;
  --builder-pad-x: 14px;
  --builder-pad-y: 12px;
  box-sizing: border-box;
  grid-template-columns: var(--builder-sidebar-w) var(--builder-form-w) var(--builder-preview-w);
  grid-template-rows: auto minmax(0, 1fr);
  justify-self: center;
  justify-content: center;
  gap: var(--builder-gap);
  width: min(
    100%,
    calc(
      var(--builder-sidebar-w) + var(--builder-form-w) + var(--builder-preview-w) +
        var(--builder-gap) + var(--builder-gap) + var(--builder-pad-x) + var(--builder-pad-x)
    )
  );
  inline-size: min(
    100%,
    calc(
      var(--builder-sidebar-w) + var(--builder-form-w) + var(--builder-preview-w) +
        var(--builder-gap) + var(--builder-gap) + var(--builder-pad-x) + var(--builder-pad-x)
    )
  );
  max-inline-size: 100%;
  height: 100%;
  min-height: 0;
  align-items: stretch;
  overflow: hidden;
  margin: 0 auto;
  padding: var(--builder-pad-y) var(--builder-pad-x);
}

.builder-exit-row {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: subgrid;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-width: 0;
  min-height: 30px;
}

.admin-builder-tools {
  display: flex;
  justify-content: flex-end;
  min-width: 0;
}

.builder-exit-meta {
  grid-column: 2 / 4;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.admin-builder-tool {
  min-height: 30px;
  padding-inline: 10px;
  border-style: dashed;
  border-radius: 999px;
  box-shadow: none;
}

.admin-builder-tool span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.admin-test-resume-dialog {
  width: min(460px, 94vw);
}

.admin-test-resume-dialog .template-preview-header {
  align-items: start;
}

.admin-test-resume-actions {
  justify-content: flex-end;
  padding: 0 26px 26px;
}

.builder-experience-list,
.builder-education-list {
  display: grid;
  gap: 18px;
}

.builder-experience-item,
.builder-education-item {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 16px;
  border: 1px solid rgba(35, 65, 110, 0.12);
  border-radius: 18px;
  background: rgba(247, 251, 255, 0.78);
}

.builder-experience-head,
.builder-education-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.builder-experience-head strong,
.builder-education-head strong {
  color: var(--ink);
  font-size: 14px;
  font-weight: 950;
}

.builder-experience-head .small,
.builder-education-head .small {
  min-height: 32px;
  padding-inline: 12px;
}

.builder-experience-item textarea,
.builder-education-item textarea {
  min-height: 154px;
}

.builder-experience-actions,
.builder-list-actions {
  margin-top: 16px;
}

[data-save-resume],
[data-cover-letter-save] {
  transition:
    transform 0.18s ease,
    background 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

[data-save-resume].is-saving,
[data-cover-letter-save].is-saving {
  opacity: 0.82;
  cursor: wait;
}

[data-save-resume].is-saved,
[data-cover-letter-save].is-saved {
  border-color: #16a36b !important;
  background: linear-gradient(135deg, #16a36b, #22c55e) !important;
  color: #ffffff !important;
  box-shadow: 0 14px 34px rgba(22, 163, 107, 0.28) !important;
  animation: saveConfirmPop 0.34s ease both;
}

[data-save-resume].is-saved .icon,
[data-cover-letter-save].is-saved .icon {
  animation: saveCheckDraw 0.38s ease both;
}

@keyframes saveConfirmPop {
  0% {
    transform: scale(0.98);
  }
  55% {
    transform: scale(1.045);
  }
  100% {
    transform: scale(1);
  }
}

@keyframes saveCheckDraw {
  0% {
    transform: scale(0.72) rotate(-10deg);
    opacity: 0;
  }
  100% {
    transform: scale(1) rotate(0);
    opacity: 1;
  }
}

.builder-exit-button {
  justify-self: center;
  width: 100%;
  max-width: var(--builder-sidebar-w);
  min-height: 30px;
  padding-inline: 10px 12px;
  border-radius: 999px;
  font-size: 12.5px;
  line-height: 1.15;
  white-space: normal;
  text-align: center;
  box-shadow: none;
}

.builder-exit-button .icon {
  width: 15px;
  height: 15px;
}

.builder-flow-sidebar {
  align-self: stretch;
  justify-self: center;
  position: static;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  gap: 8px;
  min-width: 0;
  width: 100%;
  max-width: var(--builder-sidebar-w);
  min-height: 0;
  overflow: hidden;
}

.builder-flow-sidebar .completion-card {
  grid-template-columns: 1fr;
  gap: 8px;
  padding: 10px;
  border-radius: 15px;
}

.builder-flow-sidebar .completion-card h2 {
  margin: 2px 0 6px;
  font-size: 18px;
  line-height: 1.05;
}

.builder-flow-sidebar .completion-card .eyebrow {
  font-size: 10px;
}

.builder-flow-sidebar .completion-card .progress {
  height: 9px;
}

.builder-template-pill {
  display: grid;
  gap: 3px;
  padding: 8px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 12px;
  background: #f7faff;
}

.builder-template-pill span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.builder-template-pill strong {
  color: var(--blue);
  font-size: 12.5px;
  line-height: 1.2;
}

.builder-format-compact .document-format-switch {
  display: grid;
  gap: 5px;
  margin-top: 0;
  max-width: none;
}

.builder-format-compact .document-format-switch strong {
  font-size: 10px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.builder-format-compact .document-format-switch > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 5px;
}

.builder-format-compact .document-format-switch button {
  min-height: 28px;
  padding: 3px 6px;
  border-radius: 8px;
  font-size: 10.5px;
}

.builder-flow-sidebar .builder-section-nav {
  position: static;
  display: grid;
  align-content: start;
  gap: 4px;
  min-height: 0;
  padding: 7px;
  overflow: hidden;
  border-radius: 15px;
}

.builder-flow-sidebar .builder-section-nav button {
  justify-content: space-between;
  width: 100%;
  min-height: 29px;
  padding: 0 7px 0 9px;
  border-radius: 9px;
  text-align: left;
  font-size: 11.5px;
  line-height: 1.1;
}

.builder-flow-sidebar .builder-section-nav button em {
  width: 14px;
  height: 14px;
  font-size: 9px;
}

.builder-flow-sidebar .builder-section-nav button.active {
  color: #fff;
  border-color: transparent;
  background: linear-gradient(135deg, var(--blue), #745ce6);
  box-shadow: 0 12px 28px rgba(31, 105, 213, 0.2);
}

.builder-flow-sidebar .builder-section-nav button.active em {
  color: var(--blue);
  background: #fff;
}

.builder-form {
  align-self: stretch;
  justify-self: center;
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  width: 100%;
  max-width: var(--builder-form-w);
  min-height: 0;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  padding-right: 5px;
  scrollbar-width: thin;
  scrollbar-color: rgba(31, 105, 213, 0.28) transparent;
}

.builder-panel {
  border-radius: 16px;
  padding: clamp(14px, 1.3vw, 18px);
}

.builder-panel .form-section-head {
  cursor: default;
}

.builder-panel .form-section-head::after {
  content: none;
}

.builder-panel[hidden] {
  display: none;
}

.builder-step-actions {
  position: sticky;
  bottom: 0;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 12px 34px rgba(18, 60, 145, 0.06);
}

.builder-step-actions button {
  min-width: 112px;
  min-height: 34px;
  padding-inline: 14px;
}

.finish-panel {
  display: grid;
  gap: 12px;
}

.finish-panel h3 {
  margin: 4px 0;
  font-size: 20px;
}

.finish-panel p {
  margin: 0;
  color: var(--muted);
}

.builder-preview {
  align-self: stretch;
  justify-self: center;
  position: static;
  display: grid;
  justify-items: center;
  align-items: start;
  min-width: 0;
  width: 100%;
  max-width: var(--builder-preview-w);
  min-height: 0;
  gap: 0;
  height: 100%;
  overflow: hidden;
}

.builder-preview-frame {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  width: 100%;
  overflow-x: hidden;
  overflow-y: hidden;
  height: 100%;
  min-height: 0;
  max-height: none;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.builder-preview-frame .resume-document {
  box-shadow: 0 24px 64px rgba(18, 60, 145, 0.18);
}

.app-shell.builder-workspace .empty-builder-state {
  gap: 9px;
  padding: 10px 12px;
  border-radius: 16px;
}

.app-shell.builder-workspace .empty-builder-state p {
  font-size: 12.5px;
  line-height: 1.35;
}

.app-shell.builder-workspace .form-section-head {
  gap: 10px;
  margin-bottom: 12px;
}

.app-shell.builder-workspace .form-section h2 {
  margin-top: 3px;
  font-size: 19px;
}

.app-shell.builder-workspace .form-section-head p {
  margin-top: 4px;
  font-size: 12.5px;
  line-height: 1.35;
}

.app-shell.builder-workspace .two-col {
  gap: 10px;
}

.app-shell.builder-workspace .builder-form label {
  gap: 5px;
  font-size: 12.5px;
}

.app-shell.builder-workspace .builder-form input,
.app-shell.builder-workspace .builder-form select {
  min-height: 36px;
}

.app-shell.builder-workspace .builder-form textarea {
  min-height: 112px;
}

.app-shell.builder-workspace .builder-experience-list,
.app-shell.builder-workspace .builder-education-list {
  gap: 12px;
}

.app-shell.builder-workspace .builder-experience-item,
.app-shell.builder-workspace .builder-education-item {
  gap: 10px;
  padding: 12px;
  border-radius: 14px;
}

.app-shell.builder-workspace .builder-experience-item textarea,
.app-shell.builder-workspace .builder-education-item textarea {
  min-height: 118px;
}

.app-shell.builder-workspace .section-actions {
  gap: 8px;
}

.app-shell.builder-workspace .section-actions .small,
.app-shell.builder-workspace .form-section-head .small {
  min-height: 32px;
  padding-inline: 11px;
  font-size: 12px;
}

@media (min-width: 1161px) and (max-height: 820px) {
  .app-shell.builder-workspace .dashboard-topbar {
    padding: 6px 16px;
  }

  .app-shell.builder-workspace .dashboard-topbar h1 {
    font-size: 19px;
  }

  .app-shell.builder-workspace .dashboard-topbar .eyebrow {
    font-size: 10px;
  }

  .app-shell.builder-workspace .dashboard-search input {
    padding-block: 8px;
  }

  .app-shell.builder-workspace .user-menu {
    min-height: 34px;
  }

  .builder-page {
    --builder-sidebar-w: 210px;
    --builder-form-w: 590px;
    --builder-preview-w: 520px;
    --builder-gap: 10px;
    --builder-pad-x: 12px;
    --builder-pad-y: 8px;
  }

  .builder-exit-button,
  .builder-flow-sidebar {
    max-width: var(--builder-sidebar-w);
  }

  .builder-form {
    max-width: var(--builder-form-w);
  }

  .builder-preview {
    max-width: var(--builder-preview-w);
  }

  .builder-exit-row {
    min-height: 28px;
  }

  .builder-exit-button,
  .admin-builder-tool {
    min-height: 28px;
    padding-inline: 9px 11px;
    font-size: 12px;
  }

  .builder-flow-sidebar {
    gap: 7px;
  }

  .builder-flow-sidebar .completion-card {
    gap: 6px;
    padding: 8px;
    border-radius: 13px;
  }

  .builder-flow-sidebar .completion-card h2 {
    margin-bottom: 4px;
    font-size: 16px;
  }

  .builder-flow-sidebar .completion-card .progress {
    height: 8px;
  }

  .builder-template-pill {
    padding: 6px 7px;
    border-radius: 10px;
  }

  .builder-template-pill span,
  .builder-format-compact .document-format-switch strong {
    font-size: 9.5px;
    letter-spacing: 0.05em;
  }

  .builder-template-pill strong {
    font-size: 12px;
  }

  .builder-format-compact .document-format-switch {
    gap: 4px;
  }

  .builder-format-compact .document-format-switch button {
    min-height: 25px;
    padding: 2px 5px;
    border-radius: 8px;
    font-size: 10px;
    line-height: 1.05;
  }

  .builder-flow-sidebar .builder-section-nav {
    gap: 3px;
    padding: 6px;
    border-radius: 13px;
  }

  .builder-flow-sidebar .builder-section-nav button {
    min-height: 25px;
    padding-inline: 7px;
    border-radius: 8px;
    font-size: 10.5px;
  }

  .builder-flow-sidebar .builder-section-nav button em {
    width: 12px;
    height: 12px;
    font-size: 8px;
  }

  .builder-form {
    gap: 8px;
  }

  .builder-panel {
    padding: 12px;
    border-radius: 14px;
  }

  .app-shell.builder-workspace .empty-builder-state {
    padding: 8px 10px;
  }

  .app-shell.builder-workspace .form-section-head {
    margin-bottom: 10px;
  }

  .builder-step-actions {
    padding: 7px;
  }
}

@media (min-width: 1161px) and (max-height: 720px) {
  .app-shell.builder-workspace .dashboard-topbar {
    padding: 5px 14px;
  }

  .app-shell.builder-workspace .dashboard-search {
    max-width: 320px;
  }

  .builder-page {
    --builder-sidebar-w: 192px;
    --builder-form-w: 540px;
    --builder-preview-w: 500px;
    --builder-gap: 8px;
    --builder-pad-x: 10px;
    --builder-pad-y: 7px;
  }

  .builder-exit-button,
  .builder-flow-sidebar {
    max-width: var(--builder-sidebar-w);
  }

  .builder-form {
    max-width: var(--builder-form-w);
  }

  .builder-preview {
    max-width: var(--builder-preview-w);
  }

  .builder-flow-sidebar {
    gap: 6px;
  }

  .builder-flow-sidebar .completion-card {
    gap: 5px;
    padding: 7px;
  }

  .builder-flow-sidebar .completion-card h2 {
    font-size: 15px;
  }

  .builder-flow-sidebar .completion-card .eyebrow {
    font-size: 9px;
  }

  .builder-template-pill {
    padding: 5px 6px;
  }

  .builder-format-compact .document-format-switch button {
    min-height: 23px;
    font-size: 9.5px;
  }

  .builder-flow-sidebar .builder-section-nav {
    gap: 2px;
    padding: 5px;
  }

  .builder-flow-sidebar .builder-section-nav button {
    min-height: 22px;
    font-size: 10px;
  }
}

@media (min-width: 1161px) and (max-width: 1500px) {
  .builder-page {
    --builder-sidebar-w: 190px;
    --builder-form-w: 520px;
    --builder-preview-w: 460px;
    --builder-gap: 8px;
    --builder-pad-x: 10px;
    --builder-pad-y: 8px;
  }

  .builder-exit-button,
  .builder-flow-sidebar {
    max-width: var(--builder-sidebar-w);
  }

  .builder-form {
    max-width: var(--builder-form-w);
  }

  .builder-preview {
    max-width: var(--builder-preview-w);
  }
}

@media (min-width: 1161px) and (max-width: 1280px) {
  .builder-page {
    --builder-sidebar-w: 168px;
    --builder-form-w: 450px;
    --builder-preview-w: 390px;
    --builder-gap: 7px;
    --builder-pad-x: 8px;
    --builder-pad-y: 7px;
  }

  .builder-exit-button,
  .builder-flow-sidebar {
    max-width: var(--builder-sidebar-w);
  }

  .builder-form {
    max-width: var(--builder-form-w);
  }

  .builder-preview {
    max-width: var(--builder-preview-w);
  }
}

@media (min-width: 1501px) and (max-width: 1800px) {
  .builder-page {
    --builder-sidebar-w: 220px;
    --builder-form-w: 600px;
    --builder-preview-w: 520px;
    --builder-gap: 10px;
    --builder-pad-x: 12px;
    --builder-pad-y: 9px;
  }

  .builder-exit-button,
  .builder-flow-sidebar {
    max-width: var(--builder-sidebar-w);
  }

  .builder-form {
    max-width: var(--builder-form-w);
  }

  .builder-preview {
    max-width: var(--builder-preview-w);
  }
}

.compact-pricing {
  max-width: 1120px;
}

.empty-state {
  display: grid;
  place-items: center;
  min-height: 360px;
  text-align: center;
}

.empty-state .icon {
  width: 46px;
  height: 46px;
  color: var(--blue);
}

@media (max-width: 1320px) {
  .hero {
    grid-template-columns: minmax(0, 0.98fr) minmax(360px, 0.92fr);
    column-gap: clamp(22px, 3vw, 38px);
    row-gap: 18px;
    padding-top: 18px;
    padding-bottom: 34px;
  }

  .hero h1 {
    font-size: clamp(35px, 4vw, 54px);
  }

  .hero-visual {
    max-width: 560px;
  }

  .resume-preview.mini {
    min-height: clamp(252px, 27vw, 310px);
  }
}

@media (max-width: 1400px) and (min-width: 861px) {
  .blog-hero {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 0.56fr);
    gap: clamp(22px, 3vw, 36px);
    padding-top: clamp(32px, 3.4vw, 46px);
    padding-bottom: clamp(30px, 3.2vw, 42px);
  }

  .blog-hero h1 {
    max-width: 650px;
    font-size: clamp(36px, 3.9vw, 54px);
  }

  .blog-hero p {
    max-width: 610px;
  }

  .blog-hero-visual {
    max-width: 360px;
  }
}

@media (max-width: 1240px) {
  .option-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .dashboard-monetization .option-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .trust-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .credits-band {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 1180px) and (min-width: 861px) {
  .site-header {
    gap: 16px;
  }

  .public-nav {
    gap: 10px;
    font-size: 13px;
  }

  .hero {
    grid-template-columns: minmax(0, 1fr) minmax(330px, 0.82fr);
    column-gap: 24px;
    row-gap: 16px;
    padding-top: 16px;
    padding-bottom: 30px;
  }

  .hero h1 {
    font-size: clamp(34px, 4.2vw, 48px);
  }

  .hero p {
    font-size: 16.5px;
    line-height: 1.46;
  }

  .trust-row {
    margin-top: 12px;
  }

  .trust-row span {
    padding: 7px 10px;
    font-size: 12.5px;
  }

  .hero-value-strip {
    gap: 10px;
  }

  .hero-value-card {
    grid-template-columns: 34px minmax(0, 1fr);
    min-height: 76px;
    padding: 11px;
  }

  .hero-value-icon {
    width: 34px;
    height: 34px;
    border-radius: 12px;
  }

  .hero-visual {
    max-width: 470px;
  }

  .hero-product-chips {
    top: 16px;
    right: 14px;
    max-width: 230px;
  }

  .application-checklist {
    left: -4px;
    bottom: 34px;
  }

  .hero-product-chips span,
  .application-checklist span {
    min-height: 26px;
    font-size: 10.5px;
  }

  .editor-grid {
    grid-template-columns: 1fr;
  }

  .editor-form {
    display: none;
  }

  .resume-preview.mini {
    min-height: 285px;
  }
}

@media (max-height: 820px) and (min-width: 861px) {
  .hero {
    row-gap: 8px;
    padding-top: 26px;
    padding-bottom: 30px;
  }

  .hero h1 {
    font-size: clamp(38px, 4.25vw, 58px);
    line-height: 1.01;
  }

  .hero p {
    margin-top: 12px;
    max-width: 610px;
    font-size: 17px;
    line-height: 1.48;
  }

  .hero-actions {
    margin-top: 14px;
  }

  .trust-row {
    margin-top: 12px;
  }

  .hero-visual {
    max-width: 590px;
  }

  .resume-preview.mini {
    min-height: 285px;
  }

  .floating-score {
    bottom: 16px;
  }

  .hero-value-strip {
    gap: 12px;
    margin-top: -14px;
  }

  .hero-value-card {
    min-height: 76px;
    padding: 12px;
  }
}

@media (max-width: 1160px) {
  .resume-library {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .app-shell.builder-workspace {
    height: auto;
    min-height: 100vh;
    overflow: visible;
  }

  .app-shell.builder-workspace .dashboard-main {
    display: block;
    height: auto;
    overflow: visible;
  }

  .app-shell.builder-workspace .dashboard-topbar {
    padding: 16px 28px;
  }

  .app-shell.builder-workspace .dashboard-topbar h1 {
    margin-top: 4px;
    font-size: 28px;
  }

  .feature-grid,
  .template-grid,
  .dashboard-templates,
  .resume-library {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .credits-grid,
  .blog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .builder-page,
  .ai-page,
  .cover-letter-builder,
  .cover-letter-builder-page {
    grid-template-columns: 1fr;
    height: auto;
    min-height: 0;
    overflow: visible;
    max-width: none;
  }

  .builder-preview,
  .builder-flow-sidebar,
  .letter-preview-panel {
    position: static;
    height: auto;
    overflow: visible;
  }

  .builder-flow-sidebar {
    grid-template-rows: auto;
  }

  .builder-form {
    height: auto;
    overflow: visible;
    padding-right: 0;
  }

  .builder-preview-frame {
    height: auto;
    min-height: min(78vh, 720px);
    max-height: none;
    overflow-x: hidden;
    overflow-y: auto;
  }

  .completion-card {
    grid-template-columns: 1fr;
  }

  .dashboard-grid {
    grid-template-columns: 1fr;
  }

  .workspace-hero,
  .workspace-grid,
  .recent-resume-grid {
    grid-template-columns: 1fr;
  }

  .workspace-hero {
    align-items: start;
  }

  .main-resume-card {
    min-height: 210px;
  }

  .workspace-grid {
    gap: 16px;
  }

  .next-step-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .builder-template-grid {
    grid-template-columns: repeat(2, minmax(220px, 1fr));
  }

  .blog-hero {
    grid-template-columns: minmax(0, 1fr) minmax(290px, 0.56fr);
    padding-inline: clamp(24px, 3.2vw, 38px);
  }

  .blog-hero h1 {
    font-size: clamp(35px, 4.1vw, 50px);
  }

  .blog-hero p {
    font-size: 16px;
    line-height: 1.52;
  }

  .hero-blog-search {
    max-width: 470px;
  }

  .blog-insight-card {
    width: min(100%, 230px);
  }

  .blog-insight-card strong {
    font-size: 42px;
  }

  .featured-blog-card {
    grid-template-columns: minmax(0, 1fr) minmax(200px, 0.38fr);
  }

  .featured-blog-card .primary-button {
    grid-column: 1 / -1;
    justify-self: start;
  }

  .blog-article-layout {
    grid-template-columns: 1fr;
  }

  .blog-toc {
    position: static;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .blog-toc span {
    grid-column: 1 / -1;
  }
}

@media (max-width: 860px) {
  .ai-page,
  .ai-keyword-grid {
    grid-template-columns: 1fr;
  }

  .ai-recommendation-card {
    grid-column: auto;
  }

  .cover-letter-card {
    grid-template-columns: 1fr;
  }

  .cover-letter-card-actions {
    justify-content: stretch;
  }

  .cover-letter-card-actions .small {
    flex: 1 1 140px;
  }

  .cover-letter-builder-page {
    display: grid;
    gap: 14px;
  }

  .cover-letter-builder-topbar {
    grid-column: 1;
    justify-content: flex-start;
  }

  .cover-letter-mobile-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin-bottom: 0;
    padding: 6px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.9);
  }

  .cover-letter-mobile-tabs button {
    min-height: 42px;
    border: 0;
    border-radius: 12px;
    background: transparent;
    color: var(--muted);
    font-weight: 800;
    cursor: pointer;
  }

  .cover-letter-mobile-tabs button.active {
    background: linear-gradient(135deg, var(--blue), var(--purple));
    color: #fff;
  }

  .cover-letter-builder-page .letter-preview-panel {
    display: none;
    margin-top: 16px;
  }

  .cover-letter-builder-page.show-preview .letter-form-panel {
    display: none;
  }

  .cover-letter-builder-page.show-preview .letter-preview-panel {
    display: grid;
  }

  .ai-keyword-grid {
    grid-column: auto;
  }

  .ai-section-head,
  .ai-tool-suggestion-card footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .ai-tool-suggestion-card footer .small {
    width: 100%;
  }

  .site-header {
    align-items: center;
    grid-template-columns: minmax(0, 1fr) auto;
    width: 100vw;
    max-width: 100vw;
  }

  .site-header .brand {
    min-width: 0;
  }

  .nav-toggle {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    grid-column: 2;
    justify-self: end;
    position: fixed;
    top: 8px;
    right: auto;
    left: calc(100vw - 58px);
    left: min(calc(100vw - 58px), calc(100dvw - 58px));
    z-index: 80;
    width: 40px;
    height: 40px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #fff;
    color: var(--blue);
    opacity: 1;
    visibility: visible;
  }

  .nav-toggle .icon {
    width: 20px;
    height: 20px;
  }

  .public-nav {
    position: absolute;
    top: 58px;
    right: 20px;
    left: 20px;
    display: none;
    flex-direction: column;
    align-items: stretch;
    padding: 18px;
    border: 1px solid var(--line);
    border-radius: 22px;
    background: #fff;
    box-shadow: var(--shadow);
  }

  .public-nav-center,
  .public-nav-actions {
    align-items: stretch;
    flex-direction: column;
    gap: 10px;
  }

  .public-nav-actions .nav-preferences {
    align-self: flex-start;
  }

  .public-nav-actions .ghost-button,
  .public-nav-actions .primary-button {
    width: 100%;
  }

  .public-nav.open {
    display: flex;
  }

  .hero {
    grid-template-columns: 1fr;
    gap: 22px;
    padding-top: 18px;
    padding-bottom: 42px;
  }

  .hero::before {
    inset: 18px var(--page-x) auto auto;
    width: min(86vw, 580px);
    height: 390px;
    opacity: 0.76;
    transform: rotate(-3deg);
  }

  .hero-value-strip {
    grid-row: 3;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 0;
  }

  .hero-copy {
    max-width: 720px;
  }

  .hero-visual {
    grid-row: 2;
    width: min(100%, 620px);
    max-width: 620px;
    justify-self: center;
  }

  .hero-product-chips {
    top: 18px;
    right: 16px;
    max-width: 250px;
  }

  .application-checklist {
    left: 10px;
    bottom: 56px;
  }

  .hero-visual-glow {
    inset: 5% 4% 8%;
  }

  .editor-grid,
  .split-band,
  .steps,
  .template-grid,
  .pricing-grid,
  .credits-grid,
  .blog-controls,
  .blog-grid,
  .dashboard-monetization .option-grid,
  .testimonial-preview,
  .faq-grid,
  .auth-shell,
  .welcome-panel,
  .two-col {
    grid-template-columns: 1fr;
  }

  .blog-hero {
    grid-template-columns: 1fr;
    width: min(calc(100% - (var(--page-x) * 2)), 760px);
    padding: clamp(30px, 5vw, 42px) clamp(22px, 5vw, 36px);
    text-align: center;
  }

  .blog-hero-visual {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    max-width: 560px;
    justify-self: center;
  }

  .blog-insight-card {
    justify-self: stretch;
    width: 100%;
  }

  .blog-hero h1,
  .blog-hero p,
  .hero-blog-search {
    margin-right: auto;
    margin-left: auto;
  }

  .blog-cluster-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .blog-bottom-cta {
    align-items: flex-start;
    flex-direction: column;
  }

  .templates-catalog-hero,
  .resume-library-hero {
    align-items: stretch;
    flex-direction: column;
  }

  .template-search,
  .resume-library-search {
    width: 100%;
  }

  .resume-library-controls,
  .resume-library,
  .resume-library-card {
    grid-template-columns: 1fr;
  }

  .floating-score {
    right: 10px;
    bottom: -16px;
  }

  .app-shell {
    grid-template-columns: 1fr;
  }

  .app-shell.admin-shell,
  .app-shell.sidebar-collapsed {
    grid-template-columns: 1fr;
  }

  .sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 40;
    width: min(86vw, 300px);
    transform: translateX(-105%);
    transition: transform 280ms cubic-bezier(0.22, 1, 0.36, 1), box-shadow 220ms ease;
    box-shadow: var(--shadow);
    will-change: transform;
  }

  .sidebar-backdrop {
    position: fixed;
    inset: 0;
    z-index: 35;
    display: block;
    border: 0;
    padding: 0;
    background: rgba(10, 18, 36, 0.28);
    opacity: 0;
    pointer-events: none;
    transition: opacity 240ms ease;
    backdrop-filter: blur(3px);
  }

  .sidebar.open + .sidebar-backdrop {
    opacity: 1;
    pointer-events: auto;
  }

  .app-shell.sidebar-collapsed .sidebar {
    width: min(86vw, 300px);
    padding: 20px;
  }

  .app-shell.sidebar-collapsed .brand-word,
  .app-shell.sidebar-collapsed .side-nav a,
  .app-shell.sidebar-collapsed .sidebar-link-button {
    font-size: 14px;
  }

  .app-shell.sidebar-collapsed .side-nav a,
  .app-shell.sidebar-collapsed .sidebar-link-button {
    display: flex;
    gap: 10px;
    justify-content: flex-start;
    width: 100%;
    height: auto;
    margin-inline: 0;
    padding: 0 13px;
  }

  .app-shell.sidebar-collapsed .side-nav a span,
  .app-shell.sidebar-collapsed .sidebar-link-button span {
    display: inline-block;
    max-width: 190px;
    opacity: 1;
    transform: translateX(0);
    visibility: visible;
  }

  .app-shell.sidebar-collapsed .brand-word {
    max-width: 150px;
    opacity: 1;
    transform: translateX(0);
    visibility: visible;
  }

  .app-shell.sidebar-collapsed .sidebar-head .brand {
    max-width: none;
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }

  .app-shell.sidebar-collapsed .sidebar-upgrade {
    font-size: inherit;
    max-height: 220px;
    padding: 12px;
    opacity: 1;
    pointer-events: auto;
    transform: none;
  }

  .sidebar-upgrade:empty {
    display: none;
  }

  .sidebar-collapse-button {
    display: none;
  }

  .dashboard-main {
    grid-column: 1;
  }

  .sidebar.open {
    transform: translateX(0);
  }

  .sidebar .sidebar-toggle,
  .dashboard-topbar .sidebar-toggle {
    display: inline-flex;
  }

  .topbar-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: 100%;
    max-width: 100%;
  }

  .dashboard-guide-link {
    min-height: 36px;
    padding-inline: 11px;
  }

  .template-preview-dialog.onboarding-guide-dialog {
    width: min(calc(100vw - 24px), 520px);
    height: auto;
    max-height: calc(100dvh - 18px);
    grid-template-rows: auto minmax(0, 1fr) auto;
  }

  .onboarding-guide-header {
    align-items: flex-start;
    gap: 12px;
    padding: 16px 16px 10px;
  }

  .onboarding-guide-steps {
    gap: 8px;
    max-height: none;
    min-height: 0;
    overflow-y: auto;
    padding: 8px 16px 10px;
  }

  .onboarding-guide-step {
    align-items: start;
    border-radius: 14px;
    gap: 10px;
    grid-template-columns: 42px minmax(0, 1fr);
    min-height: 0;
    padding: 10px 12px;
  }

  .onboarding-guide-step-icon {
    border-radius: 13px;
    height: 42px;
    width: 42px;
  }

  .onboarding-guide-step-icon .icon {
    height: 19px;
    width: 19px;
  }

  .onboarding-guide-step small {
    font-size: 11px;
    margin-bottom: 4px;
  }

  .onboarding-guide-step h3 {
    font-size: 16px;
    line-height: 1.16;
    margin-bottom: 3px;
  }

  .onboarding-guide-step p {
    font-size: 12.7px;
    line-height: 1.28;
  }

  .onboarding-guide-header h2 {
    margin: 5px 0 5px;
    font-size: clamp(23px, 6vw, 28px);
    line-height: 1.1;
  }

  .onboarding-guide-header p {
    font-size: 13.5px;
    line-height: 1.34;
  }

  .onboarding-guide-actions {
    align-items: stretch;
    flex-direction: column;
    gap: 8px;
    padding: 10px 16px 14px;
  }

  .onboarding-guide-actions .primary-button,
  .onboarding-guide-actions .secondary-button,
  .onboarding-guide-actions .ghost-button {
    min-height: 42px;
    width: 100%;
  }

  @media (max-height: 720px) {
    .template-preview-dialog.onboarding-guide-dialog {
      width: min(calc(100vw - 18px), 520px);
      max-height: calc(100dvh - 12px);
      border-radius: 22px;
    }

    .onboarding-guide-header {
      padding: 14px 14px 8px;
    }

    .onboarding-guide-header h2 {
      font-size: clamp(21px, 5.6vw, 25px);
    }

    .onboarding-guide-header p {
      font-size: 12.8px;
      line-height: 1.3;
    }

    .onboarding-guide-steps {
      gap: 7px;
      padding: 7px 14px 8px;
    }

    .onboarding-guide-step {
      grid-template-columns: 38px minmax(0, 1fr);
      gap: 9px;
      padding: 9px 10px;
    }

    .onboarding-guide-step-icon {
      height: 38px;
      width: 38px;
    }

    .onboarding-guide-step h3 {
      font-size: 15px;
    }

    .onboarding-guide-step p {
      font-size: 12.2px;
      line-height: 1.24;
    }

    .onboarding-guide-actions {
      gap: 7px;
      padding: 8px 14px 10px;
    }

    .onboarding-guide-actions .primary-button,
    .onboarding-guide-actions .secondary-button,
    .onboarding-guide-actions .ghost-button {
      min-height: 38px;
    }
  }

  .dashboard-topbar {
    align-items: stretch;
    flex-wrap: wrap;
    max-width: 100vw;
    overflow-x: clip;
  }

  .dashboard-content,
  .workspace-home {
    width: 100vw;
    max-width: 100vw;
    overflow-x: clip;
  }

  .dashboard-search {
    order: 3;
    max-width: none;
    width: 100%;
  }

  .user-menu {
    justify-content: center;
    width: 40px;
    padding: 0;
  }

  .user-menu {
    font-size: 0;
  }

  .user-dropdown {
    min-width: min(286px, calc(100vw - 28px));
  }

  .user-menu-wrap {
    display: none;
  }

  .workspace-hero {
    grid-template-columns: 1fr;
    gap: 18px;
    width: calc(100vw - (var(--page-x) * 2));
    max-width: calc(100vw - (var(--page-x) * 2));
    min-width: 0;
    padding: 22px;
    border-radius: 24px;
  }

  .workspace-hero-main,
  .workspace-hero-copy,
  .workspace-hero .quick-actions,
  .plan-strip,
  .main-resume-card {
    min-width: 0;
    max-width: 100%;
  }

  .workspace-hero h2 {
    max-width: 100%;
    font-size: clamp(28px, 7.4vw, 36px);
    line-height: 1.08;
    overflow-wrap: anywhere;
  }

  .workspace-hero p {
    max-width: 100%;
    font-size: 14.5px;
    line-height: 1.5;
  }

  .plan-strip,
  .workspace-hero .quick-actions {
    flex-wrap: wrap;
    gap: 8px;
  }

  .workspace-hero .primary-button,
  .workspace-hero .secondary-button {
    flex: 1 1 auto;
    min-height: 42px;
    padding-inline: 14px;
    white-space: normal;
  }

  .workspace-hero .hero-primary-actions .primary-button {
    flex-basis: 100%;
  }

  .hero-chip {
    flex: 1 1 auto;
    min-height: 32px;
    white-space: normal;
  }

  .main-resume-card {
    width: 100%;
    max-width: 100%;
    min-height: auto;
    padding: 18px;
    border-radius: 20px;
  }

  .progress-chip-row span,
  .mini-chip-row span {
    min-height: 26px;
    font-size: 11px;
  }

  .workspace-home .dash-card {
    min-height: auto;
    border-radius: 20px;
  }

  .empty-resume-state,
  .section-row-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .mobile-bottom-nav {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 25;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 4px;
    width: 100vw;
    max-width: 100vw;
    padding: 8px;
    overflow: hidden;
    border-top: 1px solid var(--line);
    background: rgba(255, 255, 255, 0.94);
    backdrop-filter: blur(16px);
  }

  .mobile-bottom-nav a {
    display: grid;
    place-items: center;
    gap: 4px;
    min-width: 0;
    min-height: 48px;
    border-radius: 16px;
    color: var(--muted);
    font-size: 10px;
    font-weight: 800;
  }

  .mobile-bottom-nav a span {
    max-width: 100%;
    overflow: hidden;
    text-align: center;
    text-overflow: clip;
  }

  .mobile-bottom-nav .icon {
    width: 18px;
    height: 18px;
  }

  .mobile-bottom-nav a.active {
    color: var(--blue);
    background: #eef5ff;
  }

  .builder-topbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .builder-section-nav {
    position: static;
  }

  .builder-top-actions {
    width: 100%;
  }

  .builder-top-actions .primary-button,
  .builder-top-actions .secondary-button {
    flex: 1;
  }

  .builder-mobile-tabs {
    display: flex;
  }

  .builder-page:not(.show-preview) .builder-preview {
    display: none;
  }

  .builder-page.show-preview .builder-form,
  .builder-page.show-preview .builder-flow-sidebar {
    display: none;
  }

  .builder-template-hero {
    align-items: flex-start;
    flex-direction: column;
  }

  .builder-template-grid {
    grid-template-columns: 1fr;
  }

  .form-section-head,
  .preview-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .preview-toolbar-actions {
    justify-content: flex-start;
  }

  .template-thumbnail-switch {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: none;
  }

  .resume-library {
    grid-template-columns: 1fr;
  }

  .auth-visual {
    min-height: 420px;
  }

  .auth-card {
    margin: 0;
    border-radius: 0;
  }

  .settings-preference-grid,
  .settings-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  :root {
    --page-x: 18px;
    --section-y: 52px;
    --grid-gap: 16px;
  }

  .site-header {
    min-height: 56px;
    padding-top: 8px;
    padding-bottom: 8px;
  }

  .brand {
    gap: 9px;
  }

  .brand-mark,
  .brand-mark svg {
    width: 40px;
    height: 40px;
  }

  .brand-word {
    font-size: 17.5px;
  }

  .public-nav {
    top: 56px;
  }

  .hero-copy {
    width: 100%;
    max-width: 342px;
  }

  .hero h1,
  .auth-visual h1 {
    max-width: 342px;
    font-size: clamp(28px, 7.6vw, 34px);
    line-height: 1.06;
    text-wrap: balance;
  }

  .hero p {
    max-width: 342px;
  }

  .auth-shell {
    display: block;
    width: 100%;
    max-width: 100vw;
    background: #fff;
  }

  .auth-visual {
    width: 100%;
    max-width: 100%;
    min-height: auto;
    padding: 26px 20px;
  }

  .auth-visual > *,
  .auth-card > * {
    max-width: calc(100vw - 40px);
  }

  .auth-visual h1 {
    max-width: min(330px, calc(100vw - 40px));
    font-size: 30px;
    overflow-wrap: anywhere;
  }

  .auth-visual p {
    max-width: min(330px, calc(100vw - 40px));
    font-size: 15px;
    overflow-wrap: anywhere;
  }

  .auth-visual .brand {
    margin-bottom: 28px;
  }

  .auth-preview {
    display: none;
  }

  .auth-card {
    width: 100%;
    max-width: 100%;
    padding: 26px 20px 34px;
  }

  .auth-card h2 {
    font-size: 30px;
  }

  .auth-card-top {
    width: calc(100vw - 40px);
    justify-content: flex-start;
    gap: 16px;
    margin-bottom: 20px;
  }

  .auth-subtitle,
  .auth-help {
    max-width: min(330px, calc(100vw - 40px));
    overflow-wrap: anywhere;
  }

  .auth-form,
  .auth-card .divider,
  .auth-card .google-button,
  .auth-card .switch-auth {
    width: min(100%, 330px);
    max-width: calc(100vw - 40px);
  }

  .auth-card-brand .brand-word {
    font-size: 17px;
  }

  .password-label-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }

  .forgot-inline {
    align-self: flex-start;
  }

  .hero p {
    margin-top: 10px;
    font-size: 16px;
    line-height: 1.43;
  }

  .eyebrow {
    font-size: 11px;
  }

  .hero {
    gap: 20px;
    padding-top: 12px;
    padding-bottom: 30px;
  }

  .hero h1 {
    margin-top: 8px;
  }

  .hero-actions {
    gap: 9px;
    margin-top: 14px;
  }

  .hero-actions .primary-button,
  .hero-actions .secondary-button {
    min-height: 42px;
    padding: 0 15px;
    font-size: 14px;
  }

  .trust-row {
    display: flex;
    max-width: 342px;
    gap: 7px;
    margin-top: 12px;
  }

  .trust-row span {
    padding: 7px 9px;
    font-size: 11.5px;
  }

  .hero-value-strip {
    display: grid;
    grid-auto-flow: row;
    grid-auto-columns: auto;
    grid-template-columns: 1fr;
    gap: 10px;
    overflow-x: visible;
    padding: 2px 2px 8px;
  }

  .hero-value-card {
    grid-template-columns: 32px minmax(0, 1fr);
    min-height: 70px;
    padding: 10px;
    border-radius: 17px;
  }

  .hero-value-icon {
    width: 32px;
    height: 32px;
  }

  .hero-value-card strong {
    font-size: 13px;
  }

  .hero-value-card span {
    font-size: 12px;
  }

  .hero-visual {
    width: 100%;
    max-width: calc(100vw - (var(--page-x) * 2));
    overflow: hidden;
    border-radius: 24px;
  }

  .hero-visual-glow {
    inset: 4% 0 9%;
    filter: blur(12px);
    opacity: 0.62;
  }

  .hero-product-chips {
    display: none;
  }

  .application-checklist {
    display: none;
  }

  .editor-panel {
    width: 100%;
    max-width: 100%;
    overflow: hidden;
    border-radius: 20px;
    padding: 10px;
  }

  .editor-form {
    display: none;
  }

  .resume-preview.mini {
    min-height: 218px;
    overflow: hidden;
  }

  .resume-preview.mini::before {
    inset: 12px 4px -7px 12px;
  }

  .resume-template-hint {
    display: none;
  }

  .floating-score {
    width: min(190px, calc(100% - 20px));
    padding: 12px;
    right: 10px;
    left: auto;
    bottom: -10px;
    translate: 0 0;
  }

  .floating-score strong {
    font-size: 34px;
  }

  .score-card strong,
  .ats-score strong {
    font-size: 28px;
  }

  .score-cycle {
    min-width: 72px;
    min-height: 34px;
  }

  .score-status {
    padding: 3px 7px;
    font-size: 10px;
  }

  .score-delta,
  .score-ai-note {
    font-size: 10.5px;
  }

  .section,
  .dashboard-content,
  .settings-page,
  .ai-page,
  .builder-page {
    padding: var(--section-y) var(--page-x);
  }

  .dashboard-content,
  .settings-page,
  .ai-page,
  .builder-page {
    padding-top: 20px;
  }

  .dashboard-content {
    padding-bottom: 86px;
  }

  .site-footer,
  .one-time-teaser,
  .features-cta,
  .templates-cta,
  .featured-blog-card,
  .blog-cta-card,
  .page-actions,
  .dashboard-topbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .featured-blog-card {
    grid-template-columns: 1fr;
  }

  .feature-grid {
    grid-template-columns: 1fr;
  }

  .next-step-grid {
    grid-template-columns: 1fr;
  }

  .workspace-hero h2 {
    font-size: 29px;
  }

  .workspace-hero {
    width: min(calc(100vw - 36px), 354px);
    max-width: min(calc(100vw - 36px), 354px);
    padding: 20px;
  }

  .workspace-hero-main,
  .workspace-hero-copy,
  .workspace-hero .quick-actions,
  .plan-strip,
  .main-resume-card {
    width: 100%;
    max-width: 314px;
  }

  .workspace-hero h2 {
    width: 100%;
    max-width: 100%;
    font-size: 27px;
    line-height: 1.08;
  }

  .workspace-hero p {
    width: 100%;
    max-width: 100%;
    font-size: 14px;
  }

  .hero-kicker-row {
    gap: 8px;
  }

  .plan-badge {
    min-height: 27px;
    padding-inline: 9px;
    font-size: 11px;
  }

  .main-resume-card-top {
    align-items: flex-start;
    gap: 10px;
  }

  .main-resume-card-top span {
    max-width: 58%;
  }

  .main-resume-card em {
    font-size: 30px;
  }

  .progress-chip-row,
  .mini-chip-row {
    gap: 6px;
  }

  .workspace-home .dash-card {
    padding: 20px;
  }

  .dash-card-topline .feature-icon {
    width: 42px;
    height: 42px;
  }

  .workspace-home .card-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .quick-actions .primary-button,
  .quick-actions .secondary-button,
  .card-actions .primary-button,
  .card-actions .secondary-button {
    width: 100%;
  }

  .option-grid,
  .credits-grid,
  .trust-card-grid {
    grid-template-columns: 1fr;
  }

  .pricing-tabs {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    border-radius: 22px;
  }

  .pricing-tabs button {
    width: 100%;
  }

  .payment-method-grid,
  .settings-payment-method-grid,
  .payment-rules-grid {
    grid-template-columns: 1fr;
  }

  .pix-payment-body,
  .pix-summary-grid,
  .pix-form-grid,
  .pix-review-card,
  .payment-history-item {
    grid-template-columns: 1fr;
  }

  .payment-history-pagination {
    justify-content: center;
  }

  .credits-copy {
    padding: 18px;
    border-radius: 22px;
  }

  .credits-copy h2 {
    font-size: clamp(24px, 7vw, 30px);
  }

  .credit-uses div {
    gap: 8px;
  }

  .credit-uses span {
    font-size: 12px;
  }

  .template-preview-dialog.pix-payment-dialog {
    width: calc(100vw - 16px);
    max-height: calc(100dvh - 16px);
    border-radius: 18px;
  }

  .template-preview-header.pix-payment-header {
    align-items: flex-start;
    flex-direction: row;
    gap: 12px;
    padding: 12px 14px;
  }

  .template-preview-header.pix-payment-header h2 {
    margin-top: 5px;
    font-size: clamp(22px, 7vw, 28px);
  }

  .template-preview-header.pix-payment-header p {
    font-size: 13px;
    line-height: 1.35;
  }

  .pix-data-form,
  .pix-payment-body {
    padding: 14px;
  }

  .pix-payment-body {
    gap: 14px;
  }

  .pix-qr-card {
    order: 1;
    justify-self: center;
    width: min(100%, 340px);
    padding: 14px;
  }

  .pix-payment-details {
    order: 2;
  }

  .pix-qr-svg {
    width: min(300px, 100%);
  }

  .pix-copy-field textarea {
    min-height: 74px;
  }

  .template-preview-footer.pix-payment-actions {
    align-items: stretch;
    flex-direction: row;
    gap: 8px;
    padding: 10px 14px;
  }

  .template-preview-footer.pix-payment-actions .primary-button,
  .template-preview-footer.pix-payment-actions .secondary-button,
  .template-preview-footer.pix-payment-actions .ghost-button {
    flex: 1 1 128px;
    width: auto;
    min-height: 42px;
    padding-inline: 12px;
  }

  .payment-status {
    justify-self: start;
  }

  .payment-detail-list div {
    grid-template-columns: 1fr;
  }

  .price-card {
    padding: 24px;
  }

  .pricing-hero {
    padding-top: 34px;
  }

  .blog-hero,
  .blog-article-hero {
    padding-top: 34px;
  }

  .blog-hero h1,
  .blog-article-hero h1 {
    max-width: min(100%, 320px);
    font-size: 31px;
    line-height: 1.08;
  }

  .blog-hero {
    width: calc(100% - 24px);
    margin-top: 14px;
    padding: 30px 18px 24px;
  }

  .blog-hero::before {
    inset: 0;
    border-radius: 26px;
  }

  .blog-hero-visual {
    grid-template-columns: 1fr;
    gap: 12px;
    min-width: 0;
  }

  .blog-insight-card,
  .blog-document-card {
    border-radius: 22px;
    padding: 16px;
  }

  .blog-insight-card strong {
    font-size: 38px;
  }

  .blog-hero p,
  .blog-article-hero p,
  .featured-blog-card p,
  .blog-card p {
    width: min(100%, 315px);
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .hero-blog-search {
    width: 100%;
    max-width: 100%;
    margin-top: 18px;
    text-align: left;
  }

  .blog-controls,
  .featured-blog-card,
  .blog-grid {
    width: 100%;
    max-width: calc(100vw - 36px);
  }

  .blog-controls {
    display: block;
  }

  .blog-search {
    margin-bottom: 16px;
  }

  .blog-category-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    width: 100%;
    max-width: calc(100vw - 36px);
  }

  .blog-category-filter button {
    flex: 1 1 148px;
    width: auto;
    max-width: 100%;
    padding: 8px 10px;
    white-space: normal !important;
    overflow-wrap: anywhere;
    text-align: center;
  }

  .featured-blog-card .primary-button,
  .blog-cta-card .primary-button,
  .blog-bottom-cta .primary-button {
    width: 100%;
  }

  .featured-blog-card {
    grid-template-columns: 1fr;
  }

  .featured-blog-visual {
    display: none;
  }

  .blog-card-footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .blog-article {
    padding: 0 var(--page-x);
  }

  .blog-article-body {
    padding: 24px;
  }

  .blog-article-body p {
    font-size: 16px;
  }

  .blog-toc {
    grid-template-columns: 1fr;
  }

  .blog-cluster-grid {
    grid-template-columns: 1fr;
  }

  .blog-bottom-cta {
    padding: 24px;
  }

  .template-paper {
    min-height: 0;
  }

  .template-thumbnail-switch {
    grid-template-columns: 1fr;
  }

  .resume-document {
    min-height: auto;
    padding: 30px 22px;
  }

  .builder-preview-frame {
    min-height: 620px;
    padding: 10px;
  }

  .builder-preview-frame.zoom-fit .resume-document-shell {
    width: min(100%, var(--resume-page-width));
  }

  .builder-preview-frame.zoom-out .resume-document-shell {
    width: min(82%, var(--resume-page-width));
  }

  .builder-preview-frame.zoom-in .resume-document-shell {
    width: var(--resume-page-width);
  }

  .template-preview-dialog {
    width: 100%;
    max-height: 96vh;
    border-radius: 22px;
  }

  .template-preview-header,
  .template-preview-footer {
    align-items: flex-start;
    flex-direction: column;
  }

  .template-preview-dialog.template-preview-premium-dialog {
    height: calc(100dvh - 16px);
    max-height: calc(100dvh - 16px);
  }

  .template-preview-premium-dialog .template-preview-header {
    align-items: flex-start;
    flex-direction: row;
    padding: 8px 10px;
  }

  .template-preview-premium-dialog .template-preview-header h2 {
    font-size: clamp(20px, 6vw, 25px);
  }

  .template-preview-premium-dialog .template-preview-header p {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1;
  }

  .template-preview-premium-dialog .template-preview-ideal,
  .template-preview-premium-dialog .template-preview-best {
    display: none;
  }

  .template-preview-premium-dialog .template-preview-footer {
    align-items: center;
    flex-direction: row;
    padding: 8px 10px;
  }

  .template-preview-premium-dialog .template-preview-footer .primary-button,
  .template-preview-premium-dialog .template-preview-footer .secondary-button {
    flex: 1 1 130px;
    width: auto;
  }

  .template-preview-footer .primary-button,
  .template-preview-footer .secondary-button {
    width: 100%;
  }

  .resume-tailoring-dialog {
    width: calc(100vw - 16px);
    max-height: calc(100dvh - 16px);
  }

  .resume-tailoring-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .resume-tailoring-actions .primary-button,
  .resume-tailoring-actions .secondary-button,
  .resume-tailoring-actions .ghost-button {
    width: 100%;
    white-space: normal;
  }

  .template-preview-premium-dialog .template-preview-footer .primary-button,
  .template-preview-premium-dialog .template-preview-footer .secondary-button {
    flex: 1 1 130px;
    width: auto;
  }

  .template-preview-dialog.template-preview-resume-only-dialog {
    width: 100vw;
    height: 100dvh;
    max-height: 100dvh;
    border-radius: 0;
  }

  .template-preview-resume-only-dialog .template-preview-content {
    width: 100vw;
    height: 100dvh;
    padding: 6px;
  }

  .resume-data-preview-modal .template-preview-resume-only-dialog .resume-preview-content {
    padding: 6px;
  }

  .resume-preview-floating-actions {
    right: 8px;
    bottom: 8px;
    left: 8px;
    flex-wrap: wrap;
    justify-content: center;
    max-width: none;
    border-radius: 22px;
  }

  .resume-preview-floating-meta {
    flex: 1 1 100%;
    margin-right: 0;
    text-align: center;
  }

  .resume-preview-floating-actions .primary-button,
  .resume-preview-floating-actions .secondary-button {
    flex: 1 1 140px;
    min-height: 40px;
    padding-inline: 12px;
  }

  .template-preview-floating-close {
    top: 8px;
    right: 8px;
  }

  .watermark-dialog {
    gap: 13px;
    padding: 20px;
    border-radius: 24px;
  }

  .watermark-hero {
    padding-right: 34px;
  }

  .watermark-benefits {
    grid-template-columns: 1fr;
  }

  .watermark-offer,
  .watermark-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .watermark-paid-cta,
  .watermark-actions .secondary-button,
  .watermark-actions .ghost-button {
    width: 100%;
  }

  .watermark-paid-cta {
    min-width: 0;
  }

  .resume-two-column-section {
    grid-template-columns: 1fr;
  }

  .resume-template-executive header,
  .resume-template-senior-executive header,
  .resume-template-manager header,
  .resume-template-global header {
    margin: 0 -22px 22px;
    padding: 30px 22px 24px;
  }

  .resume-template-creative,
  .resume-template-marketing,
  .resume-template-designer,
  .resume-template-startup,
  .resume-template-finance,
  .resume-template-operations,
  .resume-template-modern-ats {
    border-left-width: 8px;
  }

  .builder-actions {
    position: static;
  }

  .save-state span {
    font-size: 11px;
  }

  .completion-card,
  .form-section,
  .suggestions-panel {
    padding: 18px;
  }

  .resume-entry {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Final cascade pass: keep launch responsive overrides after all mobile rules. */
@media (max-width: 860px) {
  .site-header {
    width: 100%;
    max-width: 100%;
  }

  .nav-toggle {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    display: inline-flex !important;
    grid-column: 2;
    justify-self: end;
    z-index: 80;
  }

  .public-nav {
    position: absolute !important;
    top: 62px;
    grid-column: 1 / -1 !important;
    right: var(--page-x) !important;
    left: var(--page-x) !important;
    width: auto !important;
    max-width: calc(100vw - (var(--page-x) * 2));
    max-height: calc(100dvh - 78px);
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    overflow-y: auto;
    box-sizing: border-box;
  }

  .public-nav-center,
  .public-nav-actions {
    width: 100%;
    align-items: stretch !important;
    flex-direction: column !important;
  }

  .public-nav.open {
    display: flex;
  }

  .blog-hero,
  .featured-blog-card,
  .blog-controls,
  .blog-grid,
  .blog-cluster-section,
  .blog-bottom-cta,
  .related-blog-section,
  .legal-card,
  .legal-hero,
  .pricing-hero {
    max-width: calc(100vw - (var(--page-x) * 2));
  }
}

@media (max-width: 560px) {
  .public-nav {
    top: 58px;
    right: var(--page-x) !important;
    left: var(--page-x) !important;
    width: auto !important;
    max-width: calc(100vw - (var(--page-x) * 2));
  }

  .nav-toggle {
    width: 40px;
    height: 40px;
  }

  .blog-hero,
  .featured-blog-card,
  .blog-controls,
  .blog-grid,
  .blog-cluster-section,
  .blog-bottom-cta,
  .related-blog-section {
    width: 100%;
    max-width: calc(100vw - (var(--page-x) * 2));
  }
}

:root[data-theme="dark"] .site-header,
:root[data-theme="dark"] .dashboard-topbar,
:root[data-theme="dark"] .sidebar,
:root[data-theme="dark"] .auth-card,
:root[data-theme="dark"] .template-preview-dialog,
:root[data-theme="dark"] .user-dropdown,
:root[data-theme="dark"] .public-nav.open {
  background: rgba(10, 18, 36, 0.94);
  border-color: var(--line);
  color: var(--ink);
}

:root[data-theme="dark"] .watermark-dialog {
  border-color: var(--line);
  background:
    radial-gradient(circle at 86% 4%, rgba(105, 216, 242, 0.14), transparent 28%),
    linear-gradient(180deg, rgba(16, 27, 52, 0.98), rgba(10, 18, 36, 0.98));
  color: var(--ink);
}

:root[data-theme="dark"] .watermark-hero h2,
:root[data-theme="dark"] .watermark-offer strong {
  color: var(--ink);
}

:root[data-theme="dark"] .watermark-hero p,
:root[data-theme="dark"] .watermark-offer small,
:root[data-theme="dark"] .watermark-benefits span {
  color: #d2def2;
}

:root[data-theme="dark"] .watermark-benefits,
:root[data-theme="dark"] .watermark-offer {
  border-color: var(--line);
  background: rgba(16, 27, 52, 0.72);
}

:root[data-theme="dark"] .ai-panel-head h2,
:root[data-theme="dark"] .ai-section-head h3,
:root[data-theme="dark"] .ai-keyword-card h3,
:root[data-theme="dark"] .ai-match-card h3,
:root[data-theme="dark"] .ai-tool-suggestion-card p {
  color: var(--ink);
}

:root[data-theme="dark"] .ai-panel-head p,
:root[data-theme="dark"] .ai-match-card p,
:root[data-theme="dark"] .ai-empty-panel p {
  color: #d2def2;
}

:root[data-theme="dark"] .feature-card,
:root[data-theme="dark"] .step-card,
:root[data-theme="dark"] .template-card,
:root[data-theme="dark"] .price-card,
:root[data-theme="dark"] .faq-item,
:root[data-theme="dark"] .dash-card,
:root[data-theme="dark"] .settings-card,
:root[data-theme="dark"] .ai-input-panel,
:root[data-theme="dark"] .ats-score,
:root[data-theme="dark"] .library-card,
:root[data-theme="dark"] .empty-state,
:root[data-theme="dark"] .trust-card,
:root[data-theme="dark"] .features-cta,
:root[data-theme="dark"] .templates-cta,
:root[data-theme="dark"] .one-time-teaser,
:root[data-theme="dark"] .main-resume-card,
:root[data-theme="dark"] .recent-resume-card,
:root[data-theme="dark"] .next-step-card,
:root[data-theme="dark"] .completion-card,
:root[data-theme="dark"] .empty-builder-state,
:root[data-theme="dark"] .suggestions-panel,
:root[data-theme="dark"] .upgrade-nudge,
:root[data-theme="dark"] .export-note,
:root[data-theme="dark"] .cover-letter-card,
:root[data-theme="dark"] .form-section,
:root[data-theme="dark"] .builder-topbar,
:root[data-theme="dark"] .builder-section-nav,
:root[data-theme="dark"] .preview-toolbar,
:root[data-theme="dark"] .letter-form-panel,
:root[data-theme="dark"] .letter-preview-panel,
:root[data-theme="dark"] .legal-card {
  border-color: var(--line);
  background: rgba(16, 27, 52, 0.9);
  color: var(--ink);
}

:root[data-theme="dark"] .profile-page {
  background:
    linear-gradient(rgba(105, 216, 242, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(105, 216, 242, 0.035) 1px, transparent 1px);
  background-size: 52px 52px;
}

:root[data-theme="dark"] .profile-page .settings-card,
:root[data-theme="dark"] .profile-metric,
:root[data-theme="dark"] .profile-detail-list span,
:root[data-theme="dark"] .profile-plan-meta span,
:root[data-theme="dark"] .profile-benefit-list span,
:root[data-theme="dark"] .profile-preference-item {
  border-color: rgba(163, 183, 220, 0.18);
  background: rgba(16, 27, 52, 0.88);
}

:root[data-theme="dark"] .profile-activity-row,
:root[data-theme="dark"] .profile-static-options {
  background: rgba(105, 216, 242, 0.08);
}

:root[data-theme="dark"] .profile-plan-badge,
:root[data-theme="dark"] .profile-unsaved-status {
  color: #d9e8ff;
  background: rgba(105, 216, 242, 0.1);
}

:root[data-theme="dark"] .cover-letter-card h2,
:root[data-theme="dark"] .letter-editor-head label {
  color: var(--ink);
}

:root[data-theme="dark"] .cover-letter-card small,
:root[data-theme="dark"] .cover-letter-card-meta span {
  color: #d2def2;
}

:root[data-theme="dark"] .cover-letter-card-meta span,
:root[data-theme="dark"] .cover-letter-mobile-tabs {
  border-color: var(--line);
  background: rgba(8, 17, 36, 0.72);
}

:root[data-theme="dark"] .workspace-hero .main-resume-card {
  border-color: rgba(255, 255, 255, 0.16);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.07));
  color: #fff;
}

:root[data-theme="dark"] .workspace-home .dash-card,
:root[data-theme="dark"] .resume-status-card,
:root[data-theme="dark"] .ai-tools-card,
:root[data-theme="dark"] .workspace-upgrade,
:root[data-theme="dark"] .next-step-card {
  border-color: rgba(163, 183, 220, 0.18);
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.08), transparent 34%),
    rgba(16, 27, 52, 0.92);
}

:root[data-theme="dark"] .dash-card-topline > span:not(.eyebrow),
:root[data-theme="dark"] .dash-card-topline .eyebrow,
:root[data-theme="dark"] .mini-chip-row span,
:root[data-theme="dark"] .workspace-home .task-list li {
  border-color: rgba(105, 216, 242, 0.13);
  color: #d9e8ff;
  background: rgba(105, 216, 242, 0.08);
}

:root[data-theme="dark"] .resume-status-meter {
  background: rgba(163, 183, 220, 0.16);
}

:root[data-theme="dark"] .public-shell,
:root[data-theme="dark"] .pricing-page,
:root[data-theme="dark"] .legal-page,
:root[data-theme="dark"] .trust-section,
:root[data-theme="dark"] .split-band,
:root[data-theme="dark"] .site-footer,
:root[data-theme="dark"] .template-preview-content,
:root[data-theme="dark"] .builder-preview-frame,
:root[data-theme="dark"] .dashboard-main {
  background:
    radial-gradient(circle at 15% 12%, rgba(105, 216, 242, 0.1), transparent 30%),
    radial-gradient(circle at 82% 8%, rgba(155, 124, 247, 0.11), transparent 28%),
    linear-gradient(180deg, #081124 0%, #0c1730 55%, #081124 100%);
}

:root[data-theme="dark"] input,
:root[data-theme="dark"] textarea,
:root[data-theme="dark"] select,
:root[data-theme="dark"] .dashboard-search,
:root[data-theme="dark"] .user-menu,
:root[data-theme="dark"] .language-switch,
:root[data-theme="dark"] .secondary-button,
:root[data-theme="dark"] .ghost-button,
:root[data-theme="dark"] .google-button,
:root[data-theme="dark"] .icon-button,
:root[data-theme="dark"] .sidebar-link-button,
:root[data-theme="dark"] .template-switch button,
:root[data-theme="dark"] .document-format-switch button,
:root[data-theme="dark"] .template-filter-row button,
:root[data-theme="dark"] .pricing-tabs button,
:root[data-theme="dark"] .builder-section-nav button {
  border-color: var(--line);
  background: rgba(8, 17, 36, 0.82);
  color: var(--ink);
}

:root[data-theme="dark"] .nav-preferences .theme-toggle {
  border: 0;
  background: transparent;
  color: #d2def2;
}

:root[data-theme="dark"] .dashboard-topbar .dashboard-preferences {
  border-color: rgba(163, 183, 220, 0.2);
  background:
    linear-gradient(135deg, rgba(16, 27, 52, 0.94), rgba(12, 23, 48, 0.86));
}

:root[data-theme="dark"] .dashboard-topbar .dashboard-preferences .language-switch {
  background: rgba(105, 216, 242, 0.08);
}

:root[data-theme="dark"] .dashboard-topbar .dashboard-preferences .theme-toggle,
:root[data-theme="dark"] .dashboard-topbar .dashboard-preferences .ai-quick-toggle {
  color: #d9e8ff;
  background: transparent;
  box-shadow: none;
}

:root[data-theme="dark"] .settings-payment-methods-card .payment-method-card {
  border-color: rgba(163, 183, 220, 0.16);
  background: rgba(16, 27, 52, 0.86);
}

:root[data-theme="dark"] .resume-document,
:root[data-theme="dark"] .resume-preview,
:root[data-theme="dark"] .template-paper,
:root[data-theme="dark"] .letter-document {
  background: #fff;
  color: #0b1736;
}

:root[data-theme="dark"] .template-doc-body aside,
:root[data-theme="dark"] .template-doc-body main,
:root[data-theme="dark"] .template-doc-body section {
  background: #f8fbff;
}

@media (max-width: 860px) {
  .pricing-page,
  .monetization,
  .public-monetization {
    width: 100vw;
    max-width: 100vw;
    min-width: 0;
    overflow-x: hidden;
  }

  .pricing-hero,
  .public-monetization .monetization-block {
    width: 100vw;
    max-width: 100vw;
    padding-right: 18px;
    padding-left: 18px;
  }

  .pricing-hero h1 {
    max-width: 300px;
    font-size: clamp(30px, 8.6vw, 34px);
    overflow-wrap: normal;
  }

  .pricing-hero p {
    max-width: 320px;
  }

  .pricing-overview-block .section-heading h2,
  .plan-comparison-card .section-heading h2 {
    max-width: 300px;
    font-size: clamp(24px, 7vw, 30px);
  }

  .pricing-grid,
  .price-card,
  .plan-comparison-card,
  .comparison-table-wrap,
  .planned-payments-card,
  .pricing-faq-list {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }

  .plan-comparison-card {
    justify-self: center;
    width: calc(100vw - 36px);
    max-width: calc(100vw - 36px);
    overflow: hidden;
  }

  .pricing-grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .price-card .full,
  .popular {
    max-width: 100%;
    white-space: normal;
  }

  .admin-metric-grid,
  .admin-settings-grid,
  .admin-detail-grid {
    grid-template-columns: 1fr;
  }

  .admin-action-cell {
    min-width: 220px;
  }

  .admin-dialog-content {
    padding: 16px;
  }

  .admin-dialog-actions {
    flex-direction: column-reverse;
  }

  .admin-dialog-actions .primary-button,
  .admin-dialog-actions .secondary-button {
    width: 100%;
  }
}

/* Premium dashboard home */
.workspace-home {
  gap: 24px;
}

.workspace-hero {
  grid-template-columns: minmax(0, 1fr) minmax(318px, 392px);
  gap: clamp(20px, 2.6vw, 34px);
  padding: clamp(24px, 2.8vw, 38px);
  border-color: rgba(255, 255, 255, 0.2);
  border-radius: 28px;
  background:
    radial-gradient(circle at 78% 14%, rgba(105, 216, 242, 0.32), transparent 24%),
    radial-gradient(circle at 19% 0%, rgba(155, 124, 247, 0.22), transparent 32%),
    radial-gradient(circle at 48% 88%, rgba(71, 209, 157, 0.13), transparent 28%),
    linear-gradient(135deg, #07142f 0%, #123c91 53%, #6d5ce8 100%);
  box-shadow:
    0 30px 84px rgba(18, 60, 145, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.workspace-hero::before {
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.16), transparent 38%),
    repeating-linear-gradient(100deg, rgba(255, 255, 255, 0.07) 0 1px, transparent 1px 24px),
    radial-gradient(circle at 74% 76%, rgba(255, 255, 255, 0.11), transparent 34%);
  opacity: 0.86;
}

.workspace-hero::after {
  right: 24px;
  bottom: 18px;
  width: min(48%, 520px);
  height: 48%;
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.09), transparent 44%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.06) 0 1px, transparent 1px 18px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 34px);
  opacity: 0.72;
  transform: rotate(-3deg);
}

.workspace-hero-glow {
  inset: -34% auto auto 42%;
  width: 520px;
  height: 520px;
  background:
    radial-gradient(circle, rgba(105, 216, 242, 0.26), transparent 58%),
    radial-gradient(circle at 62% 62%, rgba(155, 124, 247, 0.18), transparent 46%);
  filter: blur(10px);
}

.workspace-hero-main {
  align-content: center;
  gap: clamp(18px, 2vw, 24px);
  min-height: 276px;
}

.workspace-hero-copy {
  gap: 14px;
  max-width: 760px;
}

.workspace-hero h2 {
  max-width: 760px;
  font-size: clamp(32px, 3.15vw, 46px);
  letter-spacing: 0;
}

.workspace-hero p {
  max-width: 640px;
  color: rgba(235, 243, 255, 0.91);
}

.hero-context-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  max-width: 720px;
}

.hero-context-row span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  max-width: 100%;
  padding: 0 11px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 999px;
  color: rgba(245, 249, 255, 0.92);
  background: rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12);
  font-size: 11.5px;
  font-weight: 850;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.hero-action-stack {
  display: grid;
  gap: 10px;
  max-width: 760px;
}

.workspace-hero .hero-primary-actions {
  display: grid;
  grid-template-columns: minmax(190px, 1.12fr) minmax(128px, 0.74fr) minmax(170px, 0.92fr);
  gap: 10px;
}

.workspace-hero .primary-button,
.workspace-hero .secondary-button {
  justify-content: center;
  min-height: 48px;
  padding-inline: 16px;
  border-radius: 15px;
  font-size: 13.5px;
  line-height: 1.2;
  white-space: normal;
}

.workspace-hero .hero-primary-actions .primary-button {
  min-width: 0;
  color: #07142f;
  background: linear-gradient(135deg, #ffffff, #dff9ff 44%, #bff0ff);
  box-shadow:
    0 18px 38px rgba(5, 16, 42, 0.22),
    0 0 0 1px rgba(255, 255, 255, 0.36) inset;
}

.workspace-hero .hero-primary-actions .secondary-button {
  border-color: rgba(255, 255, 255, 0.18);
  color: #fff;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08));
  box-shadow:
    0 12px 28px rgba(5, 16, 42, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.workspace-hero .hero-primary-actions .secondary-button:hover {
  border-color: rgba(255, 255, 255, 0.28);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0.12));
}

.hero-secondary-actions {
  gap: 8px;
}

.hero-chip {
  gap: 7px;
  min-height: 34px;
  padding-inline: 12px;
  border-color: rgba(255, 255, 255, 0.15);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.12), rgba(255, 255, 255, 0.07));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.hero-chip .icon {
  width: 15px;
  height: 15px;
}

.main-resume-card {
  align-content: start;
  gap: 14px;
  min-height: 276px;
  padding: clamp(18px, 2vw, 24px);
  border-color: rgba(255, 255, 255, 0.24);
  border-radius: 24px;
  background:
    radial-gradient(circle at 92% 8%, rgba(142, 232, 247, 0.24), transparent 28%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.2), rgba(255, 255, 255, 0.085));
  box-shadow:
    0 24px 58px rgba(5, 16, 42, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.progress-card-orbit {
  right: -56px;
  top: -64px;
  width: 176px;
  height: 176px;
  background:
    radial-gradient(circle, rgba(255, 255, 255, 0.16), transparent 58%),
    conic-gradient(from 140deg, rgba(142, 232, 247, 0.34), transparent, rgba(255, 255, 255, 0.18));
}

.main-resume-card-top {
  align-items: flex-start;
}

.main-resume-card-top > div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.main-resume-card-top span {
  max-width: 100%;
  color: rgba(235, 243, 255, 0.72);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.main-resume-card-top strong {
  color: #fff;
  font-size: 17px;
  line-height: 1.18;
}

.main-resume-card em {
  font-size: clamp(36px, 3.2vw, 48px);
}

.progress-card-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.09);
}

.progress-card-status span,
.progress-card-status small {
  color: #fff;
  font-weight: 900;
  overflow-wrap: anywhere;
}

.progress-card-status span {
  font-size: 13px;
}

.progress-card-status small {
  color: rgba(229, 238, 255, 0.68);
  font-size: 10px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.progress-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.progress-metrics span {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, 0.13);
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.08);
}

.progress-metrics small {
  color: rgba(229, 238, 255, 0.62);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.progress-metrics strong {
  color: #fff;
  font-size: 12.5px;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.main-resume-card p {
  max-width: 100%;
}

.workspace-grid {
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.96fr) minmax(0, 0.96fr);
  gap: 20px;
  align-items: stretch;
}

.workspace-home .dash-card {
  gap: 16px;
  min-height: 318px;
  padding: clamp(20px, 2.1vw, 26px);
  border-radius: 24px;
  transition:
    transform 0.24s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.24s ease,
    border-color 0.24s ease;
}

.workspace-home .dash-card::before {
  height: 4px;
  opacity: 0.9;
}

.resume-status-card::before {
  background: linear-gradient(90deg, #47d19d, #69d8f2, #2d74df);
}

.ai-tools-card::before {
  background: linear-gradient(90deg, #8ee8f7, #7c6af2, #a88bff);
}

.workspace-upgrade::before {
  background: linear-gradient(90deg, #ffffff, #8ee8f7, #a88bff);
}

.resume-status-card {
  background:
    radial-gradient(circle at 84% 0%, rgba(71, 209, 157, 0.16), transparent 30%),
    radial-gradient(circle at 0% 100%, rgba(105, 216, 242, 0.13), transparent 34%),
    linear-gradient(145deg, #ffffff, #f5fbff);
}

.ai-tools-card {
  background:
    radial-gradient(circle at 88% 0%, rgba(155, 124, 247, 0.16), transparent 32%),
    radial-gradient(circle at 8% 100%, rgba(105, 216, 242, 0.12), transparent 30%),
    linear-gradient(145deg, #ffffff, #f8f6ff);
}

.workspace-upgrade {
  color: #fff;
  border-color: rgba(18, 60, 145, 0.18);
  background:
    radial-gradient(circle at 90% 4%, rgba(142, 232, 247, 0.22), transparent 32%),
    radial-gradient(circle at 0% 100%, rgba(168, 139, 255, 0.18), transparent 34%),
    linear-gradient(145deg, #081632, #123c91 70%, #5146bd);
}

.workspace-upgrade h3,
.workspace-upgrade p {
  color: #fff;
}

.workspace-upgrade p {
  color: rgba(235, 243, 255, 0.84);
}

.workspace-home .dash-card:hover {
  transform: translateY(-5px);
}

.dashboard-card-title-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.dashboard-card-title-row h3 {
  margin: 0;
}

.dashboard-card-title-row > span {
  flex: 0 0 auto;
  max-width: 45%;
  padding: 7px 10px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 999px;
  color: #123c91;
  background: rgba(238, 245, 255, 0.9);
  font-size: 11px;
  font-weight: 900;
  line-height: 1.2;
  overflow-wrap: anywhere;
}

.resume-status-panel {
  display: grid;
  gap: 11px;
  padding: 12px;
  border: 1px solid rgba(31, 105, 213, 0.08);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.72);
}

.resume-status-meta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.resume-status-meta span {
  min-width: 0;
  color: #526582;
  font-size: 11.5px;
  font-weight: 850;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.ai-card-orb {
  position: absolute;
  right: -36px;
  bottom: 18px;
  width: 142px;
  height: 142px;
  border-radius: 999px;
  background:
    radial-gradient(circle, rgba(155, 124, 247, 0.16), transparent 62%),
    conic-gradient(from 90deg, rgba(105, 216, 242, 0.2), transparent, rgba(168, 139, 255, 0.16));
  pointer-events: none;
}

.ai-signal-list {
  display: grid;
  gap: 8px;
}

.ai-signal-list span {
  display: flex;
  align-items: center;
  min-height: 34px;
  padding: 8px 10px;
  border: 1px solid rgba(155, 124, 247, 0.12);
  border-radius: 13px;
  color: #465875;
  background: rgba(255, 255, 255, 0.7);
  font-size: 13px;
  font-weight: 850;
}

.upgrade-benefit-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.upgrade-benefit-list li {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 8px 10px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 13px;
  color: rgba(255, 255, 255, 0.92);
  background: rgba(255, 255, 255, 0.09);
  font-size: 13px;
  font-weight: 850;
}

.upgrade-benefit-list .icon {
  width: 16px;
  height: 16px;
  color: #8ee8f7;
}

.workspace-upgrade .mini-chip-row span,
.workspace-upgrade .dash-card-topline .eyebrow {
  border-color: rgba(255, 255, 255, 0.18);
  color: #fff;
  background: rgba(255, 255, 255, 0.11);
}

.workspace-upgrade .feature-icon {
  color: #081632;
  background: linear-gradient(135deg, #ffffff, #bff0ff);
}

.workspace-upgrade .primary-button.full {
  color: #081632;
  background: linear-gradient(135deg, #ffffff, #dff9ff);
  box-shadow: 0 16px 34px rgba(5, 16, 42, 0.22);
}

:root[data-theme="dark"] .workspace-hero {
  background:
    radial-gradient(circle at 78% 14%, rgba(105, 216, 242, 0.2), transparent 24%),
    radial-gradient(circle at 18% 0%, rgba(155, 124, 247, 0.2), transparent 32%),
    linear-gradient(135deg, #071124 0%, #102957 56%, #3d327f 100%);
}

:root[data-theme="dark"] .hero-context-row span,
:root[data-theme="dark"] .progress-card-status,
:root[data-theme="dark"] .progress-metrics span {
  border-color: rgba(163, 183, 220, 0.18);
  background: rgba(8, 17, 36, 0.28);
}

:root[data-theme="dark"] .resume-status-card,
:root[data-theme="dark"] .ai-tools-card {
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.08), transparent 34%),
    rgba(16, 27, 52, 0.92);
}

:root[data-theme="dark"] .workspace-upgrade {
  border-color: rgba(163, 183, 220, 0.18);
  background:
    radial-gradient(circle at 90% 4%, rgba(142, 232, 247, 0.13), transparent 32%),
    linear-gradient(145deg, #0a1429, #112755 72%, #2e2768);
}

:root[data-theme="dark"] .dashboard-card-title-row > span,
:root[data-theme="dark"] .resume-status-panel,
:root[data-theme="dark"] .ai-signal-list span {
  border-color: rgba(105, 216, 242, 0.13);
  color: #d9e8ff;
  background: rgba(105, 216, 242, 0.08);
}

:root[data-theme="dark"] .resume-status-meta span {
  color: #c2d2eb;
}

@media (max-height: 820px) and (min-width: 861px) {
  .workspace-home {
    gap: 20px;
  }

  .workspace-hero {
    padding: 26px;
  }

  .workspace-hero-main {
    min-height: 250px;
  }

  .main-resume-card {
    min-height: 250px;
  }

  .workspace-home .dash-card {
    min-height: 296px;
    padding: 22px;
  }
}

@media (max-width: 1160px) {
  .workspace-hero,
  .workspace-grid,
  .recent-resume-grid {
    grid-template-columns: 1fr;
  }

  .workspace-hero-main {
    min-height: auto;
  }

  .workspace-hero .hero-primary-actions {
    grid-template-columns: minmax(190px, 1fr) repeat(2, minmax(150px, 0.86fr));
  }

  .main-resume-card {
    min-height: auto;
  }
}

@media (max-width: 860px) {
  .workspace-hero {
    width: 100%;
    max-width: 100%;
    padding: 22px;
    border-radius: 24px;
  }

  .workspace-hero-main,
  .workspace-hero-copy,
  .workspace-hero .quick-actions,
  .plan-strip,
  .main-resume-card {
    width: 100%;
    max-width: 100%;
  }

  .workspace-hero .hero-primary-actions,
  .hero-secondary-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .hero-chip {
    width: 100%;
  }

  .progress-metrics,
  .resume-status-meta {
    grid-template-columns: 1fr;
  }

  .dashboard-card-title-row {
    display: grid;
  }

  .dashboard-card-title-row > span {
    max-width: 100%;
    justify-self: start;
  }
}

@media (max-width: 560px) {
  .workspace-hero {
    width: 100%;
    max-width: 100%;
    padding: 20px;
  }

  .workspace-hero-main,
  .workspace-hero-copy,
  .workspace-hero .quick-actions,
  .plan-strip,
  .main-resume-card {
    width: 100%;
    max-width: 100%;
  }

  .workspace-hero h2 {
    font-size: 27px;
  }

  .main-resume-card-top {
    display: grid;
  }

  .main-resume-card em {
    font-size: 34px;
  }

  .progress-card-status {
    align-items: flex-start;
    flex-direction: column;
  }
}

/* Premium dashboard home refinement */
.dashboard-main {
  background:
    linear-gradient(115deg, rgba(238, 247, 255, 0.94), rgba(255, 255, 255, 0) 32%),
    linear-gradient(245deg, rgba(244, 241, 255, 0.78), rgba(255, 255, 255, 0) 34%),
    repeating-linear-gradient(90deg, rgba(31, 105, 213, 0.028) 0 1px, transparent 1px 44px),
    linear-gradient(180deg, #f7faff 0%, #ffffff 48%, #f5fbff 100%);
}

.sidebar {
  border-right-color: rgba(203, 215, 235, 0.82);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(245, 249, 255, 0.96)),
    repeating-linear-gradient(180deg, rgba(31, 105, 213, 0.035) 0 1px, transparent 1px 42px);
  box-shadow: 18px 0 54px rgba(18, 60, 145, 0.055);
}

.side-nav a,
.sidebar-link-button,
.dashboard-search,
.user-menu,
.dashboard-topbar .language-switch,
.dashboard-topbar .theme-toggle,
.dashboard-topbar .icon-button {
  transition:
    transform 0.22s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.22s ease,
    background 0.22s ease,
    box-shadow 0.22s ease,
    color 0.22s ease;
}

.side-nav a:hover,
.side-nav .active {
  transform: translateX(2px);
  border-color: rgba(31, 105, 213, 0.16);
  background:
    linear-gradient(135deg, rgba(238, 251, 255, 0.96), rgba(246, 242, 255, 0.92));
  box-shadow: 0 14px 32px rgba(18, 60, 145, 0.085);
}

.side-nav a:hover .icon,
.side-nav a:focus-visible .icon {
  transform: translateY(-1px) scale(1.06);
  filter: drop-shadow(0 8px 14px rgba(31, 105, 213, 0.22));
}

.side-nav .active .icon {
  filter: drop-shadow(0 7px 12px rgba(31, 105, 213, 0.16));
}

.side-nav a:hover span,
.side-nav a:focus-visible span {
  color: #123c91;
}

.app-shell.sidebar-collapsed .side-nav a:hover,
.app-shell.sidebar-collapsed .side-nav .active {
  transform: translateY(-1px);
}

@media (prefers-reduced-motion: reduce) {
  .brand:hover .brand-logo-image,
  .side-nav a:hover,
  .side-nav a:focus-visible,
  .side-nav a:hover .icon,
  .side-nav a:focus-visible .icon,
  .app-shell.sidebar-collapsed .side-nav a:hover,
  .app-shell.sidebar-collapsed .side-nav .active {
    transform: none !important;
  }
}

.dashboard-topbar {
  border-bottom-color: rgba(203, 215, 235, 0.78);
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.9), rgba(247, 251, 255, 0.82)),
    rgba(247, 250, 255, 0.9);
  box-shadow: 0 14px 40px rgba(18, 60, 145, 0.055);
}

.dashboard-search,
.user-menu,
.dashboard-topbar .language-switch,
.dashboard-topbar .icon-button {
  border-color: rgba(203, 215, 235, 0.92);
  background: rgba(255, 255, 255, 0.86);
  box-shadow:
    0 12px 30px rgba(18, 60, 145, 0.055),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.dashboard-topbar .dashboard-preferences {
  min-height: 40px;
  gap: 5px;
  padding: 4px;
  border-color: rgba(190, 207, 235, 0.86);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.94), rgba(242, 247, 255, 0.86));
  box-shadow:
    0 14px 32px rgba(18, 60, 145, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.dashboard-topbar .dashboard-preferences .language-switch {
  min-height: 30px;
  border: 0;
  background: rgba(238, 245, 255, 0.86);
  box-shadow: none;
}

.dashboard-topbar .dashboard-preferences .theme-toggle,
.dashboard-topbar .dashboard-preferences .ai-quick-toggle {
  width: 32px;
  height: 32px;
  min-height: 32px;
  border: 0;
  color: #123c91;
  background: transparent;
  box-shadow: none;
}

.dashboard-topbar .dashboard-preferences .theme-toggle:hover,
.dashboard-topbar .dashboard-preferences .ai-quick-toggle:hover {
  transform: translateY(-1px);
  color: var(--blue);
  background: rgba(238, 245, 255, 0.95);
  box-shadow: 0 8px 18px rgba(18, 60, 145, 0.08);
}

.dashboard-topbar .dashboard-preferences .icon {
  width: 16px;
  height: 16px;
}

.dashboard-topbar .user-menu {
  min-height: 42px;
  padding-right: 16px;
  border-color: rgba(190, 207, 235, 0.86);
}

.dashboard-search:focus-within {
  border-color: rgba(31, 105, 213, 0.32);
  box-shadow:
    0 16px 34px rgba(18, 60, 145, 0.09),
    0 0 0 4px rgba(105, 216, 242, 0.11);
}

.workspace-home {
  position: relative;
  width: min(100%, 1540px);
  margin: 0 auto;
  gap: clamp(24px, 2.2vw, 36px);
}

.workspace-hero {
  grid-template-columns: minmax(0, 1fr) minmax(350px, 430px);
  gap: clamp(26px, 3vw, 48px);
  min-height: 380px;
  padding: clamp(30px, 3.4vw, 52px);
  border-color: rgba(255, 255, 255, 0.22);
  border-radius: 32px;
  background:
    linear-gradient(116deg, rgba(255, 255, 255, 0.13), transparent 34%),
    repeating-linear-gradient(100deg, rgba(255, 255, 255, 0.07) 0 1px, transparent 1px 28px),
    linear-gradient(135deg, #07142f 0%, #123c91 50%, #5262d8 76%, #47a7c7 100%);
  box-shadow:
    0 34px 100px rgba(18, 60, 145, 0.26),
    inset 0 1px 0 rgba(255, 255, 255, 0.2);
}

.workspace-hero::before {
  background:
    linear-gradient(120deg, rgba(255, 255, 255, 0.16), transparent 36%),
    repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.055) 0 1px, transparent 1px 38px),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.035) 0 1px, transparent 1px 56px);
  opacity: 0.82;
}

.workspace-hero::after {
  right: clamp(24px, 3vw, 46px);
  bottom: clamp(18px, 2vw, 34px);
  width: min(45%, 560px);
  height: 42%;
  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.09), transparent 46%),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.06) 0 1px, transparent 1px 32px);
  opacity: 0.58;
}

.workspace-hero-glow {
  inset: auto auto 18% 8%;
  width: min(64%, 760px);
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, rgba(142, 232, 247, 0.74), rgba(255, 255, 255, 0.68), transparent);
  filter: blur(9px);
  opacity: 0.92;
}

.workspace-hero-main {
  gap: clamp(20px, 2.2vw, 30px);
  min-height: 300px;
}

.workspace-hero-copy {
  gap: 16px;
  max-width: 820px;
}

.workspace-hero h2 {
  max-width: 820px;
  font-size: clamp(36px, 3.6vw, 58px);
  line-height: 1.02;
}

.workspace-hero p {
  max-width: 680px;
  color: rgba(237, 246, 255, 0.92);
  font-size: clamp(15.5px, 1.18vw, 18px);
}

.hero-context-row {
  gap: 9px;
  max-width: 820px;
}

.hero-context-row span,
.plan-badge,
.hero-chip {
  backdrop-filter: blur(14px);
}

.hero-context-row span {
  min-height: 34px;
  padding: 0 12px;
  border-color: rgba(255, 255, 255, 0.2);
  background: rgba(255, 255, 255, 0.12);
  font-size: 12px;
}

.workspace-hero .hero-primary-actions {
  grid-template-columns: minmax(210px, 1.1fr) minmax(150px, 0.78fr) minmax(190px, 0.96fr);
  gap: 12px;
}

.workspace-hero .primary-button,
.workspace-hero .secondary-button {
  min-height: 52px;
  border-radius: 17px;
}

.workspace-hero .hero-primary-actions .primary-button {
  color: #07142f;
  background: linear-gradient(135deg, #ffffff 0%, #e4fbff 52%, #bff0ff 100%);
  box-shadow:
    0 20px 44px rgba(5, 16, 42, 0.24),
    0 0 0 1px rgba(255, 255, 255, 0.4) inset;
}

.workspace-hero .hero-primary-actions .secondary-button {
  border-color: rgba(255, 255, 255, 0.2);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0.08));
}

.hero-secondary-actions {
  gap: 9px;
}

.hero-chip {
  min-height: 36px;
  padding-inline: 13px;
}

.main-resume-card {
  gap: 16px;
  min-height: 300px;
  padding: clamp(20px, 2.1vw, 28px);
  border-radius: 26px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0.08)),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.04) 0 1px, transparent 1px 38px);
  box-shadow:
    0 28px 70px rgba(5, 16, 42, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.24);
}

.progress-card-orbit {
  opacity: 0.62;
}

.progress-card-status,
.progress-metrics span,
.progress-chip-row span {
  border-color: rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.095);
}

.workspace-grid {
  grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.94fr) minmax(0, 0.94fr);
  gap: clamp(18px, 1.8vw, 28px);
}

.workspace-home .dash-card {
  min-height: 350px;
  border-color: rgba(203, 215, 235, 0.78);
  border-radius: 26px;
  box-shadow:
    0 20px 56px rgba(18, 60, 145, 0.09),
    inset 0 1px 0 rgba(255, 255, 255, 0.88);
}

.workspace-home .dash-card:hover {
  transform: translateY(-6px);
  box-shadow:
    0 30px 72px rgba(18, 60, 145, 0.15),
    inset 0 1px 0 rgba(255, 255, 255, 0.94);
}

.resume-preview-panel {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(31, 105, 213, 0.09);
  border-radius: 20px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.86), rgba(241, 248, 255, 0.72));
}

.resume-preview-head,
.resume-preview-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.resume-preview-head span,
.resume-preview-foot span {
  color: var(--muted);
  font-size: 11px;
  font-weight: 900;
  text-transform: uppercase;
}

.resume-preview-head strong,
.resume-preview-foot strong {
  color: var(--ink);
  font-size: 13px;
}

.resume-preview-body {
  display: grid;
  gap: 7px;
  padding: 14px;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(31, 105, 213, 0.06);
}

.resume-preview-body span {
  display: block;
  height: 7px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(31, 105, 213, 0.24), rgba(105, 216, 242, 0.18));
}

.resume-preview-body span:nth-child(1) { width: 46%; height: 10px; }
.resume-preview-body span:nth-child(2) { width: 84%; }
.resume-preview-body span:nth-child(3) { width: 70%; }
.resume-preview-body span:nth-child(4) { width: 58%; }

.resume-current-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.resume-current-actions .small {
  min-height: 38px;
}

.ai-tools-card {
  background:
    linear-gradient(140deg, rgba(255, 255, 255, 0.98), rgba(247, 246, 255, 0.92)),
    repeating-linear-gradient(100deg, rgba(155, 124, 247, 0.045) 0 1px, transparent 1px 28px);
}

.ai-signal-list {
  grid-template-columns: 1fr;
}

.ai-signal-list span {
  border-color: rgba(105, 216, 242, 0.14);
  background: rgba(255, 255, 255, 0.76);
}

.plan-status-card.is-active-plan {
  color: var(--ink);
  border-color: rgba(71, 209, 157, 0.22);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(241, 255, 248, 0.9)),
    repeating-linear-gradient(90deg, rgba(71, 209, 157, 0.045) 0 1px, transparent 1px 34px);
}

.plan-status-card.is-active-plan h3 {
  color: var(--ink);
}

.plan-status-card.is-active-plan p {
  color: var(--muted);
}

.plan-status-card.is-active-plan .upgrade-benefit-list li,
.plan-status-card.is-active-plan .mini-chip-row span,
.plan-status-card.is-active-plan .dash-card-topline .eyebrow {
  border-color: rgba(71, 209, 157, 0.18);
  color: #166138;
  background: rgba(233, 248, 239, 0.78);
}

.plan-status-card.is-active-plan .feature-icon {
  color: #0d5130;
  background: linear-gradient(135deg, #e9f8ef, #dff9ff);
}

.plan-status-card.is-active-plan .primary-button.full {
  color: #ffffff;
  background: linear-gradient(135deg, #166138, #1f69d5);
}

.plan-status-card.is-upgrade-plan {
  color: #ffffff;
  border-color: rgba(18, 60, 145, 0.2);
  background:
    linear-gradient(145deg, #07142f 0%, #123c91 68%, #5262d8 100%),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.055) 0 1px, transparent 1px 34px);
}

.plan-status-card.is-upgrade-plan h3 {
  color: #ffffff;
}

.plan-status-card.is-upgrade-plan p {
  color: rgba(235, 243, 255, 0.84);
}

.plan-status-card.is-upgrade-plan .upgrade-benefit-list li,
.plan-status-card.is-upgrade-plan .mini-chip-row span,
.plan-status-card.is-upgrade-plan .dash-card-topline .eyebrow {
  border-color: rgba(255, 255, 255, 0.18);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.1);
}

.plan-status-card.is-upgrade-plan .feature-icon {
  color: #07142f;
  background: linear-gradient(135deg, #ffffff, #bff0ff);
}

.plan-status-card.is-upgrade-plan .primary-button.full {
  color: #07142f;
  background: linear-gradient(135deg, #ffffff, #dff9ff);
  box-shadow: 0 16px 34px rgba(5, 16, 42, 0.22);
}

.dashboard-section {
  gap: 18px;
}

.recent-resume-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
  gap: clamp(16px, 1.6vw, 24px);
}

.recent-resume-card {
  display: grid;
  gap: 14px;
  padding: 18px;
  border-color: rgba(203, 215, 235, 0.78);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(247, 250, 255, 0.9));
  transition:
    transform 0.24s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.24s ease,
    border-color 0.24s ease;
}

.recent-resume-card:hover {
  transform: translateY(-4px);
  border-color: rgba(31, 105, 213, 0.16);
  box-shadow: 0 24px 60px rgba(18, 60, 145, 0.13);
}

.recent-resume-preview {
  display: grid;
  gap: 12px;
  padding: 13px;
  border-radius: 18px;
  background:
    linear-gradient(145deg, #eefbff, #f7f4ff);
  box-shadow: inset 0 0 0 1px rgba(31, 105, 213, 0.07);
}

.recent-preview-lines {
  display: grid;
  gap: 6px;
}

.recent-preview-lines span {
  display: block;
  height: 7px;
  border-radius: 999px;
  background: rgba(31, 105, 213, 0.18);
}

.recent-preview-lines span:nth-child(1) { width: 78%; }
.recent-preview-lines span:nth-child(2) { width: 58%; }
.recent-preview-lines span:nth-child(3) { width: 86%; }

.recent-resume-copy h3 {
  margin: 0 0 6px;
}

.recent-resume-status {
  justify-self: start;
  padding: 7px 10px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 999px;
  color: #123c91;
  background: rgba(238, 245, 255, 0.86);
  font-size: 11.5px;
  font-weight: 900;
}

.next-step-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: clamp(14px, 1.4vw, 22px);
}

.next-step-action-card {
  text-align: left;
  cursor: pointer;
  color: var(--ink);
  font: inherit;
}

.next-step-action-card > span {
  justify-self: start;
  min-height: 26px;
  padding: 6px 9px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 999px;
  color: #123c91;
  background: rgba(238, 245, 255, 0.86);
  font-size: 11px;
  font-weight: 900;
}

.next-step-action-card p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.next-step-action-card:hover > span {
  border-color: rgba(105, 216, 242, 0.28);
  background: #eefbff;
}

.empty-resume-state {
  border-color: rgba(31, 105, 213, 0.12);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(238, 251, 255, 0.92));
  box-shadow: 0 20px 56px rgba(18, 60, 145, 0.09);
}

:root[data-theme="dark"] .dashboard-main {
  background:
    linear-gradient(115deg, rgba(105, 216, 242, 0.08), transparent 32%),
    linear-gradient(245deg, rgba(155, 124, 247, 0.09), transparent 34%),
    repeating-linear-gradient(90deg, rgba(163, 183, 220, 0.034) 0 1px, transparent 1px 44px),
    linear-gradient(180deg, #081124 0%, #0c1730 55%, #081124 100%);
}

:root[data-theme="dark"] .sidebar,
:root[data-theme="dark"] .dashboard-topbar {
  border-color: rgba(163, 183, 220, 0.18);
  background:
    linear-gradient(180deg, rgba(10, 18, 36, 0.95), rgba(12, 23, 48, 0.92));
}

:root[data-theme="dark"] .dashboard-search,
:root[data-theme="dark"] .user-menu,
:root[data-theme="dark"] .dashboard-topbar .language-switch,
:root[data-theme="dark"] .dashboard-topbar .icon-button,
:root[data-theme="dark"] .resume-preview-panel,
:root[data-theme="dark"] .resume-preview-body,
:root[data-theme="dark"] .recent-resume-card,
:root[data-theme="dark"] .recent-resume-preview,
:root[data-theme="dark"] .empty-resume-state {
  border-color: rgba(163, 183, 220, 0.18);
  background: rgba(16, 27, 52, 0.86);
}

:root[data-theme="dark"] .plan-status-card.is-active-plan,
:root[data-theme="dark"] .plan-status-card.is-upgrade-plan,
:root[data-theme="dark"] .resume-status-card,
:root[data-theme="dark"] .ai-tools-card {
  border-color: rgba(163, 183, 220, 0.18);
  background:
    linear-gradient(145deg, rgba(16, 27, 52, 0.96), rgba(12, 23, 48, 0.9));
}

:root[data-theme="dark"] .plan-status-card.is-active-plan .upgrade-benefit-list li,
:root[data-theme="dark"] .plan-status-card.is-active-plan .mini-chip-row span,
:root[data-theme="dark"] .plan-status-card.is-active-plan .dash-card-topline .eyebrow,
:root[data-theme="dark"] .recent-resume-status,
:root[data-theme="dark"] .next-step-action-card > span {
  border-color: rgba(105, 216, 242, 0.16);
  color: #d9e8ff;
  background: rgba(105, 216, 242, 0.08);
}

:root[data-theme="dark"] .resume-preview-head strong,
:root[data-theme="dark"] .resume-preview-foot strong,
:root[data-theme="dark"] .plan-status-card.is-active-plan h3 {
  color: var(--ink);
}

@media (min-width: 1240px) {
  .workspace-hero {
    grid-template-columns: minmax(0, 1fr) minmax(350px, 430px);
  }

  .workspace-grid {
    grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.94fr) minmax(0, 0.94fr);
  }
}

@media (min-width: 1680px) {
  .workspace-home {
    width: min(100%, 1640px);
  }

  .workspace-hero {
    grid-template-columns: minmax(0, 1fr) minmax(390px, 480px);
  }
}

@media (max-width: 1239px) {
  .workspace-hero,
  .workspace-grid {
    grid-template-columns: 1fr;
  }

  .workspace-hero {
    min-height: auto;
  }

  .workspace-hero-main,
  .main-resume-card {
    min-height: auto;
  }
}

@media (max-width: 760px) {
  .workspace-home {
    width: 100%;
    max-width: 100%;
    gap: 22px;
  }

  .dashboard-content.workspace-home > .workspace-hero {
    justify-self: center;
    width: calc(100vw - (var(--page-x) * 2));
    inline-size: calc(100vw - (var(--page-x) * 2));
    max-width: calc(100vw - (var(--page-x) * 2));
    padding: 22px;
    border-radius: 26px;
  }

  .workspace-hero-main,
  .workspace-hero-copy,
  .hero-action-stack,
  .hero-context-row,
  .main-resume-card,
  .workspace-home .dash-card,
  .recent-resume-card,
  .next-step-action-card {
    min-width: 0;
    max-width: 100%;
  }

  .hero-context-row,
  .hero-action-stack {
    max-width: min(100%, 330px);
  }

  .workspace-hero h2 {
    font-size: clamp(29px, 8vw, 38px);
  }

  .hero-context-row span,
  .hero-chip {
    white-space: normal;
  }

  .workspace-hero .hero-primary-actions,
  .hero-secondary-actions,
  .progress-metrics,
  .resume-status-meta,
  .next-step-grid {
    grid-template-columns: 1fr;
  }

  .resume-current-actions,
  .resume-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .resume-current-actions .small,
  .resume-actions .small {
    width: 100%;
  }
}

/* Premium dashboard hero executive refresh */
.dashboard-executive-hero {
  align-items: center;
  grid-template-columns: minmax(0, 1fr) minmax(380px, 480px);
  gap: clamp(30px, 4vw, 64px);
  min-height: 420px;
  padding: clamp(34px, 4vw, 58px);
  overflow: hidden;
  background:
    linear-gradient(118deg, rgba(255, 255, 255, 0.16), transparent 32%),
    repeating-linear-gradient(102deg, rgba(255, 255, 255, 0.052) 0 1px, transparent 1px 34px),
    linear-gradient(135deg, #06132c 0%, #0f347f 45%, #4658d6 76%, #43b2c7 100%);
  box-shadow:
    0 36px 105px rgba(18, 60, 145, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.24);
}

.dashboard-executive-hero .workspace-hero-main {
  align-content: center;
  gap: clamp(24px, 2.8vw, 38px);
  min-height: 316px;
}

.dashboard-executive-hero .workspace-hero-copy {
  gap: 18px;
  max-width: 760px;
}

.dashboard-executive-hero .hero-kicker-row {
  align-items: center;
}

.dashboard-executive-hero .hero-kicker-row .eyebrow {
  color: #77e5ff;
  letter-spacing: 0.12em;
}

.dashboard-executive-hero h2 {
  max-width: 780px;
  font-size: clamp(38px, 4.1vw, 64px);
  line-height: 0.98;
}

.dashboard-executive-hero p {
  max-width: 660px;
  color: rgba(240, 247, 255, 0.88);
  font-size: clamp(16px, 1.22vw, 20px);
  line-height: 1.55;
}

.dashboard-executive-hero .hero-action-stack {
  gap: 13px;
  max-width: 800px;
}

.dashboard-executive-hero .hero-primary-actions {
  grid-template-columns: minmax(220px, 1.05fr) minmax(150px, 0.72fr) minmax(190px, 0.9fr);
  gap: 12px;
}

.dashboard-executive-hero .primary-button,
.dashboard-executive-hero .secondary-button {
  min-height: 56px;
  border-radius: 18px;
  font-size: 14px;
}

.dashboard-executive-hero .hero-primary-actions .primary-button {
  color: #06132c;
  background: linear-gradient(135deg, #ffffff 0%, #e6fbff 48%, #baf1ff 100%);
  box-shadow:
    0 24px 54px rgba(5, 16, 42, 0.28),
    0 0 0 1px rgba(255, 255, 255, 0.46) inset;
}

.dashboard-executive-hero .hero-primary-actions .secondary-button {
  border-color: rgba(255, 255, 255, 0.2);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.065));
}

.dashboard-executive-hero .hero-commerce-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.hero-action-label {
  color: rgba(236, 246, 255, 0.66);
  font-size: 10.5px;
  font-weight: 900;
  letter-spacing: 0.1em;
  line-height: 1;
  text-transform: uppercase;
}

.dashboard-executive-hero .hero-chip {
  min-height: 32px;
  padding-inline: 11px;
  border-color: rgba(255, 255, 255, 0.14);
  color: rgba(248, 252, 255, 0.88);
  background: rgba(255, 255, 255, 0.075);
  font-size: 12px;
}

.executive-resume-panel {
  gap: 18px;
  min-height: 340px;
  padding: clamp(22px, 2.4vw, 32px);
  border-color: rgba(255, 255, 255, 0.24);
  border-radius: 30px;
  background:
    linear-gradient(146deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0.07)),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.038) 0 1px, transparent 1px 42px);
  box-shadow:
    0 30px 76px rgba(5, 16, 42, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.26);
}

.executive-resume-panel .main-resume-card-top {
  align-items: start;
}

.executive-resume-panel .main-resume-card-top strong {
  font-size: clamp(18px, 1.35vw, 23px);
}

.executive-progress-number {
  display: grid;
  justify-items: end;
  gap: 2px;
}

.executive-progress-number em {
  animation-delay: 0.08s;
  font-size: clamp(42px, 4.2vw, 64px);
  letter-spacing: 0;
  line-height: 0.9;
}

.executive-progress-number small {
  color: rgba(229, 238, 255, 0.62);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.executive-status-row {
  align-items: start;
  display: grid;
  justify-content: stretch;
  gap: 5px;
  padding: 14px 16px;
  border-radius: 18px;
}

.executive-status-row small,
.executive-next-action small,
.executive-meta-grid small {
  color: rgba(229, 238, 255, 0.62);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.executive-status-row strong {
  color: #ffffff;
  font-size: clamp(18px, 1.55vw, 24px);
  line-height: 1.12;
}

.executive-resume-panel .progress {
  height: 7px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.18);
}

.executive-resume-panel .progress span {
  background: linear-gradient(90deg, #73e7ff, #ffffff);
  box-shadow: 0 0 18px rgba(115, 231, 255, 0.38);
}

.executive-next-action {
  display: grid;
  gap: 7px;
  padding: 15px 16px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.075);
}

.executive-next-action strong {
  color: #ffffff;
  font-size: clamp(14px, 1.05vw, 17px);
  line-height: 1.42;
}

.executive-meta-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
}

.executive-meta-grid span {
  min-height: 74px;
  padding: 12px;
}

.executive-meta-grid small {
  display: block;
  margin-bottom: 6px;
}

.executive-meta-grid strong {
  color: #ffffff;
  font-size: 13px;
  line-height: 1.28;
}

:root[data-theme="dark"] .dashboard-executive-hero {
  background:
    linear-gradient(118deg, rgba(255, 255, 255, 0.1), transparent 32%),
    repeating-linear-gradient(102deg, rgba(255, 255, 255, 0.04) 0 1px, transparent 1px 34px),
    linear-gradient(135deg, #050b1b 0%, #10295f 48%, #3345a9 78%, #237a94 100%);
}

:root[data-theme="dark"] .executive-resume-panel {
  border-color: rgba(163, 183, 220, 0.2);
  background:
    linear-gradient(146deg, rgba(255, 255, 255, 0.14), rgba(255, 255, 255, 0.055)),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.03) 0 1px, transparent 1px 42px);
}

@media (max-width: 1239px) {
  .dashboard-executive-hero {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .dashboard-executive-hero {
    gap: 24px;
    padding: 24px;
  }

  .dashboard-executive-hero .workspace-hero-main,
  .dashboard-executive-hero .hero-action-stack {
    max-width: 100%;
  }

  .dashboard-executive-hero .hero-primary-actions,
  .dashboard-executive-hero .hero-commerce-actions,
  .executive-meta-grid {
    grid-template-columns: 1fr;
  }

  .dashboard-executive-hero .hero-commerce-actions {
    display: grid;
  }

  .hero-action-label {
    margin-bottom: 2px;
  }

  .executive-resume-panel .main-resume-card-top {
    grid-template-columns: 1fr;
  }

  .executive-progress-number {
    justify-items: start;
  }
}

/* Dashboard hero compact responsive sizing */
.dashboard-executive-hero {
  grid-template-columns: minmax(0, 1fr) minmax(340px, 430px);
  gap: clamp(22px, 3vw, 44px);
  min-height: 348px;
  padding: clamp(26px, 3vw, 40px);
}

.dashboard-executive-hero .workspace-hero-main {
  gap: clamp(18px, 2.1vw, 28px);
  min-height: 260px;
}

.dashboard-executive-hero .workspace-hero-copy {
  gap: 13px;
}

.dashboard-executive-hero h2 {
  max-width: 680px;
  font-size: clamp(34px, 3.4vw, 54px);
  line-height: 1;
}

.dashboard-executive-hero p {
  max-width: 620px;
  font-size: clamp(14.5px, 1vw, 17px);
  line-height: 1.48;
}

.dashboard-executive-hero .hero-action-stack {
  gap: 9px;
}

.dashboard-executive-hero .hero-primary-actions {
  grid-template-columns: minmax(190px, 1fr) minmax(130px, 0.66fr) minmax(170px, 0.84fr);
  gap: 10px;
}

.dashboard-executive-hero .primary-button,
.dashboard-executive-hero .secondary-button {
  min-height: 48px;
  border-radius: 15px;
}

.dashboard-executive-hero .hero-chip {
  min-height: 29px;
  padding-inline: 10px;
  font-size: 11.5px;
}

.executive-resume-panel {
  gap: 12px;
  min-height: 282px;
  padding: clamp(18px, 1.8vw, 24px);
  border-radius: 24px;
}

.executive-resume-panel .main-resume-card-top strong {
  font-size: clamp(16px, 1.2vw, 20px);
}

.executive-progress-number em {
  font-size: clamp(38px, 3.6vw, 56px);
}

.executive-status-row {
  padding: 11px 13px;
  border-radius: 15px;
}

.executive-status-row strong {
  font-size: clamp(16px, 1.25vw, 21px);
}

.executive-resume-panel .progress {
  height: 6px;
}

.executive-next-action {
  gap: 5px;
  padding: 12px 13px;
  border-radius: 15px;
}

.executive-next-action strong {
  font-size: clamp(13px, 0.95vw, 15px);
  line-height: 1.34;
}

.executive-meta-grid {
  gap: 7px;
}

.executive-meta-grid span {
  min-height: 58px;
  padding: 9px 10px;
  border-radius: 13px;
}

.executive-meta-grid small {
  margin-bottom: 4px;
  font-size: 9px;
}

.executive-meta-grid strong {
  font-size: 11.5px;
}

@media (min-width: 1440px) {
  .dashboard-executive-hero {
    min-height: 370px;
  }
}

@media (min-width: 980px) and (max-width: 1239px) {
  .dashboard-executive-hero {
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
    gap: 22px;
    min-height: 328px;
    padding: 24px;
  }

  .dashboard-executive-hero h2 {
    font-size: clamp(30px, 3.6vw, 42px);
  }

  .dashboard-executive-hero .hero-primary-actions {
    grid-template-columns: minmax(180px, 1fr) minmax(120px, 0.7fr);
  }

  .dashboard-executive-hero .hero-primary-actions .secondary-button:last-child {
    grid-column: 1 / -1;
  }

  .executive-resume-panel {
    min-height: 270px;
  }
}

@media (max-width: 979px) {
  .dashboard-executive-hero {
    grid-template-columns: 1fr;
    gap: 20px;
    min-height: auto;
    padding: 24px;
  }

  .dashboard-executive-hero .workspace-hero-main,
  .executive-resume-panel {
    min-height: auto;
  }
}

@media (max-width: 760px) {
  .dashboard-content.workspace-home > .dashboard-executive-hero {
    padding: 20px;
    border-radius: 22px;
  }

  .dashboard-executive-hero h2 {
    font-size: clamp(28px, 7.2vw, 34px);
    line-height: 1.03;
  }

  .dashboard-executive-hero p {
    font-size: 14px;
    line-height: 1.45;
  }

  .dashboard-executive-hero .primary-button,
  .dashboard-executive-hero .secondary-button {
    min-height: 46px;
  }

  .dashboard-executive-hero .hero-commerce-actions {
    gap: 7px;
  }

  .executive-resume-panel {
    gap: 10px;
    padding: 16px;
    border-radius: 20px;
  }

  .executive-meta-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .executive-meta-grid span {
    min-height: 54px;
  }
}

@media (max-width: 430px) {
  .dashboard-content.workspace-home > .dashboard-executive-hero {
    width: calc(100vw - 24px);
    inline-size: calc(100vw - 24px);
    max-width: calc(100vw - 24px);
    padding: 18px;
  }

  .dashboard-executive-hero .workspace-hero-copy {
    gap: 10px;
  }

  .dashboard-executive-hero h2 {
    font-size: clamp(26px, 8vw, 32px);
  }

  .executive-progress-number em {
    font-size: 38px;
  }
}

@media (max-height: 760px) and (min-width: 980px) {
  .dashboard-executive-hero {
    min-height: 300px;
    padding-top: 22px;
    padding-bottom: 22px;
  }

  .dashboard-executive-hero .workspace-hero-main {
    gap: 16px;
  }

  .dashboard-executive-hero h2 {
    font-size: clamp(30px, 3vw, 46px);
  }

  .executive-resume-panel {
    min-height: 248px;
  }
}

/* Dashboard hero compactness and viewport fit pass */
.dashboard-executive-hero {
  min-height: 318px;
  padding: clamp(22px, 2.4vw, 34px);
  animation: none;
}

.dashboard-executive-hero .workspace-hero-main {
  gap: clamp(14px, 1.7vw, 22px);
  min-height: 230px;
}

.dashboard-executive-hero h2 {
  font-size: clamp(31px, 3.1vw, 48px);
  line-height: 1.01;
}

.dashboard-executive-hero p {
  max-width: 560px;
  font-size: clamp(13.5px, 0.95vw, 16px);
}

.dashboard-executive-hero .hero-primary-actions {
  grid-template-columns: minmax(180px, 1fr) minmax(124px, 0.62fr) minmax(164px, 0.8fr);
}

.dashboard-executive-hero .primary-button,
.dashboard-executive-hero .secondary-button {
  min-height: 44px;
  padding-inline: 13px;
  border-radius: 14px;
  font-size: 13px;
}

.executive-resume-panel {
  align-self: center;
  align-content: start;
  gap: 9px;
  min-height: 0;
  padding: clamp(15px, 1.45vw, 20px);
  border-color: rgba(255, 255, 255, 0.3);
  background:
    radial-gradient(circle at 92% 8%, rgba(142, 232, 247, 0.18), transparent 28%),
    linear-gradient(146deg, rgba(255, 255, 255, 0.28), rgba(255, 255, 255, 0.13));
  animation: none;
}

.executive-resume-panel .main-resume-card-top {
  gap: 12px;
}

.executive-resume-panel .main-resume-card-top strong {
  font-size: clamp(15px, 1.08vw, 18px);
}

.executive-progress-number em {
  font-size: clamp(34px, 3.2vw, 50px);
}

.executive-status-row {
  gap: 3px;
  padding: 9px 11px;
  border-radius: 13px;
}

.executive-status-row strong {
  font-size: clamp(15px, 1.1vw, 19px);
}

.executive-next-action {
  gap: 4px;
  padding: 10px 11px;
  border-radius: 13px;
}

.executive-next-action strong {
  font-size: clamp(12px, 0.88vw, 14px);
  line-height: 1.28;
}

.executive-meta-grid {
  gap: 6px;
}

.executive-meta-grid span {
  min-height: 46px;
  padding: 7px 8px;
}

.executive-meta-grid small {
  margin-bottom: 2px;
  font-size: 8.5px;
}

.executive-meta-grid strong {
  font-size: 10.8px;
  line-height: 1.22;
}

@media (min-width: 980px) and (max-width: 1239px) {
  .dashboard-executive-hero {
    min-height: 300px;
    padding: 20px;
  }

  .executive-progress-number em {
    font-size: 38px;
  }
}

@media (max-width: 979px) {
  .dashboard-executive-hero {
    padding: 20px;
  }

  .dashboard-executive-hero .workspace-hero-main {
    gap: 16px;
  }
}

@media (max-width: 760px) {
  .dashboard-executive-hero .hero-primary-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .dashboard-executive-hero .hero-primary-actions .primary-button {
    grid-column: 1 / -1;
  }

  .dashboard-executive-hero .hero-commerce-actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .dashboard-executive-hero .primary-button,
  .dashboard-executive-hero .secondary-button {
    min-height: 43px;
  }

  .dashboard-executive-hero .hero-chip {
    min-height: 28px;
  }

  .executive-resume-panel {
    padding: 14px;
  }
}

@media (max-width: 430px) {
  .dashboard-executive-hero {
    gap: 16px;
  }

  .dashboard-executive-hero p {
    font-size: 13px;
  }

  .executive-meta-grid span {
    min-height: 44px;
    padding: 7px;
  }
}

@media (max-width: 760px) {
  .dashboard-content.workspace-home > .dashboard-executive-hero {
    padding: 16px;
  }

  .dashboard-executive-hero {
    gap: 14px;
  }

  .dashboard-executive-hero .workspace-hero-main {
    gap: 12px;
  }

  .dashboard-executive-hero h2 {
    font-size: clamp(25px, 6.7vw, 31px);
    line-height: 1.02;
  }

  .dashboard-executive-hero p {
    font-size: 12.8px;
    line-height: 1.38;
  }

  .dashboard-executive-hero .primary-button,
  .dashboard-executive-hero .secondary-button {
    min-height: 40px;
    padding-inline: 10px;
    font-size: 12.5px;
  }

  .dashboard-executive-hero .hero-chip {
    min-height: 27px;
    padding-inline: 8px;
    font-size: 11px;
  }

  .hero-action-label {
    grid-column: 1 / -1;
  }

  .dashboard-executive-hero .hero-commerce-actions .hero-chip:last-child {
    grid-column: 1 / -1;
  }

  .executive-resume-panel {
    gap: 6px;
    padding: 10px;
  }

  .executive-resume-panel .main-resume-card-top {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 8px;
  }

  .executive-resume-panel .main-resume-card-top span {
    font-size: 9px;
  }

  .executive-resume-panel .main-resume-card-top strong {
    font-size: 14px;
    line-height: 1.1;
  }

  .executive-progress-number {
    justify-items: end;
    gap: 0;
  }

  .executive-progress-number em {
    font-size: 30px;
  }

  .executive-progress-number small,
  .executive-status-row small,
  .executive-next-action small,
  .executive-meta-grid small {
    font-size: 8px;
  }

  .executive-status-row,
  .executive-next-action {
    padding: 7px 8px;
    border-radius: 11px;
  }

  .executive-status-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
  }

  .executive-status-row strong {
    font-size: 14px;
    text-align: right;
  }

  .executive-next-action strong {
    display: -webkit-box;
    overflow: hidden;
    font-size: 11.5px;
    line-height: 1.2;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
  }

  .executive-resume-panel .progress {
    height: 4px;
  }

  .executive-meta-grid span {
    min-height: 34px;
    padding: 5px 6px;
    border-radius: 10px;
  }

  .executive-meta-grid small {
    margin-bottom: 1px;
  }

  .executive-meta-grid strong {
    font-size: 10px;
    line-height: 1.12;
  }
}

@media (max-width: 380px) {
  .dashboard-executive-hero .hero-primary-actions,
  .dashboard-executive-hero .hero-commerce-actions {
    grid-template-columns: 1fr !important;
  }

  .dashboard-executive-hero .hero-commerce-actions .hero-chip:last-child {
    grid-column: auto;
  }
}

/* Public homepage hero clarity pass */
.home-shell .hero {
  box-sizing: border-box;
  grid-template-columns: minmax(0, 0.92fr) minmax(420px, 0.88fr);
  column-gap: clamp(42px, 5vw, 76px);
  row-gap: clamp(24px, 3vw, 36px);
  width: min(100%, 1280px);
  padding-top: clamp(44px, 5.2vw, 74px);
  padding-bottom: clamp(46px, 5vw, 72px);
}

.home-shell .hero::before {
  inset: clamp(30px, 4vw, 54px) var(--page-x) auto auto;
  width: min(43vw, 560px);
  height: min(39vw, 500px);
  border-radius: 38px;
  opacity: 0.68;
  transform: rotate(-3deg);
}

.home-shell .hero-copy {
  display: grid;
  align-content: center;
  max-width: 700px;
}

.home-shell .hero .eyebrow {
  margin-bottom: 18px;
}

.home-shell .hero h1 {
  max-width: 700px;
  margin: 0;
  font-size: clamp(42px, 4.55vw, 62px);
  line-height: 1.03;
}

.home-shell .hero p {
  max-width: 620px;
  margin: 22px 0 0;
  font-size: clamp(16.5px, 1.25vw, 18.5px);
  line-height: 1.62;
}

.home-shell .hero-actions {
  gap: 14px;
  margin-top: 30px;
}

.home-shell .hero-actions .primary-button,
.home-shell .hero-actions .secondary-button {
  min-height: 50px;
  border-radius: 16px;
}

.home-shell .hero-actions .primary-button {
  padding-inline: 26px;
}

.home-shell .hero-actions .secondary-button {
  padding-inline: 22px;
}

.home-shell .trust-row {
  gap: 10px;
  max-width: 640px;
  margin-top: 24px;
}

.home-shell .trust-row span {
  padding: 9px 13px;
}

.home-shell .hero-visual {
  box-sizing: border-box;
  width: min(100%, 590px);
  max-width: 590px;
  padding: 44px 34px 68px 22px;
  justify-self: end;
  overflow: visible;
}

.home-shell .hero-visual-glow {
  inset: 9% 6% 11%;
  filter: blur(16px);
  opacity: 0.62;
}

.home-shell .hero-product-chips {
  top: 10px;
  right: 48px;
  max-width: 360px;
  gap: 8px;
}

.home-shell .hero-product-chips span,
.home-shell .application-checklist span {
  min-height: 30px;
  background: rgba(255, 255, 255, 0.78);
}

.home-shell .application-checklist {
  left: 22px;
  bottom: 24px;
  gap: 8px;
}

.home-shell .application-checklist span {
  padding: 0 12px 0 9px;
}

.home-shell .editor-panel {
  padding: 16px;
  border-radius: 30px;
}

.home-shell .panel-top {
  padding-bottom: 12px;
}

.home-shell .editor-grid {
  grid-template-columns: minmax(0, 0.88fr) minmax(0, 1.12fr);
  gap: 18px;
}

.home-shell .editor-form {
  padding: 18px;
  border-radius: 22px;
}

.home-shell .suggestion-card {
  margin-top: 16px;
  padding: 14px;
}

.home-shell .resume-preview.mini {
  min-height: clamp(300px, 28vw, 345px);
  transform: rotate(-0.8deg);
}

.home-shell .resume-preview.mini::before {
  inset: 16px -10px -11px 16px;
  opacity: 0.82;
}

.home-shell .floating-score {
  right: 18px;
  bottom: 22px;
  width: min(210px, calc(100% - 36px));
  padding: 15px;
  border-radius: 24px;
}

.home-shell .floating-score strong {
  font-size: 39px;
}

.home-shell .hero-value-strip {
  gap: clamp(16px, 1.7vw, 20px);
  margin-top: clamp(16px, 2.4vw, 30px);
}

.home-shell .hero-value-card {
  align-items: start;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 14px;
  min-height: 106px;
  padding: 18px;
  border-radius: 22px;
}

.home-shell .hero-value-icon {
  width: 44px;
  height: 44px;
  border-radius: 16px;
}

.home-shell .hero-value-card strong {
  font-size: 15px;
}

.home-shell .hero-value-card span {
  margin-top: 6px;
  line-height: 1.44;
}

:root[data-theme="dark"] .home-shell .hero::before {
  border-color: rgba(105, 216, 242, 0.12);
  background:
    linear-gradient(135deg, rgba(105, 216, 242, 0.08), rgba(255, 255, 255, 0)),
    repeating-linear-gradient(0deg, rgba(105, 216, 242, 0.05) 0 1px, transparent 1px 46px);
}

:root[data-theme="dark"] .home-shell .hero-product-chips span,
:root[data-theme="dark"] .home-shell .application-checklist span {
  border-color: rgba(163, 183, 220, 0.2);
  color: #dce8ff;
  background: rgba(12, 23, 48, 0.78);
}

:root[data-theme="dark"] .home-shell .editor-panel,
:root[data-theme="dark"] .home-shell .editor-form,
:root[data-theme="dark"] .home-shell .floating-score,
:root[data-theme="dark"] .home-shell .hero-value-card,
:root[data-theme="dark"] .home-shell .trust-row span {
  border-color: rgba(163, 183, 220, 0.18);
  background: rgba(12, 23, 48, 0.9);
}

@media (max-width: 1320px) {
  .home-shell .hero {
    grid-template-columns: minmax(0, 0.96fr) minmax(380px, 0.84fr);
    column-gap: clamp(30px, 4vw, 48px);
    row-gap: 26px;
    padding-top: clamp(34px, 4vw, 54px);
    padding-bottom: clamp(38px, 4vw, 58px);
  }

  .home-shell .hero h1 {
    font-size: clamp(38px, 4.15vw, 56px);
  }

  .home-shell .hero-visual {
    width: min(100%, 540px);
    max-width: 540px;
    padding-right: 28px;
  }

  .home-shell .resume-preview.mini {
    min-height: clamp(280px, 27vw, 325px);
  }
}

@media (max-width: 1180px) and (min-width: 861px) {
  .home-shell .hero {
    grid-template-columns: minmax(0, 1fr) minmax(340px, 0.78fr);
    column-gap: 32px;
    row-gap: 24px;
    padding-top: 30px;
    padding-bottom: 42px;
  }

  .home-shell .hero h1 {
    font-size: clamp(34px, 4vw, 48px);
  }

  .home-shell .hero p {
    margin-top: 18px;
    font-size: 16.5px;
    line-height: 1.54;
  }

  .home-shell .hero-actions {
    margin-top: 24px;
  }

  .home-shell .trust-row {
    margin-top: 20px;
  }

  .home-shell .hero-visual {
    max-width: 470px;
    padding: 40px 24px 62px 16px;
  }

  .home-shell .editor-grid {
    grid-template-columns: 1fr;
  }

  .home-shell .editor-form {
    display: none;
  }

  .home-shell .application-checklist {
    left: 16px;
    bottom: 18px;
  }

  .home-shell .floating-score {
    right: 14px;
    bottom: 18px;
  }

  .home-shell .hero-value-strip {
    margin-top: 14px;
  }

  .home-shell .hero-value-card {
    min-height: 92px;
    padding: 14px;
  }
}

@media (max-height: 820px) and (min-width: 861px) {
  .home-shell .hero {
    row-gap: 22px;
    padding-top: 34px;
    padding-bottom: 44px;
  }

  .home-shell .hero p {
    margin-top: 18px;
  }

  .home-shell .hero-actions {
    margin-top: 24px;
  }

  .home-shell .trust-row {
    margin-top: 20px;
  }

  .home-shell .hero-visual {
    max-width: 540px;
    padding: 36px 28px 54px 18px;
  }

  .home-shell .resume-preview.mini {
    min-height: 272px;
  }

  .home-shell .floating-score {
    width: 198px;
    padding: 13px;
  }

  .home-shell .floating-score strong {
    font-size: 35px;
  }

  .home-shell .hero-value-strip {
    gap: 16px;
    margin-top: 16px;
  }

  .home-shell .hero-value-card {
    min-height: 90px;
    padding: 14px;
  }
}

@media (max-width: 860px) {
  .home-shell .hero {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 30px;
    width: min(100%, 760px);
    padding-top: 28px;
    padding-bottom: 46px;
    overflow: hidden;
  }

  .home-shell .hero-copy {
    justify-items: center;
    max-width: 680px;
    text-align: center;
  }

  .home-shell .hero .eyebrow {
    margin-bottom: 16px;
  }

  .home-shell .hero h1 {
    max-width: 680px;
    font-size: clamp(34px, 8vw, 48px);
  }

  .home-shell .hero p {
    max-width: 600px;
    margin-top: 18px;
  }

  .home-shell .hero-actions {
    justify-content: center;
    margin-top: 24px;
  }

  .home-shell .trust-row {
    justify-content: center;
    max-width: 620px;
    margin-top: 20px;
  }

  .home-shell .hero-visual {
    width: min(100%, 620px);
    max-width: 620px;
    padding: 42px 24px 66px;
    justify-self: center;
    overflow: visible;
  }

  .home-shell .hero-value-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    width: 100%;
    margin-top: 0;
  }
}

@media (max-width: 560px) {
  .home-shell .hero {
    gap: 24px;
    width: 100%;
    max-width: 100%;
    padding-top: 18px;
    padding-right: var(--page-x);
    padding-bottom: 34px;
    padding-left: var(--page-x);
  }

  .home-shell .hero-copy {
    justify-items: start;
    max-width: 100%;
    text-align: left;
  }

  .home-shell .hero h1,
  .home-shell .hero p {
    max-width: 100%;
  }

  .home-shell .hero h1 {
    font-size: clamp(30px, 8.4vw, 38px);
  }

  .home-shell .hero p {
    margin-top: 16px;
    font-size: 15.5px;
    line-height: 1.55;
  }

  .home-shell .hero-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
    gap: 10px;
    margin-top: 22px;
  }

  .home-shell .hero-actions .primary-button,
  .home-shell .hero-actions .secondary-button {
    width: 100%;
  }

  .home-shell .trust-row {
    justify-content: flex-start;
    max-width: 100%;
    margin-top: 18px;
  }

  .home-shell .hero-visual {
    width: 100%;
    max-width: 100%;
    padding: 0;
    overflow: visible;
  }

  .home-shell .hero-product-chips,
  .home-shell .application-checklist {
    display: none;
  }

  .home-shell .editor-panel {
    padding: 10px;
    border-radius: 22px;
  }

  .home-shell .resume-preview.mini {
    min-height: 228px;
    transform: none;
  }

  .home-shell .floating-score {
    position: relative;
    right: auto;
    bottom: auto;
    width: 100%;
    max-width: 100%;
    margin: 12px auto 0;
  }

  .home-shell .hero-value-strip {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .home-shell .hero-value-card {
    min-height: 78px;
    padding: 13px;
  }
}

/* Hero viewport fit and overlap correction */
@media (min-width: 861px) {
  .home-shell .hero {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
    grid-template-rows: minmax(0, 1fr) auto;
    align-items: start;
    column-gap: clamp(34px, 4.2vw, 64px);
    row-gap: 14px;
    width: min(100%, 1400px);
    height: calc(100svh - 88px);
    min-height: 620px;
    max-height: 820px;
    padding-top: clamp(20px, 3vh, 34px);
    padding-bottom: clamp(14px, 2.4vh, 24px);
    overflow: hidden;
  }

  .home-shell .hero::before {
    inset: 24px var(--page-x) auto auto;
    width: min(37vw, 500px);
    height: min(34vw, 420px);
    opacity: 0.52;
  }

  .home-shell .hero-copy {
    align-content: start;
    padding-top: clamp(28px, 5vh, 56px);
  }

  .home-shell .hero .eyebrow {
    margin-bottom: 14px;
  }

  .home-shell .hero h1 {
    max-width: 720px;
    font-size: clamp(36px, 3.45vw, 54px);
    line-height: 1.04;
  }

  .home-shell .hero p {
    max-width: 660px;
    margin-top: 18px;
    font-size: clamp(16px, 1.05vw, 17.5px);
    line-height: 1.56;
  }

  .home-shell .hero-actions {
    gap: 12px;
    margin-top: 24px;
  }

  .home-shell .hero-actions .primary-button,
  .home-shell .hero-actions .secondary-button {
    min-height: 46px;
  }

  .home-shell .trust-row {
    gap: 9px;
    margin-top: 20px;
  }

  .home-shell .trust-row span {
    padding: 8px 12px;
  }

  .home-shell .hero-visual {
    width: min(100%, 500px);
    max-width: 500px;
    padding: 28px 16px 42px 8px;
    align-self: start;
  }

  .home-shell .hero-product-chips {
    top: 0;
    right: 26px;
    max-width: 330px;
  }

  .home-shell .hero-product-chips span,
  .home-shell .application-checklist span {
    min-height: 28px;
    font-size: 10.75px;
  }

  .home-shell .application-checklist {
    z-index: 7;
    left: 10px;
    bottom: 0;
    gap: 7px;
  }

  .home-shell .editor-panel {
    z-index: 2;
    height: clamp(306px, 40vh, 382px);
    padding: 12px;
    border-radius: 26px;
    overflow: visible;
  }

  .home-shell .panel-top {
    padding-bottom: 9px;
  }

  .home-shell .editor-grid {
    grid-template-columns: minmax(0, 0.76fr) minmax(0, 1fr);
    gap: 12px;
    height: calc(100% - 18px);
  }

  .home-shell .editor-form {
    min-height: 0;
    padding: 14px;
    overflow: visible;
  }

  .home-shell .ai-improve-button {
    min-height: 36px;
  }

  .home-shell .suggestion-card {
    margin-top: 12px;
    padding: 12px;
  }

  .home-shell .suggestion-card p {
    font-size: 12.5px;
    line-height: 1.42;
  }

  .home-shell .ai-message-rotator {
    height: 23px;
    margin-top: 7px;
  }

  .home-shell .ai-message-rotator span {
    font-size: 11px;
  }

  .home-shell .resume-preview.mini {
    height: 100%;
    min-height: 0;
    padding: 18px;
    transform: rotate(-0.5deg);
  }

  .home-shell .resume-preview.mini::before {
    inset: 12px -8px -9px 12px;
  }

  .home-shell .floating-score {
    z-index: 12;
    right: -4px;
    bottom: 4px;
    width: 184px;
    padding: 12px;
    border-radius: 20px;
    transform: translateZ(0);
  }

  .home-shell .floating-score strong {
    font-size: 31px;
  }

  .home-shell .score-card-heading {
    gap: 6px;
  }

  .home-shell .score-status {
    padding: 3px 6px;
    font-size: 9.5px;
  }

  .home-shell .score-cycle {
    min-width: 68px;
    min-height: 32px;
  }

  .home-shell .score-progress {
    margin-top: 8px;
  }

  .home-shell .score-ai-note {
    margin-top: 7px;
    font-size: 10.5px;
  }

  .home-shell .hero-value-strip {
    align-self: end;
    gap: 14px;
    margin-top: 0;
  }

  .home-shell .hero-value-card {
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 12px;
    min-height: 86px;
    padding: 13px;
    border-radius: 18px;
  }

  .home-shell .hero-value-icon {
    width: 38px;
    height: 38px;
    border-radius: 14px;
  }

  .home-shell .hero-value-card strong {
    font-size: 14px;
  }

  .home-shell .hero-value-card span {
    margin-top: 4px;
    font-size: 12.3px;
    line-height: 1.34;
  }
}

@media (min-width: 861px) and (max-height: 740px) {
  .home-shell .hero {
    min-height: 590px;
    padding-top: 16px;
    padding-bottom: 14px;
  }

  .home-shell .hero-copy {
    padding-top: 20px;
  }

  .home-shell .hero h1 {
    font-size: clamp(34px, 3.2vw, 48px);
  }

  .home-shell .hero p {
    margin-top: 14px;
    line-height: 1.48;
  }

  .home-shell .hero-actions {
    margin-top: 18px;
  }

  .home-shell .trust-row {
    margin-top: 14px;
  }

  .home-shell .editor-panel {
    height: 312px;
  }

  .home-shell .hero-value-card {
    min-height: 78px;
    padding: 11px;
  }
}

@media (min-width: 861px) {
  .home-shell .hero {
    grid-template-rows: auto auto;
    height: auto;
    min-height: 0;
    max-height: none;
    row-gap: clamp(18px, 2.4vw, 28px);
    padding-bottom: clamp(24px, 3vw, 38px);
  }

  .home-shell .hero-value-strip {
    align-self: start;
  }
}

@media (max-width: 560px) {
  .home-shell .hero {
    justify-items: stretch;
  }

  .home-shell .hero,
  .home-shell .hero-copy,
  .home-shell .hero-actions,
  .home-shell .hero-actions .primary-button,
  .home-shell .hero-actions .secondary-button,
  .home-shell .trust-row,
  .home-shell .hero-visual,
  .home-shell .editor-panel,
  .home-shell .floating-score,
  .home-shell .hero-value-strip {
    box-sizing: border-box;
    max-width: 100%;
  }

  .home-shell .hero-copy {
    justify-self: start;
    width: min(100%, 334px);
    max-width: min(100%, 334px);
    min-width: 0;
    margin-right: 0;
    margin-left: 0;
    text-align: left;
  }

  .home-shell .hero-actions,
  .home-shell .trust-row,
  .home-shell .hero-value-strip {
    justify-self: start;
    width: min(100%, 334px);
    max-width: min(100%, 334px);
    margin-right: 0;
    margin-left: 0;
  }

  .home-shell .hero-visual {
    justify-self: stretch;
    width: 100%;
    max-width: 100%;
    margin-right: 0;
    margin-left: 0;
  }

  .home-shell .editor-grid {
    grid-template-columns: 1fr;
  }

  .home-shell .resume-preview.mini {
    width: 100%;
  }

  .home-shell .hero-actions .primary-button,
  .home-shell .hero-actions .secondary-button {
    min-width: 0;
  }

  .home-shell .hero h1,
  .home-shell .hero p {
    overflow-wrap: normal;
    word-break: normal;
  }
}

@keyframes premiumScoreFloat {
  0%, 100% {
    transform: translate3d(0, 0, 0);
    box-shadow:
      0 24px 54px rgba(18, 60, 145, 0.22),
      0 10px 22px rgba(11, 23, 54, 0.1),
      inset 0 1px 0 rgba(255, 255, 255, 0.94);
  }
  50% {
    transform: translate3d(0, -5px, 0);
    box-shadow:
      0 32px 68px rgba(18, 60, 145, 0.27),
      0 12px 26px rgba(11, 23, 54, 0.12),
      inset 0 1px 0 rgba(255, 255, 255, 0.96);
  }
}

@keyframes premiumScoreSweep {
  0% {
    transform: translateX(-120%);
    opacity: 0;
  }
  18%, 48% {
    opacity: 0.72;
  }
  68%, 100% {
    transform: translateX(145%);
    opacity: 0;
  }
}

@keyframes premiumScoreStepOne {
  0%, 28% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
  34%, 100% {
    opacity: 0;
    transform: translate3d(0, -5px, 0) scale(0.98);
  }
}

@keyframes premiumScoreStepTwo {
  0%, 24% {
    opacity: 0;
    transform: translate3d(0, 7px, 0) scale(0.98);
  }
  32%, 62% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
  70%, 100% {
    opacity: 0;
    transform: translate3d(0, -5px, 0) scale(0.98);
  }
}

@keyframes premiumScoreStepThree {
  0%, 58% {
    opacity: 0;
    transform: translate3d(0, 7px, 0) scale(0.98);
  }
  68%, 100% {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}

@keyframes premiumScoreProgressSync {
  0%, 28% {
    width: 72%;
  }
  32%, 62% {
    width: 81%;
  }
  68%, 100% {
    width: 86%;
  }
}

/* Final desktop hero contract: first viewport is hero only */
@media (min-width: 861px) {
  .home-shell .hero {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr);
    grid-template-rows: minmax(0, 1fr) auto;
    align-items: center;
    height: calc(100vh - 58px);
    height: calc(100dvh - 58px);
    min-height: 0;
    max-height: none;
    padding-top: clamp(16px, 2.1vh, 28px);
    padding-bottom: clamp(14px, 2vh, 24px);
    overflow: hidden;
  }

  .home-shell .hero-copy {
    align-content: center;
    padding-top: 0;
  }

  .home-shell .hero-visual {
    align-self: center;
    width: min(100%, 500px);
    max-width: 500px;
    padding: 24px 14px 32px 8px;
    transform: translateY(-10px);
  }

  .home-shell .editor-panel {
    height: clamp(318px, 40vh, 386px);
    overflow: visible;
  }

  .home-shell .editor-form {
    padding: 14px;
  }

  .home-shell .editor-form .field-line {
    margin-bottom: 9px;
  }

  .home-shell .editor-form button {
    min-height: 35px;
    margin-top: 6px;
  }

  .home-shell .suggestion-card {
    margin-top: 12px;
    padding: 13px;
  }

  .home-shell .suggestion-card p {
    font-size: 12.5px;
    line-height: 1.42;
  }

  .home-shell .application-checklist {
    display: none !important;
  }

  .home-shell .resume-preview.mini .resume-pill-row {
    display: none;
  }

  .home-shell .floating-score {
    z-index: 30;
    right: -8px;
    bottom: 18px;
    width: 190px;
    padding: 13px;
    overflow: hidden;
    border-radius: 22px;
    background:
      radial-gradient(circle at 18% 12%, rgba(105, 216, 242, 0.2), transparent 32%) padding-box,
      linear-gradient(180deg, rgba(255, 255, 255, 0.99), rgba(246, 251, 255, 0.96)) padding-box,
      linear-gradient(135deg, rgba(105, 216, 242, 0.95), rgba(31, 105, 213, 0.62), rgba(155, 124, 247, 0.72)) border-box;
    animation: premiumScoreFloat 5.8s cubic-bezier(0.22, 1, 0.36, 1) infinite;
  }

  .home-shell .floating-score::before {
    height: 4px;
    background: linear-gradient(90deg, var(--cyan), #47d19d, var(--blue-2), var(--purple));
  }

  .home-shell .floating-score::after {
    content: "";
    position: absolute;
    inset: 4px 0 auto;
    height: 46%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.72), transparent);
    transform: translateX(-120%);
    animation: premiumScoreSweep 5.8s ease-in-out infinite;
    pointer-events: none;
  }

  .home-shell .score-card-heading,
  .home-shell .score-result-row,
  .home-shell .score-progress,
  .home-shell .score-ai-note {
    z-index: 1;
  }

  .home-shell .floating-score .score-label {
    color: #52637f;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.14;
  }

  .home-shell .score-status {
    color: #06724f;
    background: linear-gradient(135deg, rgba(224, 255, 244, 0.98), rgba(240, 255, 250, 0.94));
    border-color: rgba(71, 209, 157, 0.42);
    font-size: 9.5px;
  }

  .home-shell .floating-score strong {
    color: #10214a;
    font-size: 34px;
    letter-spacing: 0;
  }

  .home-shell .score-cycle span {
    color: #10214a;
    opacity: 0;
    text-shadow: 0 8px 22px rgba(18, 60, 145, 0.12);
  }

  .home-shell .score-cycle span:nth-child(1) {
    animation: premiumScoreStepOne 6.4s ease-in-out infinite;
  }

  .home-shell .score-cycle span:nth-child(2) {
    animation: premiumScoreStepTwo 6.4s ease-in-out infinite;
  }

  .home-shell .score-cycle span:nth-child(3) {
    animation: premiumScoreStepThree 6.4s ease-in-out infinite;
  }

  .home-shell .score-delta {
    color: #123c91;
    background: linear-gradient(135deg, rgba(105, 216, 242, 0.18), rgba(155, 124, 247, 0.12));
    font-size: 10.5px;
  }

  .home-shell .score-progress {
    height: 8px;
    margin-top: 9px;
    background: rgba(18, 60, 145, 0.08);
  }

  .home-shell .score-progress span {
    background: linear-gradient(90deg, #123c91, var(--cyan) 42%, #47d19d 68%, var(--purple));
    box-shadow: 0 0 18px rgba(105, 216, 242, 0.52);
    animation: premiumScoreProgressSync 6.4s ease-in-out infinite;
  }

  .home-shell .score-ai-note {
    color: #40516f;
    font-size: 10.75px;
  }

  .home-shell .score-ai-note span {
    background: linear-gradient(135deg, #47d19d, var(--cyan));
    box-shadow: 0 0 0 4px rgba(71, 209, 157, 0.14);
  }

  .home-shell .hero-value-strip {
    align-self: end;
    margin-top: 0;
  }
}

@media (min-width: 861px) and (max-height: 760px) {
  .home-shell .hero {
    padding-top: 14px;
    padding-bottom: 14px;
  }

  .home-shell .hero h1 {
    font-size: clamp(34px, 3.2vw, 48px);
  }

  .home-shell .hero p {
    margin-top: 14px;
    line-height: 1.48;
  }

  .home-shell .hero-actions {
    margin-top: 18px;
  }

  .home-shell .trust-row {
    margin-top: 14px;
  }

  .home-shell .editor-panel {
    height: 344px;
  }

  .home-shell .editor-form {
    padding: 12px;
    overflow: visible;
  }

  .home-shell .field-line {
    height: 10px;
    margin-bottom: 7px;
  }

  .home-shell .editor-form button {
    min-height: 34px;
    margin-top: 5px;
    font-size: 13px;
  }

  .home-shell .suggestion-card {
    margin-top: 9px;
    padding: 10px;
  }

  .home-shell .suggestion-card strong {
    font-size: 15px;
    line-height: 1.15;
  }

  .home-shell .suggestion-card p {
    margin-top: 7px;
    font-size: 11.5px;
    line-height: 1.34;
  }

  .home-shell .ai-message-rotator {
    height: 20px;
    margin-top: 6px;
  }

  .home-shell .ai-message-rotator span {
    font-size: 10.25px;
  }

  .home-shell .hero-value-card {
    min-height: 78px;
    padding: 11px;
  }
}

:root[data-theme="dark"] .home-shell .floating-score {
  background:
    radial-gradient(circle at 18% 12%, rgba(105, 216, 242, 0.13), transparent 32%) padding-box,
    linear-gradient(180deg, rgba(16, 27, 52, 0.98), rgba(10, 18, 36, 0.96)) padding-box,
    linear-gradient(135deg, rgba(105, 216, 242, 0.8), rgba(120, 169, 255, 0.58), rgba(183, 156, 255, 0.62)) border-box;
}

:root[data-theme="dark"] .home-shell .floating-score strong {
  color: #edf5ff;
}

:root[data-theme="dark"] .home-shell .score-cycle span {
  color: #edf5ff;
}

/* Large desktop hero expansion: keep notebook layout untouched. */
@media (min-width: 1600px) and (min-height: 860px) {
  .home-shell .hero {
    width: min(100%, 1680px);
    grid-template-columns: minmax(0, 1.04fr) minmax(540px, 0.9fr);
    column-gap: clamp(72px, 5.2vw, 108px);
    padding-top: clamp(28px, 3.2vh, 44px);
    padding-bottom: clamp(26px, 3vh, 42px);
  }

  .home-shell .hero h1 {
    max-width: 860px;
    font-size: clamp(66px, 4.15vw, 78px);
  }

  .home-shell .hero p {
    max-width: 760px;
    margin-top: 26px;
    font-size: clamp(21px, 1.28vw, 25px);
    line-height: 1.55;
  }

  .home-shell .hero-actions {
    gap: 18px;
    margin-top: 34px;
  }

  .home-shell .hero-actions .primary-button,
  .home-shell .hero-actions .secondary-button {
    min-height: 58px;
    border-radius: 18px;
    font-size: 18px;
  }

  .home-shell .hero-actions .primary-button {
    padding-inline: 34px;
  }

  .home-shell .hero-actions .secondary-button {
    padding-inline: 30px;
  }

  .home-shell .trust-row {
    gap: 14px;
    max-width: 850px;
    margin-top: 24px;
  }

  .home-shell .trust-row span {
    min-height: 42px;
    padding: 10px 17px;
    font-size: 15px;
  }

  .home-shell .hero-visual {
    width: min(100%, 680px);
    max-width: 680px;
    padding: 38px 22px 46px 12px;
    transform: translateY(-12px);
  }

  .home-shell .hero-product-chips {
    top: 18px;
    right: 62px;
    gap: 10px;
    max-width: 460px;
  }

  .home-shell .hero-product-chips span {
    min-height: 38px;
    padding: 0 18px;
    font-size: 15px;
  }

  .home-shell .editor-panel {
    height: clamp(420px, 43vh, 492px);
    padding: 20px;
    border-radius: 34px;
  }

  .home-shell .panel-top span {
    width: 10px;
    height: 10px;
  }

  .home-shell .editor-grid {
    gap: 22px;
  }

  .home-shell .editor-form {
    padding: 20px;
    border-radius: 26px;
  }

  .home-shell .field-line,
  .home-shell .resume-lines {
    height: 14px;
  }

  .home-shell .editor-form button {
    min-height: 46px;
    margin-top: 14px;
    border-radius: 16px;
    font-size: 18px;
  }

  .home-shell .suggestion-card {
    margin-top: 18px;
    padding: 18px;
    border-radius: 22px;
  }

  .home-shell .suggestion-card strong {
    font-size: 22px;
  }

  .home-shell .suggestion-card p {
    margin-top: 12px;
    font-size: 17px;
    line-height: 1.5;
  }

  .home-shell .resume-preview.mini {
    min-height: clamp(400px, 38vh, 456px);
  }

  .home-shell .resume-template-hint {
    min-height: 34px;
    padding: 0 15px;
    font-size: 13px;
  }

  .home-shell .resume-head {
    height: 36px;
  }

  .home-shell .resume-title {
    height: 14px;
    margin: 16px 0 24px;
  }

  .home-shell .resume-section {
    height: 16px;
    margin-top: 24px;
  }

  .home-shell .floating-score {
    right: -16px;
    bottom: 28px;
    width: 282px;
    padding: 19px;
    border-radius: 28px;
  }

  .home-shell .floating-score .score-label {
    font-size: 15px;
  }

  .home-shell .score-status {
    font-size: 12px;
  }

  .home-shell .floating-score strong {
    font-size: 54px;
  }

  .home-shell .score-delta {
    font-size: 13px;
  }

  .home-shell .score-progress {
    height: 10px;
    margin-top: 12px;
  }

  .home-shell .score-ai-note {
    margin-top: 12px;
    font-size: 14px;
  }

  .home-shell .hero-value-strip {
    gap: 22px;
  }

  .home-shell .hero-value-card {
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 18px;
    min-height: 134px;
    padding: 22px;
    border-radius: 26px;
  }

  .home-shell .hero-value-icon {
    width: 58px;
    height: 58px;
    border-radius: 20px;
  }

  .home-shell .hero-value-card strong {
    font-size: 20px;
  }

  .home-shell .hero-value-card span {
    margin-top: 8px;
    font-size: 17px;
    line-height: 1.42;
  }
}

@media (min-width: 1900px) and (min-height: 960px) {
  .home-shell .hero {
    width: min(100%, 1780px);
    grid-template-columns: minmax(0, 1.08fr) minmax(610px, 0.92fr);
    column-gap: clamp(86px, 5.6vw, 124px);
  }

  .home-shell .hero h1 {
    max-width: 930px;
    font-size: clamp(72px, 4.05vw, 84px);
  }

  .home-shell .hero-visual {
    width: min(100%, 740px);
    max-width: 740px;
  }

  .home-shell .editor-panel {
    height: clamp(450px, 44vh, 520px);
  }
}

/* Pricing page premium hierarchy */
:root[data-theme="dark"] .pricing-page {
  background:
    radial-gradient(circle at 16% 5%, rgba(105, 216, 242, 0.12), transparent 28%),
    radial-gradient(circle at 86% 2%, rgba(155, 124, 247, 0.13), transparent 26%),
    linear-gradient(180deg, #081124 0%, #0c1730 58%, #081124 100%);
}

:root[data-theme="dark"] .pricing-hero::before {
  border-color: rgba(163, 183, 220, 0.12);
  background:
    linear-gradient(90deg, rgba(105, 216, 242, 0.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(105, 216, 242, 0.045) 1px, transparent 1px),
    rgba(16, 27, 52, 0.18);
}

:root[data-theme="dark"] .pricing-hero-pills span,
:root[data-theme="dark"] .pricing-mode-card,
:root[data-theme="dark"] .pricing-mode-card.subscription {
  border-color: rgba(163, 183, 220, 0.22);
  color: #e4eeff;
  background: rgba(16, 27, 52, 0.78);
}

:root[data-theme="dark"] .pricing-section-head h2,
:root[data-theme="dark"] .pricing-mode-card strong,
:root[data-theme="dark"] .premium-pricing-layout .price-card h3,
:root[data-theme="dark"] .premium-pricing-layout .price strong {
  color: #eef5ff;
}

:root[data-theme="dark"] .premium-pricing-layout .price-card,
:root[data-theme="dark"] .public-one-time-grid .purchase-card.featured,
:root[data-theme="dark"] .monthly-pricing-block .price-card[data-plan="free"],
:root[data-theme="dark"] .monthly-pricing-block .price-card[data-plan="pro"],
:root[data-theme="dark"] .monthly-pricing-block .price-card[data-plan="premium"],
:root[data-theme="dark"] .public-credit-grid .credit-card.featured {
  border-color: rgba(163, 183, 220, 0.22);
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.08), transparent 30%),
    rgba(16, 27, 52, 0.9);
}

:root[data-theme="dark"] .premium-pricing-layout .price-card li {
  color: #c6d4ee;
}

:root[data-theme="dark"] .support-hero-card,
:root[data-theme="dark"] .support-form-card,
:root[data-theme="dark"] .support-history-card,
:root[data-theme="dark"] .support-ticket-card,
:root[data-theme="dark"] .support-reply-box,
:root[data-theme="dark"] .dashboard-support-alert {
  border-color: rgba(163, 183, 220, 0.2);
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.08), transparent 30%),
    rgba(16, 27, 52, 0.9);
}

:root[data-theme="dark"] .support-hero-card p,
:root[data-theme="dark"] .support-ticket-card p,
:root[data-theme="dark"] .support-reply-box span {
  color: #c6d4ee;
}

:root[data-theme="dark"] .support-form-grid input,
:root[data-theme="dark"] .support-form-grid select,
:root[data-theme="dark"] .support-form-grid textarea,
:root[data-theme="dark"] .admin-form textarea {
  border-color: var(--line);
  color: var(--ink);
  background: rgba(8, 17, 36, 0.82);
}

:root[data-theme="dark"] .support-alert {
  color: #e4eeff;
  background: rgba(16, 27, 52, 0.86);
}

:root[data-theme="dark"] .support-status-open,
:root[data-theme="dark"] .support-priority-medium {
  color: #ffe2a8;
  background: rgba(255, 193, 87, 0.13);
}

:root[data-theme="dark"] .support-status-answered,
:root[data-theme="dark"] .support-priority-low {
  color: #baf7d2;
  background: rgba(50, 159, 105, 0.16);
}

:root[data-theme="dark"] .support-status-in_progress {
  color: #cfe5ff;
  background: rgba(120, 169, 255, 0.16);
}

:root[data-theme="dark"] .support-status-closed {
  color: #d4deef;
  background: rgba(163, 183, 220, 0.12);
}

:root[data-theme="dark"] .support-priority-high {
  color: #ffc6cf;
  background: rgba(159, 58, 69, 0.16);
}

:root[data-theme="dark"] .monthly-pricing-block {
  border-top-color: rgba(163, 183, 220, 0.14);
}

@media (max-width: 1180px) {
  .public-one-time-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .credits-grid.public-credit-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 960px) {
  .support-layout,
  .support-ticket-detail-grid {
    grid-template-columns: 1fr;
  }

  .support-hero-card,
  .support-ticket-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .pricing-section-head,
  .public-credit-band {
    grid-template-columns: 1fr;
  }

  .pricing-mode-card {
    width: min(100%, 360px);
  }

  .public-one-time-grid,
  .credits-grid.public-credit-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .premium-pricing-layout .price-card.featured {
    transform: none;
  }
}

@media (max-width: 860px) {
  .pricing-hero {
    width: calc(100vw - 36px);
    max-width: calc(100vw - 36px);
    padding: 34px 0 24px;
    text-align: left;
  }

  .pricing-hero::before {
    inset: 8px 0 0;
  }

  .pricing-hero h1 {
    max-width: min(100%, 340px);
    font-size: clamp(32px, 8vw, 46px);
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .pricing-hero p {
    width: 100%;
    max-width: calc(100vw - 36px);
    margin-right: 0;
    margin-left: 0;
    overflow-wrap: anywhere;
  }

  .pricing-hero-pills {
    justify-content: flex-start;
  }

  .public-monetization .monetization-block {
    width: calc(100vw - 36px);
    max-width: calc(100vw - 36px);
    padding-right: 0;
    padding-left: 0;
  }

  .pricing-section-head,
  .pricing-section-head > div {
    min-width: 0;
    max-width: 100%;
  }

  .pricing-section-head h2 {
    max-width: 100%;
    font-size: clamp(26px, 7vw, 36px);
    overflow-wrap: anywhere;
  }

  .pricing-section-head p {
    width: 100%;
    max-width: calc(100vw - 36px);
    overflow-wrap: anywhere;
  }

  .plan-comparison-card {
    width: calc(100vw - (var(--page-x) * 2));
    max-width: calc(100vw - (var(--page-x) * 2));
  }
}

@media (max-width: 640px) {
  .support-form-grid {
    grid-template-columns: 1fr;
  }

  .support-admin-filters {
    display: grid;
    grid-template-columns: 1fr;
  }

  .support-admin-filters select {
    max-width: none;
  }

  .pricing-hero h1,
  .pricing-hero p,
  .pricing-hero-pills,
  .pricing-section-head h2,
  .pricing-section-head p {
    max-width: 330px !important;
  }

  .pricing-hero-pills {
    display: grid;
    grid-template-columns: repeat(2, max-content);
    align-items: start;
  }

  .currency-switcher {
    grid-template-columns: 1fr;
    justify-items: center;
    width: min(100%, 330px);
    border-radius: 18px;
    text-align: center;
  }

  .pricing-hero-pills span {
    white-space: normal;
  }

  .public-one-time-grid,
  .credits-grid.public-credit-grid,
  .premium-pricing-layout .pricing-grid {
    grid-template-columns: 1fr;
  }

  .pricing-mode-card {
    width: 100%;
  }

  .public-one-time-grid .purchase-card {
    min-height: auto;
  }

  .premium-pricing-layout .price-card {
    border-radius: 22px;
  }
}

/* Premium support center */
.support-page {
  display: grid;
  gap: clamp(22px, 2.3vw, 34px);
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
}

.support-page .settings-card-head p,
.support-help-section p {
  max-width: 720px;
  margin: 8px 0 0;
  color: var(--muted);
  line-height: 1.55;
}

.support-hero-card {
  position: relative;
  isolation: isolate;
  align-items: stretch;
  min-height: 250px;
  padding: clamp(28px, 4vw, 44px);
  border: 1px solid rgba(105, 216, 242, 0.24);
  border-radius: 34px;
  background:
    radial-gradient(circle at 86% 12%, rgba(105, 216, 242, 0.34), transparent 26%),
    radial-gradient(circle at 12% 104%, rgba(155, 124, 247, 0.34), transparent 30%),
    linear-gradient(135deg, #071124 0%, #123c91 56%, #6757df 100%);
  box-shadow:
    0 32px 90px rgba(18, 60, 145, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.support-hero-card::before {
  content: "";
  position: absolute;
  inset: 18px;
  z-index: -1;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 26px;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
  background-size: 46px 46px;
  opacity: 0.72;
}

.support-hero-card .eyebrow {
  color: #bff2ff;
}

.support-hero-card h2 {
  max-width: 760px;
  margin-top: 12px;
  font-size: clamp(38px, 5vw, 64px);
}

.support-hero-card p {
  max-width: 760px;
  font-size: clamp(16px, 1.3vw, 19px);
}

.support-hero-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  max-width: 760px;
  margin-top: 24px;
}

.support-hero-badges span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 8px 13px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  color: #eff8ff;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(14px);
  font-size: 13px;
  font-weight: 900;
}

.support-hero-badges .icon {
  width: 16px;
  height: 16px;
  color: #8ee8f7;
}

.support-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(18px, 1.8vw, 24px);
}

.support-metric-card {
  display: grid;
  gap: 8px;
  min-height: 132px;
  padding: 18px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.15), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 251, 255, 0.94));
  box-shadow: 0 18px 48px rgba(18, 60, 145, 0.08);
}

.support-metric-card div,
.support-help-card div {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 16px;
  color: var(--blue);
  background: linear-gradient(135deg, #eefbff, #f3efff);
}

.support-metric-card span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}

.support-metric-card strong {
  color: var(--ink);
  font-size: clamp(18px, 2vw, 25px);
  line-height: 1.1;
}

.support-layout {
  grid-template-columns: minmax(360px, 0.9fr) minmax(0, 1.1fr);
  gap: clamp(24px, 2.6vw, 36px);
}

.support-form-card,
.support-history-card {
  position: relative;
  overflow: hidden;
  border-color: rgba(31, 105, 213, 0.12);
  border-radius: 28px;
  background:
    radial-gradient(circle at 96% 0%, rgba(105, 216, 242, 0.12), transparent 34%),
    linear-gradient(180deg, #ffffff, #f8fbff);
}

.support-form-card::before,
.support-history-card::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 4px;
  background: linear-gradient(90deg, var(--cyan), var(--blue-2), var(--purple));
}

.support-form-grid {
  gap: 18px;
}

.support-form-grid label {
  color: #24314e;
}

.support-form-grid label small {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.support-form-grid input,
.support-form-grid select,
.support-form-grid textarea {
  border-color: rgba(31, 105, 213, 0.14);
  background:
    linear-gradient(180deg, #ffffff, #fbfdff);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.support-form-grid input:focus,
.support-form-grid select:focus,
.support-form-grid textarea:focus {
  outline: none;
  border-color: rgba(31, 105, 213, 0.44);
  box-shadow:
    0 0 0 4px rgba(31, 105, 213, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.support-submit-button {
  min-height: 52px;
  margin-top: 20px;
  border-radius: 17px;
  box-shadow: 0 18px 42px rgba(31, 105, 213, 0.22);
}

.support-ticket-card {
  border-color: rgba(31, 105, 213, 0.12);
  border-radius: 24px;
  background:
    radial-gradient(circle at 96% 0%, rgba(105, 216, 242, 0.13), transparent 34%),
    linear-gradient(180deg, #ffffff, #f8fbff);
  box-shadow: 0 16px 42px rgba(18, 60, 145, 0.08);
}

.support-conversation-card {
  gap: 0;
  padding: 0;
  overflow: hidden;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.support-conversation-card[open],
.support-conversation-card:hover {
  border-color: rgba(31, 105, 213, 0.22);
  box-shadow: 0 20px 54px rgba(18, 60, 145, 0.12);
}

.support-conversation-card.has-new-reply {
  border-color: rgba(31, 105, 213, 0.28);
  background:
    radial-gradient(circle at 95% 0%, rgba(105, 216, 242, 0.2), transparent 34%),
    linear-gradient(180deg, #ffffff, #f7fbff);
}

.support-conversation-summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
  padding: 18px;
  cursor: pointer;
  list-style: none;
}

.support-conversation-summary::-webkit-details-marker {
  display: none;
}

.support-conversation-summary:focus-visible {
  outline: 3px solid rgba(31, 105, 213, 0.22);
  outline-offset: -4px;
}

.support-conversation-main {
  display: grid;
  min-width: 0;
  gap: 10px;
}

.support-conversation-summary .support-ticket-head {
  align-items: center;
}

.support-conversation-summary .support-ticket-head h3 {
  margin: 4px 0 0;
  font-size: clamp(17px, 1.5vw, 20px);
}

.support-conversation-summary p {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  color: #40526f;
  line-height: 1.5;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.support-conversation-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 16px;
}

.support-conversation-meta small {
  color: #667794;
  font-weight: 850;
}

.support-expand-indicator {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 14px;
  color: var(--blue);
  background: #eef5ff;
  transition: transform 180ms ease, background 180ms ease;
}

.support-expand-indicator .icon {
  width: 18px;
  height: 18px;
}

.support-conversation-card[open] .support-expand-indicator {
  transform: rotate(90deg);
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2));
}

.support-conversation-summary .support-ticket-badges {
  max-width: 240px;
}

.support-action-badge {
  color: #045d70;
  background: #e8faff;
}

.support-status-waiting_support {
  color: #875d00;
  background: #fff7db;
}

.support-status-support_replied {
  color: #166138;
  background: #e9f8ef;
}

.support-conversation-panel {
  display: grid;
  gap: 16px;
  padding: 0 18px 18px;
}

.support-conversation-status {
  display: grid;
  gap: 4px;
  padding: 13px 14px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(238, 245, 255, 0.82), rgba(247, 251, 255, 0.92));
}

.support-conversation-status strong {
  color: var(--ink);
  font-size: 14px;
}

.support-conversation-status span {
  color: #667794;
  font-weight: 750;
  line-height: 1.45;
}

.support-conversation-panel .support-ticket-thread {
  padding: 6px 0;
}

.support-ticket-preview {
  display: grid;
  gap: 6px;
  padding: 13px;
  border: 1px solid rgba(31, 105, 213, 0.09);
  border-radius: 18px;
  background: rgba(238, 245, 255, 0.58);
}

.support-ticket-preview span {
  color: var(--blue);
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}

.support-ticket-preview p {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.support-ticket-preview small {
  color: var(--muted);
  font-weight: 800;
}

.support-ticket-thread {
  display: grid;
  gap: 12px;
}

.support-thread-message {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.support-conversation-panel .support-thread-message {
  max-width: min(88%, 680px);
}

.support-conversation-panel .user-message {
  justify-self: end;
  grid-template-columns: minmax(0, 1fr) 38px;
}

.support-conversation-panel .user-message .support-thread-avatar {
  grid-column: 2;
  grid-row: 1;
}

.support-conversation-panel .user-message > div:last-child {
  grid-column: 1;
  grid-row: 1;
  border-color: rgba(31, 105, 213, 0.16);
  background: linear-gradient(180deg, #ffffff, #f4f8ff);
}

.support-conversation-panel .team-message {
  justify-self: start;
}

.support-thread-avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--blue-2));
  font-weight: 950;
}

.team-message .support-thread-avatar {
  color: #071124;
  background: linear-gradient(135deg, var(--cyan), #c9f6ff);
}

.support-thread-message > div:last-child {
  padding: 13px 14px;
  border: 1px solid rgba(229, 234, 244, 0.9);
  border-radius: 18px;
  background: #fff;
}

.team-message > div:last-child {
  border-color: rgba(50, 159, 105, 0.18);
  background: #effbf5;
}

.support-conversation-panel .team-message > div:last-child {
  border-color: rgba(22, 167, 197, 0.16);
  background: linear-gradient(180deg, #effcff, #f7fdff);
}

.support-thread-meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 6px;
  color: var(--ink);
  font-size: 12px;
  font-weight: 900;
}

.support-thread-meta span {
  color: var(--muted);
  font-weight: 800;
}

.support-thread-message p {
  margin: 0;
  color: #465671;
  line-height: 1.55;
}

.support-chat-reply-form {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 20px;
  background:
    radial-gradient(circle at 100% 0%, rgba(105, 216, 242, 0.12), transparent 34%),
    #ffffff;
}

.support-chat-reply-form label {
  display: grid;
  gap: 8px;
  color: #30415f;
  font-weight: 900;
}

.support-chat-reply-form textarea {
  width: 100%;
  min-height: 112px;
  padding: 13px 14px;
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 16px;
  color: var(--ink);
  background: #fbfdff;
  resize: vertical;
  line-height: 1.55;
}

.support-chat-reply-form textarea:focus {
  outline: none;
  border-color: rgba(31, 105, 213, 0.44);
  box-shadow: 0 0 0 4px rgba(31, 105, 213, 0.1);
}

.support-chat-reply-form button {
  justify-self: end;
}


.support-empty-state {
  display: grid;
  justify-items: start;
  gap: 12px;
  padding: clamp(24px, 4vw, 34px);
  border: 1px dashed rgba(31, 105, 213, 0.22);
  border-radius: 24px;
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.14), transparent 34%),
    linear-gradient(180deg, #ffffff, #f7faff);
}

.support-empty-state .icon {
  width: 38px;
  height: 38px;
  padding: 8px;
  border-radius: 15px;
  color: var(--blue);
  background: #eef5ff;
}

.support-empty-state h3,
.support-empty-state p {
  margin: 0;
}

.support-empty-state p {
  color: var(--muted);
  line-height: 1.55;
}

.support-help-section {
  display: grid;
  gap: 18px;
}

.support-help-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.support-help-card {
  display: grid;
  gap: 10px;
  min-height: 160px;
  padding: 18px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 22px;
  background:
    radial-gradient(circle at 92% 0%, rgba(155, 124, 247, 0.1), transparent 34%),
    linear-gradient(180deg, #ffffff, #fbfdff);
  box-shadow: 0 14px 38px rgba(18, 60, 145, 0.07);
}

.support-help-card strong {
  color: var(--ink);
  font-size: 16px;
}

.support-help-card span {
  color: var(--muted);
  line-height: 1.45;
}

.support-admin-panel {
  border-radius: 28px;
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.1), transparent 34%),
    linear-gradient(180deg, #ffffff, #f8fbff);
}

.admin-support-thread {
  margin-top: 14px;
}

:root[data-theme="dark"] .support-metric-card,
:root[data-theme="dark"] .support-form-card,
:root[data-theme="dark"] .support-history-card,
:root[data-theme="dark"] .support-ticket-card,
:root[data-theme="dark"] .support-ticket-preview,
:root[data-theme="dark"] .support-thread-message > div:last-child,
:root[data-theme="dark"] .support-empty-state,
:root[data-theme="dark"] .support-help-card,
:root[data-theme="dark"] .support-admin-panel {
  border-color: rgba(163, 183, 220, 0.2);
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.08), transparent 30%),
    rgba(16, 27, 52, 0.9);
}

:root[data-theme="dark"] .support-thread-message p,
:root[data-theme="dark"] .support-ticket-preview p,
:root[data-theme="dark"] .support-conversation-summary p,
:root[data-theme="dark"] .support-conversation-meta small,
:root[data-theme="dark"] .support-conversation-status span,
:root[data-theme="dark"] .support-help-card span,
:root[data-theme="dark"] .support-empty-state p {
  color: #c6d4ee;
}

:root[data-theme="dark"] .support-conversation-status,
:root[data-theme="dark"] .support-chat-reply-form,
:root[data-theme="dark"] .support-chat-reply-form textarea {
  border-color: rgba(163, 183, 220, 0.2);
  background: rgba(18, 31, 59, 0.82);
}

:root[data-theme="dark"] .support-chat-reply-form label,
:root[data-theme="dark"] .support-conversation-status strong {
  color: #f4f8ff;
}

:root[data-theme="dark"] .team-message > div:last-child,
:root[data-theme="dark"] .support-reply-box.has-reply {
  border-color: rgba(50, 159, 105, 0.22);
  background: rgba(50, 159, 105, 0.1);
}

:root[data-theme="dark"] .support-conversation-panel .user-message > div:last-child,
:root[data-theme="dark"] .support-conversation-panel .team-message > div:last-child {
  border-color: rgba(163, 183, 220, 0.2);
  background: rgba(20, 36, 67, 0.86);
}

@media (min-width: 1500px) {
  .support-page {
    max-width: 1460px;
  }

  .support-layout {
    grid-template-columns: minmax(420px, 0.86fr) minmax(0, 1.14fr);
    gap: clamp(30px, 2.9vw, 44px);
  }
}

@media (max-width: 1120px) {
  .support-metric-grid,
  .support-help-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .support-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .support-hero-card {
    border-radius: 26px;
  }

  .support-metric-grid,
  .support-help-grid,
  .support-form-grid {
    grid-template-columns: 1fr;
  }

  .support-ticket-head,
  .support-thread-meta {
    display: grid;
  }

  .support-conversation-summary {
    grid-template-columns: 1fr;
  }

  .support-conversation-summary .support-ticket-badges {
    justify-content: flex-start;
    max-width: none;
  }

  .support-conversation-panel .support-thread-message {
    max-width: 100%;
  }

  .support-thread-message {
    grid-template-columns: 34px minmax(0, 1fr);
  }

  .support-conversation-panel .user-message {
    grid-template-columns: minmax(0, 1fr) 34px;
  }

  .support-thread-avatar {
    width: 34px;
    height: 34px;
    border-radius: 12px;
  }

  .support-chat-reply-form button {
    justify-self: stretch;
  }
}

/* Dark mode premium polish */
:root[data-theme="dark"] {
  --ink: #f2f7ff;
  --muted: #c4d2e8;
  --line: rgba(170, 194, 234, 0.22);
  --bg: #07111f;
  --card: #101c33;
  --shadow: 0 24px 70px rgba(0, 0, 0, 0.42);
  --dark-surface: rgba(14, 26, 49, 0.94);
  --dark-surface-2: rgba(18, 33, 61, 0.94);
  --dark-border: rgba(170, 194, 234, 0.22);
  --dark-border-strong: rgba(105, 216, 242, 0.32);
  --dark-muted: #c4d2e8;
  --dark-muted-strong: #dbe7f8;
  --dark-input: rgba(7, 17, 31, 0.82);
  --dark-hover: rgba(105, 216, 242, 0.12);
}

:root[data-theme="dark"] body,
:root[data-theme="dark"] .public-site,
:root[data-theme="dark"] .public-shell,
:root[data-theme="dark"] .dashboard-main,
:root[data-theme="dark"] .builder-page,
:root[data-theme="dark"] .pricing-page,
:root[data-theme="dark"] .blog-page,
:root[data-theme="dark"] .blog-article-page,
:root[data-theme="dark"] .legal-page,
:root[data-theme="dark"] .profile-page {
  color: var(--ink);
  background:
    radial-gradient(circle at 12% 2%, rgba(105, 216, 242, 0.1), transparent 26%),
    radial-gradient(circle at 88% 0%, rgba(155, 124, 247, 0.12), transparent 28%),
    linear-gradient(180deg, #07111f 0%, #0b1628 48%, #07111f 100%);
}

:root[data-theme="dark"] .section-heading h2,
:root[data-theme="dark"] .page-title,
:root[data-theme="dark"] .dash-card h2,
:root[data-theme="dark"] .dash-card h3,
:root[data-theme="dark"] .settings-card h2,
:root[data-theme="dark"] .settings-card h3,
:root[data-theme="dark"] .template-card h3,
:root[data-theme="dark"] .dashboard-template-card h3,
:root[data-theme="dark"] .support-ticket-head h3,
:root[data-theme="dark"] .admin-panel h2,
:root[data-theme="dark"] .admin-panel h3,
:root[data-theme="dark"] .blog-card h2,
:root[data-theme="dark"] .featured-blog-card h2,
:root[data-theme="dark"] .pricing-section-head h2,
:root[data-theme="dark"] .price strong {
  color: #f4f8ff;
}

:root[data-theme="dark"] .muted,
:root[data-theme="dark"] .section-heading p,
:root[data-theme="dark"] .hero p,
:root[data-theme="dark"] .page-actions p,
:root[data-theme="dark"] .template-card p,
:root[data-theme="dark"] .dashboard-template-card p,
:root[data-theme="dark"] .settings-card p,
:root[data-theme="dark"] .dash-card p,
:root[data-theme="dark"] .blog-card p,
:root[data-theme="dark"] .blog-article-body p,
:root[data-theme="dark"] .support-ticket-card p,
:root[data-theme="dark"] .admin-panel p,
:root[data-theme="dark"] .profile-detail-list span,
:root[data-theme="dark"] .billing-summary p,
:root[data-theme="dark"] .form-section-head p {
  color: var(--dark-muted);
}

:root[data-theme="dark"] .eyebrow,
:root[data-theme="dark"] .brand-word,
:root[data-theme="dark"] .blog-article-body a,
:root[data-theme="dark"] .template-card-topline,
:root[data-theme="dark"] .template-card-meta,
:root[data-theme="dark"] .dash-card-topline .eyebrow {
  color: #91e8f8;
}

:root[data-theme="dark"] .site-header,
:root[data-theme="dark"] .dashboard-topbar,
:root[data-theme="dark"] .sidebar,
:root[data-theme="dark"] .public-nav.open {
  border-color: rgba(170, 194, 234, 0.18);
  background:
    linear-gradient(180deg, rgba(8, 17, 31, 0.96), rgba(11, 22, 40, 0.94));
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.28);
}

:root[data-theme="dark"] .feature-card,
:root[data-theme="dark"] .step-card,
:root[data-theme="dark"] .template-card,
:root[data-theme="dark"] .dashboard-template-card,
:root[data-theme="dark"] .price-card,
:root[data-theme="dark"] .purchase-card,
:root[data-theme="dark"] .credit-card,
:root[data-theme="dark"] .faq-item,
:root[data-theme="dark"] .dash-card,
:root[data-theme="dark"] .settings-card,
:root[data-theme="dark"] .ai-input-panel,
:root[data-theme="dark"] .ats-score,
:root[data-theme="dark"] .library-card,
:root[data-theme="dark"] .empty-state,
:root[data-theme="dark"] .main-resume-card,
:root[data-theme="dark"] .recent-resume-card,
:root[data-theme="dark"] .next-step-card,
:root[data-theme="dark"] .completion-card,
:root[data-theme="dark"] .empty-builder-state,
:root[data-theme="dark"] .suggestions-panel,
:root[data-theme="dark"] .ai-tool-suggestion-card,
:root[data-theme="dark"] .ai-keyword-card,
:root[data-theme="dark"] .ai-match-card,
:root[data-theme="dark"] .ai-empty-panel,
:root[data-theme="dark"] .upgrade-nudge,
:root[data-theme="dark"] .export-note,
:root[data-theme="dark"] .cover-letter-card,
:root[data-theme="dark"] .form-section,
:root[data-theme="dark"] .builder-topbar,
:root[data-theme="dark"] .builder-section-nav,
:root[data-theme="dark"] .preview-toolbar,
:root[data-theme="dark"] .letter-form-panel,
:root[data-theme="dark"] .letter-preview-panel,
:root[data-theme="dark"] .legal-card,
:root[data-theme="dark"] .blog-card,
:root[data-theme="dark"] .featured-blog-card,
:root[data-theme="dark"] .blog-cta-card,
:root[data-theme="dark"] .blog-bottom-cta,
:root[data-theme="dark"] .blog-toc,
:root[data-theme="dark"] .blog-cluster-link,
:root[data-theme="dark"] .support-form-card,
:root[data-theme="dark"] .support-history-card,
:root[data-theme="dark"] .support-ticket-card,
:root[data-theme="dark"] .support-metric-card,
:root[data-theme="dark"] .support-help-card,
:root[data-theme="dark"] .support-admin-panel,
:root[data-theme="dark"] .admin-panel,
:root[data-theme="dark"] .admin-table-wrap,
:root[data-theme="dark"] .admin-metric-card,
:root[data-theme="dark"] .admin-detail-section,
:root[data-theme="dark"] .planned-payments-card,
:root[data-theme="dark"] .payment-method-card,
:root[data-theme="dark"] .plan-comparison-card,
:root[data-theme="dark"] .pricing-faq-item,
:root[data-theme="dark"] .billing-summary,
:root[data-theme="dark"] .resume-tailoring-content section {
  border-color: var(--dark-border);
  background:
    radial-gradient(circle at 92% 0%, rgba(105, 216, 242, 0.07), transparent 30%),
    linear-gradient(180deg, rgba(18, 33, 61, 0.96), rgba(11, 22, 40, 0.94));
  color: var(--ink);
  box-shadow:
    0 22px 58px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

:root[data-theme="dark"] .workspace-hero,
:root[data-theme="dark"] .templates-catalog-hero,
:root[data-theme="dark"] .resume-library-hero,
:root[data-theme="dark"] .pricing-hero,
:root[data-theme="dark"] .blog-hero,
:root[data-theme="dark"] .blog-article-hero,
:root[data-theme="dark"] .legal-hero,
:root[data-theme="dark"] .support-hero-card,
:root[data-theme="dark"] .builder-template-hero {
  border-color: rgba(105, 216, 242, 0.24);
  background:
    radial-gradient(circle at 14% 10%, rgba(105, 216, 242, 0.14), transparent 31%),
    radial-gradient(circle at 86% 6%, rgba(155, 124, 247, 0.14), transparent 30%),
    linear-gradient(135deg, rgba(16, 31, 58, 0.98), rgba(9, 20, 38, 0.98));
  color: var(--ink);
  box-shadow:
    0 28px 80px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

:root[data-theme="dark"] .templates-catalog-hero h1,
:root[data-theme="dark"] .resume-library-hero h1,
:root[data-theme="dark"] .pricing-hero h1,
:root[data-theme="dark"] .blog-hero h1,
:root[data-theme="dark"] .support-hero-card h1,
:root[data-theme="dark"] .workspace-hero h1 {
  color: #f6faff;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.04);
}

:root[data-theme="dark"] .templates-catalog-hero p,
:root[data-theme="dark"] .resume-library-hero p,
:root[data-theme="dark"] .pricing-hero p,
:root[data-theme="dark"] .blog-hero p,
:root[data-theme="dark"] .support-hero-card p,
:root[data-theme="dark"] .workspace-hero p {
  color: #d6e4f7;
}

:root[data-theme="dark"] input,
:root[data-theme="dark"] textarea,
:root[data-theme="dark"] select,
:root[data-theme="dark"] .dashboard-search,
:root[data-theme="dark"] .template-search,
:root[data-theme="dark"] .resume-library-search,
:root[data-theme="dark"] .blog-search,
:root[data-theme="dark"] .blog-category-select select,
:root[data-theme="dark"] .support-form-grid input,
:root[data-theme="dark"] .support-form-grid select,
:root[data-theme="dark"] .support-form-grid textarea,
:root[data-theme="dark"] .template-filter-select select,
:root[data-theme="dark"] .admin-form input,
:root[data-theme="dark"] .admin-form select,
:root[data-theme="dark"] .admin-form textarea {
  border-color: rgba(170, 194, 234, 0.24);
  background: var(--dark-input);
  color: #f4f8ff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

:root[data-theme="dark"] input::placeholder,
:root[data-theme="dark"] textarea::placeholder,
:root[data-theme="dark"] .dashboard-search input::placeholder,
:root[data-theme="dark"] .template-search input::placeholder,
:root[data-theme="dark"] .blog-search input::placeholder {
  color: #91a4c3;
  opacity: 1;
}

:root[data-theme="dark"] input:focus,
:root[data-theme="dark"] textarea:focus,
:root[data-theme="dark"] select:focus,
:root[data-theme="dark"] input:focus-visible,
:root[data-theme="dark"] textarea:focus-visible,
:root[data-theme="dark"] select:focus-visible,
:root[data-theme="dark"] .dashboard-search:focus-within,
:root[data-theme="dark"] .template-search:focus-within,
:root[data-theme="dark"] .resume-library-search:focus-within,
:root[data-theme="dark"] .blog-search:focus-within {
  border-color: rgba(105, 216, 242, 0.62);
  outline: none;
  box-shadow:
    0 0 0 4px rgba(105, 216, 242, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

:root[data-theme="dark"] .primary-button {
  border-color: transparent;
  color: #ffffff;
  background: linear-gradient(135deg, #1f69d5 0%, #315fe5 48%, #7b61ff 100%);
  box-shadow: 0 18px 42px rgba(31, 105, 213, 0.3);
}

:root[data-theme="dark"] .primary-button:hover {
  box-shadow:
    0 22px 52px rgba(31, 105, 213, 0.38),
    0 0 0 5px rgba(105, 216, 242, 0.08);
}

:root[data-theme="dark"] .secondary-button,
:root[data-theme="dark"] .ghost-button,
:root[data-theme="dark"] .google-button,
:root[data-theme="dark"] .icon-button,
:root[data-theme="dark"] .sidebar-link-button,
:root[data-theme="dark"] .template-filter-row button,
:root[data-theme="dark"] .blog-category-filter button,
:root[data-theme="dark"] .pricing-tabs button,
:root[data-theme="dark"] .builder-section-nav button,
:root[data-theme="dark"] .template-switch button,
:root[data-theme="dark"] .document-format-switch button,
:root[data-theme="dark"] .user-menu,
:root[data-theme="dark"] .language-switch {
  border-color: rgba(170, 194, 234, 0.24);
  color: #e4eeff;
  background: rgba(12, 25, 47, 0.9);
}

:root[data-theme="dark"] .secondary-button:hover,
:root[data-theme="dark"] .ghost-button:hover,
:root[data-theme="dark"] .google-button:hover,
:root[data-theme="dark"] .icon-button:hover,
:root[data-theme="dark"] .sidebar-link-button:hover,
:root[data-theme="dark"] .template-filter-row button:hover,
:root[data-theme="dark"] .template-filter-row button.active,
:root[data-theme="dark"] .blog-category-filter button:hover,
:root[data-theme="dark"] .blog-category-filter button.active,
:root[data-theme="dark"] .pricing-tabs button:hover,
:root[data-theme="dark"] .pricing-tabs button.active,
:root[data-theme="dark"] .builder-section-nav button:hover,
:root[data-theme="dark"] .builder-section-nav button.active,
:root[data-theme="dark"] .template-switch .active,
:root[data-theme="dark"] .document-format-switch .active {
  border-color: rgba(105, 216, 242, 0.42);
  color: #f6faff;
  background: rgba(105, 216, 242, 0.13);
}

:root[data-theme="dark"] button:disabled,
:root[data-theme="dark"] .primary-button:disabled,
:root[data-theme="dark"] .secondary-button:disabled {
  color: #8194b3;
  background: rgba(31, 45, 70, 0.72);
  border-color: rgba(170, 194, 234, 0.13);
  box-shadow: none;
}

:root[data-theme="dark"] .side-nav a {
  color: #cbd9ee;
}

:root[data-theme="dark"] .side-nav a:hover,
:root[data-theme="dark"] .side-nav .active {
  border-color: rgba(105, 216, 242, 0.28);
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(105, 216, 242, 0.16), rgba(155, 124, 247, 0.12));
  box-shadow: inset 3px 0 0 rgba(105, 216, 242, 0.82);
}

:root[data-theme="dark"] .side-nav a .icon,
:root[data-theme="dark"] .dashboard-topbar .icon,
:root[data-theme="dark"] .template-search .icon,
:root[data-theme="dark"] .resume-library-search .icon {
  color: #9ddff0;
}

:root[data-theme="dark"] .dashboard-template-card {
  overflow: hidden;
}

:root[data-theme="dark"] .dashboard-template-card:hover,
:root[data-theme="dark"] .template-card:hover,
:root[data-theme="dark"] .blog-card:hover,
:root[data-theme="dark"] .price-card:hover,
:root[data-theme="dark"] .purchase-card:hover,
:root[data-theme="dark"] .credit-card:hover {
  border-color: rgba(105, 216, 242, 0.36);
  transform: translateY(-2px);
  box-shadow:
    0 28px 72px rgba(0, 0, 0, 0.38),
    0 0 0 1px rgba(105, 216, 242, 0.08) inset;
}

:root[data-theme="dark"] .template-sample-thumb,
:root[data-theme="dark"] .recent-resume-preview,
:root[data-theme="dark"] .resume-preview-panel,
:root[data-theme="dark"] .resume-preview-body,
:root[data-theme="dark"] .template-preview-content,
:root[data-theme="dark"] .builder-preview-frame {
  border-color: rgba(170, 194, 234, 0.2);
  background:
    radial-gradient(circle at 50% 0%, rgba(105, 216, 242, 0.08), transparent 34%),
    rgba(7, 17, 31, 0.9);
}

:root[data-theme="dark"] .template-paper,
:root[data-theme="dark"] .resume-document,
:root[data-theme="dark"] .resume-preview,
:root[data-theme="dark"] .letter-document {
  border-color: rgba(255, 255, 255, 0.08);
  background: #ffffff;
  color: #0b1736;
  box-shadow: 0 18px 52px rgba(0, 0, 0, 0.36);
}

:root[data-theme="dark"] .template-badge,
:root[data-theme="dark"] .popular,
:root[data-theme="dark"] .payment-soon-label,
:root[data-theme="dark"] .profile-plan-badge,
:root[data-theme="dark"] .recent-resume-status,
:root[data-theme="dark"] .mini-chip-row span,
:root[data-theme="dark"] .pricing-hero-pills span,
:root[data-theme="dark"] .support-badge,
:root[data-theme="dark"] .admin-status-badge,
:root[data-theme="dark"] .dashboard-card-title-row > span {
  border: 1px solid rgba(105, 216, 242, 0.22);
  color: #dff6ff;
  background: rgba(105, 216, 242, 0.12);
}

:root[data-theme="dark"] .resume-template-card,
:root[data-theme="dark"] .dashboard-templates .dashboard-template-card {
  border-color: rgba(170, 194, 234, 0.2);
  background:
    radial-gradient(circle at 100% 0%, rgba(105, 216, 242, 0.07), transparent 30%),
    linear-gradient(180deg, rgba(16, 27, 52, 0.98), rgba(10, 20, 39, 0.98));
  box-shadow: 0 22px 58px rgba(0, 0, 0, 0.26);
}

:root[data-theme="dark"] .resume-template-card[data-template-access="pro"],
:root[data-theme="dark"] .dashboard-templates .dashboard-template-card[data-template-access="pro"] {
  border-color: rgba(183, 156, 255, 0.26);
  background:
    radial-gradient(circle at 100% 0%, rgba(183, 156, 255, 0.1), transparent 30%),
    linear-gradient(180deg, rgba(16, 27, 52, 0.98), rgba(12, 20, 42, 0.98));
}

:root[data-theme="dark"] .resume-template-card[data-template-access="premium"],
:root[data-theme="dark"] .dashboard-templates .dashboard-template-card[data-template-access="premium"] {
  border-color: rgba(255, 193, 87, 0.28);
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 193, 87, 0.12), transparent 30%),
    linear-gradient(180deg, rgba(17, 27, 48, 0.98), rgba(19, 23, 38, 0.98));
}

:root[data-theme="dark"] .resume-template-card:hover,
:root[data-theme="dark"] .dashboard-templates .dashboard-template-card:hover {
  border-color: rgba(105, 216, 242, 0.36);
  box-shadow: 0 30px 78px rgba(0, 0, 0, 0.4);
}

:root[data-theme="dark"] .resume-template-card p,
:root[data-theme="dark"] .dashboard-templates .dashboard-template-card p,
:root[data-theme="dark"] .resume-template-card .template-best,
:root[data-theme="dark"] .dashboard-templates .dashboard-template-card .template-best {
  color: #aab8ce;
}

:root[data-theme="dark"] .template-card-badges > :first-child,
:root[data-theme="dark"] .dashboard-templates .template-card-topline > :first-child {
  border-color: rgba(105, 216, 242, 0.2);
  color: #dff6ff;
  background: rgba(105, 216, 242, 0.12);
}

:root[data-theme="dark"] .template-card-badges .free,
:root[data-theme="dark"] .template-badge.free {
  border-color: rgba(91, 226, 178, 0.22);
  color: #baf7d2;
  background: rgba(50, 159, 105, 0.16);
}

:root[data-theme="dark"] .template-card-badges .pro,
:root[data-theme="dark"] .template-badge.pro {
  border-color: rgba(183, 156, 255, 0.24);
  color: #ddd4ff;
  background: rgba(155, 124, 247, 0.16);
}

:root[data-theme="dark"] .template-card-badges .premium,
:root[data-theme="dark"] .template-badge.premium {
  border-color: rgba(255, 193, 87, 0.3);
  color: #ffe2a8;
  background: rgba(255, 193, 87, 0.14);
}

:root[data-theme="dark"] .template-locked-badge,
:root[data-theme="dark"] .locked-badge,
:root[data-theme="dark"] .warning-badge {
  border-color: rgba(255, 193, 87, 0.28);
  color: #ffe2a8;
  background: rgba(255, 193, 87, 0.13);
}

:root[data-theme="dark"] .success,
:root[data-theme="dark"] .success-message,
:root[data-theme="dark"] .support-status-answered,
:root[data-theme="dark"] .support-priority-low,
:root[data-theme="dark"] .settings-message {
  color: #baf7d2;
  background: rgba(50, 159, 105, 0.15);
}

:root[data-theme="dark"] .error,
:root[data-theme="dark"] .error-message,
:root[data-theme="dark"] .support-priority-high {
  color: #ffc8d1;
  background: rgba(159, 58, 69, 0.17);
}

:root[data-theme="dark"] .template-preview-modal,
:root[data-theme="dark"] .delete-resume-dialog,
:root[data-theme="dark"] .access-dialog,
:root[data-theme="dark"] .watermark-dialog,
:root[data-theme="dark"] .template-preview-dialog,
:root[data-theme="dark"] .ai-suggestion-dialog,
:root[data-theme="dark"] .resume-tailoring-dialog,
:root[data-theme="dark"] .pix-payment-dialog,
:root[data-theme="dark"] .payment-detail-dialog,
:root[data-theme="dark"] .admin-dialog-content {
  border-color: rgba(170, 194, 234, 0.24);
  color: var(--ink);
  background:
    radial-gradient(circle at 88% 0%, rgba(105, 216, 242, 0.11), transparent 30%),
    linear-gradient(180deg, rgba(18, 33, 61, 0.98), rgba(8, 17, 31, 0.98));
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.48);
}

:root[data-theme="dark"] .template-preview-backdrop,
:root[data-theme="dark"] .admin-dialog {
  background: rgba(3, 8, 18, 0.72);
  backdrop-filter: blur(12px);
}

:root[data-theme="dark"] .template-preview-header p,
:root[data-theme="dark"] .template-preview-premium-dialog .template-preview-header p,
:root[data-theme="dark"] .resume-tailoring-content p,
:root[data-theme="dark"] .resume-tailoring-entry p,
:root[data-theme="dark"] .resume-tailoring-entry li,
:root[data-theme="dark"] .watermark-hero p,
:root[data-theme="dark"] .watermark-offer small {
  color: var(--dark-muted);
}

:root[data-theme="dark"] .resume-tailoring-actions .primary-button.is-applied,
:root[data-theme="dark"] .resume-tailoring-actions .secondary-button.is-applied,
:root[data-theme="dark"] .resume-tailoring-actions .ghost-button.is-applied {
  border-color: rgba(105, 216, 175, 0.3);
  color: #bff7dc;
  background: linear-gradient(135deg, rgba(33, 112, 83, 0.24), rgba(17, 40, 35, 0.82));
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2);
}

:root[data-theme="dark"] .resume-tailoring-content [data-tailoring-status] {
  border-color: rgba(105, 216, 175, 0.26);
  color: #bff7dc;
  background: linear-gradient(135deg, rgba(22, 95, 70, 0.28), rgba(10, 25, 24, 0.9));
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.24);
}

:root[data-theme="dark"] .resume-tailoring-content [data-tailoring-status].error {
  border-color: rgba(255, 132, 148, 0.28);
  color: #ffc8d1;
  background: linear-gradient(135deg, rgba(117, 38, 50, 0.3), rgba(30, 15, 22, 0.88));
}

:root[data-theme="dark"] .admin-table th,
:root[data-theme="dark"] .plan-comparison-table th {
  border-color: rgba(170, 194, 234, 0.18);
  color: #dceaff;
  background: rgba(105, 216, 242, 0.09);
}

:root[data-theme="dark"] .admin-table td,
:root[data-theme="dark"] .plan-comparison-table td {
  border-color: rgba(170, 194, 234, 0.14);
  color: #d6e4f7;
}

:root[data-theme="dark"] .admin-table tr:hover td {
  background: rgba(105, 216, 242, 0.06);
}

:root[data-theme="dark"] .support-thread-message > div:last-child,
:root[data-theme="dark"] .support-chat-reply-form,
:root[data-theme="dark"] .support-conversation-status,
:root[data-theme="dark"] .support-ticket-preview,
:root[data-theme="dark"] .support-reply-box {
  border-color: rgba(170, 194, 234, 0.2);
  background: rgba(13, 27, 51, 0.9);
}

:root[data-theme="dark"] .team-message > div:last-child,
:root[data-theme="dark"] .support-reply-box.has-reply {
  border-color: rgba(50, 159, 105, 0.28);
  background: rgba(50, 159, 105, 0.12);
}

:root[data-theme="dark"] .support-conversation-panel .user-message > div:last-child {
  border-color: rgba(105, 216, 242, 0.3);
  background: rgba(31, 105, 213, 0.18);
}

:root[data-theme="dark"] .support-thread-avatar {
  color: #07111f;
  background: linear-gradient(135deg, #91e8f8, #b79cff);
}

:root[data-theme="dark"] .builder-flow-sidebar,
:root[data-theme="dark"] .builder-panel,
:root[data-theme="dark"] .app-shell.builder-workspace .form-section,
:root[data-theme="dark"] .builder-flow-sidebar .completion-card {
  border-color: rgba(170, 194, 234, 0.2);
  background:
    radial-gradient(circle at 95% 0%, rgba(105, 216, 242, 0.07), transparent 30%),
    rgba(13, 27, 51, 0.94);
  color: var(--ink);
}

:root[data-theme="dark"] .form-section-head,
:root[data-theme="dark"] .builder-flow-sidebar .builder-section-nav button {
  color: #e8f1ff;
}

:root[data-theme="dark"] .builder-flow-sidebar .builder-section-nav button em {
  color: #9fb2d1;
}

:root[data-theme="dark"] .builder-flow-sidebar .builder-section-nav button.active em,
:root[data-theme="dark"] .builder-flow-sidebar .builder-section-nav button:hover em {
  color: #dff6ff;
}

:root[data-theme="dark"] .public-pricing-block,
:root[data-theme="dark"] .monthly-pricing-block,
:root[data-theme="dark"] .one-time-pricing-block,
:root[data-theme="dark"] .pricing-mode-card {
  border-color: rgba(170, 194, 234, 0.18);
}

:root[data-theme="dark"] .price-card.featured,
:root[data-theme="dark"] .purchase-card.featured,
:root[data-theme="dark"] .credit-card.featured,
:root[data-theme="dark"] .premium-pricing-layout .price-card[data-plan="premium"] {
  border-color: rgba(183, 156, 255, 0.38);
  background:
    radial-gradient(circle at 90% 0%, rgba(183, 156, 255, 0.15), transparent 32%),
    radial-gradient(circle at 8% 100%, rgba(105, 216, 242, 0.1), transparent 34%),
    linear-gradient(180deg, rgba(20, 34, 68, 0.98), rgba(12, 23, 48, 0.96));
}

:root[data-theme="dark"] .price-card li,
:root[data-theme="dark"] .purchase-card li,
:root[data-theme="dark"] .credit-card li,
:root[data-theme="dark"] .plan-comparison-table,
:root[data-theme="dark"] .payment-method-card span {
  color: #cbd9ee;
}

:root[data-theme="dark"] .payment-method-icon,
:root[data-theme="dark"] .price-card li .icon,
:root[data-theme="dark"] .support-help-card .icon,
:root[data-theme="dark"] .empty-state .icon {
  color: #91e8f8;
  background: rgba(105, 216, 242, 0.12);
}

:root[data-theme="dark"] .blog-insight-card,
:root[data-theme="dark"] .blog-document-card,
:root[data-theme="dark"] .featured-blog-visual {
  border-color: rgba(170, 194, 234, 0.2);
  background:
    linear-gradient(180deg, rgba(18, 33, 61, 0.96), rgba(11, 22, 40, 0.92));
}

:root[data-theme="dark"] .blog-meta span,
:root[data-theme="dark"] .blog-card-top span,
:root[data-theme="dark"] .blog-card-footer,
:root[data-theme="dark"] .blog-toc a,
:root[data-theme="dark"] .blog-cluster-link span {
  color: #cbd9ee;
}

:root[data-theme="dark"] .blog-toc a:hover,
:root[data-theme="dark"] .blog-cluster-link:hover {
  color: #f4f8ff;
  border-color: rgba(105, 216, 242, 0.36);
  background: rgba(105, 216, 242, 0.09);
}

:root[data-theme="dark"] ::selection {
  color: #07111f;
  background: rgba(145, 232, 248, 0.78);
}

:root[data-theme="dark"] .template-paper,
:root[data-theme="dark"] .resume-document,
:root[data-theme="dark"] .resume-preview,
:root[data-theme="dark"] .letter-document {
  color: #0b1736;
}

/* Resume builder focus layout */
.save-state [hidden] {
  display: none !important;
}

.app-shell.builder-workspace .dashboard-main {
  grid-template-rows: minmax(0, 1fr);
}

@media (min-width: 861px) {
  .app-shell.builder-workspace .dashboard-topbar {
    display: none;
  }
}

.builder-page {
  --builder-sidebar-w: 272px;
  --builder-form-w: 620px;
  --builder-preview-w: 720px;
  --builder-gap: 18px;
  --builder-pad-x: 18px;
  --builder-pad-y: 10px;
  position: relative;
}

.builder-exit-row {
  min-height: 34px;
  gap: var(--builder-gap);
}

.builder-exit-meta {
  grid-column: 2;
  justify-content: flex-start;
  align-self: center;
  gap: 7px;
  max-width: var(--builder-form-w);
}

.builder-exit-meta .admin-builder-tools {
  justify-content: flex-start;
}

.save-state {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 30px;
  padding: 5px 10px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 999px;
  color: #465671;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(246, 250, 255, 0.82));
  box-shadow: 0 10px 28px rgba(18, 60, 145, 0.06);
  font-size: 11.5px;
  font-weight: 900;
  line-height: 1;
  white-space: nowrap;
}

.save-state::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #8795ad;
  box-shadow: 0 0 0 4px rgba(135, 149, 173, 0.12);
}

.save-state[data-state="saved"]::before {
  background: #16a36b;
  box-shadow: 0 0 0 4px rgba(22, 163, 107, 0.12);
}

.save-state[data-state="saving"]::before {
  background: var(--blue);
  box-shadow: 0 0 0 4px rgba(31, 105, 213, 0.12);
}

.save-state[data-state="unsaved"]::before {
  background: #d99722;
  box-shadow: 0 0 0 4px rgba(217, 151, 34, 0.14);
}

.save-state span {
  display: inline-flex;
  align-items: center;
  gap: 0;
  padding: 0;
  border-radius: 0;
  color: inherit;
  background: transparent;
  font-size: inherit;
  font-weight: inherit;
}

.save-state .saved {
  color: #0d6b54;
  background: transparent;
}

.save-state small {
  max-width: 300px;
  color: var(--muted);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.save-state small:empty {
  display: none;
}

.builder-exit-button {
  max-width: var(--builder-sidebar-w);
}

.builder-flow-sidebar {
  max-width: var(--builder-sidebar-w);
}

.builder-flow-sidebar .completion-card {
  gap: 10px;
  padding: 14px;
  border-radius: 18px;
}

.builder-flow-sidebar .completion-card h2 {
  font-size: 20px;
}

.builder-flow-sidebar .completion-card .progress {
  height: 10px;
}

.builder-template-pill {
  gap: 5px;
  padding: 10px;
  border-radius: 14px;
}

.builder-template-pill strong {
  font-size: 13.5px;
}

.builder-format-compact .document-format-switch button {
  min-height: 32px;
  border-radius: 10px;
}

.builder-flow-sidebar .builder-section-nav {
  gap: 5px;
  padding: 9px;
  border-radius: 18px;
}

.builder-flow-sidebar .builder-section-nav button {
  min-height: 32px;
  padding-inline: 10px 8px;
  border-radius: 11px;
  font-size: 12px;
}

.builder-flow-sidebar .builder-section-nav button em {
  width: 16px;
  height: 16px;
}

.builder-form {
  max-width: var(--builder-form-w);
}

.builder-panel {
  border-radius: 18px;
}

.builder-preview {
  max-width: var(--builder-preview-w);
}

.builder-preview-frame {
  border-radius: 0;
}

.builder-preview-frame .resume-document {
  box-shadow:
    0 28px 74px rgba(18, 60, 145, 0.2),
    0 0 0 1px rgba(18, 60, 145, 0.05);
}

:root[data-theme="dark"] .save-state {
  border-color: rgba(170, 194, 234, 0.22);
  color: #dbe7f8;
  background: rgba(12, 25, 47, 0.9);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.24);
}

:root[data-theme="dark"] .save-state .saved {
  color: #baf7d2;
}

:root[data-theme="dark"] .save-state small {
  color: #c4d2e8;
}

:root[data-theme="dark"] .builder-preview-frame .resume-document {
  box-shadow:
    0 30px 82px rgba(0, 0, 0, 0.42),
    0 0 0 1px rgba(255, 255, 255, 0.08);
}

@media (min-width: 1801px) {
  .builder-page {
    --builder-sidebar-w: 284px;
    --builder-form-w: 640px;
    --builder-preview-w: 780px;
    --builder-gap: 20px;
  }
}

@media (min-width: 1501px) and (max-width: 1800px) {
  .builder-page {
    --builder-sidebar-w: 250px;
    --builder-form-w: 530px;
    --builder-preview-w: 600px;
    --builder-gap: 12px;
    --builder-pad-x: 12px;
    --builder-pad-y: 9px;
  }
}

@media (min-width: 1161px) and (max-width: 1500px) {
  .builder-page {
    --builder-sidebar-w: 222px;
    --builder-form-w: 478px;
    --builder-preview-w: 516px;
    --builder-gap: 8px;
    --builder-pad-x: 8px;
    --builder-pad-y: 7px;
  }

  .builder-flow-sidebar .completion-card {
    padding: 11px;
    border-radius: 16px;
  }

  .builder-flow-sidebar .completion-card h2 {
    font-size: 17px;
  }

  .builder-template-pill {
    padding: 8px;
  }

  .builder-flow-sidebar .builder-section-nav {
    gap: 4px;
    padding: 7px;
  }

  .builder-flow-sidebar .builder-section-nav button {
    min-height: 28px;
    padding-inline: 8px;
    font-size: 11px;
  }
}

@media (min-width: 1161px) and (max-width: 1280px) {
  .builder-page {
    --builder-sidebar-w: 202px;
    --builder-form-w: 420px;
    --builder-preview-w: 480px;
    --builder-gap: 7px;
    --builder-pad-x: 7px;
  }

  .save-state {
    padding-inline: 8px;
    font-size: 11px;
  }

  .admin-builder-tool {
    padding-inline: 8px;
  }
}

@media (max-width: 1160px) {
  .builder-page {
    --builder-sidebar-w: 100%;
    --builder-form-w: 100%;
    --builder-preview-w: 100%;
  }

  .builder-exit-row {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .builder-exit-meta {
    grid-column: 1;
    justify-content: flex-start;
  }

  .builder-exit-button,
  .builder-flow-sidebar,
  .builder-form,
  .builder-preview {
    max-width: none;
  }

  .save-state small {
    max-width: min(68vw, 320px);
  }
}

@media (max-width: 860px) {
  .app-shell.builder-workspace .dashboard-topbar {
    padding: 10px 14px;
  }

  .app-shell.builder-workspace .dashboard-topbar .dashboard-search,
  .app-shell.builder-workspace .dashboard-topbar .dashboard-preferences,
  .app-shell.builder-workspace .dashboard-topbar .user-menu {
    display: none;
  }

  .app-shell.builder-workspace .dashboard-topbar h1 {
    font-size: 20px;
  }

  .builder-page {
    --builder-pad-x: 12px;
    --builder-pad-y: 10px;
  }

  .save-state {
    min-height: 28px;
  }
}

@media (max-width: 560px) {
  .dashboard-main:has(.cover-letter-builder-page) > .dashboard-topbar {
    display: none !important;
  }

  .dashboard-content:has(.cover-letter-builder-page) {
    padding-top: 12px;
  }

  .dashboard-content:has(.cover-letter-builder-page) > .page-actions {
    display: none;
  }

  .cover-letter-builder-page {
    grid-template-columns: 1fr;
    gap: 10px;
    width: 100%;
  }

  .cover-letter-builder-topbar {
    order: 1;
    grid-column: 1;
    grid-row: auto;
    width: 100%;
  }

  .cover-letter-builder-topbar .ghost-button {
    justify-content: center;
    width: 100%;
    min-height: 32px;
    padding-inline: 12px;
    border-radius: 999px;
    font-size: 11.5px;
  }

  .cover-letter-mobile-tabs {
    order: 2;
    grid-row: auto;
    justify-self: center;
    width: min(100%, 280px);
    gap: 0;
    padding: 4px;
    border-radius: 999px;
  }

  .cover-letter-mobile-tabs button {
    min-height: 32px;
    border-radius: 999px;
    font-size: 12px;
  }

  .letter-form-panel,
  .letter-preview-panel {
    order: 3;
    grid-column: 1;
    grid-row: auto;
    width: 100%;
    min-width: 0;
  }

  .cover-letter-builder-page .letter-preview-panel {
    margin-top: 0;
  }

  .cover-letter-builder-page.show-preview .letter-preview-panel {
    display: block;
    grid-row: auto;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
  }

  .cover-letter-builder-page.show-preview .preview-toolbar {
    display: none;
  }

  .cover-letter-builder-page.show-preview .letter-document {
    box-sizing: border-box;
    width: 100%;
    min-height: min(74vh, 640px);
    padding: 0;
    border-radius: 0;
  }

  .app-shell.builder-workspace .dashboard-topbar {
    display: none;
  }

  .app-shell.builder-workspace .builder-page {
    --builder-pad-x: 12px;
    --builder-pad-y: 12px;
    gap: 10px;
  }

  .app-shell.builder-workspace .builder-exit-row {
    order: 1;
    min-height: 30px;
    gap: 0;
  }

  .app-shell.builder-workspace .builder-exit-button {
    justify-self: stretch;
    width: 100%;
    min-height: 32px;
    padding-inline: 12px;
    border-radius: 999px;
    font-size: 11.5px;
  }

  .app-shell.builder-workspace .builder-exit-meta {
    display: none;
  }

  .app-shell.builder-workspace .builder-mobile-tabs {
    order: 2;
    justify-self: center;
    width: min(100%, 280px);
    padding: 4px;
    border-radius: 999px;
  }

  .app-shell.builder-workspace .builder-mobile-tabs button {
    min-height: 32px;
    font-size: 12px;
  }

  .app-shell.builder-workspace .builder-flow-sidebar {
    order: 3;
  }

  .app-shell.builder-workspace .builder-form {
    order: 4;
  }

  .app-shell.builder-workspace .builder-preview {
    order: 4;
  }

  .app-shell.builder-workspace .builder-flow-sidebar .builder-section-nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
  }

  .app-shell.builder-workspace .builder-flow-sidebar .builder-section-nav button {
    justify-content: space-between;
    width: 100%;
    min-height: 34px;
    padding-inline: 10px 8px;
    text-align: left;
  }

  .app-shell:not(.builder-workspace) .dashboard-topbar {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    padding: 8px 12px 10px;
  }

  .app-shell:not(.builder-workspace) .dashboard-topbar .sidebar-toggle {
    width: 40px;
    height: 40px;
    min-height: 40px;
    border-radius: 14px;
  }

  .app-shell:not(.builder-workspace) .dashboard-topbar > div:nth-of-type(1) {
    min-width: 0;
  }

  .app-shell:not(.builder-workspace) .dashboard-topbar .eyebrow {
    display: block;
    overflow: hidden;
    color: var(--blue);
    font-size: 9px;
    line-height: 1.05;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .app-shell:not(.builder-workspace) .dashboard-topbar h1 {
    margin-top: 2px;
    overflow: hidden;
    font-size: 18px;
    line-height: 1.05;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .app-shell:not(.builder-workspace) .topbar-actions {
    display: flex;
    grid-column: 3;
    grid-row: 1;
    align-items: center;
    justify-content: flex-end;
    width: auto;
    gap: 0;
  }

  .app-shell:not(.builder-workspace) .dashboard-guide-link {
    display: none;
  }

  .app-shell:not(.builder-workspace) .dashboard-topbar .dashboard-preferences {
    min-height: 34px;
    padding: 2px;
    gap: 2px;
  }

  .app-shell:not(.builder-workspace) .dashboard-topbar .dashboard-preferences .language-switch {
    min-height: 28px;
  }

  .app-shell:not(.builder-workspace) .dashboard-topbar .dashboard-preferences .language-switch button {
    min-width: 30px;
    min-height: 24px;
    padding: 0 6px;
    font-size: 10.5px;
  }

  .app-shell:not(.builder-workspace) .dashboard-topbar .dashboard-preferences .theme-toggle,
  .app-shell:not(.builder-workspace) .dashboard-topbar .dashboard-preferences .ai-quick-toggle {
    width: 28px;
    height: 28px;
    min-height: 28px;
  }

  .app-shell:not(.builder-workspace) .dashboard-topbar .dashboard-preferences .icon {
    width: 14px;
    height: 14px;
  }

  .app-shell:not(.builder-workspace) .dashboard-search {
    grid-column: 1 / -1;
    grid-row: 2;
    order: initial;
    width: 100%;
    min-height: 38px;
    padding: 0 12px;
  }

  .app-shell:not(.builder-workspace) .dashboard-search input {
    padding: 8px 0;
    font-size: 13px;
  }
}

/* Public professional summary generator */
.summary-tool-page {
  background:
    linear-gradient(90deg, rgba(31, 105, 213, 0.06) 1px, transparent 1px),
    linear-gradient(0deg, rgba(31, 105, 213, 0.045) 1px, transparent 1px),
    linear-gradient(118deg, #f4fbff 0%, #eef6ff 34%, #f8fbff 68%, #ffffff 100%);
  background-size: 56px 56px, 56px 56px, auto;
}

.summary-tool-page main {
  display: grid;
  gap: clamp(28px, 3.8vw, 52px);
  padding-bottom: clamp(40px, 5.4vw, 68px);
}

.summary-tool-page .section {
  padding-top: 0;
  padding-bottom: 0;
}

.summary-tool-page h1,
.summary-tool-page h2,
.summary-tool-page h3,
.summary-tool-page p,
.summary-tool-page li,
.summary-tool-page a,
.summary-tool-page button,
.summary-tool-page textarea {
  overflow-wrap: anywhere;
}

.summary-tool-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 0.98fr) minmax(420px, 0.82fr);
  gap: clamp(34px, 4.8vw, 70px);
  align-items: center;
  width: min(100%, 1760px);
  min-height: calc(100svh - 64px);
  margin: 0 auto;
  padding: clamp(30px, 5.2vh, 64px) var(--page-x) clamp(28px, 4.8vh, 56px);
}

.summary-tool-hero::before {
  content: "";
  position: absolute;
  inset: clamp(20px, 4vw, 56px) var(--page-x) auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(31, 105, 213, 0.28), rgba(13, 143, 105, 0.26), transparent);
}

.summary-tool-hero > * {
  min-width: 0;
}

.summary-tool-copy {
  display: grid;
  gap: clamp(16px, 2.2vh, 22px);
  max-width: 720px;
}

.summary-tool-copy h1 {
  margin: 0;
  color: var(--ink);
  max-width: 11ch;
  font-size: 5rem;
  line-height: 0.98;
  letter-spacing: 0;
}

.summary-tool-copy p {
  max-width: 640px;
  margin: 0;
  color: #425371;
  font-size: 1.2rem;
  line-height: 1.58;
}

.summary-tool-actions,
.summary-result-cta div,
.summary-final-cta div {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.summary-tool-actions .primary-button,
.summary-tool-actions .secondary-button {
  white-space: normal;
}

.summary-tool-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  max-width: 680px;
}

.summary-tool-badges span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 999px;
  color: #152746;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 14px 34px rgba(18, 60, 145, 0.08);
  font-size: 12.5px;
  font-weight: 850;
}

.summary-tool-badges .icon {
  width: 15px;
  height: 15px;
  color: #0d8f69;
}

.summary-hero-card,
.summary-form-card,
.summary-result-card,
.summary-example-card,
.summary-education-card,
.summary-step-list article,
.summary-mistake-list article,
.summary-compare-card,
.summary-final-cta {
  border: 1px solid rgba(203, 215, 235, 0.82);
  background: rgba(255, 255, 255, 0.9);
  box-shadow:
    0 28px 78px rgba(18, 60, 145, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(18px);
}

.summary-hero-card {
  position: relative;
  isolation: isolate;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 18px;
  aspect-ratio: 1.02 / 1;
  width: min(100%, 680px);
  justify-self: end;
  min-height: 0;
  padding: clamp(22px, 3vw, 34px);
  overflow: hidden;
  border-color: rgba(255, 255, 255, 0.72);
  border-radius: 34px;
  background:
    linear-gradient(135deg, rgba(7, 18, 42, 0.98) 0%, rgba(18, 57, 133, 0.96) 42%, rgba(245, 250, 255, 0.96) 42.2%, rgba(255, 255, 255, 0.98) 100%);
  box-shadow:
    0 34px 90px rgba(18, 60, 145, 0.2),
    inset 0 1px 0 rgba(255, 255, 255, 0.62);
}

.summary-hero-card::before,
.summary-hero-card::after {
  content: "";
  position: absolute;
  pointer-events: none;
}

.summary-hero-card::before {
  inset: 15px;
  z-index: -1;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 26px;
}

.summary-hero-card::after {
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px),
    linear-gradient(0deg, rgba(255, 255, 255, 0.07) 1px, transparent 1px);
  background-size: 34px 34px;
  mask-image: linear-gradient(135deg, #000 0%, #000 44%, transparent 44.2%);
}

.summary-hero-card-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: start;
  color: #ffffff;
}

.summary-hero-brandline {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.summary-hero-brandline span,
.summary-hero-document-head span,
.summary-hero-score span {
  font-size: 11px;
  font-weight: 950;
  letter-spacing: 0.08em;
  line-height: 1.1;
  text-transform: uppercase;
}

.summary-hero-brandline span {
  color: #8ee8f7;
}

.summary-hero-brandline strong {
  color: #ffffff;
  font-size: 21px;
  line-height: 1.08;
}

.summary-hero-score {
  display: grid;
  grid-template-columns: auto auto;
  column-gap: 3px;
  align-items: end;
  min-width: 108px;
  padding: 13px 14px;
  border: 1px solid rgba(125, 231, 247, 0.5);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(22, 79, 183, 0.86), rgba(31, 105, 213, 0.62));
  box-shadow:
    0 14px 30px rgba(11, 45, 111, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
  transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease, opacity 0.25s ease;
}

.summary-hero-score span {
  grid-column: 1 / -1;
  color: #c9f8ff;
}

.summary-hero-score strong {
  display: inline-block;
  min-width: 2ch;
  color: #ffffff;
  font-size: 34px;
  line-height: 0.9;
  transform-origin: left center;
  transition: opacity 0.24s ease, transform 0.24s ease;
}

.summary-hero-score small {
  color: #b8cdf2;
  font-size: 12px;
  font-weight: 900;
  transition: opacity 0.24s ease;
}

.summary-hero-document {
  align-self: stretch;
  display: grid;
  gap: 17px;
  min-height: 0;
  padding: clamp(18px, 2.4vw, 28px);
  min-width: 0;
  border: 1px solid rgba(31, 105, 213, 0.11);
  border-radius: 28px;
  color: #263551;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 251, 255, 0.96));
  box-shadow: 0 22px 54px rgba(7, 18, 42, 0.17);
}

.summary-hero-document-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.summary-hero-document-head span {
  color: #123c91;
}

.summary-hero-document-head em {
  padding: 6px 9px;
  border-radius: 999px;
  color: #0d6b54;
  background: rgba(221, 249, 238, 0.9);
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}

.summary-hero-card p {
  margin: 0;
  color: #21304d;
  font-size: 1.05rem;
  font-weight: 740;
  line-height: 1.62;
  min-width: 0;
  overflow-wrap: break-word;
}

.summary-hero-card [data-summary-hero-text] {
  min-height: calc(1.62em * 5);
}

.summary-hero-card.is-typing [data-summary-hero-text]::after {
  content: "";
  display: inline-block;
  width: 0.08em;
  height: 1em;
  margin-left: 0.12em;
  border-radius: 999px;
  background: #1f69d5;
  transform: translateY(0.14em);
  animation: summaryTypingCaret 0.85s steps(2, start) infinite;
}

.summary-hero-card.is-typing .summary-hero-score {
  border-color: rgba(125, 231, 247, 0.34);
  background: linear-gradient(135deg, rgba(22, 79, 183, 0.72), rgba(31, 105, 213, 0.48));
  box-shadow:
    0 10px 24px rgba(11, 45, 111, 0.16),
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.summary-hero-card.is-typing .summary-hero-score strong,
.summary-hero-card.is-typing .summary-hero-score small {
  opacity: 0.72;
  transform: translateY(2px) scale(0.98);
}

.summary-hero-card.is-scoring .summary-hero-score {
  border-color: rgba(125, 231, 247, 0.42);
  background: linear-gradient(135deg, rgba(22, 79, 183, 0.92), rgba(17, 148, 137, 0.72));
  box-shadow:
    0 14px 34px rgba(11, 45, 111, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.22);
  animation: summaryPrecisionPop 0.58s cubic-bezier(0.18, 0.9, 0.25, 1.24);
}

.summary-hero-card.is-scoring .summary-hero-score strong,
.summary-hero-card.is-scoring .summary-hero-score small {
  opacity: 1;
  color: #ffffff;
}

.summary-hero-card.is-scoring .summary-card-lines i:nth-child(3) {
  animation: summaryPrecisionSweep 0.72s ease both;
}

.summary-card-lines {
  display: grid;
  gap: 9px;
  align-self: end;
}

.summary-card-lines i {
  display: block;
  height: 10px;
  border-radius: 999px;
  background: #d9e5f5;
}

.summary-card-lines i:nth-child(2) {
  width: 72%;
}

.summary-card-lines i:nth-child(3) {
  width: 48%;
  background: linear-gradient(90deg, #164fb7, #18a889, #8a6bf1);
}

@keyframes summaryTypingCaret {
  0%,
  45% {
    opacity: 1;
  }

  46%,
  100% {
    opacity: 0;
  }
}

@keyframes summaryPrecisionPop {
  0% {
    opacity: 0.45;
    transform: translateY(6px) scale(0.94);
  }

  62% {
    opacity: 1;
    transform: translateY(-2px) scale(1.05);
  }

  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes summaryPrecisionSweep {
  0% {
    width: 18%;
    opacity: 0.55;
  }

  100% {
    width: 48%;
    opacity: 1;
  }
}

.summary-hero-intelligence {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.summary-hero-intelligence span {
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  min-height: 48px;
  padding: 10px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 16px;
  color: #162a4a;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 14px 28px rgba(18, 60, 145, 0.08);
  font-size: 12px;
  font-weight: 900;
  line-height: 1.2;
}

.summary-hero-intelligence .icon {
  width: 18px;
  height: 18px;
  color: #0d8f69;
}

.summary-tool-section {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.78fr);
  gap: clamp(18px, 2.6vw, 32px);
  align-items: start;
  width: min(100%, 1180px);
  margin: 0 auto;
  padding: 0 var(--page-x);
}

.summary-tool-section:has(.summary-result-card[hidden]) {
  grid-template-columns: minmax(0, 760px);
  justify-content: center;
}

.summary-form-card,
.summary-result-card {
  display: grid;
  gap: 22px;
  padding: clamp(22px, 3vw, 34px);
  border-radius: 26px;
}

.summary-result-card[hidden] {
  display: none;
}

.summary-tool-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.summary-tool-form label,
.summary-field {
  display: grid;
  gap: 8px;
  min-width: 0;
  color: #30415f;
  font-size: 13px;
  font-weight: 900;
}

.summary-tool-form .summary-skill-builder,
.summary-tool-form > .summary-field:nth-of-type(n+4),
.summary-tool-form .summary-quality-meter,
.summary-tool-form [data-summary-generate],
.summary-security-gate,
.summary-tool-message {
  grid-column: 1 / -1;
}

.summary-field small {
  color: #65728a;
  font-size: 12px;
  font-weight: 750;
  line-height: 1.35;
}

.summary-tool-form input,
.summary-tool-form select,
.summary-tool-form textarea,
.summary-result-option textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 16px;
  color: var(--ink);
  background: #fbfdff;
  font: inherit;
  font-weight: 700;
}

.summary-tool-form input,
.summary-tool-form select {
  min-height: 46px;
  padding: 0 13px;
}

.summary-tool-form textarea {
  min-height: 92px;
  padding: 13px;
  line-height: 1.5;
  resize: vertical;
}

.summary-skill-builder {
  display: grid;
  gap: 14px;
  padding: 16px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(248, 251, 255, 0.96), rgba(239, 247, 255, 0.82));
}

.summary-skill-builder strong,
.summary-selected-skills-wrap > span,
.summary-quality-meter span {
  color: var(--ink);
  font-size: 13px;
  font-weight: 950;
}

.summary-skill-builder p,
.summary-quality-meter p,
.summary-selected-skills p {
  margin: 0;
  color: #52627e;
  font-size: 13px;
  font-weight: 760;
  line-height: 1.45;
}

.summary-skill-suggestions,
.summary-selected-skills {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.summary-skill-chip,
.summary-selected-skill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  padding: 0 12px;
  border: 1px solid rgba(31, 105, 213, 0.15);
  border-radius: 999px;
  color: #1d3354;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 10px 22px rgba(18, 60, 145, 0.05);
  cursor: pointer;
  font: inherit;
  font-size: 12.5px;
  font-weight: 850;
}

.summary-skill-chip.is-selected,
.summary-selected-skill {
  border-color: rgba(13, 143, 105, 0.25);
  color: #0b513f;
  background: rgba(236, 253, 245, 0.88);
}

.summary-skill-chip .icon {
  width: 14px;
  height: 14px;
}

.summary-selected-skill span {
  color: #0d6b54;
  font-size: 15px;
  line-height: 1;
}

.summary-manual-skill-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: end;
}

.summary-manual-skill-row .secondary-button {
  min-height: 46px;
}

.summary-selected-skills-wrap {
  display: grid;
  gap: 9px;
}

.summary-quality-meter {
  display: grid;
  gap: 9px;
  padding: 15px 16px;
  border: 1px solid rgba(31, 105, 213, 0.13);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.78);
}

.summary-quality-meter div {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  align-items: center;
  justify-content: space-between;
}

.summary-quality-meter strong {
  padding: 6px 10px;
  border-radius: 999px;
  color: #123c91;
  background: #eef5ff;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.summary-quality-meter[data-quality="basic"] strong {
  color: #8a4d00;
  background: #fff7df;
}

.summary-quality-meter[data-quality="good"] strong {
  color: #123c91;
  background: #eef5ff;
}

.summary-quality-meter[data-quality="strong"] strong {
  color: #0b513f;
  background: #ddf9ee;
}

.summary-tool-form input:focus,
.summary-tool-form select:focus,
.summary-tool-form textarea:focus,
.summary-result-option textarea:focus {
  outline: none;
  border-color: rgba(31, 105, 213, 0.42);
  box-shadow: 0 0 0 4px rgba(31, 105, 213, 0.09);
}

.summary-tool-message {
  margin: 0;
  color: #0d6b54;
  font-size: 13px;
  font-weight: 850;
}

.summary-security-gate {
  display: grid;
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(31, 105, 213, 0.13);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(238, 245, 255, 0.92), rgba(250, 252, 255, 0.96));
}

.summary-security-gate[hidden] {
  display: none;
}

.summary-security-gate strong {
  color: var(--ink);
  font-size: 13px;
  font-weight: 950;
}

.summary-security-gate p {
  margin: 0;
  color: #52627e;
  font-size: 13px;
  line-height: 1.45;
}

.summary-security-error {
  margin: 0;
}

.summary-result-list {
  display: grid;
  gap: 18px;
}

.summary-result-option {
  display: grid;
  gap: 14px;
  padding: clamp(16px, 2.2vw, 22px);
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 20px;
  background:
    radial-gradient(circle at 100% 0%, rgba(105, 216, 242, 0.1), transparent 34%),
    rgba(248, 251, 255, 0.92);
}

.summary-result-option-head,
.summary-result-option footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.summary-result-option-head > div {
  display: grid;
  gap: 5px;
}

.summary-result-option span {
  color: #123c91;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.summary-result-option-head p {
  margin: 0;
  color: #65728a;
  font-size: 13px;
  font-weight: 750;
  line-height: 1.35;
}

.summary-result-readable {
  margin: 0;
  padding: 16px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 18px;
  color: #253653;
  background: rgba(255, 255, 255, 0.86);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.86);
  font-size: 15px;
  font-weight: 720;
  line-height: 1.65;
}

.summary-result-option textarea {
  min-height: 176px;
  padding: 16px;
  line-height: 1.58;
  overflow: hidden;
  resize: vertical;
}

.summary-result-option textarea[hidden] {
  display: none;
}

.summary-result-option:first-child textarea {
  min-height: 126px;
}

.summary-result-option footer {
  flex-wrap: wrap;
}

.summary-result-option footer .primary-button {
  flex: 1 1 220px;
}

.summary-generate-again {
  justify-self: start;
}

.summary-result-cta {
  display: grid;
  gap: 10px;
  padding: 18px;
  border-radius: 20px;
  background: linear-gradient(135deg, rgba(238, 251, 255, 0.96), rgba(246, 242, 255, 0.94));
}

.summary-result-cta h3,
.summary-final-cta h2,
.summary-example-card h3,
.summary-education-card h2,
.summary-education-card h3,
.summary-step-list h3,
.summary-mistake-list h3,
.summary-compare-card span {
  margin: 0;
  color: var(--ink);
}

.summary-result-cta p,
.summary-final-cta p,
.summary-example-card p,
.summary-education-card p,
.summary-step-list p,
.summary-mistake-list p,
.summary-compare-card p {
  margin: 0;
  color: #52627e;
  line-height: 1.55;
}

.summary-result-note,
.summary-quality-warning,
.summary-suggestions,
.pending-summary-notice,
.builder-imported-summary-notice {
  border: 1px solid rgba(13, 107, 84, 0.16);
  border-radius: 16px;
  background: rgba(236, 253, 245, 0.78);
}

.summary-quality-warning,
.summary-suggestions {
  margin: 0;
  padding: 14px 16px;
  color: #245443;
  font-size: 13px;
  font-weight: 820;
  line-height: 1.48;
}

.summary-suggestions {
  display: grid;
  gap: 8px;
  background: linear-gradient(135deg, rgba(236, 253, 245, 0.86), rgba(238, 245, 255, 0.9));
}

.summary-suggestions strong {
  color: #0b513f;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}

.summary-suggestions p {
  margin: 0;
}

.summary-result-cta .summary-result-note {
  padding: 12px 14px;
  color: #0d6b54;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.45;
}

.pending-summary-notice,
.builder-imported-summary-notice {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 13px 15px;
  color: #0d6b54;
  box-shadow: 0 14px 34px rgba(13, 107, 84, 0.08);
}

.pending-summary-notice {
  width: min(100%, 960px);
  margin: -4px auto 18px;
}

.builder-imported-summary-notice {
  margin-bottom: 2px;
}

.pending-summary-notice .icon,
.builder-imported-summary-notice .icon {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin-top: 1px;
}

.pending-summary-notice p,
.builder-imported-summary-notice p {
  margin: 0;
  color: inherit;
  font-size: 13px;
  font-weight: 850;
  line-height: 1.45;
}

.summary-example-grid,
.summary-education-grid,
.summary-compare-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  width: min(100%, 1040px);
  margin: 0 auto;
}

.summary-example-card,
.summary-education-card,
.summary-compare-card {
  display: grid;
  gap: 12px;
  padding: 22px;
  border-radius: 22px;
}

.summary-example-card:first-child,
.summary-education-card.wide {
  grid-column: 1 / -1;
}

.summary-education-card ul,
.summary-compare-card ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 20px;
  color: #52627e;
}

.summary-step-list,
.summary-mistake-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  gap: 14px;
  width: min(100%, 1060px);
  margin: 0 auto;
}

.summary-step-list article,
.summary-mistake-list article {
  display: grid;
  justify-items: center;
  align-content: start;
  gap: 8px;
  min-height: 0;
  padding: 18px 16px;
  border-radius: 20px;
  text-align: center;
}

.summary-step-list span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, var(--blue), var(--purple));
  font-size: 13px;
  font-weight: 950;
}

.summary-steps-section .section-heading,
.summary-use-section .section-heading,
.summary-mistakes-section .section-heading,
.summary-related-section .section-heading {
  justify-items: center;
  align-items: center;
  max-width: 720px;
  margin-right: auto;
  margin-left: auto;
  margin-bottom: 18px;
  text-align: center;
}

.summary-steps-section .section-heading.left,
.summary-use-section .section-heading.left,
.summary-mistakes-section .section-heading.left,
.summary-related-section .section-heading.left {
  justify-items: center;
  align-items: center;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

.summary-step-list h3,
.summary-mistake-list h3 {
  max-width: 18ch;
  font-size: clamp(17px, 1.25vw, 20px);
  line-height: 1.18;
}

.summary-step-list p,
.summary-mistake-list p {
  max-width: 30ch;
  font-size: 14px;
  line-height: 1.42;
}

.summary-steps-section .section-heading h2,
.summary-use-section .section-heading h2,
.summary-mistakes-section .section-heading h2,
.summary-related-section .section-heading h2 {
  max-width: 760px;
  font-size: clamp(30px, 3vw, 46px);
  line-height: 1.05;
}

.summary-compare-card.is-bad {
  border-color: rgba(164, 31, 53, 0.14);
  background: linear-gradient(180deg, rgba(255, 250, 251, 0.96), rgba(255, 255, 255, 0.92));
}

.summary-compare-card.is-good {
  border-color: rgba(13, 143, 105, 0.16);
  background: linear-gradient(180deg, rgba(242, 255, 250, 0.96), rgba(255, 255, 255, 0.92));
}

.summary-final-cta {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: grid;
  grid-template-columns: 1fr;
  justify-items: center;
  gap: clamp(18px, 2.4vw, 26px);
  width: min(calc(100% - (var(--page-x) * 2)), 1040px);
  margin: 0 auto;
  padding: clamp(48px, 6vw, 76px) clamp(34px, 6vw, 78px);
  border: 1px solid rgba(32, 83, 168, 0.34);
  border-radius: 28px;
  text-align: center;
  background:
    linear-gradient(90deg, rgba(105, 216, 242, 0.42) 0 8px, transparent 8px),
    linear-gradient(135deg, #0d2558 0%, #1857bd 56%, #7567f4 100%);
  box-shadow:
    0 30px 80px rgba(24, 87, 189, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

.summary-tool-page .summary-final-cta {
  padding: clamp(48px, 6vw, 76px) clamp(34px, 6vw, 78px);
}

.summary-final-cta::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(115deg, transparent 0 48%, rgba(255, 255, 255, 0.12) 48% 49%, transparent 49% 100%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent 58%);
  pointer-events: none;
}

.summary-final-cta h2 {
  max-width: 760px;
  color: #ffffff;
  font-size: clamp(32px, 3.6vw, 48px);
  line-height: 1.08;
}

.summary-final-cta p {
  max-width: 760px;
  color: rgba(246, 250, 255, 0.86);
  font-size: clamp(16px, 1.24vw, 19px);
  line-height: 1.62;
}

.summary-final-cta div {
  align-items: stretch;
  justify-content: center;
  min-width: 0;
  margin-top: 2px;
}

.summary-final-cta .primary-button,
.summary-final-cta .secondary-button {
  min-height: 54px;
  min-width: min(100%, 280px);
  padding-inline: clamp(22px, 3vw, 36px);
  box-shadow: none;
}

.summary-final-cta .primary-button {
  color: #0d2558;
  background: #ffffff;
}

.summary-final-cta .secondary-button {
  border-color: rgba(255, 255, 255, 0.4);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.1);
}

.summary-related-links {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 230px), 1fr));
  gap: 12px;
  width: min(100%, 980px);
  margin: 0 auto;
}

.summary-related-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 12px 16px;
  border: 1px solid rgba(31, 105, 213, 0.13);
  border-radius: 16px;
  color: #123c91;
  background: rgba(255, 255, 255, 0.84);
  box-shadow: 0 14px 30px rgba(18, 60, 145, 0.06);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.25;
  text-align: center;
}

:root[data-theme="dark"] .summary-tool-page {
  background:
    linear-gradient(90deg, rgba(142, 232, 247, 0.045) 1px, transparent 1px),
    linear-gradient(0deg, rgba(142, 232, 247, 0.035) 1px, transparent 1px),
    linear-gradient(118deg, #07101f 0%, #0c1831 40%, #081124 100%);
  background-size: 56px 56px, 56px 56px, auto;
}

:root[data-theme="dark"] .summary-tool-copy h1,
:root[data-theme="dark"] .summary-result-cta h3,
:root[data-theme="dark"] .summary-final-cta h2,
:root[data-theme="dark"] .summary-example-card h3,
:root[data-theme="dark"] .summary-education-card h2,
:root[data-theme="dark"] .summary-education-card h3,
:root[data-theme="dark"] .summary-step-list h3,
:root[data-theme="dark"] .summary-mistake-list h3,
:root[data-theme="dark"] .summary-compare-card span {
  color: #f6faff;
}

:root[data-theme="dark"] .summary-tool-copy p,
:root[data-theme="dark"] .summary-result-cta p,
:root[data-theme="dark"] .summary-final-cta p,
:root[data-theme="dark"] .summary-example-card p,
:root[data-theme="dark"] .summary-education-card p,
:root[data-theme="dark"] .summary-step-list p,
:root[data-theme="dark"] .summary-mistake-list p,
:root[data-theme="dark"] .summary-compare-card p,
:root[data-theme="dark"] .summary-education-card ul,
:root[data-theme="dark"] .summary-compare-card ul {
  color: #d6e4f7;
}

:root[data-theme="dark"] .summary-hero-card,
:root[data-theme="dark"] .summary-form-card,
:root[data-theme="dark"] .summary-result-card,
:root[data-theme="dark"] .summary-example-card,
:root[data-theme="dark"] .summary-education-card,
:root[data-theme="dark"] .summary-step-list article,
:root[data-theme="dark"] .summary-mistake-list article,
:root[data-theme="dark"] .summary-compare-card,
:root[data-theme="dark"] .summary-final-cta,
:root[data-theme="dark"] .summary-result-option {
  border-color: rgba(170, 194, 234, 0.2);
  background:
    radial-gradient(circle at 94% 0%, rgba(105, 216, 242, 0.06), transparent 32%),
    rgba(16, 27, 52, 0.9);
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.28);
}

:root[data-theme="dark"] .summary-tool-badges span,
:root[data-theme="dark"] .summary-related-links a,
:root[data-theme="dark"] .summary-result-cta {
  border-color: rgba(170, 194, 234, 0.22);
  color: #eaf2ff;
  background: rgba(12, 25, 47, 0.86);
}

:root[data-theme="dark"] .summary-hero-card {
  border-color: rgba(170, 194, 234, 0.26);
  background:
    linear-gradient(135deg, rgba(4, 12, 28, 0.98) 0%, rgba(16, 45, 108, 0.94) 42%, rgba(13, 25, 49, 0.96) 42.2%, rgba(9, 18, 36, 0.98) 100%);
}

:root[data-theme="dark"] .summary-hero-document,
:root[data-theme="dark"] .summary-hero-intelligence span {
  border-color: rgba(170, 194, 234, 0.2);
  color: #edf5ff;
  background: rgba(7, 17, 31, 0.82);
}

:root[data-theme="dark"] .summary-hero-document p {
  color: #eaf2ff;
}

:root[data-theme="dark"] .summary-hero-document-head span {
  color: #9ddcff;
}

:root[data-theme="dark"] .summary-card-lines i {
  background: rgba(170, 194, 234, 0.24);
}

:root[data-theme="dark"] .summary-card-lines i:nth-child(3) {
  background: linear-gradient(90deg, #69d8f2, #60d3a9, #a88bff);
}

:root[data-theme="dark"] .summary-tool-form label {
  color: #dbe7f8;
}

:root[data-theme="dark"] .summary-field small,
:root[data-theme="dark"] .summary-skill-builder p,
:root[data-theme="dark"] .summary-quality-meter p,
:root[data-theme="dark"] .summary-selected-skills p {
  color: #b7c8e3;
}

:root[data-theme="dark"] .summary-tool-form input,
:root[data-theme="dark"] .summary-tool-form select,
:root[data-theme="dark"] .summary-tool-form textarea,
:root[data-theme="dark"] .summary-result-option textarea {
  border-color: rgba(170, 194, 234, 0.24);
  color: #f4f8ff;
  background: rgba(7, 17, 31, 0.78);
}

:root[data-theme="dark"] .summary-skill-builder,
:root[data-theme="dark"] .summary-quality-meter {
  border-color: rgba(170, 194, 234, 0.2);
  background: rgba(7, 17, 31, 0.42);
}

:root[data-theme="dark"] .summary-skill-chip,
:root[data-theme="dark"] .summary-selected-skill {
  border-color: rgba(170, 194, 234, 0.22);
  color: #eaf2ff;
  background: rgba(12, 25, 47, 0.78);
}

:root[data-theme="dark"] .summary-skill-chip.is-selected,
:root[data-theme="dark"] .summary-selected-skill {
  border-color: rgba(96, 211, 169, 0.3);
  color: #d8ffeb;
  background: rgba(12, 47, 38, 0.72);
}

:root[data-theme="dark"] .summary-quality-meter strong {
  color: #dceaff;
  background: rgba(120, 169, 255, 0.18);
}

:root[data-theme="dark"] .summary-quality-meter[data-quality="basic"] strong {
  color: #ffe6a8;
  background: rgba(138, 77, 0, 0.24);
}

:root[data-theme="dark"] .summary-quality-meter[data-quality="strong"] strong {
  color: #d8ffeb;
  background: rgba(96, 211, 169, 0.18);
}

:root[data-theme="dark"] .summary-result-readable {
  border-color: rgba(170, 194, 234, 0.2);
  color: #f4f8ff;
  background: rgba(7, 17, 31, 0.62);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

:root[data-theme="dark"] .summary-result-option-head p {
  color: #b7c8e3;
}

:root[data-theme="dark"] .summary-security-gate {
  border-color: rgba(170, 194, 234, 0.2);
  background: rgba(12, 25, 47, 0.86);
}

:root[data-theme="dark"] .summary-security-gate strong {
  color: #f6faff;
}

:root[data-theme="dark"] .summary-security-gate p {
  color: #d6e4f7;
}

:root[data-theme="dark"] .summary-result-note,
:root[data-theme="dark"] .summary-quality-warning,
:root[data-theme="dark"] .summary-suggestions,
:root[data-theme="dark"] .pending-summary-notice,
:root[data-theme="dark"] .builder-imported-summary-notice {
  border-color: rgba(96, 211, 169, 0.24);
  color: #bff8df;
  background: rgba(12, 47, 38, 0.72);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.22);
}

:root[data-theme="dark"] .summary-suggestions strong {
  color: #d8ffeb;
}

:root[data-theme="dark"] .summary-final-cta {
  border-color: rgba(125, 154, 245, 0.38);
  background:
    linear-gradient(90deg, rgba(105, 216, 242, 0.42) 0 8px, transparent 8px),
    linear-gradient(135deg, #07162f 0%, #123f8e 56%, #5d50da 100%);
  box-shadow:
    0 30px 80px rgba(0, 0, 0, 0.32),
    inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

:root[data-theme="dark"] .summary-final-cta .primary-button {
  color: #07162f;
  background: #ffffff;
}

:root[data-theme="dark"] .summary-final-cta .secondary-button {
  border-color: rgba(255, 255, 255, 0.36);
  color: #ffffff;
  background: rgba(255, 255, 255, 0.1);
}

@media (max-height: 940px) and (min-width: 981px) {
  .summary-tool-hero {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 0.7fr);
    gap: clamp(26px, 3.5vw, 52px);
    min-height: calc(100svh - 58px);
    padding-top: clamp(22px, 3.4vh, 34px);
    padding-bottom: clamp(20px, 3.2vh, 32px);
  }

  .summary-hero-card {
    width: min(100%, 560px);
    gap: 12px;
    padding: 20px;
    border-radius: 28px;
  }

  .summary-hero-brandline {
    gap: 5px;
  }

  .summary-hero-brandline strong {
    font-size: 19px;
  }

  .summary-hero-score {
    min-width: 94px;
    padding: 10px 11px;
  }

  .summary-hero-score strong {
    font-size: 29px;
  }

  .summary-hero-document {
    gap: 12px;
    padding: 20px;
    border-radius: 22px;
  }

  .summary-hero-card p {
    font-size: 0.94rem;
    line-height: 1.48;
  }

  .summary-hero-intelligence span {
    min-height: 42px;
    padding: 8px;
  }
}

@media (max-height: 820px) and (min-width: 981px) {
  .summary-tool-hero {
    gap: clamp(28px, 4vw, 56px);
    padding-top: 28px;
    padding-bottom: 28px;
  }

  .summary-tool-copy {
    gap: 16px;
  }

  .summary-tool-copy h1 {
    font-size: clamp(58px, 4.7vw, 74px);
    line-height: 0.96;
  }

  .summary-tool-copy p {
    max-width: 620px;
    font-size: 1.1rem;
    line-height: 1.48;
  }

  .summary-tool-actions {
    gap: 10px;
  }

  .summary-tool-actions .primary-button,
  .summary-tool-actions .secondary-button {
    min-height: 44px;
    padding-inline: 20px;
  }

  .summary-tool-badges span {
    min-height: 34px;
    padding-inline: 12px;
  }

  .summary-hero-card {
    width: min(100%, 560px);
    gap: 12px;
    padding: 20px;
    border-radius: 28px;
  }

  .summary-hero-brandline strong {
    font-size: 19px;
  }

  .summary-hero-score {
    min-width: 96px;
    padding: 11px 12px;
  }

  .summary-hero-score strong {
    font-size: 30px;
  }

  .summary-hero-document {
    gap: 12px;
    padding: 20px;
    border-radius: 22px;
  }

  .summary-hero-card p {
    font-size: 0.94rem;
    line-height: 1.48;
  }

  .summary-hero-intelligence span {
    min-height: 42px;
    padding: 8px;
  }
}

@media (max-width: 980px) {
  .summary-tool-hero,
  .summary-tool-section {
    grid-template-columns: 1fr;
  }

  .summary-tool-hero {
    min-height: calc(100svh - 64px);
    align-content: center;
  }

  .summary-tool-copy {
    max-width: 760px;
  }

  .summary-tool-copy h1 {
    max-width: 13ch;
    font-size: 4.1rem;
  }

  .summary-hero-card {
    width: min(100%, 720px);
    justify-self: center;
    transform: none;
  }

  .summary-step-list,
  .summary-mistake-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 820px) {
  .summary-final-cta {
    width: min(calc(100% - 32px), 720px);
  }

  .summary-tool-page .summary-final-cta {
    padding: 40px 28px;
  }

  .summary-final-cta h2,
  .summary-final-cta p {
    max-width: 620px;
  }
}

@media (max-width: 640px) {
  .summary-tool-page main {
    gap: 46px;
  }

  .summary-tool-hero {
    gap: clamp(12px, 2.4svh, 18px);
    width: 100%;
    max-width: 100vw;
    padding-right: 18px;
    padding-left: 18px;
    padding-top: clamp(14px, 2.4svh, 24px);
    padding-bottom: 14px;
    overflow: hidden;
  }

  .summary-tool-copy,
  .summary-tool-actions,
  .summary-tool-badges {
    width: 100%;
    max-width: calc(100vw - 54px);
  }

  .summary-tool-copy {
    gap: 12px;
  }

  .summary-tool-copy h1 {
    max-width: 13ch;
    font-size: clamp(2.25rem, 10.4vw, 2.65rem);
    line-height: 0.96;
  }

  .summary-tool-copy p {
    font-size: 0.98rem;
    line-height: 1.43;
  }

  .summary-tool-actions .primary-button,
  .summary-tool-actions .secondary-button {
    width: 100%;
    max-width: 100%;
    min-height: 42px;
    padding: 10px 16px;
  }

  .summary-tool-badges {
    gap: 8px;
  }

  .summary-tool-badges span {
    min-height: 32px;
    padding: 7px 10px;
    font-size: 0.8rem;
  }

  .summary-hero-card {
    aspect-ratio: auto;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    justify-self: stretch;
    height: auto;
    min-height: 246px;
    gap: 8px;
    padding: 14px;
    border-radius: 24px;
  }

  .summary-hero-card-top {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
  }

  .summary-hero-brandline strong {
    font-size: 0.88rem;
  }

  .summary-hero-card h3 {
    font-size: clamp(1.25rem, 5.7vw, 1.55rem);
  }

  .summary-hero-score {
    justify-self: start;
    min-width: 82px;
    padding: 9px 10px;
  }

  .summary-hero-score span {
    font-size: 0.6rem;
  }

  .summary-hero-score strong {
    font-size: 1.7rem;
  }

  .summary-hero-document {
    gap: 9px;
    min-height: 0;
    overflow: hidden;
    padding: 14px;
    border-radius: 18px;
  }

  .summary-hero-document-head span {
    font-size: 0.72rem;
  }

  .summary-hero-document-head em {
    padding: 5px 9px;
    font-size: 0.7rem;
  }

  .summary-hero-card p {
    display: -webkit-box;
    overflow: hidden;
    font-size: 0.82rem;
    line-height: 1.43;
    min-height: 0;
    max-height: calc(1.43em * 4);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
  }

  .summary-hero-intelligence {
    gap: 6px;
    min-width: 0;
  }

  .summary-hero-intelligence span {
    grid-template-columns: 1fr;
    justify-items: center;
    min-width: 0;
    min-height: 44px;
    padding: 6px 5px;
    font-size: 9.5px;
    text-align: center;
  }

  .summary-tool-actions,
  .summary-result-cta div,
  .summary-final-cta div {
    align-items: stretch;
    flex-direction: column;
  }

  .summary-tool-actions .primary-button,
  .summary-tool-actions .secondary-button,
  .summary-result-cta .primary-button,
  .summary-result-cta .secondary-button,
  .summary-final-cta .primary-button,
  .summary-final-cta .secondary-button {
    width: 100%;
  }

  .summary-tool-form,
  .summary-example-grid,
  .summary-education-grid,
  .summary-compare-grid,
  .summary-step-list,
  .summary-mistake-list {
    grid-template-columns: 1fr;
  }

  .summary-manual-skill-row {
    grid-template-columns: 1fr;
  }

  .summary-manual-skill-row .secondary-button,
  .summary-skill-chip,
  .summary-selected-skill {
    width: 100%;
    justify-content: center;
  }

  .summary-form-card,
  .summary-result-card,
  .summary-example-card,
  .summary-education-card,
  .summary-compare-card,
  .summary-final-cta {
    border-radius: 20px;
  }

  .summary-final-cta {
    width: min(calc(100vw - 32px), 420px);
  }

  .summary-tool-page .summary-final-cta {
    padding: 34px 20px;
  }

  .summary-final-cta h2 {
    max-width: 12ch;
    font-size: clamp(28px, 8vw, 34px);
    line-height: 1.08;
  }

  .summary-final-cta p {
    width: 100%;
    font-size: 15px;
    line-height: 1.55;
  }

  .summary-result-option footer {
    align-items: stretch;
    flex-direction: column;
  }

  .summary-result-option footer .primary-button,
  .summary-result-option footer .secondary-button,
  .summary-result-option footer .ghost-button {
    width: 100%;
  }
}

/* AI translation review modal */
.ai-suggestion-modal {
  padding: 12px;
  align-items: center;
  justify-items: center;
  padding: max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
}

.resume-translation-dialog {
  width: min(1140px, calc(100vw - 24px));
  max-width: calc(100vw - 24px);
  height: min(860px, calc(100dvh - 32px));
  max-height: calc(100dvh - 32px);
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
}

.resume-translation-dialog .template-preview-header {
  align-items: flex-start;
  flex-direction: row;
  padding: clamp(16px, 2.3vw, 28px) clamp(18px, 2.8vw, 34px);
}

.resume-translation-dialog .template-preview-header h2 {
  margin: 6px 0 5px;
  font-size: clamp(30px, 4.2vw, 52px);
  line-height: 1.02;
}

.resume-translation-dialog .template-preview-header p {
  font-size: clamp(15px, 1.7vw, 20px);
  line-height: 1.35;
}

.resume-translation-dialog .template-preview-footer {
  align-items: center;
  flex-direction: row;
  padding: 14px clamp(18px, 2.8vw, 28px);
  background: rgba(255, 255, 255, 0.94);
}

.resume-translation-content {
  display: block;
  min-height: 0;
  overflow-x: hidden;
  overflow-y: auto;
  padding: clamp(16px, 2.2vw, 24px);
  background:
    radial-gradient(circle at 8% 0%, rgba(105, 216, 242, 0.1), transparent 34%),
    linear-gradient(180deg, #f8fbff, #ffffff);
}

.resume-translation-form {
  display: grid;
  gap: 14px;
}

.resume-translation-section {
  display: grid;
  gap: 12px;
  padding: 15px;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 14px 34px rgba(18, 60, 145, 0.06);
}

.resume-translation-section h3 {
  margin: 0;
  color: var(--ink);
  font-size: 16px;
}

.resume-translation-grid,
.resume-translation-two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.resume-translation-section label {
  display: grid;
  gap: 7px;
  min-width: 0;
  color: #30415f;
  font-size: 12.5px;
  font-weight: 900;
}

.resume-translation-section input,
.resume-translation-section textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 14px;
  color: var(--ink);
  background: #fbfdff;
  font: inherit;
  font-weight: 700;
}

.resume-translation-section input {
  min-height: 42px;
  padding: 0 12px;
}

.resume-translation-section textarea {
  min-height: 96px;
  padding: 12px;
  line-height: 1.5;
  resize: vertical;
}

.resume-translation-section input:focus,
.resume-translation-section textarea:focus {
  outline: none;
  border-color: rgba(31, 105, 213, 0.42);
  box-shadow: 0 0 0 4px rgba(31, 105, 213, 0.09);
}

.resume-translation-list {
  display: grid;
  gap: 12px;
}

.resume-translation-entry {
  display: grid;
  gap: 12px;
  padding: 12px;
  border: 1px solid rgba(31, 105, 213, 0.1);
  border-radius: 16px;
  background:
    linear-gradient(180deg, rgba(248, 251, 255, 0.96), rgba(255, 255, 255, 0.94));
}

:root[data-theme="dark"] .resume-translation-content {
  background:
    radial-gradient(circle at 8% 0%, rgba(105, 216, 242, 0.1), transparent 34%),
    linear-gradient(180deg, rgba(7, 17, 31, 0.96), rgba(11, 22, 40, 0.96));
}

:root[data-theme="dark"] .resume-translation-section,
:root[data-theme="dark"] .resume-translation-entry {
  border-color: rgba(170, 194, 234, 0.2);
  background:
    radial-gradient(circle at 94% 0%, rgba(105, 216, 242, 0.06), transparent 32%),
    rgba(18, 33, 61, 0.9);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.28);
}

:root[data-theme="dark"] .resume-translation-section label {
  color: #dbe7f8;
}

:root[data-theme="dark"] .resume-translation-section input,
:root[data-theme="dark"] .resume-translation-section textarea {
  border-color: rgba(170, 194, 234, 0.22);
  color: #f4f8ff;
  background: rgba(7, 17, 31, 0.78);
}

:root[data-theme="dark"] .resume-translation-dialog .template-preview-footer {
  background: rgba(8, 17, 31, 0.94);
}

@media (max-height: 760px) {
  .resume-translation-dialog {
    height: calc(100dvh - 24px);
    max-height: calc(100dvh - 24px);
    border-radius: 24px;
  }

  .resume-translation-dialog .template-preview-header {
    padding: 12px 20px;
  }

  .resume-translation-dialog .template-preview-header h2 {
    margin: 4px 0 3px;
    font-size: clamp(24px, 4.8vh, 38px);
  }

  .resume-translation-dialog .template-preview-header p {
    font-size: 14px;
  }

  .resume-translation-content {
    padding: 12px;
  }

  .resume-translation-dialog .template-preview-footer {
    padding: 10px 14px;
  }
}

@media (max-width: 760px) {
  .resume-translation-grid,
  .resume-translation-two-col {
    grid-template-columns: 1fr;
  }

  .resume-translation-dialog {
    width: min(100vw - 16px, 620px);
    max-width: calc(100vw - 16px);
    height: calc(100dvh - 16px);
    max-height: calc(100dvh - 16px);
    border-radius: 22px;
  }

  .resume-translation-content {
    padding: 12px;
  }

  .resume-translation-dialog .template-preview-header {
    padding: 12px 14px;
  }

  .resume-translation-dialog .template-preview-header h2 {
    font-size: clamp(25px, 8vw, 34px);
  }

  .resume-translation-dialog .template-preview-footer {
    gap: 8px;
    padding: 10px;
  }

  .resume-translation-dialog .template-preview-footer .secondary-button,
  .resume-translation-dialog .template-preview-footer .primary-button {
    flex: 1 1 0;
    min-width: 0;
  }
}

/* Blog SEO and conversion refresh */
.blog-page {
  background:
    linear-gradient(180deg, rgba(247, 250, 255, 0.96), rgba(255, 255, 255, 1) 42%),
    radial-gradient(circle at 10% 0%, rgba(105, 216, 242, 0.12), transparent 30%),
    radial-gradient(circle at 90% 8%, rgba(155, 124, 247, 0.1), transparent 28%);
}

.blog-hero {
  border-radius: 34px;
}

.blog-hero::before {
  border-color: rgba(186, 202, 226, 0.84);
  background:
    linear-gradient(90deg, rgba(18, 60, 145, 0.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(241, 247, 255, 0.86));
  background-size: 34px 34px, auto;
}

.blog-hero h1,
.blog-article-hero h1 {
  letter-spacing: 0;
}

.blog-controls {
  padding: 14px;
  border: 1px solid rgba(214, 223, 239, 0.86);
  border-radius: 28px;
  background: rgba(255, 255, 255, 0.76);
  box-shadow: 0 18px 48px rgba(18, 60, 145, 0.08);
  backdrop-filter: blur(14px);
}

.featured-blog-card,
.blog-card,
.blog-bottom-cta,
.blog-cta-card,
.blog-article-body {
  border-color: rgba(186, 202, 226, 0.82);
}

.featured-blog-card {
  position: relative;
  overflow: hidden;
}

.featured-blog-card::before {
  content: "";
  position: absolute;
  inset: 22px auto 22px 0;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--blue-2), var(--cyan), var(--purple));
}

.blog-card {
  min-height: 330px;
}

.blog-card h2 {
  color: #0b1736;
}

.blog-article-page {
  background:
    linear-gradient(180deg, rgba(247, 250, 255, 0.98), #fff 34%),
    radial-gradient(circle at 92% 2%, rgba(105, 216, 242, 0.1), transparent 26%);
}

.blog-article-layout {
  grid-template-columns: minmax(190px, 236px) minmax(0, 930px);
}

.blog-toc {
  border-radius: 24px;
}

.blog-toc a {
  padding: 7px 0;
  border-bottom: 1px solid rgba(214, 223, 239, 0.7);
}

.blog-toc a:last-child {
  border-bottom: 0;
}

.blog-article-body {
  position: relative;
  overflow: hidden;
}

.blog-article-body::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: linear-gradient(90deg, var(--blue-2), var(--cyan), var(--purple));
}

.blog-article-body section {
  position: relative;
}

.blog-article-body section + section {
  padding-top: clamp(26px, 4vw, 42px);
  border-top: 1px solid rgba(214, 223, 239, 0.78);
}

.blog-article-body h2 {
  color: #0b1736;
}

.blog-article-body h3 {
  color: #123c91;
}

.blog-article-body ul {
  margin: 0;
  padding-left: 19px;
}

.blog-article-body li {
  margin: 8px 0;
  color: #34445f;
  font-size: 16px;
  line-height: 1.6;
}

.blog-action-list,
.blog-example-block,
.blog-inline-cta {
  margin-top: 18px;
}

.blog-action-list {
  padding: 18px 20px;
  border: 1px solid rgba(214, 223, 239, 0.9);
  border-radius: 22px;
  background: #f8fbff;
}

.blog-action-list h3,
.blog-example-block h3,
.blog-inline-cta h3 {
  margin-top: 0;
}

.blog-example-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.blog-example-card {
  min-width: 0;
  padding: 18px;
  border: 1px solid rgba(214, 223, 239, 0.9);
  border-radius: 20px;
  background: #fff;
}

.blog-example-card span {
  display: inline-flex;
  margin-bottom: 10px;
  padding: 5px 9px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 900;
}

.blog-example-card p {
  color: #2f405a;
}

.blog-example-card.is-bad {
  background: linear-gradient(180deg, rgba(255, 247, 247, 0.92), #fff);
}

.blog-example-card.is-bad span {
  color: #9f1239;
  background: #ffe4e6;
}

.blog-example-card.is-good {
  background: linear-gradient(180deg, rgba(240, 253, 250, 0.94), #fff);
}

.blog-example-card.is-good span {
  color: #0f766e;
  background: #ccfbf1;
}

.blog-inline-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: clamp(18px, 2.4vw, 24px);
  border: 1px solid rgba(31, 105, 213, 0.18);
  border-radius: 24px;
  background:
    radial-gradient(circle at 8% 20%, rgba(105, 216, 242, 0.18), transparent 34%),
    linear-gradient(135deg, #f9fbff, #eef5ff);
  box-shadow: 0 14px 38px rgba(18, 60, 145, 0.09);
}

.blog-inline-cta p {
  max-width: 620px;
}

.blog-article-body .blog-inline-cta .primary-button,
:root[data-theme="dark"] .blog-article-body .blog-inline-cta .primary-button {
  color: #fff;
}

.blog-bottom-cta,
.blog-cta-card {
  background:
    linear-gradient(90deg, rgba(31, 105, 213, 0.08) 1px, transparent 1px),
    radial-gradient(circle at 12% 22%, rgba(105, 216, 242, 0.18), transparent 32%),
    radial-gradient(circle at 92% 18%, rgba(155, 124, 247, 0.14), transparent 30%),
    linear-gradient(135deg, #ffffff, #f5f8ff);
  background-size: 28px 28px, auto, auto, auto;
}

@media (max-width: 980px) {
  .blog-article-layout {
    grid-template-columns: 1fr;
  }

  .blog-toc {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .blog-toc span {
    grid-column: 1 / -1;
  }
}

@media (max-width: 720px) {
  .blog-controls,
  .blog-example-grid,
  .blog-inline-cta {
    grid-template-columns: 1fr;
  }

  .blog-inline-cta {
    display: grid;
  }

.blog-inline-cta .primary-button {
    width: 100%;
  }

  .blog-toc {
    grid-template-columns: 1fr;
  }

  .blog-article-body li {
    font-size: 15.5px;
  }
}

/* About page */
.about-shell {
  background:
    linear-gradient(180deg, rgba(247, 250, 255, 0.98), #ffffff 38%),
    linear-gradient(135deg, rgba(31, 105, 213, 0.08), rgba(155, 124, 247, 0.06));
}

.about-page {
  display: grid;
  gap: clamp(34px, 5vw, 70px);
  padding: clamp(34px, 5vw, 72px) var(--page-x) clamp(44px, 6vw, 84px);
}

.about-hero,
.about-grid,
.about-help-section,
.about-final-cta {
  width: min(100%, 1180px);
  margin: 0 auto;
}

.about-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
  gap: clamp(28px, 5vw, 64px);
  align-items: center;
}

.about-hero-copy {
  display: grid;
  gap: 18px;
}

.about-hero-copy h1 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(42px, 6.2vw, 78px);
  line-height: 0.98;
  letter-spacing: 0;
}

.about-hero-copy p {
  max-width: 760px;
  margin: 0;
  color: #53647f;
  font-size: clamp(18px, 1.8vw, 23px);
  line-height: 1.58;
}

.about-hero-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 4px;
}

.about-hero-tags span {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  padding: 0 13px;
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 999px;
  color: #173f91;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 12px 28px rgba(18, 60, 145, 0.07);
  font-size: 12.5px;
  font-weight: 900;
}

.about-visual {
  position: relative;
  min-height: 360px;
  border: 1px solid rgba(203, 215, 235, 0.9);
  border-radius: 30px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(239, 246, 255, 0.9)),
    linear-gradient(135deg, rgba(31, 105, 213, 0.1), rgba(155, 124, 247, 0.08));
  box-shadow: 0 30px 86px rgba(18, 60, 145, 0.14);
  overflow: hidden;
}

.about-document-panel,
.about-signal-panel {
  position: absolute;
  border: 1px solid rgba(31, 105, 213, 0.12);
  border-radius: 22px;
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 20px 54px rgba(18, 60, 145, 0.12);
  backdrop-filter: blur(16px);
}

.about-document-panel {
  inset: 38px 52px 68px 38px;
  display: grid;
  gap: 14px;
  align-content: start;
  padding: 24px;
}

.about-document-panel b,
.about-document-panel i,
.about-document-panel span,
.about-signal-panel span {
  display: block;
  border-radius: 999px;
}

.about-document-panel b {
  width: 52%;
  height: 18px;
  background: #123c91;
}

.about-document-panel i {
  height: 11px;
  background: #d9e5f7;
}

.about-document-panel i:nth-of-type(1) {
  width: 88%;
}

.about-document-panel i:nth-of-type(2) {
  width: 72%;
}

.about-document-panel i:nth-of-type(3) {
  width: 62%;
}

.about-document-panel span {
  width: 44%;
  height: 12px;
  margin-top: 18px;
  background: linear-gradient(90deg, var(--blue), var(--cyan));
}

.about-signal-panel {
  right: 30px;
  bottom: 28px;
  width: min(48%, 210px);
  padding: 18px;
}

.about-signal-panel strong {
  display: block;
  margin-bottom: 12px;
  color: #123c91;
  font-size: 13px;
  font-weight: 950;
}

.about-signal-panel span {
  height: 9px;
  margin-top: 9px;
  background: #dbe7f8;
}

.about-signal-panel span:last-child {
  width: 68%;
  background: linear-gradient(90deg, var(--blue-2), var(--purple));
}

.about-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.about-info-card,
.about-help-card,
.about-final-cta {
  border: 1px solid rgba(203, 215, 235, 0.86);
  background: rgba(255, 255, 255, 0.88);
  box-shadow:
    0 24px 70px rgba(18, 60, 145, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(14px);
}

.about-info-card {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: clamp(22px, 3vw, 32px);
  border-radius: 24px;
}

.about-info-card h2,
.about-help-card h3,
.about-final-cta h2 {
  margin: 0;
  color: var(--ink);
  letter-spacing: 0;
}

.about-info-card p,
.about-help-card p,
.about-final-cta p {
  margin: 0;
  color: #52627e;
  line-height: 1.62;
}

.about-info-card.is-notice {
  border-color: rgba(31, 105, 213, 0.2);
  background: linear-gradient(135deg, rgba(248, 251, 255, 0.92), rgba(242, 247, 255, 0.9));
}

.about-help-section {
  display: grid;
  gap: 22px;
}

.about-help-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.about-help-card {
  display: grid;
  gap: 12px;
  min-width: 0;
  padding: 22px;
  border-radius: 22px;
}

.about-help-card .icon {
  width: 22px;
  height: 22px;
  color: var(--blue-2);
}

.about-final-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: clamp(24px, 3.2vw, 36px);
  border-radius: 28px;
  background:
    linear-gradient(135deg, rgba(239, 247, 255, 0.95), rgba(247, 244, 255, 0.92)),
    rgba(255, 255, 255, 0.9);
}

.about-final-cta > div:first-child {
  display: grid;
  gap: 8px;
  max-width: 680px;
}

.about-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: flex-end;
}

:root[data-theme="dark"] .about-shell,
:root[data-theme="dark"] .about-page {
  background:
    linear-gradient(180deg, rgba(8, 18, 40, 0.98), rgba(8, 18, 40, 0.94)),
    linear-gradient(135deg, rgba(31, 105, 213, 0.12), rgba(155, 124, 247, 0.1));
}

:root[data-theme="dark"] .about-hero-copy p,
:root[data-theme="dark"] .about-info-card p,
:root[data-theme="dark"] .about-help-card p,
:root[data-theme="dark"] .about-final-cta p {
  color: var(--dark-muted);
}

:root[data-theme="dark"] .about-hero-tags span,
:root[data-theme="dark"] .about-visual,
:root[data-theme="dark"] .about-document-panel,
:root[data-theme="dark"] .about-signal-panel,
:root[data-theme="dark"] .about-info-card,
:root[data-theme="dark"] .about-help-card,
:root[data-theme="dark"] .about-final-cta {
  border-color: rgba(120, 150, 210, 0.28);
  background: rgba(16, 27, 52, 0.72);
  box-shadow: 0 26px 76px rgba(0, 0, 0, 0.24);
}

:root[data-theme="dark"] .about-document-panel b,
:root[data-theme="dark"] .about-signal-panel strong {
  color: #dbeafe;
}

:root[data-theme="dark"] .about-document-panel b {
  background: #dbeafe;
}

:root[data-theme="dark"] .about-document-panel i,
:root[data-theme="dark"] .about-signal-panel span {
  background: rgba(148, 163, 184, 0.24);
}

@media (max-width: 900px) {
  .about-hero,
  .about-grid,
  .about-help-grid,
  .about-final-cta {
    grid-template-columns: 1fr;
  }

  .about-final-cta {
    display: grid;
  }

  .about-final-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 620px) {
  .about-visual {
    min-height: 290px;
  }

  .about-document-panel {
    inset: 24px 28px 68px 24px;
  }

  .about-signal-panel {
    right: 18px;
    bottom: 18px;
    width: 58%;
  }

  .about-final-actions,
  .about-final-actions .primary-button,
  .about-final-actions .secondary-button {
    width: 100%;
  }
}

:root[data-theme="dark"] .blog-page,
:root[data-theme="dark"] .blog-article-page {
  background:
    linear-gradient(180deg, rgba(8, 18, 40, 0.98), rgba(8, 18, 40, 0.94)),
    radial-gradient(circle at 10% 0%, rgba(105, 216, 242, 0.08), transparent 30%);
}

:root[data-theme="dark"] .blog-action-list,
:root[data-theme="dark"] .blog-example-card,
:root[data-theme="dark"] .blog-inline-cta,
:root[data-theme="dark"] .blog-controls {
  border-color: rgba(128, 151, 184, 0.32);
  background: rgba(15, 25, 48, 0.92);
}

:root[data-theme="dark"] .blog-article-body h2,
:root[data-theme="dark"] .blog-card h2 {
  color: #f8fbff;
}

:root[data-theme="dark"] .blog-article-body h3 {
  color: #8ee8f7;
}

:root[data-theme="dark"] .blog-article-body li,
:root[data-theme="dark"] .blog-example-card p {
  color: #c6d3e8;
}

:root[data-theme="dark"] .blog-example-card.is-bad {
  background: rgba(69, 10, 10, 0.28);
}

:root[data-theme="dark"] .blog-example-card.is-good {
  background: rgba(6, 78, 59, 0.24);
}

/* First job resume SEO page */
.first-job-shell {
  background:
    linear-gradient(90deg, rgba(31, 105, 213, 0.045) 1px, transparent 1px),
    linear-gradient(0deg, rgba(31, 105, 213, 0.04) 1px, transparent 1px),
    radial-gradient(circle at 84% 2%, rgba(155, 124, 247, 0.16), transparent 30%),
    radial-gradient(circle at 14% 10%, rgba(105, 216, 242, 0.2), transparent 32%),
    linear-gradient(180deg, rgba(247, 250, 255, 0.98), #ffffff 42%);
  background-size: 84px 84px, 84px 84px, auto, auto, auto;
}

.first-job-page {
  display: grid;
  gap: clamp(34px, 5vw, 68px);
  padding: clamp(28px, 4vw, 56px) var(--page-x) clamp(44px, 6vw, 86px);
}

.first-job-hero,
.first-job-section,
.first-job-content-card,
.first-job-final-cta {
  width: min(100%, 1280px);
  margin: 0 auto;
}

.first-job-hero {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(500px, 0.92fr);
  gap: clamp(30px, 3.8vw, 54px);
  align-items: center;
}

.first-job-hero-copy {
  display: grid;
  gap: 18px;
}

.first-job-hero h1 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(42px, 5.7vw, 74px);
  line-height: 0.98;
  letter-spacing: 0;
}

.first-job-hero p,
.first-job-content-card p,
.first-job-section > p,
.first-job-help p,
.first-job-final-cta p {
  margin: 0;
  color: #52627e;
  line-height: 1.62;
}

.first-job-hero p {
  max-width: 720px;
  font-size: clamp(17px, 1.55vw, 21px);
}

.first-job-hero small {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  max-width: 680px;
  width: fit-content;
  padding: 13px 16px;
  border: 1px solid rgba(31, 105, 213, 0.18);
  border-radius: 18px;
  color: #173f91;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(235, 252, 250, 0.78)),
    rgba(238, 245, 255, 0.88);
  box-shadow:
    0 16px 38px rgba(18, 60, 145, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.82);
  font-size: 14px;
  font-weight: 900;
  line-height: 1.5;
}

.first-job-hero small::before {
  content: "";
  flex: 0 0 auto;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, #1f69d5, #18a889);
  box-shadow: 0 0 0 6px rgba(31, 105, 213, 0.1);
}

.first-job-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.first-job-content-card,
.first-job-card,
.first-job-example-grid article,
.first-job-skills-grid article,
.first-job-help,
.first-job-final-cta,
.first-job-faq-list details {
  border: 1px solid rgba(203, 215, 235, 0.86);
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.96), rgba(247, 251, 255, 0.88)),
    rgba(255, 255, 255, 0.9);
  box-shadow:
    0 28px 82px rgba(18, 60, 145, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(14px);
}

.first-job-real-preview {
  position: relative;
  display: grid;
  justify-self: center;
  justify-items: center;
  width: fit-content;
  max-width: 100%;
  margin: 0;
  gap: 10px;
  padding: 0;
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}

.first-job-real-preview::before {
  content: "";
  position: absolute;
  inset: 5% -7% 3% 8%;
  z-index: -1;
  border-radius: 34px;
  background: linear-gradient(135deg, rgba(31, 105, 213, 0.18), rgba(155, 124, 247, 0.2));
  filter: blur(26px);
}

.first-job-real-preview img {
  display: block;
  width: auto;
  max-width: 100%;
  height: min(82svh, 820px);
  max-height: none;
  object-fit: contain;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: 0 30px 82px rgba(18, 60, 145, 0.28);
}

.first-job-real-preview figcaption {
  color: #123c91;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: 0.08em;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
}

.first-job-real-preview.is-inline {
  width: fit-content;
  max-width: 100%;
}

.first-job-real-preview.is-inline img {
  width: auto;
  max-width: 100%;
  height: min(70svh, 680px);
  max-height: none;
}

.first-job-content-card h2,
.first-job-card h3,
.first-job-skills-grid h3,
.first-job-help h2,
.first-job-help h3,
.first-job-final-cta h2 {
  margin: 0;
  color: var(--ink);
  letter-spacing: 0;
}

.first-job-content-card {
  position: relative;
  display: grid;
  gap: 12px;
  padding: clamp(28px, 3.8vw, 46px);
  overflow: hidden;
  border-radius: 30px;
}

.first-job-content-card::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, #1f69d5, #18a889, #8a6bf1);
}

.first-job-content-card h2 {
  font-size: clamp(28px, 3vw, 42px);
  line-height: 1.08;
}

.first-job-section {
  display: grid;
  gap: 22px;
}

.first-job-section .section-heading {
  max-width: 860px;
}

.first-job-section .section-heading h2 {
  margin: 0;
  font-size: clamp(34px, 4.4vw, 64px);
  line-height: 1.02;
  letter-spacing: 0;
}

.first-job-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.first-job-card {
  position: relative;
  display: grid;
  gap: 16px;
  min-width: 0;
  min-height: 230px;
  padding: 28px;
  overflow: hidden;
  border-radius: 26px;
}

.first-job-card::before,
.first-job-example-grid article::before,
.first-job-skills-grid article::before,
.first-job-help-grid article::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(135deg, rgba(31, 105, 213, 0.11), transparent 34%),
    radial-gradient(circle at 100% 0%, rgba(155, 124, 247, 0.16), transparent 34%);
  opacity: 0.9;
}

.first-job-card::after {
  content: "";
  position: absolute;
  right: -36px;
  bottom: -46px;
  width: 132px;
  height: 132px;
  border-radius: 999px;
  background: rgba(105, 216, 242, 0.14);
}

.first-job-card > * {
  position: relative;
  z-index: 1;
}

.first-job-card .icon,
.first-job-help-grid .icon {
  width: 40px;
  height: 40px;
  padding: 9px;
  border: 1px solid rgba(31, 105, 213, 0.16);
  border-radius: 14px;
  color: #ffffff;
  background: linear-gradient(135deg, #1f69d5, #18a889);
  box-shadow: 0 14px 34px rgba(31, 105, 213, 0.2);
}

.first-job-card p,
.first-job-example-grid p,
.first-job-objective-list p,
.first-job-faq-list p {
  margin: 0;
  color: #52627e;
  line-height: 1.58;
}

.first-job-example-grid,
.first-job-objective-list {
  display: grid;
  gap: 14px;
}

.first-job-example-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.first-job-example-grid article {
  position: relative;
  display: grid;
  gap: 14px;
  padding: 24px;
  overflow: hidden;
  border-radius: 24px;
}

.first-job-example-grid span {
  position: relative;
  z-index: 1;
  display: inline-flex;
  width: 38px;
  height: 38px;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  color: #ffffff;
  background: linear-gradient(135deg, #123c91, #6b63f6);
  box-shadow: 0 14px 28px rgba(31, 105, 213, 0.18);
  font-size: 12px;
  font-weight: 950;
}

.first-job-example-grid p {
  position: relative;
  z-index: 1;
}

.first-job-examples > .secondary-button {
  position: relative;
  justify-self: center;
  min-width: min(100%, 520px);
  min-height: 58px;
  padding: 0 34px;
  overflow: hidden;
  border: 1px solid rgba(142, 232, 247, 0.48);
  border-radius: 999px;
  color: #ffffff;
  background:
    linear-gradient(135deg, rgba(31, 105, 213, 0.98), rgba(24, 168, 137, 0.92) 52%, rgba(138, 107, 241, 0.96)),
    #1f69d5;
  box-shadow:
    0 22px 54px rgba(31, 105, 213, 0.24),
    0 8px 20px rgba(24, 168, 137, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.28);
  font-size: 16px;
  font-weight: 950;
}

.first-job-examples > .secondary-button::before {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.18), transparent 38%, rgba(255, 255, 255, 0.14));
  pointer-events: none;
}

.first-job-examples > .secondary-button::after {
  content: "→";
  position: relative;
  z-index: 1;
  margin-left: 12px;
  font-size: 20px;
  line-height: 1;
}

.first-job-examples > .secondary-button:hover {
  color: #ffffff;
  border-color: rgba(142, 232, 247, 0.72);
  background:
    linear-gradient(135deg, rgba(21, 91, 203, 1), rgba(18, 151, 124, 0.98) 52%, rgba(121, 90, 234, 1)),
    #1f69d5;
  box-shadow:
    0 28px 64px rgba(31, 105, 213, 0.3),
    0 10px 24px rgba(24, 168, 137, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.32);
  transform: translateY(-1px);
}

.first-job-objective-list p {
  position: relative;
  padding: 20px 22px 20px 28px;
  border: 1px solid rgba(157, 180, 220, 0.7);
  border-radius: 22px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(240, 247, 255, 0.9)),
    rgba(248, 251, 255, 0.92);
  box-shadow: 0 16px 40px rgba(18, 60, 145, 0.08);
}

.first-job-objective-list p::before {
  content: "";
  position: absolute;
  inset: 18px auto 18px 0;
  width: 4px;
  border-radius: 999px;
  background: linear-gradient(180deg, #1f69d5, #18a889);
}

.first-job-skills-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.first-job-skills-grid article {
  position: relative;
  display: grid;
  gap: 20px;
  min-height: 270px;
  padding: 32px;
  overflow: hidden;
  border-color: rgba(136, 163, 213, 0.7);
  border-radius: 30px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(239, 247, 255, 0.9)),
    radial-gradient(circle at 100% 0%, rgba(138, 107, 241, 0.18), transparent 34%);
}

.first-job-skills-grid article > * {
  position: relative;
  z-index: 1;
}

.first-job-skills-grid article::after {
  content: "";
  position: absolute;
  right: 26px;
  top: 28px;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(31, 105, 213, 0.14);
  border-radius: 16px;
  background:
    linear-gradient(135deg, rgba(31, 105, 213, 0.95), rgba(24, 168, 137, 0.84));
  box-shadow: 0 18px 36px rgba(31, 105, 213, 0.2);
}

.first-job-skills-grid article:first-child::after {
  background:
    linear-gradient(135deg, rgba(31, 105, 213, 0.95), rgba(138, 107, 241, 0.86));
}

.first-job-skills-grid h3 {
  max-width: calc(100% - 62px);
  font-size: clamp(24px, 2vw, 32px);
  line-height: 1.12;
}

.first-job-skills-grid div,
.first-job-avoid-grid,
.first-job-related-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.first-job-skills-grid span,
.first-job-avoid-grid span,
.first-job-related-links a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  padding: 0 16px;
  border: 1px solid rgba(31, 105, 213, 0.2);
  border-radius: 999px;
  color: #123c91;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(238, 247, 255, 0.94));
  box-shadow:
    0 12px 28px rgba(18, 60, 145, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
  font-size: 14px;
  font-weight: 900;
}

.first-job-notice,
.first-job-responsible {
  position: relative;
  padding: 20px 22px 20px 56px;
  overflow: hidden;
  border: 1px solid rgba(31, 105, 213, 0.22);
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(238, 245, 255, 0.95), rgba(226, 252, 248, 0.86));
  box-shadow:
    0 18px 44px rgba(18, 60, 145, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.86);
  color: #34445f;
  font-size: 16px;
  font-weight: 900;
}

.first-job-notice::before,
.first-job-responsible::before {
  content: "";
  position: absolute;
  left: 22px;
  top: 50%;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: linear-gradient(135deg, #1f69d5, #18a889);
  box-shadow: 0 0 0 8px rgba(31, 105, 213, 0.1);
  transform: translateY(-50%);
}

.first-job-inline-button {
  justify-self: start;
}

.first-job-section > .first-job-inline-button {
  min-width: min(100%, 430px);
  min-height: 56px;
  justify-content: center;
  border-color: rgba(142, 232, 247, 0.46);
  color: #ffffff;
  background:
    linear-gradient(135deg, #1f69d5, #18a889 54%, #8a6bf1),
    #1f69d5;
  box-shadow:
    0 22px 54px rgba(31, 105, 213, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.28);
  font-size: 16px;
  font-weight: 950;
}

.first-job-section > .first-job-inline-button::after {
  content: "→";
  margin-left: 12px;
  font-size: 19px;
}

.first-job-section > .first-job-inline-button:hover {
  color: #ffffff;
  border-color: rgba(142, 232, 247, 0.72);
  transform: translateY(-1px);
  box-shadow:
    0 28px 64px rgba(31, 105, 213, 0.28),
    inset 0 1px 0 rgba(255, 255, 255, 0.32);
}

.first-job-template-section {
  position: relative;
  grid-template-columns: minmax(0, 0.72fr) minmax(520px, 0.92fr);
  align-items: center;
  gap: clamp(34px, 5vw, 72px);
  padding: clamp(34px, 4.6vw, 58px);
  overflow: hidden;
  border: 1px solid rgba(157, 180, 220, 0.72);
  border-radius: 34px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(237, 247, 255, 0.88)),
    radial-gradient(circle at 84% 50%, rgba(31, 105, 213, 0.12), transparent 34%),
    rgba(255, 255, 255, 0.9);
  box-shadow:
    0 34px 96px rgba(18, 60, 145, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.first-job-template-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(31, 105, 213, 0.045) 1px, transparent 1px),
    linear-gradient(0deg, rgba(31, 105, 213, 0.04) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(90deg, #000, transparent 82%);
}

.first-job-template-section > * {
  position: relative;
  z-index: 1;
}

.first-job-template-section > div:first-child,
.first-job-help > div:first-child,
.first-job-final-cta > div:first-child {
  display: grid;
  gap: 12px;
}

.first-job-template-section > div:first-child {
  gap: 20px;
}

.first-job-template-section h2 {
  margin: 0;
  max-width: 10ch;
  color: var(--ink);
  font-size: clamp(42px, 5.4vw, 74px);
  line-height: 0.98;
  letter-spacing: 0;
}

.first-job-template-section p {
  max-width: 620px;
  margin: 0;
  color: #34445f;
  font-size: clamp(19px, 1.55vw, 24px);
  line-height: 1.42;
}

.first-job-template-section .primary-button {
  width: min(100%, 540px);
  min-height: 58px;
  justify-content: center;
  font-size: 17px;
  box-shadow:
    0 24px 56px rgba(31, 105, 213, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.25);
}

.first-job-template-section .first-job-real-preview.is-inline {
  justify-self: center;
}

.first-job-template-section .first-job-real-preview.is-inline img {
  height: min(78svh, 800px);
}

.first-job-help {
  gap: 22px;
  padding: clamp(24px, 3.4vw, 38px);
  border-radius: 28px;
}

.first-job-help-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.first-job-help-grid article {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 18px;
  overflow: hidden;
  border: 1px solid rgba(203, 215, 235, 0.72);
  border-radius: 20px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.95), rgba(240, 247, 255, 0.88));
}

.first-job-help-grid article > * {
  position: relative;
  z-index: 1;
}

.first-job-final-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;
  padding: clamp(24px, 3.2vw, 38px);
  border-radius: 30px;
  background:
    linear-gradient(135deg, rgba(224, 241, 255, 0.96), rgba(245, 241, 255, 0.94)),
    rgba(255, 255, 255, 0.9);
}

.first-job-faq-list {
  display: grid;
  gap: 12px;
}

.first-job-faq-list details {
  padding: 18px 20px;
  border-radius: 18px;
}

.first-job-faq-list summary {
  cursor: pointer;
  color: var(--ink);
  font-weight: 900;
}

.first-job-faq-list p {
  margin-top: 10px;
}

:root[data-theme="dark"] .first-job-shell,
:root[data-theme="dark"] .first-job-page {
  background:
    radial-gradient(circle at 15% 12%, rgba(105, 216, 242, 0.1), transparent 30%),
    radial-gradient(circle at 82% 8%, rgba(155, 124, 247, 0.11), transparent 28%),
    linear-gradient(180deg, #081124 0%, #0c1730 55%, #081124 100%);
}

:root[data-theme="dark"] .first-job-hero p,
:root[data-theme="dark"] .first-job-hero small,
:root[data-theme="dark"] .first-job-content-card p,
:root[data-theme="dark"] .first-job-section > p,
:root[data-theme="dark"] .first-job-help p,
:root[data-theme="dark"] .first-job-final-cta p,
:root[data-theme="dark"] .first-job-card p,
:root[data-theme="dark"] .first-job-example-grid p,
:root[data-theme="dark"] .first-job-objective-list p,
:root[data-theme="dark"] .first-job-faq-list p {
  color: var(--dark-muted);
}

:root[data-theme="dark"] .first-job-content-card,
:root[data-theme="dark"] .first-job-card,
:root[data-theme="dark"] .first-job-example-grid article,
:root[data-theme="dark"] .first-job-skills-grid article,
:root[data-theme="dark"] .first-job-help,
:root[data-theme="dark"] .first-job-final-cta,
:root[data-theme="dark"] .first-job-faq-list details,
:root[data-theme="dark"] .first-job-objective-list p,
:root[data-theme="dark"] .first-job-help-grid article,
:root[data-theme="dark"] .first-job-notice,
:root[data-theme="dark"] .first-job-responsible {
  border-color: rgba(120, 150, 210, 0.28);
  background: rgba(16, 27, 52, 0.76);
  box-shadow: 0 26px 76px rgba(0, 0, 0, 0.24);
}

:root[data-theme="dark"] .first-job-skills-grid span,
:root[data-theme="dark"] .first-job-avoid-grid span,
:root[data-theme="dark"] .first-job-related-links a {
  border-color: rgba(105, 216, 242, 0.16);
  color: #d9e8ff;
  background: rgba(105, 216, 242, 0.08);
}

:root[data-theme="dark"] .first-job-real-preview {
  background: transparent;
  box-shadow: none;
}

:root[data-theme="dark"] .first-job-real-preview img {
  border-color: rgba(120, 150, 210, 0.32);
  box-shadow: 0 28px 76px rgba(0, 0, 0, 0.36);
}

:root[data-theme="dark"] .first-job-real-preview figcaption {
  color: #8ee8f7;
}

@media (max-height: 940px) and (min-width: 981px) {
  .first-job-page {
    gap: clamp(28px, 4vw, 54px);
    padding-top: clamp(22px, 3vh, 38px);
  }

  .first-job-hero {
    grid-template-columns: minmax(0, 0.98fr) minmax(440px, 0.78fr);
    gap: clamp(26px, 3.6vw, 48px);
  }

  .first-job-hero-copy {
    gap: 14px;
  }

  .first-job-hero h1 {
    max-width: 11ch;
    font-size: clamp(46px, 4.8vw, 66px);
  }

  .first-job-hero p {
    max-width: 650px;
    font-size: clamp(16px, 1.35vw, 19px);
    line-height: 1.52;
  }

  .first-job-real-preview {
    width: fit-content;
    max-width: 100%;
    gap: 8px;
    padding: 0;
    border-radius: 0;
  }

  .first-job-real-preview img {
    width: auto;
    max-width: 100%;
    height: min(82svh, 760px);
    max-height: none;
    border-radius: 0;
  }

  .first-job-real-preview figcaption {
    font-size: 11px;
  }

  .first-job-template-section {
    grid-template-columns: minmax(0, 0.76fr) minmax(460px, 0.86fr);
    gap: clamp(28px, 3.8vw, 54px);
    padding: clamp(28px, 3.6vw, 44px);
  }

  .first-job-template-section h2 {
    font-size: clamp(40px, 4.4vw, 62px);
  }

  .first-job-template-section p {
    font-size: clamp(17px, 1.35vw, 21px);
  }

  .first-job-template-section .first-job-real-preview.is-inline img {
    height: min(76svh, 700px);
  }
}

@media (max-height: 860px) and (min-width: 981px) {
  .first-job-hero {
    grid-template-columns: minmax(0, 0.94fr) minmax(460px, 0.78fr);
  }

  .first-job-real-preview {
    width: fit-content;
    max-width: 100%;
    padding: 0;
  }

  .first-job-real-preview img {
    width: auto;
    max-width: 100%;
    height: min(80svh, 690px);
    max-height: none;
  }

  .first-job-template-section {
    grid-template-columns: minmax(0, 0.82fr) minmax(430px, 0.8fr);
    padding: 28px;
  }

  .first-job-template-section h2 {
    font-size: clamp(38px, 4vw, 56px);
  }

  .first-job-template-section .first-job-real-preview.is-inline img {
    height: min(74svh, 650px);
  }
}

@media (max-height: 780px) and (min-width: 981px) {
  .first-job-page {
    padding-top: 18px;
  }

  .first-job-hero {
    grid-template-columns: minmax(0, 0.98fr) minmax(430px, 0.72fr);
    gap: clamp(22px, 3vw, 40px);
  }

  .first-job-hero h1 {
    font-size: clamp(42px, 4.4vw, 60px);
  }

  .first-job-real-preview {
    width: fit-content;
    max-width: 100%;
    gap: 8px;
    padding: 0;
    border-radius: 0;
  }

  .first-job-real-preview img {
    width: auto;
    max-width: 100%;
    height: min(78svh, 620px);
    max-height: none;
    border-radius: 0;
  }

  .first-job-real-preview figcaption {
    font-size: 10.5px;
  }

  .first-job-template-section {
    grid-template-columns: minmax(0, 0.88fr) minmax(390px, 0.74fr);
    gap: clamp(22px, 3vw, 38px);
    padding: 24px;
  }

  .first-job-template-section > div:first-child {
    gap: 14px;
  }

  .first-job-template-section h2 {
    font-size: clamp(34px, 3.7vw, 50px);
  }

  .first-job-template-section p {
    font-size: 16px;
    line-height: 1.38;
  }

  .first-job-template-section .primary-button {
    min-height: 50px;
    font-size: 15px;
  }

  .first-job-template-section .first-job-real-preview.is-inline img {
    height: min(72svh, 590px);
  }

  .first-job-skills-grid article {
    min-height: 230px;
    padding: 26px;
  }

  .first-job-skills-grid h3 {
    font-size: clamp(22px, 1.8vw, 28px);
  }

  .first-job-skills-grid span {
    min-height: 36px;
    padding: 0 13px;
    font-size: 13px;
  }
}

@media (max-width: 980px) {
  .first-job-hero,
  .first-job-template-section,
  .first-job-final-cta {
    grid-template-columns: 1fr;
  }

  .first-job-hero {
    align-items: start;
  }

  .first-job-real-preview {
    justify-self: start;
    width: fit-content;
    max-width: 100%;
  }

  .first-job-real-preview img {
    height: auto;
    max-height: 640px;
  }

  .first-job-template-section {
    padding: clamp(24px, 5vw, 38px);
  }

  .first-job-template-section h2 {
    max-width: 12ch;
  }

  .first-job-template-section .first-job-real-preview.is-inline {
    justify-self: start;
  }

  .first-job-card-grid,
  .first-job-example-grid,
  .first-job-help-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .first-job-final-cta {
    display: grid;
  }
}

@media (max-width: 640px) {
  .first-job-card-grid,
  .first-job-example-grid,
  .first-job-skills-grid,
  .first-job-help-grid,
  .first-job-actions,
  .first-job-actions .primary-button,
  .first-job-actions .secondary-button {
    width: 100%;
  }

  .first-job-page {
    padding-top: 24px;
  }

  .first-job-hero h1 {
    font-size: clamp(38px, 12vw, 50px);
  }

  .first-job-real-preview,
  .first-job-real-preview.is-inline {
    width: fit-content;
    max-width: 100%;
    padding: 0;
    border-radius: 0;
  }

  .first-job-real-preview img,
  .first-job-real-preview.is-inline img {
    width: 100%;
    height: auto;
    max-height: 560px;
  }

  .first-job-skills-grid article {
    min-height: 0;
    padding: 24px;
  }

  .first-job-skills-grid article::after {
    right: 20px;
    top: 22px;
  }

  .first-job-notice,
  .first-job-responsible {
    padding: 18px 18px 18px 48px;
    font-size: 14px;
  }
}
