/* ===== A4 简历纸张 ===== */
.resume-page{
  width:794px; min-height:1123px; background:#fff; color:#222;
  font-size:14px; line-height:1.7; padding:48px 52px; box-sizing:border-box;
  box-shadow:0 6px 24px rgba(0,0,0,.28); overflow:hidden;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
}

/* 通用区块/条目 */
.r-sec{ margin-bottom:18px; }
.r-sec-title{ font-size:16px; font-weight:700; margin-bottom:10px; }
.r-item{ margin-bottom:12px; }
.r-item-head{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; }
.r-item-title{ font-weight:700; color:#1f2937; }
.r-item-meta{ color:#777; font-size:13px; white-space:nowrap; }
.r-item-desc{ margin-top:4px; color:#444; white-space:pre-line; }
.r-summary{ color:#444; }
.r-avatar{ width:64px; height:64px; border-radius:50%; background:#e5e7eb; background-size:cover; background-position:center; flex-shrink:0; }
.r-skill-group{ margin-bottom:8px; }
.r-skill-cat{ font-weight:700; margin-bottom:4px; }
.r-skill-tags{ display:flex; flex-wrap:wrap; gap:6px; }
.r-tag{ padding:3px 10px; border-radius:6px; font-size:12.5px; }
.r-obj{ display:flex; flex-wrap:wrap; gap:8px 26px; }
.r-obj-item{ font-size:13.5px; }
.r-obj-k{ color:#888; margin-right:6px; }
.r-obj-v{ font-weight:600; }

/* ===== 经典蓝 ===== */
.r-classic .r-header{ display:flex; gap:18px; align-items:center; border-bottom:3px solid #2563eb; padding-bottom:16px; margin-bottom:18px; }
.r-classic .r-name{ font-size:30px; font-weight:800; color:#111; }
.r-classic .r-title{ font-size:15px; color:#2563eb; margin-top:2px; }
.r-classic .r-contact{ display:flex; flex-wrap:wrap; gap:4px 16px; margin-top:10px; font-size:13px; color:#555; }
.r-classic .r-sec-title{ color:#1d4ed8; border-left:4px solid #2563eb; padding-left:10px; }
.r-classic .r-tag{ background:#eef2ff; color:#1d4ed8; }

/* ===== 现代双栏 ===== */
.r-modern{ margin:-48px -52px; display:grid; grid-template-columns:232px 1fr; min-height:1123px; }
.r-modern .r-side{ background:#1e293b; color:#cbd5e1; padding:44px 24px; }
.r-modern .r-avatar{ width:104px; height:104px; border-radius:50%; background:#334155; margin:0 auto 16px; background-size:cover; background-position:center; border:3px solid #475569; }
.r-modern .r-side h4{ font-size:12px; letter-spacing:1px; color:#93c5fd; margin:20px 0 8px; border-bottom:1px solid #334155; padding-bottom:5px; }
.r-modern .r-contact-item{ font-size:12.5px; margin-bottom:7px; word-break:break-all; }
.r-modern .r-contact-item strong{ color:#e2e8f0; }
.r-modern .r-skill-cat{ color:#e2e8f0; font-size:13px; }
.r-modern .r-tag{ background:#334155; color:#bfdbfe; }
.r-modern .r-main{ padding:44px 38px; }
.r-modern .r-name{ font-size:27px; font-weight:800; color:#0f172a; }
.r-modern .r-title{ color:#2563eb; font-weight:600; margin-bottom:6px; }
.r-modern .r-sec-title{ font-size:15px; font-weight:700; color:#1e293b; border-bottom:2px solid #2563eb; padding-bottom:5px; margin:20px 0 10px; }

/* ===== 简约白 ===== */
.r-minimal .r-header{ display:flex; gap:18px; align-items:center; margin-bottom:24px; }
.r-minimal .r-name{ font-size:28px; font-weight:300; letter-spacing:3px; color:#111; }
.r-minimal .r-title{ color:#666; font-size:14px; margin-top:4px; }
.r-minimal .r-contact{ display:flex; flex-wrap:wrap; gap:4px 16px; margin-top:10px; font-size:12.5px; color:#888; }
.r-minimal .r-sec-title{ font-size:13px; letter-spacing:3px; color:#999; border-bottom:1px solid #ddd; padding-bottom:6px; margin:22px 0 12px; }
.r-minimal .r-item-title{ font-weight:600; }
.r-minimal .r-tag{ background:#f3f4f6; color:#555; border-radius:20px; }

/* ===== 创意彩 ===== */
.r-creative{ margin:-48px -52px; }
.r-creative .r-top{ background:linear-gradient(135deg,#7c3aed,#2563eb); color:#fff; padding:42px 52px; }
.r-creative .r-name{ font-size:34px; font-weight:800; }
.r-creative .r-title{ font-size:16px; opacity:.92; margin-top:4px; }
.r-creative .r-contact{ display:flex; flex-wrap:wrap; gap:6px 20px; margin-top:14px; font-size:13px; }
.r-creative .r-body{ padding:34px 52px; }
.r-creative .r-sec-title{ font-size:16px; font-weight:700; color:#7c3aed; margin:18px 0 10px; display:flex; align-items:center; gap:9px; }
.r-creative .r-sec-title::before{ content:''; width:11px; height:11px; border-radius:3px; background:linear-gradient(135deg,#7c3aed,#2563eb); display:inline-block; }
.r-creative .r-tag{ background:#f3e8ff; color:#7c3aed; }

/* ===== 打印（导出 PDF） ===== */
@media print{
  @page{ size:A4; margin:0; }
  html,body{ background:#fff!important; }
  body *{ visibility:hidden; }
  #resumePreview, #resumePreview *{ visibility:visible; }
  .editor-bar, .form-panel, .preview-toolbar, .toast{ display:none!important; }
  .preview-panel{ position:static!important; }
  .preview-scroll{ position:static!important; background:#fff!important; padding:0!important; overflow:visible!important; max-height:none!important; display:block!important; }
  #resumePreview{ position:absolute; left:0; top:0; margin:0; box-shadow:none!important; }
  .resume-page{ width:210mm; min-height:297mm; box-shadow:none!important; }
}
