
  /* ============================================================
     resume-templates.css — the 8 real Resume Studio template
     designs only. (Previously this file opened with leftover CSS
     from an early standalone preview tool — .shell-header,
     .picker-btn, .page-frame, and critically a bare `body{}` rule
     with fixed non-theme-reactive colors. None of those classes
     exist anywhere in the live site's markup, but the `body{}`
     selector matched the real page regardless — and since this
     stylesheet loads AFTER style.css, it silently won and
     overrode the real body background/text color site-wide,
     invisible in daytime but colliding badly with the night theme.
     Removed entirely — this file now only contains what the 8
     actual templates use.) */
  .template{display:none;}
  .template.active{display:block;}

  /* ============ 1. HARVARD/MIT CAREER CENTER FORMAT ============ */
  .tpl-harvard{
    font-family:'EB Garamond',serif;
    padding:56px 64px;
    color:#111;
  }
  .tpl-harvard .hv-name{
    text-align:center;font-size:24px;font-weight:700;letter-spacing:.02em;margin:0 0 6px;
  }
  .tpl-harvard .hv-contact{text-align:center;font-size:12.5px;color:#222;}
  .tpl-harvard .hv-hr{border:none;border-top:1px solid #000;margin:18px 0 4px;}
  .tpl-harvard .hv-section{
    font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;
    margin:20px 0 4px;border-bottom:1px solid #000;padding-bottom:2px;
  }
  .tpl-harvard .hv-row{display:flex;justify-content:space-between;margin-top:10px;}
  .tpl-harvard .hv-row-left strong{font-size:13.5px;}
  .tpl-harvard .hv-row-sub{font-size:13px;font-style:italic;}
  .tpl-harvard .hv-row-right{font-size:13px;text-align:right;white-space:nowrap;}
  .tpl-harvard .hv-bullets{margin:6px 0 0;padding-left:20px;}
  .tpl-harvard .hv-bullets li{font-size:13px;line-height:1.55;margin-bottom:3px;}
  .tpl-harvard .hv-summary{font-size:13px;line-height:1.6;margin-top:4px;}
  .tpl-harvard .hv-skills{font-size:13px;line-height:1.7;margin-top:4px;}

  /* ============ 2. JAKE'S RESUME (Tech/SWE Standard) ============ */
  .tpl-jake{
    font-family:Georgia,'Times New Roman',serif;
    padding:38px 46px;color:#000;font-size:10.3px;
  }
  .tpl-jake .jk-name{text-align:center;font-size:22px;font-weight:700;letter-spacing:.01em;margin:0 0 4px;}
  .tpl-jake .jk-contact{text-align:center;font-size:9.6px;color:#000;margin-bottom:10px;}
  .tpl-jake .jk-section{
    font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.02em;
    border-bottom:1px solid #000;margin:12px 0 6px;padding-bottom:1px;
  }
  .tpl-jake .jk-row{display:flex;justify-content:space-between;margin-top:7px;}
  .tpl-jake .jk-row-left strong{font-size:11px;}
  .tpl-jake .jk-row-right{font-size:10.3px;font-style:italic;white-space:nowrap;}
  .tpl-jake .jk-row-sub{display:flex;justify-content:space-between;font-style:italic;font-size:10.3px;margin-top:1px;}
  .tpl-jake .jk-bullets{margin:3px 0 0;padding-left:16px;}
  .tpl-jake .jk-bullets li{font-size:10.3px;line-height:1.42;margin-bottom:1.5px;}
  .tpl-jake .jk-skills-row{display:flex;gap:6px;margin-top:5px;font-size:10.3px;line-height:1.5;}
  .tpl-jake .jk-skills-row strong{min-width:120px;flex-shrink:0;}

  /* ============ 3. INDEED MODERN TEMPLATE ============ */
  .tpl-indeed{font-family:'Roboto',sans-serif;color:#1a1a1a;}
  .tpl-indeed .id-header{background:#2557a7;color:#fff;padding:34px 44px 26px;}
  .tpl-indeed .id-name{font-size:26px;font-weight:900;margin:0;}
  .tpl-indeed .id-title{font-size:13.5px;font-weight:500;color:#cfe0f7;margin:4px 0 14px;}
  .tpl-indeed .id-contact{display:flex;gap:18px;flex-wrap:wrap;font-size:11.5px;color:#e8f0fb;}
  .tpl-indeed .id-body{padding:28px 44px 44px;}
  .tpl-indeed .id-summary{font-size:13px;line-height:1.6;color:#333;margin:0 0 22px;}
  .tpl-indeed .id-section{
    font-size:13px;font-weight:700;color:#2557a7;text-transform:uppercase;letter-spacing:.04em;
    margin:22px 0 12px;display:flex;align-items:center;gap:10px;
  }
  .tpl-indeed .id-section::after{content:"";flex:1;height:2px;background:#e3ecf8;}
  .tpl-indeed .id-role{margin-bottom:18px;}
  .tpl-indeed .id-role-head{display:flex;justify-content:space-between;align-items:baseline;}
  .tpl-indeed .id-role-title{font-size:14px;font-weight:700;margin:0;}
  .tpl-indeed .id-role-period{font-size:11.5px;color:#777;white-space:nowrap;}
  .tpl-indeed .id-role-company{font-size:12.5px;color:#2557a7;font-weight:500;}
  .tpl-indeed .id-bullets{margin:6px 0 0;padding-left:18px;}
  .tpl-indeed .id-bullets li{font-size:12.5px;line-height:1.55;color:#333;margin-bottom:4px;}
  .tpl-indeed .id-pill-list{display:flex;flex-wrap:wrap;gap:8px;}
  .tpl-indeed .id-pill{background:#e3ecf8;color:#2557a7;font-size:11.5px;font-weight:700;padding:6px 12px;border-radius:16px;}
  .tpl-indeed .id-edu{font-size:12.5px;color:#333;line-height:1.6;}

  /* ============ 4. GOOGLE DOCS TWO-COLUMN (Spearmint-style) ============ */
  .tpl-gdocs{font-family:'Inter',sans-serif;display:grid;grid-template-columns:220px 1fr;min-height:100%;}
  .tpl-gdocs .gd-side{background:#0b6e4f;color:#fff;padding:40px 26px;}
  .tpl-gdocs .gd-name{font-size:21px;font-weight:700;line-height:1.2;margin:0 0 4px;}
  .tpl-gdocs .gd-title{font-size:12px;color:#bfe8d6;margin:0 0 26px;}
  .tpl-gdocs .gd-side-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#bfe8d6;margin:22px 0 8px;}
  .tpl-gdocs .gd-side-label:first-of-type{margin-top:0;}
  .tpl-gdocs .gd-contact-line{font-size:11.5px;color:#eafbf3;line-height:1.75;word-break:break-word;}
  .tpl-gdocs .gd-skill-tag{display:inline-block;background:rgba(255,255,255,.14);font-size:11px;padding:4px 9px;border-radius:5px;margin:0 5px 6px 0;}
  .tpl-gdocs .gd-edu-item{font-size:11.5px;color:#eafbf3;line-height:1.5;margin-bottom:12px;}
  .tpl-gdocs .gd-edu-item strong{display:block;color:#fff;font-size:12px;}
  .tpl-gdocs .gd-main{padding:40px 40px;}
  .tpl-gdocs .gd-summary{font-size:13px;line-height:1.65;color:#333;margin:0 0 22px;}
  .tpl-gdocs .gd-section{font-size:13px;font-weight:700;color:#0b6e4f;text-transform:uppercase;letter-spacing:.04em;margin:0 0 12px;}
  .tpl-gdocs .gd-role{margin-bottom:18px;}
  .tpl-gdocs .gd-role-head{display:flex;justify-content:space-between;align-items:baseline;}
  .tpl-gdocs .gd-role-title{font-size:13.5px;font-weight:700;margin:0;}
  .tpl-gdocs .gd-role-period{font-size:11.5px;color:#888;white-space:nowrap;}
  .tpl-gdocs .gd-role-company{font-size:12px;color:#0b6e4f;font-weight:600;}
  .tpl-gdocs .gd-bullets{margin:5px 0 0;padding-left:16px;}
  .tpl-gdocs .gd-bullets li{font-size:12.3px;line-height:1.55;color:#333;margin-bottom:4px;}

  /* ============ 5. COMBINATION FORMAT (Career-Changer Standard) ============
     The format Indeed's own Career Guide and Zety both recommend by name
     for career changers and people with employment gaps — a "Skills
     Summary" block up top (grouped by competency, not by job) so a hiring
     manager sees transferable strengths before they see an unrelated old
     title, followed by a shorter reverse-chronological history below. */
  .tpl-combo{font-family:'Inter',sans-serif;padding:52px 60px;color:#171717;}
  .tpl-combo .cb-name{font-size:23px;font-weight:800;margin:0 0 2px;letter-spacing:-.01em;}
  .tpl-combo .cb-title{font-size:12.5px;color:#555;font-weight:500;margin:0 0 8px;}
  .tpl-combo .cb-contact{font-size:11.5px;color:#555;margin-bottom:18px;}
  .tpl-combo .cb-section{
    font-size:11.5px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;
    color:#7a3b12;margin:22px 0 12px;padding-bottom:5px;border-bottom:2px solid #7a3b12;
  }
  .tpl-combo .cb-skill-groups{display:grid;grid-template-columns:1fr 1fr;gap:14px 28px;}
  .tpl-combo .cb-skill-group-label{font-size:12px;font-weight:700;margin:0 0 4px;}
  .tpl-combo .cb-skill-group-body{font-size:12px;color:#333;line-height:1.55;}
  .tpl-combo .cb-role{margin-bottom:16px;}
  .tpl-combo .cb-role-head{display:flex;justify-content:space-between;align-items:baseline;}
  .tpl-combo .cb-role-title{font-size:13.5px;font-weight:700;margin:0;}
  .tpl-combo .cb-role-period{font-size:11.5px;color:#888;white-space:nowrap;}
  .tpl-combo .cb-role-company{font-size:12px;color:#7a3b12;font-weight:600;}
  .tpl-combo .cb-bullets{margin:5px 0 0;padding-left:16px;}
  .tpl-combo .cb-bullets li{font-size:12.3px;line-height:1.55;color:#333;margin-bottom:3px;}

  /* ============ 6. CANVA BOLD (Free Colorful Template) ============
     Modeled on Canva's own most-used free resume templates — the ones
     with a solid-color geometric header band and a rounded, friendly
     sans-serif. Because Canva templates are free, browser-based, and
     shared constantly on TikTok/YouTube "how to make your resume" content,
     this exact visual pattern is now extremely common among Gen Z and
     early-career US applicants — often the very first resume format a
     new grad ever makes. */
  .tpl-canva{font-family:'Inter',sans-serif;color:#1a1a1a;}
  .tpl-canva .cv-header{
    background:#f2542d;color:#fff;padding:40px 48px 30px;
    display:flex;justify-content:space-between;align-items:flex-end;
  }
  .tpl-canva .cv-name{font-size:27px;font-weight:800;margin:0;letter-spacing:-.01em;}
  .tpl-canva .cv-title{font-size:13px;font-weight:500;color:#ffe3d9;margin:4px 0 0;}
  .tpl-canva .cv-badge{
    background:#fff;color:#f2542d;font-size:11px;font-weight:800;
    padding:7px 13px;border-radius:20px;white-space:nowrap;
  }
  .tpl-canva .cv-body{padding:26px 48px 44px;}
  .tpl-canva .cv-contact{
    display:flex;gap:16px;flex-wrap:wrap;font-size:11.5px;color:#666;margin-bottom:20px;
  }
  .tpl-canva .cv-summary{font-size:13px;line-height:1.6;color:#333;margin:0 0 22px;
    background:#fff4f0;border-left:3px solid #f2542d;padding:12px 16px;border-radius:0 6px 6px 0;}
  .tpl-canva .cv-section{
    font-size:13px;font-weight:800;color:#f2542d;text-transform:uppercase;
    letter-spacing:.03em;margin:22px 0 12px;
  }
  .tpl-canva .cv-role{margin-bottom:16px;}
  .tpl-canva .cv-role-head{display:flex;justify-content:space-between;align-items:baseline;}
  .tpl-canva .cv-role-title{font-size:14px;font-weight:700;margin:0;}
  .tpl-canva .cv-role-period{font-size:11.5px;color:#999;white-space:nowrap;}
  .tpl-canva .cv-role-company{font-size:12.5px;color:#f2542d;font-weight:600;}
  .tpl-canva .cv-bullets{margin:5px 0 0;padding-left:18px;}
  .tpl-canva .cv-bullets li{font-size:12.5px;line-height:1.55;color:#333;margin-bottom:4px;}
  .tpl-canva .cv-pill-list{display:flex;flex-wrap:wrap;gap:8px;}
  .tpl-canva .cv-pill{background:#f2542d;color:#fff;font-size:11.5px;font-weight:700;padding:6px 13px;border-radius:20px;}

  .notes{max-width:820px;margin:0 auto;padding:0 40px 60px;}
  .notes-inner{background:#fff;border:1px solid var(--shell-line);border-radius:10px;padding:22px 26px;}
  .notes-title{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#8a8577;margin:0 0 10px;}
  .notes-body{font-size:13.5px;line-height:1.65;color:#3a3a3a;}
  .notes-body strong{color:#1a1a1a;}

  @media (max-width:760px){
    .tpl-gdocs{grid-template-columns:1fr;}
    .stage,.shell-header,.picker-bar,.notes{padding-left:18px;padding-right:18px;}
  }

/* ---------- PDF pagination hints ----------
   Used by html2pdf.js's pagebreak: { mode: ['css', 'avoid-all'] } option
   (see downloadResumePDF() in app.js). Without these, html2pdf's default
   slicing has no idea where one role/education entry ends and another
   begins — it was cutting straight through the middle of blocks, leaving
   a large blank gap on one page and spilling almost nothing onto the
   next. These keep each logical unit intact and move it to the next page
   as a whole rather than splitting it. */
[class$="-role"] {
  page-break-inside: avoid;
  break-inside: avoid;
}
[class*="-section"] {
  page-break-inside: avoid;
  page-break-after: avoid; /* a section header should never be the last line on a page, orphaned from its own content */
  break-inside: avoid;
  break-after: avoid;
}
.cp-edu-table tr, .cr-personal-table tr {
  page-break-inside: avoid;
  break-inside: avoid;
}
