/* Studio3 PDF Export Styles */
@media print {
    /* Page setup */
    @page {
        size: A4;
        margin: 2.5cm 2cm 3cm 2cm;
        orphans: 3;
        widows: 3;
        
        @bottom-center {
            content: "Studio3 Documentation - Page " counter(page);
            font-size: 10pt;
            color: #666;
        }
    }
    
    @page:first {
        margin-top: 0;
        @bottom-center {
            content: "";
        }
    }
    
    /* Typography for print */
    body {
        font-size: 11pt;
        line-height: 1.6;
        color: #000;
        background: white;
    }
    
    /* Headers */
    h1, h2, h3, h4, h5, h6 {
        color: #2B4C8C !important;
        page-break-after: avoid;
        page-break-inside: avoid;
    }
    
    h1 {
        font-size: 24pt;
        border-bottom: 3px solid #E91E63;
        padding-bottom: 0.5em;
        margin-top: 0;
        page-break-before: always;
    }
    
    /* Prevent page break for first h1 and h1 after hero */
    h1:first-child,
    .hero-section + h1,
    .md-content > h1:first-child,
    article > h1:first-child {
        page-break-before: avoid;
    }
    
    h2 {
        font-size: 18pt;
        border-bottom: 2px solid #E91E63;
        padding-bottom: 0.3em;
        margin-top: 24pt;
    }
    
    h3 {
        font-size: 14pt;
        margin-top: 18pt;
    }
    
    h4, h5, h6 {
        font-size: 12pt;
        margin-top: 14pt;
    }
    
    /* Prevent orphaned content */
    h1 + *, h2 + *, h3 + *, h4 + * {
        page-break-before: avoid;
    }
    
    /* Paragraphs */
    p {
        orphans: 3;
        widows: 3;
        margin-bottom: 12pt;
    }
    
    /* Links */
    a {
        color: #E91E63 !important;
        text-decoration: underline;
    }
    
    /* Show external URLs in print */
    a[href^="http"]:after {
        content: " (" attr(href) ")";
        font-size: 9pt;
        color: #666;
    }
    
    /* But not for internal links */
    a[href^="#"]:after,
    a[href^="/"]:after,
    a[href^="../"]:after {
        content: "";
    }
    
    /* Code blocks */
    pre {
        background-color: #f8f8f8 !important;
        border: 1px solid #ddd;
        page-break-inside: avoid;
        padding: 8pt;
        margin: 12pt 0;
        font-size: 9pt;
        line-height: 1.4;
        overflow-wrap: break-word;
        white-space: pre-wrap;
    }
    
    code {
        background-color: rgba(233, 30, 99, 0.1) !important;
        color: #E91E63 !important;
        padding: 1pt 3pt;
        font-size: 9pt;
    }
    
    /* Tables */
    table {
        page-break-inside: auto;
        width: 100%;
        margin: 12pt 0;
        border-collapse: collapse;
    }
    
    thead {
        display: table-header-group;
    }
    
    tr {
        page-break-inside: avoid;
    }
    
    th {
        background-color: #2B4C8C !important;
        color: white !important;
        padding: 6pt;
        text-align: left;
        font-size: 10pt;
    }
    
    td {
        border: 1px solid #ddd;
        padding: 6pt;
        font-size: 10pt;
    }
    
    /* Admonitions */
    .admonition {
        page-break-inside: avoid;
        border-left: 4px solid #E91E63;
        background-color: rgba(233, 30, 99, 0.05) !important;
        padding: 12pt;
        margin: 12pt 0;
    }
    
    .admonition.warning {
        border-left-color: #ff9800;
        background-color: rgba(255, 152, 0, 0.05) !important;
    }
    
    .admonition.success {
        border-left-color: #4caf50;
        background-color: rgba(76, 175, 80, 0.05) !important;
    }
    
    /* Arena cards */
    .arena-card {
        page-break-inside: avoid;
        border: 2px solid #E91E63;
        background-color: #f9f9f9 !important;
        padding: 12pt;
        margin: 12pt 0;
        border-radius: 4pt;
    }
    
    /* Phase indicators */
    .phase-indicator {
        background-color: #666 !important;
        color: white !important;
        display: inline-block;
        padding: 4pt 8pt;
        margin: 2pt;
        border-radius: 3pt;
        font-size: 10pt;
    }
    
    /* Grid layout for PDF */
    .grid {
        display: block !important;
    }
    
    .grid > * {
        display: block !important;
        width: 100% !important;
        margin-bottom: 12pt;
        page-break-inside: avoid;
    }
    
    /* Lists */
    ul, ol {
        margin-bottom: 12pt;
        orphans: 3;
        widows: 3;
    }
    
    li {
        orphans: 2;
        widows: 2;
        page-break-inside: avoid;
    }
    
    /* Blockquotes */
    blockquote {
        page-break-inside: avoid;
        border-left: 4px solid #ddd;
        padding-left: 12pt;
        margin: 12pt 0;
        font-style: italic;
    }
    
    /* Hide interactive elements */
    .md-header,
    .md-nav,
    .md-nav__link,
    .md-sidebar,
    .md-footer,
    .md-search,
    .md-button,
    .md-tabs,
    .md-top,
    .md-content__button,
    .signal-orb,
    .loading-spinner,
    .download-section,
    button {
        display: none !important;
    }
    
    /* Content width */
    .md-content {
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    .md-content__inner {
        margin: 0 !important;
        padding: 0 !important;
        max-width: 100% !important;
    }
    
    /* Images */
    img {
        max-width: 100%;
        height: auto;
        display: block;
        margin: 12pt auto;
        page-break-inside: avoid;
    }
    
    /* Hero sections */
    .hero-section {
        text-align: center;
        padding: 24pt 0;
        page-break-after: avoid;
    }
    
    .hero-section h1 {
        page-break-before: avoid;
        font-size: 32pt;
        margin-bottom: 12pt;
        border: none;
    }
    
    .hero-subtitle {
        font-size: 14pt;
        color: #666;
        margin-bottom: 24pt;
    }
    
    /* Fix empty pages */
    .md-content > *:last-child {
        page-break-after: avoid;
    }
    
    /* Remove blank pages between sections */
    section {
        page-break-before: auto;
        page-break-after: auto;
    }
    
    /* Mermaid diagrams */
    .mermaid {
        page-break-inside: avoid;
        margin: 12pt 0;
    }
    
    /* TOC for print */
    .pdf-toc {
        page-break-after: always;
    }
    
    .pdf-toc ul {
        list-style: none;
        padding-left: 0;
    }
    
    .pdf-toc li {
        margin: 8pt 0;
        line-height: 1.8;
    }
    
    .pdf-toc li.level-1 {
        font-weight: bold;
        margin-top: 12pt;
    }
    
    .pdf-toc li.level-2 {
        margin-left: 20pt;
    }
    
    .pdf-toc li.level-3 {
        margin-left: 40pt;
    }
}