/* MyPortfolioHub v15 — curated professional document system.
   Application branding is intentionally separate from resume-document palettes. */

/* ---------- shared print/document safeguards ---------- */
.resume-sheet{
  color:#111827;
  background:#fff;
  overflow:visible;
  print-color-adjust:exact;
  -webkit-print-color-adjust:exact;
}
.resume-sheet.page-a4{width:210mm;min-height:297mm;page:mph-a4}
.resume-sheet.page-letter{width:215.9mm;min-height:279.4mm;page:mph-letter}
.resume-sheet .document-entry,
.resume-sheet .reference-grid article{break-inside:avoid-page;page-break-inside:avoid}
.resume-sheet .document-section>h2{break-after:avoid-page;page-break-after:avoid}
.resume-sheet a{overflow-wrap:anywhere}
@page mph-a4{size:A4;margin:0}
@page mph-letter{size:Letter;margin:0}

/* ---------- ATS family ---------- */
.resume-sheet.family-ats{
  display:block;
  padding:14mm 16mm 15mm;
  font-family:Arial,Helvetica,"Liberation Sans",sans-serif;
  font-size:9.4pt;
  line-height:1.4;
  color:#151a21;
}
.resume-sheet.family-ats .resume-main{padding:0}
.resume-sheet.family-ats .document-header{
  margin:0 0 6mm;
  padding:0 0 4mm;
  border:0;
  border-bottom:1.4px solid var(--accent);
  text-align:left;
}
.resume-sheet.family-ats .document-header h1{font-size:24pt;line-height:1;font-weight:700;letter-spacing:-.02em;color:#111827}
.resume-sheet.family-ats .document-header>p{margin:1.6mm 0 2.5mm;color:#293241;font-size:10pt;font-weight:600}
.resume-sheet.family-ats .header-contact{gap:1.5mm 4mm;color:#4b5563;font-size:8pt}
.resume-sheet.family-ats .document-section{margin:0 0 5.5mm;break-inside:auto}
.resume-sheet.family-ats .document-section>h2{
  margin:0 0 2.6mm;
  padding:0 0 1.3mm;
  border:0;
  border-bottom:1px solid #aab2bd;
  color:#151a21;
  font-size:8.1pt;
  line-height:1.2;
  font-weight:700;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.resume-sheet.family-ats .document-entry{margin-bottom:3.8mm}
.resume-sheet.family-ats .entry-heading h3{font-size:9.8pt;color:#111827}
.resume-sheet.family-ats .entry-heading p,.resume-sheet.family-ats .entry-heading time{font-size:8pt;color:#4b5563}
.resume-sheet.family-ats .summary-text,.resume-sheet.family-ats .entry-description,.resume-sheet.family-ats .document-entry ul{font-size:8.8pt;color:#303943}
.resume-sheet.family-ats .main-skill-list{gap:1mm 3mm}
.resume-sheet.family-ats .main-skill-list span{padding:0;border:0;background:transparent;color:#293241;font-size:8.4pt;border-radius:0}
.resume-sheet.family-ats .main-skill-list span:not(:last-child)::after{content:" •";color:#98a1ad}
.resume-sheet.family-ats .reference-grid article{border-left:1px solid #9ca3af}

.resume-sheet.template-ats_compact{padding:11mm 14mm 12mm;font-size:8.8pt;line-height:1.3}
.resume-sheet.template-ats_compact .document-header{margin-bottom:4mm;padding-bottom:3mm}
.resume-sheet.template-ats_compact .document-header h1{font-size:21pt}
.resume-sheet.template-ats_compact .document-section{margin-bottom:3.7mm}
.resume-sheet.template-ats_compact .document-entry{margin-bottom:2.6mm}
.resume-sheet.template-ats_compact .summary-text,.resume-sheet.template-ats_compact .entry-description,.resume-sheet.template-ats_compact .document-entry ul{font-size:8.2pt}

.resume-sheet.template-ats_professional .document-header{border-bottom-width:2px}
.resume-sheet.template-ats_professional .document-section>h2{color:#17324d;border-bottom-color:#b8c6d4}
.resume-sheet.template-ats_professional .entry-heading h3{color:#17324d}

.resume-sheet.template-graphite .document-header{border-bottom-color:#374151}
.resume-sheet.template-graphite .document-section>h2{color:#374151;border-bottom-color:#c9ced5}

.resume-sheet.template-minimal_professional{padding:16mm 18mm 16mm;line-height:1.5}
.resume-sheet.template-minimal_professional .document-header{text-align:center;border-bottom:1px solid #cbd1d7}
.resume-sheet.template-minimal_professional .header-contact{justify-content:center}
.resume-sheet.template-minimal_professional .document-section{margin-bottom:7mm}

/* ---------- corporate / formal family ---------- */
.resume-sheet.family-corporate{
  display:block;
  padding:15mm 18mm 16mm;
  font-family:Georgia,"Times New Roman","Liberation Serif",serif;
  font-size:9.5pt;
  line-height:1.42;
  color:#191919;
}
.resume-sheet.family-corporate .resume-main{padding:0}
.resume-sheet.family-corporate .document-header{margin:0 0 7mm;padding:0 0 5mm;border:0;border-bottom:1px solid var(--accent);text-align:center}
.resume-sheet.family-corporate .document-header h1{font-size:26pt;line-height:1;font-weight:600;letter-spacing:.015em;color:#161616}
.resume-sheet.family-corporate .document-header>p{margin:2mm 0 3mm;color:#40464d;font-family:Arial,Helvetica,sans-serif;font-size:9.5pt;letter-spacing:.08em;text-transform:uppercase}
.resume-sheet.family-corporate .header-contact{justify-content:center;color:#535a61;font-family:Arial,Helvetica,sans-serif;font-size:7.8pt}
.resume-sheet.family-corporate .document-section{margin-bottom:6.3mm;break-inside:auto}
.resume-sheet.family-corporate .document-section>h2{margin:0 0 3mm;padding:0 0 1.5mm;border:0;border-bottom:1px solid #9fa5aa;color:var(--accent);font-family:Arial,Helvetica,sans-serif;font-size:8pt;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.resume-sheet.family-corporate .entry-heading h3{font-size:10.4pt;color:#181818}
.resume-sheet.family-corporate .entry-heading p{font-size:8.3pt;color:#50545a;font-style:italic}
.resume-sheet.family-corporate .entry-heading time{font-family:Arial,Helvetica,sans-serif;font-size:7.8pt;color:#50545a}
.resume-sheet.family-corporate .summary-text,.resume-sheet.family-corporate .entry-description,.resume-sheet.family-corporate .document-entry ul{font-size:9pt;color:#2f3235}
.resume-sheet.family-corporate .main-skill-list span{padding:0 3mm 0 0;border:0;border-right:1px solid #b8b8b8;border-radius:0;background:transparent;color:#303235}
.resume-sheet.family-corporate .main-skill-list span:last-child{border-right:0}

.resume-sheet.template-corporate_navy .document-header{border-top:3px solid #183153;border-bottom:1px solid #7f91a6;padding-top:4mm}
.resume-sheet.template-corporate_navy .document-section>h2{color:#183153;border-bottom-color:#9cafc1}
.resume-sheet.template-traditional_business .document-header{text-align:left;border-bottom:2px solid #3f4852}
.resume-sheet.template-traditional_business .header-contact{justify-content:flex-start}
.resume-sheet.template-traditional_business .document-header>p{text-transform:none;letter-spacing:.02em}
.resume-sheet.template-legal_professional{font-family:"Times New Roman",Times,"Liberation Serif",serif}
.resume-sheet.template-legal_professional .document-header{border-top:1px solid #3a2631;border-bottom:1px solid #3a2631;padding-top:4mm}
.resume-sheet.template-legal_professional .document-header h1{text-transform:uppercase;font-size:23pt;letter-spacing:.055em}
.resume-sheet.template-legal_professional .document-section>h2{color:#3a2631;border-bottom-color:#b7a7ae}

/* ---------- executive family ---------- */
.resume-sheet.family-executive{
  display:block;
  padding:16mm 19mm 17mm;
  color:#25282c;
  background:#fff;
  font-family:Georgia,"Times New Roman","Liberation Serif",serif;
  font-size:9.5pt;
  line-height:1.48;
}
.resume-sheet.family-executive .resume-main{padding:0}
.resume-sheet.family-executive .document-header{margin:0 0 8mm;padding:5mm 3mm;border-top:3px double var(--accent);border-bottom:3px double var(--accent);text-align:center}
.resume-sheet.family-executive .document-header h1{font-size:27pt;font-weight:600;letter-spacing:.045em;color:#242424}
.resume-sheet.family-executive .document-header>p{margin:2mm 0 3mm;color:#4e5661;font-family:Arial,Helvetica,sans-serif;font-size:9pt;letter-spacing:.12em;text-transform:uppercase}
.resume-sheet.family-executive .header-contact{justify-content:center;font-family:Arial,Helvetica,sans-serif;font-size:7.8pt;color:#59616a}
.resume-sheet.family-executive .document-section{margin-bottom:7mm;break-inside:auto}
.resume-sheet.family-executive .document-section>h2{display:flex;align-items:center;gap:3mm;margin:0 0 3.5mm;padding:0;border:0;color:var(--accent);font-family:Arial,Helvetica,sans-serif;font-size:7.8pt;letter-spacing:.16em;white-space:nowrap}
.resume-sheet.family-executive .document-section>h2::before,.resume-sheet.family-executive .document-section>h2::after{content:"";height:1px;flex:1;background:#c5c8cc}
.resume-sheet.family-executive .entry-heading h3{font-size:10.7pt}
.resume-sheet.family-executive .entry-heading p,.resume-sheet.family-executive .entry-heading time,.resume-sheet.family-executive .summary-text,.resume-sheet.family-executive .entry-description,.resume-sheet.family-executive .document-entry ul{font-family:Arial,Helvetica,sans-serif}
.resume-sheet.family-executive .main-skill-list{justify-content:center}
.resume-sheet.family-executive .main-skill-list span{border:1px solid #d0d2d5;background:transparent;border-radius:0;color:#333;padding:1mm 2.5mm}

.resume-sheet.template-ats_executive{padding:14mm 17mm 15mm;font-family:Arial,Helvetica,sans-serif}
.resume-sheet.template-ats_executive .document-header{border-top:0;border-bottom:2px solid #25364a;text-align:left;padding:0 0 4mm}
.resume-sheet.template-ats_executive .document-header h1{font-family:Georgia,"Times New Roman",serif;font-size:25pt;letter-spacing:.01em}
.resume-sheet.template-ats_executive .document-header>p{letter-spacing:.06em;text-transform:none}
.resume-sheet.template-ats_executive .header-contact{justify-content:flex-start}
.resume-sheet.template-ats_executive .document-section>h2{display:block;border-bottom:1px solid #b2bbc5;padding-bottom:1.3mm}
.resume-sheet.template-ats_executive .document-section>h2::before,.resume-sheet.template-ats_executive .document-section>h2::after{display:none}

/* ---------- technical family ---------- */
.resume-sheet.family-technical{
  display:block;
  padding:12.5mm 15mm 14mm;
  font-family:Arial,Helvetica,"Liberation Sans",sans-serif;
  color:#17202a;
  font-size:9pt;
  line-height:1.34;
}
.resume-sheet.family-technical .resume-main{padding:0}
.resume-sheet.family-technical .document-header{margin:0 0 5mm;padding:0 0 3.5mm;border:0;border-bottom:2px solid #1f2937;text-align:left}
.resume-sheet.family-technical .document-header h1{font-size:23pt;line-height:1;font-weight:800;letter-spacing:-.025em;color:#111827}
.resume-sheet.family-technical .document-header>p{margin:1.5mm 0 2mm;color:var(--accent);font-family:Consolas,"Liberation Mono",monospace;font-size:8.5pt;font-weight:700}
.resume-sheet.family-technical .header-contact{color:#4b5563;font-size:7.5pt;gap:1mm 3.5mm}
.resume-sheet.family-technical .document-section{margin-bottom:4.5mm;break-inside:auto}
.resume-sheet.family-technical .document-section>h2{margin:0 0 2.3mm;padding:0 0 1.1mm;border:0;border-bottom:1px solid #d1d5db;color:#111827;font-family:Consolas,"Liberation Mono",monospace;font-size:7.2pt;letter-spacing:.1em}
.resume-sheet.family-technical .document-section>h2::before{content:"// ";color:var(--accent)}
.resume-sheet.family-technical .document-entry{margin-bottom:3.2mm}
.resume-sheet.family-technical .entry-heading h3{font-size:9.5pt}
.resume-sheet.family-technical .entry-heading p,.resume-sheet.family-technical .entry-heading time{font-size:7.6pt;color:#4b5563}
.resume-sheet.family-technical .summary-text,.resume-sheet.family-technical .entry-description,.resume-sheet.family-technical .document-entry ul{font-size:8.2pt;color:#374151}
.resume-sheet.family-technical .tech-list,.resume-sheet.family-technical .main-skill-list span{font-family:Consolas,"Liberation Mono",monospace;color:#253448}
.resume-sheet.family-technical .main-skill-list span{padding:0;border:0;background:transparent;border-radius:0;font-size:7.7pt}
.resume-sheet.family-technical .main-skill-list span:not(:last-child)::after{content:" /";color:#9ca3af}

.resume-sheet.template-software_engineer .document-section>h2::before{content:"<> ";color:#0b6e4f}
.resume-sheet.template-systems_engineer .document-section>h2::before{content:"# ";color:#334e68}
.resume-sheet.template-data_professional .document-section>h2::before{content:":: ";color:#315b7d}
.resume-sheet.template-data_professional .section-skills .main-skill-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5mm 3mm}

/* ---------- academic family ---------- */
.resume-sheet.family-academic{
  display:block;
  padding:13mm 16mm 15mm;
  color:#111827;
  background:#fff;
  font-family:"Times New Roman",Times,"Liberation Serif",serif;
  font-size:9.4pt;
  line-height:1.38;
}
.resume-sheet.family-academic .resume-main{padding:0}
.resume-sheet.family-academic .document-header{margin:0 0 5mm;padding:0 0 4mm;border:0;border-bottom:1.5px solid var(--accent);text-align:left}
.resume-sheet.family-academic .document-header h1{font-size:23pt;line-height:1;font-weight:700;letter-spacing:0}
.resume-sheet.family-academic .document-header>p{margin:1.5mm 0 2.5mm;color:#374151;font-size:10pt;font-style:italic}
.resume-sheet.family-academic .header-contact{font-family:Arial,Helvetica,sans-serif;color:#4b5563;font-size:7.6pt}
.resume-sheet.family-academic .document-section{margin-bottom:4.6mm;break-inside:auto}
.resume-sheet.family-academic .document-section>h2{margin:0 0 2.4mm;padding:0 0 1mm;border:0;border-bottom:1px solid #64748b;color:#1f2937;font-family:Arial,Helvetica,sans-serif;font-size:7.5pt;letter-spacing:.11em}
.resume-sheet.family-academic .document-entry{margin-bottom:3.2mm}
.resume-sheet.family-academic .entry-heading h3{font-size:10.1pt}
.resume-sheet.family-academic .entry-heading p{font-size:8.3pt;color:#374151;font-style:italic}
.resume-sheet.family-academic .entry-heading time{font-family:Arial,Helvetica,sans-serif;font-size:7.4pt;color:#4b5563}
.resume-sheet.family-academic .summary-text,.resume-sheet.family-academic .entry-description,.resume-sheet.family-academic .document-entry ul{font-size:8.8pt;color:#272b30}
.resume-sheet.family-academic .main-skill-list span{padding:0;border:0;background:transparent;border-radius:0;color:#222}

.resume-sheet.template-ats_graduate,.resume-sheet.template-graduate,.resume-sheet.template-internship{padding:14mm 17mm 15mm;font-family:Arial,Helvetica,sans-serif}
.resume-sheet.template-ats_graduate .document-header,.resume-sheet.template-graduate .document-header,.resume-sheet.template-internship .document-header{text-align:left}
.resume-sheet.template-research_cv{font-size:9pt;line-height:1.32}
.resume-sheet.template-research_cv .document-section{margin-bottom:4mm}

/* ---------- sidebar family ---------- */
.resume-sheet.family-sidebar{display:grid;grid-template-columns:60mm minmax(0,1fr);font-family:Arial,Helvetica,"Liberation Sans",sans-serif;color:#17202a}
.resume-sheet.family-sidebar .resume-sidebar{padding:15mm 8mm;background:var(--accent);color:#fff}
.resume-sheet.family-sidebar .identity-block img,.resume-sheet.family-sidebar .document-avatar{width:28mm;height:28mm;border-radius:50%;margin-bottom:5mm;object-fit:cover}
.resume-sheet.family-sidebar .identity-block h1{font-size:19pt;line-height:1.02;letter-spacing:-.025em}
.resume-sheet.family-sidebar .identity-block>p{font-size:8.8pt;line-height:1.35}
.resume-sheet.family-sidebar .sidebar-section{margin-top:7mm}
.resume-sheet.family-sidebar .sidebar-section h2{font-size:7pt;letter-spacing:.13em;color:rgba(255,255,255,.82)}
.resume-sheet.family-sidebar .contact-list,.resume-sheet.family-sidebar .language-row{font-size:7.5pt}
.resume-sheet.family-sidebar .document-skills{display:grid;gap:1mm}
.resume-sheet.family-sidebar .document-skills span{border:0;border-left:2px solid rgba(255,255,255,.55);border-radius:0;padding:.6mm 0 .6mm 2mm}
.resume-sheet.family-sidebar .resume-main{padding:14mm 12mm}
.resume-sheet.family-sidebar .document-section{margin-bottom:6mm;break-inside:auto}
.resume-sheet.family-sidebar .document-section>h2{font-size:7.5pt;letter-spacing:.13em;color:var(--accent);border-bottom:1px solid color-mix(in srgb,var(--accent) 30%,#d7dde3)}

.resume-sheet.template-modern_emerald .resume-sidebar{background:#065f55}
.resume-sheet.template-modern_emerald .identity-block img,.resume-sheet.template-modern_emerald .document-avatar{border-radius:4mm}
.resume-sheet.template-blue_sidebar .resume-sidebar{background:#143a72}

/* ---------- creative family ---------- */
.resume-sheet.family-creative:not(.family-sidebar){display:grid;grid-template-columns:55mm minmax(0,1fr);font-family:Arial,Helvetica,sans-serif;color:#20252c}
.resume-sheet.family-creative .resume-sidebar{padding:14mm 8mm;background:color-mix(in srgb,var(--accent) 13%,#f8fafc);color:#243039}
.resume-sheet.family-creative .identity-block img,.resume-sheet.family-creative .document-avatar{width:26mm;height:26mm;border-radius:5mm;background:color-mix(in srgb,var(--accent) 20%,#e5e7eb)}
.resume-sheet.family-creative .identity-block h1{font-size:18pt;color:#18222c}
.resume-sheet.family-creative .identity-block>p{color:var(--accent);font-weight:700}
.resume-sheet.family-creative .sidebar-section h2{color:var(--accent);font-size:7pt}
.resume-sheet.family-creative .resume-main{padding:14mm 12mm}
.resume-sheet.family-creative .document-section{margin-bottom:6mm;break-inside:auto}
.resume-sheet.family-creative .document-section>h2{color:var(--accent);border-bottom:2px solid color-mix(in srgb,var(--accent) 18%,#e5e7eb);font-size:7.5pt}
.resume-sheet.family-creative .entry-heading h3{color:#1e2933}
.resume-sheet.family-creative .summary-text,.resume-sheet.family-creative .entry-description,.resume-sheet.family-creative .document-entry ul{color:#47515c}

.resume-sheet.template-creative_mint .resume-sidebar{background:#eaf8f4;color:#183b34}
.resume-sheet.template-creative_mint .contact-list a{color:#183b34}
.resume-sheet.template-studio .resume-sidebar{background:#f1eef9;color:#302744}
.resume-sheet.template-studio .document-header{border-bottom-color:#7559c7}
.resume-sheet.template-creative_purple .resume-sidebar{background:#f0edff;color:#2d2250}

/* Existing Swiss layout remains deliberately editorial, but use v15 print safeguards. */
.resume-sheet.template-swiss_grid{break-inside:auto}

/* ---------- responsive preview only; print stays fixed paper ---------- */
@media(max-width:850px){
  .resume-sheet.page-letter,.resume-sheet.page-a4{width:min(100%,215.9mm)}
}
@media(max-width:560px){
  .resume-sheet.family-sidebar,.resume-sheet.family-creative{display:block}
  .resume-sheet.family-sidebar .resume-sidebar,.resume-sheet.family-creative .resume-sidebar{padding:28px 24px}
  .resume-sheet.family-sidebar .resume-main,.resume-sheet.family-creative .resume-main{padding:28px 24px}
  .resume-sheet.family-ats,.resume-sheet.family-corporate,.resume-sheet.family-executive,.resume-sheet.family-technical,.resume-sheet.family-academic{padding:28px 24px}
  .resume-sheet.template-data_professional .section-skills .main-skill-list{grid-template-columns:1fr 1fr}
}
@media print{
  .resume-sheet.page-a4{width:210mm;min-height:297mm}
  .resume-sheet.page-letter{width:215.9mm;min-height:279.4mm}
  .resume-sheet{margin:0!important;box-shadow:none!important}
  .resume-sheet .document-section{break-inside:auto}
  .resume-sheet .document-entry{break-inside:avoid-page}
}
