/* ═══════════════════════════════════════════
  NEW 15 RESUME TEMPLATES - ATS-FRIENDLY CSS
  ═══════════════════════════════════════════ */

/* Reusable base settings if needed, though they inherit from #resume-output */

/* 1. The Executive */
.resume-output.rich-output-area.theme-executive {
  font-family: 'Georgia', serif !important;
  color: var(--text-primary) !important;
}

.resume-output.rich-output-area.theme-executive h1 {
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  border-top: 3px solid var(--r-accent, #A6842A) !important;
  border-bottom: 3px solid var(--r-accent, #A6842A) !important;
  padding: 10px 0 !important;
  margin-bottom: 5px !important;
  font-size: 2.2rem !important;
  width: 100% !important;
}

.resume-output.rich-output-area.theme-executive h1+p {
  text-align: center !important;
  font-style: italic !important;
  border-bottom: 1px solid #ccc !important;
  padding-bottom: 15px !important;
  margin-bottom: 20px !important;
  width: 100% !important;
}

.resume-output.rich-output-area.theme-executive h2 {
  background: var(--r-accent, #A6842A) !important;
  color: #fff !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  padding: 6px 0 !important;
  margin-top: 2rem !important;
  width: 100% !important;
}

/* 2. Modern Split (Asymmetrical left border mimicking a layout) */
.resume-output.rich-output-area.theme-modern-split {
  border-left: 30px solid var(--r-accent, #5C7A8A) !important;
  padding-left: 40px !important;
}

.resume-output.rich-output-area.theme-modern-split h1 {
  text-align: left !important;
  color: var(--r-accent, #5C7A8A) !important;
  font-weight: 800 !important;
  font-size: 2.8rem !important;
  margin-bottom: 0 !important;
  border-bottom: none !important;
}

.resume-output.rich-output-area.theme-modern-split h1+p {
  text-align: left !important;
  font-size: 1.1rem !important;
  color: #555 !important;
  margin-bottom: 2rem !important;
}

.resume-output.rich-output-area.theme-modern-split h2 {
  text-align: left !important;
  border-bottom: 3px solid var(--r-accent, #5C7A8A) !important;
  display: block !important;
  padding-bottom: 5px !important;
  margin-top: 2rem !important;
  font-size: 1.4rem !important;
}

/* 3. The Timeline */
.resume-output.rich-output-area.theme-timeline ul {
  border-left: 2px solid var(--r-accent, #5F8A85) !important;
  list-style-type: none !important;
  padding-left: 20px !important;
  position: relative !important;
}

.resume-output.rich-output-area.theme-timeline ul li {
  position: relative !important;
  margin-bottom: 12px !important;
}

.resume-output.rich-output-area.theme-timeline ul li::before {
  content: '' !important;
  position: absolute !important;
  left: -26px !important;
  top: 6px !important;
  width: 10px !important;
  height: 10px !important;
  background: var(--r-accent, #5F8A85) !important;
  border-radius: 50% !important;
}

.resume-output.rich-output-area.theme-timeline h2 {
  color: var(--r-accent, #5F8A85) !important;
  border-bottom: 1px dashed var(--r-accent, #5F8A85) !important;
}

/* 4. Minimalist Grid */
.resume-output.rich-output-area.theme-minimalist-grid h1 {
  text-align: right !important;
  font-weight: 200 !important;
  font-size: 3.5rem !important;
  border-bottom: 1px solid #000 !important;
  padding-bottom: 10px !important;
  letter-spacing: -1px !important;
}

.resume-output.rich-output-area.theme-minimalist-grid h1+p {
  text-align: right !important;
  opacity: 0.7 !important;
  font-family: monospace !important;
  font-size: 0.9rem !important;
}

.resume-output.rich-output-area.theme-minimalist-grid h2 {
  text-align: left !important;
  font-size: 0.9rem !important;
  text-transform: uppercase !important;
  letter-spacing: 4px !important;
  color: #999 !important;
  border: none !important;
  margin-top: 2.5rem !important;
}

.resume-output.rich-output-area.theme-minimalist-grid p>strong {
  font-weight: 600 !important;
  font-size: 1.1rem !important;
  color: #111 !important;
  display: inline-block !important;
  border-bottom: 1px dotted #ccc !important;
}

/* 5. The Infographic */
.resume-output.rich-output-area.theme-infographic h1 {
  color: var(--r-accent, #5F8A85) !important;
  font-weight: 900 !important;
}

.resume-output.rich-output-area.theme-infographic h2 {
  background: var(--r-accent, #5F8A85) !important;
  color: white !important;
  padding: 6px 15px !important;
  border-radius: 30px !important;
  display: inline-block !important;
  font-size: 1rem !important;
  margin-top: 1.5rem !important;
}

.resume-output.rich-output-area.theme-infographic li {
  background: rgba(0, 0, 0, 0.03) !important;
  padding: 8px 12px !important;
  border-radius: 8px !important;
  margin-bottom: 8px !important;
  list-style-type: none !important;
  border-left: 4px solid var(--r-accent, #5F8A85) !important;
}

.resume-output.rich-output-area.theme-infographic ul {
  padding-left: 0 !important;
}

/* 6. Brutalist */
.resume-output.rich-output-area.theme-brutalist {
  font-family: 'Courier New', Courier, monospace !important;
  color: #000 !important;
  border: 6px solid #000 !important;
}

.resume-output.rich-output-area.theme-brutalist h1 {
  font-weight: 900 !important;
  text-transform: uppercase !important;
  font-size: 3.5rem !important;
  border-bottom: 6px solid #000 !important;
  padding-bottom: 10px !important;
  text-align: left !important;
}

.resume-output.rich-output-area.theme-brutalist h1+p {
  text-align: left !important;
  font-size: 1.2rem !important;
  font-weight: bold !important;
}

.resume-output.rich-output-area.theme-brutalist h2 {
  background: #000 !important;
  color: #fff !important;
  display: inline-block !important;
  padding: 5px 15px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
}

/* 7. Academic (CV Style) */
.resume-output.rich-output-area.theme-academic {
  font-family: 'Garamond', serif !important;
  line-height: 1.4 !important;
}

.resume-output.rich-output-area.theme-academic h1 {
  font-size: 2rem !important;
  border-bottom: 2px double #000 !important;
}

.resume-output.rich-output-area.theme-academic h2 {
  font-variant: small-caps !important;
  text-transform: lowercase !important;
  font-size: 1.4rem !important;
  border-bottom: 1px solid #ccc !important;
}

.resume-output.rich-output-area.theme-academic p {
  margin-bottom: 0.4rem !important;
}

.resume-output.rich-output-area.theme-academic ul {
  margin-bottom: 0.8rem !important;
}

/* 8. Tech Sidebar mimicking */
.resume-output.rich-output-area.theme-tech-sidebar h1 {
  color: var(--r-accent, #9B8EA6) !important;
  text-align: left !important;
  margin-bottom: 0 !important;
}

.resume-output.rich-output-area.theme-tech-sidebar h1+p {
  text-align: left !important;
  padding-left: 5px !important;
  border-left: 3px solid var(--r-accent, #9B8EA6) !important;
}

.resume-output.rich-output-area.theme-tech-sidebar h2 {
  background: rgba(155, 142, 166, 0.1) !important;
  border-left: 3px solid var(--r-accent, #9B8EA6) !important;
  padding: 4px 10px !important;
  border-bottom: none !important;
  color: #333 !important;
}

.resume-output.rich-output-area.theme-tech-sidebar li {
  list-style-type: square !important;
  color: #444 !important;
}

/* 9. Elegant */
.resume-output.rich-output-area.theme-elegant {
  font-weight: 300 !important;
}

.resume-output.rich-output-area.theme-elegant h1 {
  font-weight: 300 !important;
  letter-spacing: 5px !important;
  font-size: 2.2rem !important;
}

.resume-output.rich-output-area.theme-elegant h2 {
  font-weight: 400 !important;
  text-align: center !important;
  border-top: 1px solid #eee !important;
  border-bottom: 1px solid #eee !important;
  padding: 5px 0 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  font-size: 1rem !important;
  color: var(--r-accent, #8B4A42) !important;
}

/* 10. Startup */
.resume-output.rich-output-area.theme-startup {
  font-family: 'Outfit', sans-serif !important;
}

.resume-output.rich-output-area.theme-startup h1 {
  background: linear-gradient(90deg, var(--r-accent, #7BA5B4), #a855f7) !important;
  background-clip: text !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  font-weight: 800 !important;
}

.resume-output.rich-output-area.theme-startup h2 {
  color: var(--r-accent, #7BA5B4) !important;
  border-bottom: 2px solid rgba(14, 165, 233, 0.2) !important;
}

.resume-output.rich-output-area.theme-startup p>strong {
  background: rgba(14, 165, 233, 0.1) !important;
  padding: 2px 6px !important;
  border-radius: 4px !important;
  color: var(--r-accent, #7BA5B4) !important;
}

/* 11. Classic Two-Tone */
.resume-output.rich-output-area.theme-two-tone h1 {
  background: var(--r-accent, #B06645) !important;
  color: #fff !important;
  margin: -48px -56px 20px !important;
  /* Overrides padding on resume container */
  padding: 48px 56px !important;
  text-align: center !important;
}

.resume-output.rich-output-area.theme-two-tone h1+p {
  text-align: center !important;
  margin-top: -15px !important;
  margin-bottom: 30px !important;
  font-weight: 600 !important;
}

.resume-output.rich-output-area.theme-two-tone h2 {
  color: var(--r-accent, #B06645) !important;
  border-bottom: 2px solid var(--r-accent, #B06645) !important;
}

/* 12. Compact Matrix */
.resume-output.rich-output-area.theme-matrix {
  font-size: 0.85rem !important;
  line-height: 1.3 !important;
}

.resume-output.rich-output-area.theme-matrix h1 {
  font-size: 1.6rem !important;
  margin-bottom: 0 !important;
}

.resume-output.rich-output-area.theme-matrix h2 {
  font-size: 1.1rem !important;
  border-bottom: 1px dashed var(--r-accent, #6E7E6A) !important;
  margin-top: 0.8rem !important;
}

.resume-output.rich-output-area.theme-matrix ul {
  margin-bottom: 0.5rem !important;
}

.resume-output.rich-output-area.theme-matrix li {
  margin-bottom: 0.2rem !important;
}

/* 13. Gallery */
.resume-output.rich-output-area.theme-gallery {
  padding-left: 100px !important;
  position: relative !important;
  border-left: 1px solid #ccc !important;
  overflow: hidden !important;
}

.resume-output.rich-output-area.theme-gallery h1 {
  position: absolute !important;
  left: 50px !important;
  top: 50% !important;
  transform: rotate(-90deg) translate(-50%, -50%) !important;
  transform-origin: center center !important;
  white-space: nowrap !important;
  font-size: 2rem !important;
  color: var(--r-accent, #C4B5CF) !important;
  border: none !important;
  pointer-events: none !important;
  opacity: 0.4 !important;
  z-index: 0 !important;
  max-width: none !important;
  width: auto !important;
}

.resume-output.rich-output-area.theme-gallery h2 {
  color: var(--r-accent, #C4B5CF) !important;
  border-bottom: 2px solid #eee !important;
}

/* 14. Newsletter (CSS Columns) */
.resume-output.rich-output-area.theme-newsletter {
  column-count: 2 !important;
  column-gap: 40px !important;
  column-rule: 1px solid #ddd !important;
}

.resume-output.rich-output-area.theme-newsletter h1,
.resume-output.rich-output-area.theme-newsletter h1+p {
  column-span: all !important;
  text-align: center !important;
}

.resume-output.rich-output-area.theme-newsletter h1 {
  border-bottom: 4px solid var(--r-accent, #A6842A) !important;
  border-top: 4px solid var(--r-accent, #A6842A) !important;
}

.resume-output.rich-output-area.theme-newsletter h2 {
  color: var(--r-accent, #A6842A) !important;
  border-bottom: 1px solid var(--r-accent, #A6842A) !important;
  break-after: avoid !important;
}

/* 15. Terminal */
.resume-output.rich-output-area.theme-terminal {
  background: #151821 !important;
  color: #C8C4BE !important;
  font-family: 'Courier New', Courier, monospace !important;
}

.resume-output.rich-output-area.theme-terminal h1 {
  color: var(--r-accent, #8A9A86) !important;
  text-align: left !important;
  border-bottom: 1px dashed var(--r-accent, #8A9A86) !important;
}

.resume-output.rich-output-area.theme-terminal h1::before {
  content: 'admin@tms:~$ sudo whoami\\A' !important;
  white-space: pre-wrap !important;
  font-size: 0.9rem !important;
  color: #6A7078 !important;
  display: block !important;
  margin-bottom: 10px !important;
}

.resume-output.rich-output-area.theme-terminal h2 {
  color: var(--r-accent, #8A9A86) !important;
  border: none !important;
  margin-top: 2rem !important;
}

.resume-output.rich-output-area.theme-terminal h2::before {
  content: 'root@candidate:~# cat ' !important;
  color: #7B9AB4 !important;
  font-size: 0.9rem !important;
}

.resume-output.rich-output-area.theme-terminal li {
  list-style-type: none !important;
  position: relative !important;
  padding-left: 1.5em !important;
}

.resume-output.rich-output-area.theme-terminal li::before {
  content: '>' !important;
  color: var(--r-accent, #8A9A86) !important;
  font-weight: bold !important;
  position: absolute !important;
  left: 0 !important;
}