.technical-profile-frame {
  width: 210mm;
  min-block-size: 297mm;
  margin: 0 auto;
  transform-origin: top left;
  transition: transform .18s ease;
}

.technical-profile-document {
  --technical-accent: var(--document-accent, var(--cv-accent-red));
  --technical-ink: #f1f6f8;
  --technical-body: #c1cdd2;
  --technical-muted: #8da0a9;
  --technical-rule: rgba(155, 193, 208, .24);
  --technical-soft: rgba(12, 45, 60, .5);
  width: 210mm;
  min-block-size: 297mm;
  box-sizing: border-box;
  margin: 0;
  padding: 14mm 17mm 16mm;
  background:
    radial-gradient(circle at 92% 4%, color-mix(in srgb, var(--technical-accent) 13%, transparent), transparent 34%),
    linear-gradient(145deg, #071018 0%, #0a151d 54%, #050a0f 100%);
  color: var(--technical-body);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 9.6pt;
  line-height: 1.42;
  border: 1px solid rgba(150, 195, 211, .2);
  box-shadow: 0 18px 55px rgba(0, 0, 0, .42), 0 0 0 1px rgba(19, 38, 49, .2);
}

.technical-profile-document[data-theme="blue"] { --technical-accent: var(--document-accent, var(--cv-accent-blue)); }
.technical-profile-document[data-theme="gold"] { --technical-accent: var(--document-accent, var(--cv-accent-gold)); }
.technical-profile-document[data-theme="red"] { --technical-accent: var(--document-accent, var(--cv-accent-red)); }
.technical-profile-document h1, .technical-profile-document h2, .technical-profile-document h3, .technical-profile-document p, .technical-profile-document ul, .technical-profile-document address { margin-top: 0; }
.technical-profile-header { padding-bottom: 5mm; border-bottom: 2px solid var(--technical-accent); }
.technical-document-kicker { margin-bottom: 2mm; color: var(--technical-accent); font-size: 8pt; font-weight: 800; letter-spacing: .16em; }
.technical-profile-header h1 { margin-bottom: 1.5mm; color: var(--technical-ink); font-size: 26pt; font-weight: 800; letter-spacing: -.04em; line-height: 1.05; }
.technical-target-title { margin-bottom: 1mm; color: var(--technical-accent); font-size: 14pt; font-weight: 750; line-height: 1.2; }
.technical-secondary-positioning { margin-bottom: 0; color: var(--technical-muted); font-size: 9.8pt; }
.technical-contact { margin: 5mm 0 0; padding: 0 0 4mm; border-bottom: 1px solid var(--technical-rule); font-style: normal; }
.technical-contact p { margin-bottom: 1mm; }
.technical-contact p:last-child { margin-bottom: 0; }
.technical-contact strong { display: inline-block; min-width: 24mm; color: var(--technical-ink); }
.technical-profile-document a { color: var(--technical-accent); text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--technical-accent) 55%, transparent); overflow-wrap: anywhere; }
.technical-profile-document section { margin-top: 5mm; }
.technical-profile-document section > h2 { margin-bottom: 2.5mm; padding-bottom: 1.2mm; border-bottom: 1px solid var(--technical-rule); color: var(--technical-accent); font-size: 12pt; font-weight: 800; letter-spacing: .035em; line-height: 1.2; break-after: avoid; page-break-after: avoid; }
.technical-profile-document h3 { margin-bottom: 1mm; color: var(--technical-ink); font-size: 10.5pt; font-weight: 750; line-height: 1.25; break-after: avoid; page-break-after: avoid; }
.technical-profile-document section > p { margin-bottom: 2mm; }
.technical-profile-document ul { margin: 0 0 2.5mm; padding-left: 5mm; }
.technical-profile-document li { margin-bottom: .7mm; }
.technical-profile-document li:last-child { margin-bottom: 0; }
.technical-focus-list { display: block; }
.technical-focus-item { margin: 0 0 2.5mm; padding-left: 4mm; border-left: 1mm solid var(--technical-accent); background: var(--technical-soft); break-inside: avoid; page-break-inside: avoid; }
.technical-focus-item p { margin-bottom: 0; }
.technical-entry-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 8mm; break-inside: avoid; page-break-inside: avoid; }
.technical-entry-heading h3 { margin-bottom: 1mm; }
.technical-role { margin-bottom: 1mm; color: var(--technical-accent); font-weight: 750; }
.technical-period { flex: 0 0 auto; margin-bottom: 1mm; color: var(--technical-ink); text-align: right; }
.technical-period strong { font-weight: 700; }
.technical-specialisation, .technical-concurrent { margin-bottom: 1mm; color: var(--technical-muted); }
.technical-concurrent { font-style: italic; }
.technical-experience { margin: 0 0 4.2mm; break-inside: auto; page-break-inside: auto; }
.technical-experience--compact { break-inside: avoid; page-break-inside: avoid; }
.technical-experience:last-child, .technical-project:last-child { margin-bottom: 0; }
.technical-project { margin: 0 0 4mm; border-top: 1px solid var(--technical-rule); break-inside: auto; page-break-inside: auto; }
.technical-project--compact { break-inside: avoid; page-break-inside: avoid; }
.technical-technologies, .technical-project-url { color: var(--technical-muted); }
.technical-capability-group { margin-bottom: 2.5mm; break-inside: auto; page-break-inside: auto; }
.technical-capability-group--compact { break-inside: avoid; page-break-inside: avoid; }
.technical-capability-group h3 { margin-bottom: 1mm; color: var(--technical-accent); font-size: 10pt; }
.technical-skill-name { display: inline; }
.technical-skill-classification { display: inline; margin-left: 2mm; color: var(--technical-accent); font-size: 8.7pt; font-style: italic; }
.technical-exposure-capability { margin-bottom: 2.5mm; }
.technical-profile-editable { border-bottom: 1px dashed color-mix(in srgb, var(--technical-accent) 65%, transparent); outline: none; cursor: text; }
.technical-profile-editable:focus { background: color-mix(in srgb, var(--technical-accent) 12%, transparent); box-shadow: 0 0 0 2px color-mix(in srgb, var(--technical-accent) 18%, transparent); border-bottom-style: solid; }
.technical-profile-editable:focus-visible { outline: 2px solid var(--technical-accent); outline-offset: 2px; }
.technical-public-links { padding-left: 0 !important; list-style: none; }
.technical-public-links li { margin-bottom: 1.5mm; }
.technical-public-links li p { margin-bottom: 0; }

@media screen and (max-width: 680px) {
  .technical-profile-frame { margin-left: 0; }
  .technical-profile-document { box-shadow: 0 12px 35px rgba(0, 0, 0, .32); }
  .technical-entry-heading { display: block; }
  .technical-period { text-align: left; }
}

@media print {
  .technical-profile-frame { width: 210mm !important; min-block-size: 0; height: auto !important; margin: 0; transform: none !important; }
  .technical-profile-document { width: 210mm; min-block-size: 297mm; box-shadow: none; }
  .technical-profile-editable { border-bottom: 0; background: transparent; box-shadow: none; outline: 0; cursor: default; }
}
