/* =============================================================
   pages/resume.css — Resume page
   ============================================================= */

.resume-page {
  padding:        48px 235px 80px;
  min-height:     calc(100vh - var(--topbar-h));
  display:        flex;
  flex-direction: column;
  gap:            36px;
}

/* ── Header ──────────────────────────────────────────────────*/
.resume-page__header {
  display:     flex;
  align-items: flex-end;
  justify-content: space-between;
  gap:         24px;
  flex-wrap:   wrap;
}

.resume-page__title {
  font-family:   var(--font-headings);
  font-size:     var(--fs-48);
  font-weight:   600;
  line-height:   56px;
  color:         var(--white);
  margin-bottom: 8px;
}

.resume-page__sub {
  /* layout only — typography from .section-label */
}

/* ── Action buttons ──────────────────────────────────────────*/
.resume-page__actions {
  display:   flex;
  gap:       12px;
  flex-wrap: wrap;
  align-items: center;
  flex-shrink: 0;
}

.resume-page__btn {
  display:       inline-flex;
  align-items:   center;
  gap:           8px;
  height:        44px;
  padding:       0 20px;
  border-radius: 8px;
  font-family:   var(--font-text);
  font-size:     var(--fs-14);
  font-weight:   600;
  text-decoration: none;
  white-space:   nowrap;
  transition:    opacity 0.2s, background 0.2s, border-color 0.2s;
  cursor:        pointer;
}

.resume-page__btn--primary {
  background: var(--purple-500);
  color:      var(--white);
  border:     1px solid transparent;
}
.resume-page__btn--primary:hover { opacity: 0.85; }

.resume-page__btn--secondary {
  background: var(--purple-card);
  color:      var(--purple-900);
  border:     1px solid var(--purple-border);
}
.resume-page__btn--secondary:hover {
  background:   rgba(143, 0, 216, 0.12);
  border-color: var(--purple-500);
}

.resume-page__btn--ghost {
  background: transparent;
  color:      var(--gray-900);
  border:     1px solid rgba(250, 250, 250, 0.1);
}
.resume-page__btn--ghost:hover {
  border-color: rgba(250, 250, 250, 0.25);
  color:        var(--white);
}

/* ── Viewer section ──────────────────────────────────────────*/
.resume-page__viewer-section {
  position: relative;
  width:    100%;
  flex:     1;
  min-height: 800px;
  border-radius: 12px;
  overflow: hidden;
  border:   1px solid var(--purple-border);
  background: rgba(135, 141, 234, 0.04);
}

.resume-page__iframe {
  display: block;
  width:   100%;
  height:  100%;
  min-height: 800px;
  border:  none;
  position: relative;
  z-index: 1;
}

/* ── Placeholder (shown on mobile or when PDF is missing) ────*/
.resume-page__placeholder {
  position:  absolute;
  inset:     0;
  display:   flex;
  align-items:  center;
  justify-content: center;
  z-index:   0;               /* behind iframe on desktop */
}

.resume-page__placeholder-inner {
  display:        flex;
  flex-direction: column;
  align-items:    center;
  gap:            16px;
  text-align:     center;
  padding:        40px;
}

.resume-page__placeholder-title {
  font-family:   var(--font-headings);
  font-size:     var(--fs-20);
  font-weight:   600;
  color:         var(--white);
}

.resume-page__placeholder-hint {
  font-family: var(--font-text);
  font-size:   var(--fs-15);
  color:       var(--gray-900);
  line-height: 1.6;
}

.resume-page__placeholder-hint code {
  font-family:   var(--font-mono);
  font-size:     var(--fs-13);
  color:         var(--purple-900);
  background:    rgba(143, 0, 216, 0.1);
  padding:       2px 6px;
  border-radius: 4px;
}

.resume-page__placeholder-cta {
  margin-top: 8px;
}

/* ── Mobile: hide iframe, show placeholder as main UI ────────*/
@media (max-width: 640px) {
  .resume-page__iframe {
    display: none;
  }
  .resume-page__placeholder {
    position: static;
    inset:    auto;
  }
  .resume-page__viewer-section {
    min-height: 360px;
    display:    flex;
    align-items: center;
    justify-content: center;
  }
}

/* ── Responsive ──────────────────────────────────────────────*/
@media (max-width: 1200px) {
  .resume-page { padding-left: 80px; padding-right: 80px; }
}

@media (max-width: 900px) {
  .resume-page { padding: 40px; gap: 28px; }
  .resume-page__title { font-size: var(--fs-36); line-height: 44px; }
  .resume-page__header { flex-direction: column; align-items: flex-start; }
  .resume-page__viewer-section { min-height: 640px; }
  .resume-page__iframe { min-height: 640px; }
}

@media (max-width: 640px) {
  .resume-page { padding: 24px 20px 48px; gap: 24px; }
  .resume-page__title { font-size: var(--fs-28); line-height: 36px; }
  .resume-page__actions { gap: 8px; }
  .resume-page__btn { height: 40px; padding: 0 16px; font-size: var(--fs-13); }
}
