/* Advoke CV — Print Page Setup (A4 + US Letter) */

@page {
  size: A4;
  margin: 0;
}

@page letter {
  size: Letter;
  margin: 0;
}

html[data-page-size="a4"] {
  --print-width: 210mm;
  --print-height: 297mm;
  --print-margin: 14mm;
}

html[data-page-size="letter"] {
  --print-width: 8.5in;
  --print-height: 11in;
  --print-margin: 0.55in;
}

html[data-page-size="letter"] {
  page: letter;
}

@media print {
  html,
  body {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
    background: #FFFFFF !important;
    color: #000000 !important;
    overflow: visible !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    color-adjust: exact;
  }

  body {
    font-size: 10.5pt;
    line-height: 1.45;
  }

  .print-only {
    display: block !important;
  }

  .screen-only {
    display: none !important;
  }

  .site-header,
  .site-footer,
  .site-nav,
  .drawer,
  .toast-host,
  .editor-toolbar,
  .editor-mobile-tabs,
  .editor-mobile-nav,
  .editor-sidebar,
  .editor-preview__toolbar,
  .editor-panel__header,
  .editor-panel__footer,
  .pdf-export,
  .modal,
  dialog,
  .skip-link,
  .breadcrumbs,
  .gallery-search,
  .gallery-filters,
  .gallery__view-toggle,
  .gallery__more,
  .template-picker,
  .editor-style,
  .save-status,
  .autosave-toast,
  .beforeunload-notice,
  .editor-history,
  .editor-zoom,
  .template-card__footer,
  .template-card__badges,
  .card__actions,
  .card__footer,
  .article-share,
  .related,
  .article-tags,
  .article-cta,
  .hub-filter,
  .toc,
  .toc-mobile-bar,
  .editor-preview__loading,
  .editor__loading,
  .skeleton,
  [aria-hidden="true"],
  [hidden] {
    display: none !important;
  }

  .main {
    padding-top: 0 !important;
    margin: 0 !important;
    min-height: auto !important;
    height: auto !important;
    overflow: visible !important;
    display: block !important;
  }

  .main--editor {
    padding-top: 0 !important;
    height: auto !important;
    overflow: visible !important;
  }

  .editor {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
    background: transparent !important;
  }

  .editor__body {
    display: block !important;
    overflow: visible !important;
    min-height: auto !important;
  }

  .editor__pane {
    display: block !important;
    overflow: visible !important;
    background: transparent !important;
    border: none !important;
  }

  .editor__pane--sidebar,
  .editor__pane--form {
    display: none !important;
  }

  .editor__pane--preview {
    display: block !important;
    padding: 0 !important;
  }

  .editor-preview {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
    background: transparent !important;
  }

  .editor-preview__canvas {
    display: block !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    background-image: none !important;
    gap: 0 !important;
  }

  .editor-preview__paper-wrap {
    display: block !important;
    gap: 0 !important;
    max-width: none !important;
    width: auto !important;
  }

  .editor-preview__paper {
    display: block !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    transform: none !important;
    overflow: visible !important;
    contain: none !important;
    will-change: auto !important;
    width: auto !important;
    max-width: none !important;
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .editor-preview__page-indicator,
  .editor-preview__badge {
    display: none !important;
  }

  .resume-frame,
  .resume-scaler {
    width: auto !important;
    height: auto !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
    contain: none !important;
  }

  .resume-frame > .resume,
  .resume-scaler > .resume {
    position: static !important;
    transform: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    border: none !important;
    overflow: visible !important;
  }

  .resume {
    box-shadow: none !important;
    border-radius: 0 !important;
    border: none !important;
    margin: 0 !important;
    page-break-after: always;
    break-after: page;
    overflow: visible !important;
  }

  .resume:last-child {
    page-break-after: auto;
    break-after: auto;
  }

  .resume-page-break,
  .resume-watermark,
  .resume-bg-grid {
    display: none !important;
  }

  .article-page,
  .template-detail,
  .category-page,
  .about-page,
  .legal-page,
  .example-page {
    padding: 0 !important;
    background: transparent !important;
  }

  .container,
  .container--xl,
  .container--2xl,
  .container--3xl,
  .article-layout,
  .template-detail__inner {
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
    gap: 0 !important;
  }

  a {
    color: #000000 !important;
    text-decoration: none !important;
  }

  a[href^="http"]::after {
    content: "";
  }

  img,
  svg {
    max-width: 100%;
  }

  h1, h2, h3, h4, h5, h6 {
    break-after: avoid;
    page-break-after: avoid;
    color: #000000;
  }

  h1 { font-size: 20pt; }
  h2 { font-size: 15pt; }
  h3 { font-size: 12pt; }
  h4 { font-size: 11pt; }

  p, blockquote, ul, ol, dl, pre, table {
    orphans: 3;
    widows: 3;
  }

  p {
    font-size: 10.5pt;
    line-height: 1.5;
  }

  table {
    page-break-inside: avoid;
    break-inside: avoid;
  }

  thead {
    display: table-header-group;
  }

  tr,
  img {
    page-break-inside: avoid;
    break-inside: avoid;
  }
}

@media print and (min-width: 0) {
  html[data-page-size="letter"] {
    page: letter;
  }
}

.print-frame {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--space-6);
  gap: var(--space-4);
  background-color: var(--ink-50);
  min-height: 100vh;
}

.print-frame__toolbar {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: var(--space-3) var(--space-4);
  background-color: var(--white);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  position: sticky;
  top: var(--space-4);
  z-index: var(--z-sticky);
}

@media print {
  .print-frame {
    display: block;
    padding: 0;
    gap: 0;
    background: transparent;
    min-height: auto;
  }
  .print-frame__toolbar {
    display: none;
  }
}