/**
 * Familienkompass - Print Styles
 * Optimized for clean printable output.
 */

@media print {
  /* Hide non-essential elements */
  .fk-utility-bar,
  .fk-onboarding-overlay,
  .fk-filter-bar,
  .fk-favorite-toggle,
  .fk-favorites-link,
  .fk-search-toggle,
  .fk-share-bar,
  .fk-gallery,
  .fk-single-map,
  .fk-home-map,
  .fk-home-emergency,
  .fk-home-stats,
  .fk-hero__search,
  .fk-hero__quicklinks,
  .fk-pagination,
  .fk-target-toggle,
  .fk-action-btn--print,
  .fk-info-toc,
  .fk-info-more,
  #ast-desktop-header,
  #ast-mobile-header,
  .ast-above-header,
  .ast-below-header,
  .main-header-bar,
  .fk-site-footer,
  .ast-footer-overlay,
  footer,
  nav,
  .fk-breadcrumb {
    display: none !important;
  }

  /* Reset page */
  body,
  .familienkompass {
    background: #fff !important;
    color: #000 !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-size: 12pt !important;
    line-height: 1.6 !important;
  }

  /* Remove shadows and borders */
  * {
    box-shadow: none !important;
    text-shadow: none !important;
  }

  /* Full width */
  .fk-container {
    max-width: 100% !important;
    padding: 0 !important;
  }

  /* Single content: stack sidebar below */
  .fk-single-content,
  .fk-info-layout {
    display: block !important;
  }

  .fk-single-sidebar,
  .fk-info-sidebar {
    margin-top: 24pt !important;
    display: block !important;
  }

  .fk-single-sidebar .fk-info-card,
  .fk-info-sidebar .fk-info-card {
    break-inside: avoid;
    border: 1px solid #ccc;
    padding: 12pt;
    margin-bottom: 12pt;
  }

  /* Hero adjustments */
  .fk-single-hero,
  .fk-info-hero {
    padding: 12pt 0 !important;
    border-top: none !important;
  }

  .fk-single-hero__content {
    display: block !important;
  }

  .fk-single-hero__image {
    display: none !important;
  }

  /* Typography */
  h1 {
    font-size: 18pt !important;
    font-weight: bold !important;
  }

  h2 {
    font-size: 14pt !important;
    font-weight: bold !important;
  }

  h3 {
    font-size: 12pt !important;
    font-weight: bold !important;
  }

  /* Show link URLs */
  .fk-content-block a[href]::after,
  .fk-info-content a[href]::after {
    content: " (" attr(href) ")" !important;
    font-size: 9pt;
    color: #666;
    word-break: break-all;
  }

  /* Don't show URL for internal anchor links or tel links */
  .fk-content-block a[href^="#"]::after,
  .fk-info-content a[href^="#"]::after,
  a[href^="tel:"]::after,
  a[href^="mailto:"]::after {
    content: "" !important;
  }

  /* Cards */
  .fk-card,
  .fk-notfall-card,
  .fk-info-card {
    break-inside: avoid;
  }

  .fk-card:hover,
  .fk-info-card-item:hover {
    transform: none !important;
  }

  /* Page breaks */
  h1, h2, h3 {
    break-after: avoid;
  }

  /* Badges */
  .fk-badge {
    border: 1px solid #666 !important;
    background: #fff !important;
    color: #000 !important;
  }

  /* Quick actions - hide all except print info */
  .fk-quick-actions {
    display: none !important;
  }

  /* Print QR area (hidden on screen, visible in print) */
  .fk-print-qr {
    display: block !important;
    margin-top: 24pt;
    padding-top: 12pt;
    border-top: 1px solid #ccc;
    text-align: center;
    font-size: 10pt;
    color: #666;
  }

  /* Opening hours table */
  .fk-opening-hours {
    border: 1px solid #ccc;
  }

  .fk-opening-hours td {
    border-bottom: 1px solid #eee;
    padding: 4pt 8pt;
  }
}
