/* UK Legal Print Formatting - Professional Court Document Style */
@media print {
    /* Remove all interactive elements */
    .tab-navigation,
    .audio-controls,
    .play-button,
    audio,
    button,
    .loading-placeholder {
        display: none !important;
    }

    /* Reset page structure */
    * {
        -webkit-print-color-adjust: exact !important;
        color-adjust: exact !important;
    }

    body {
        font-family: "Times New Roman", serif !important;
        font-size: 12pt !important;
        line-height: 1.4 !important;
        color: #000 !important;
        background: white !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Page settings */
    @page {
        size: A4;
        margin: 2.5cm 2cm 2cm 2cm;
        
        @top-center {
            content: "LEGAL AUDIO EVIDENCE ANALYSIS - LIVERPOOL FAMILY COURT";
            font-family: "Times New Roman", serif;
            font-size: 10pt;
            font-weight: bold;
            text-transform: uppercase;
        }
        
        @bottom-center {
            content: "Page " counter(page) " of " counter(pages);
            font-family: "Times New Roman", serif;
            font-size: 9pt;
        }
        
        @bottom-right {
            content: "Ben Mak - Justice Minds Forensic Intelligence";
            font-family: "Times New Roman", serif;
            font-size: 9pt;
            font-style: italic;
        }
    }

    /* Main container */
    .govuk-width-container {
        max-width: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Document header */
    .professional-header {
        text-align: center;
        margin-bottom: 30pt;
        border-bottom: 2pt solid #000;
        padding-bottom: 15pt;
    }

    .professional-header h1 {
        font-size: 16pt !important;
        font-weight: bold !important;
        text-transform: uppercase;
        letter-spacing: 1pt;
        margin: 0 !important;
        color: #000 !important;
    }

    /* Executive summary */
    .executive-summary {
        background: none !important;
        border: 1pt solid #000 !important;
        padding: 15pt !important;
        margin: 20pt 0 !important;
        page-break-inside: avoid;
    }

    .executive-summary h2 {
        font-size: 14pt !important;
        font-weight: bold !important;
        text-transform: uppercase;
        text-align: center;
        margin: 0 0 10pt 0 !important;
        color: #000 !important;
    }

    .executive-summary p {
        font-size: 11pt !important;
        text-align: justify;
        margin: 0 !important;
        color: #000 !important;
    }

    /* Key findings */
    .key-findings {
        margin: 20pt 0 !important;
        page-break-inside: avoid;
    }

    .key-findings h2 {
        font-size: 14pt !important;
        font-weight: bold !important;
        text-transform: uppercase;
        margin: 0 0 10pt 0 !important;
        color: #000 !important;
        border-bottom: 1pt solid #000;
        padding-bottom: 5pt;
    }

    .key-findings ul {
        margin: 10pt 0 !important;
        padding-left: 20pt !important;
    }

    .key-findings li {
        font-size: 11pt !important;
        margin: 5pt 0 !important;
        color: #000 !important;
    }

    /* Legal violations */
    .violation-toggle {
        background: none !important;
        border: 1pt solid #000 !important;
        margin: 15pt 0 !important;
        padding: 0 !important;
        page-break-inside: avoid;
    }

    .violation-header {
        background: #f0f0f0 !important;
        padding: 10pt !important;
        border-bottom: 1pt solid #000 !important;
        margin: 0 !important;
    }

    .violation-header h3 {
        font-size: 13pt !important;
        font-weight: bold !important;
        margin: 0 !important;
        color: #000 !important;
        text-transform: uppercase;
    }

    .error-number {
        font-weight: bold !important;
        text-decoration: underline;
    }

    .toggle-arrow {
        display: none !important;
    }

    /* Violation content - always show */
    .violation-content {
        display: block !important;
        padding: 15pt !important;
        background: white !important;
    }

    /* Section headers with UK legal styling */
    .summary-section,
    .timestamp-section,
    .judge-claim-section,
    .ben-argument-section,
    .legal-accuracy-section,
    .statute-section,
    .case-law-section,
    .expert-determination-section,
    .incident-evaluation-section,
    .final-verdict-section {
        margin: 15pt 0 !important;
        padding: 10pt !important;
        border: none !important;
        background: none !important;
        position: relative !important;
    }

    /* Block headers for print */
    .summary-section::before {
        content: "WHAT HAPPENED" !important;
        display: block !important;
        font-weight: bold !important;
        font-size: 11pt !important;
        text-transform: uppercase !important;
        text-decoration: underline !important;
        margin-bottom: 8pt !important;
        color: #000 !important;
    }

    .timestamp-section::before {
        content: "EXACT TIMESTAMPS" !important;
        display: block !important;
        font-weight: bold !important;
        font-size: 11pt !important;
        text-transform: uppercase !important;
        text-decoration: underline !important;
        margin-bottom: 8pt !important;
        color: #000 !important;
    }

    .judge-claim-section::before {
        content: "JUDGE'S CLAIM" !important;
        display: block !important;
        font-weight: bold !important;
        font-size: 11pt !important;
        text-transform: uppercase !important;
        text-decoration: underline !important;
        margin-bottom: 8pt !important;
        color: #000 !important;
    }

    .ben-argument-section::before {
        content: "BEN'S ARGUMENT" !important;
        display: block !important;
        font-weight: bold !important;
        font-size: 11pt !important;
        text-transform: uppercase !important;
        text-decoration: underline !important;
        margin-bottom: 8pt !important;
        color: #000 !important;
    }

    .legal-accuracy-section::before {
        content: "LEGAL ACCURACY ASSESSMENT" !important;
        display: block !important;
        font-weight: bold !important;
        font-size: 11pt !important;
        text-transform: uppercase !important;
        text-decoration: underline !important;
        margin-bottom: 8pt !important;
        color: #000 !important;
    }

    .statute-section::before {
        content: "STATUTE/REGULATION CITED" !important;
        display: block !important;
        font-weight: bold !important;
        font-size: 11pt !important;
        text-transform: uppercase !important;
        text-decoration: underline !important;
        margin-bottom: 8pt !important;
        color: #000 !important;
    }

    .case-law-section::before {
        content: "CASE LAW PRECEDENT" !important;
        display: block !important;
        font-weight: bold !important;
        font-size: 11pt !important;
        text-transform: uppercase !important;
        text-decoration: underline !important;
        margin-bottom: 8pt !important;
        color: #000 !important;
    }

    .expert-determination-section::before {
        content: "EXPERT DETERMINATION" !important;
        display: block !important;
        font-weight: bold !important;
        font-size: 11pt !important;
        text-transform: uppercase !important;
        text-decoration: underline !important;
        margin-bottom: 8pt !important;
        color: #000 !important;
    }

    .incident-evaluation-section::before {
        content: "INCIDENT EVALUATION" !important;
        display: block !important;
        font-weight: bold !important;
        font-size: 11pt !important;
        text-transform: uppercase !important;
        text-decoration: underline !important;
        margin-bottom: 8pt !important;
        color: #000 !important;
    }

    .final-verdict-section::before {
        content: "FINAL VERDICT" !important;
        display: block !important;
        font-weight: bold !important;
        font-size: 11pt !important;
        text-transform: uppercase !important;
        text-decoration: underline !important;
        margin-bottom: 8pt !important;
        color: #000 !important;
    }

    /* Remove duplicate h4 headers */
    .summary-section h4,
    .timestamp-section h4,
    .judge-claim-section h4,
    .ben-argument-section h4,
    .legal-accuracy-section h4,
    .statute-section h4,
    .case-law-section h4,
    .expert-determination-section h4,
    .incident-evaluation-section h4,
    .final-verdict-section h4 {
        display: none !important;
    }

    /* Text formatting */
    p, .govuk-body, .govuk-body-l {
        font-size: 11pt !important;
        line-height: 1.4 !important;
        text-align: justify !important;
        margin: 8pt 0 !important;
        color: #000 !important;
        text-indent: 0 !important;
    }

    /* Timestamps */
    .timestamp-grid {
        display: block !important;
        margin: 10pt 0 !important;
    }

    .timestamp-item {
        margin: 5pt 0 !important;
        padding: 5pt !important;
        border: 1pt solid #000 !important;
        background: #f8f8f8 !important;
        font-weight: bold !important;
        font-size: 10pt !important;
    }

    /* Transcription */
    .transcription-text {
        font-style: italic !important;
        font-size: 11pt !important;
        border-left: 3pt solid #000 !important;
        padding-left: 10pt !important;
        margin: 10pt 0 !important;
    }

    /* Legal citations */
    .statute-citation,
    .case-citation {
        font-weight: bold !important;
        font-size: 11pt !important;
        margin: 8pt 0 !important;
        padding: 5pt !important;
        border: 1pt solid #000 !important;
        background: #f0f0f0 !important;
    }

    /* Evaluation grid for print */
    .evaluation-grid {
        display: block !important;
        margin: 10pt 0 !important;
    }

    .evaluation-item {
        margin: 8pt 0 !important;
        padding: 8pt !important;
        border: 1pt solid #000 !important;
        background: #f8f8f8 !important;
        page-break-inside: avoid;
    }

    .evaluation-item h5 {
        font-size: 10pt !important;
        font-weight: bold !important;
        margin: 0 0 5pt 0 !important;
        text-transform: uppercase;
        text-decoration: underline;
    }

    .evaluation-item p {
        font-size: 10pt !important;
        margin: 0 !important;
        line-height: 1.3 !important;
    }

    /* Maximum conclusive final verdict */
    .maximum-conclusive-verdict {
        margin-top: 30pt !important;
        padding: 20pt !important;
        border: 2pt solid #000 !important;
        background: #f0f0f0 !important;
        page-break-before: always;
        text-align: center;
    }

    .maximum-conclusive-verdict h2 {
        font-size: 16pt !important;
        font-weight: bold !important;
        text-transform: uppercase !important;
        margin: 0 0 15pt 0 !important;
        text-decoration: underline;
    }

    /* Footer signature block */
    .print-signature {
        margin-top: 50pt !important;
        padding-top: 20pt !important;
        border-top: 1pt solid #000 !important;
        text-align: right;
        page-break-inside: avoid;
    }

    .print-signature p {
        font-size: 11pt !important;
        margin: 5pt 0 !important;
        text-align: right !important;
    }

    /* Hide images in print unless specifically needed */
    .justice-minds-header,
    .justice-minds-footer {
        display: none !important;
    }

    /* Navigation and tabs */
    .nav-breadcrumb,
    .tab-navigation {
        display: none !important;
    }

    /* Ensure proper page breaks */
    .violation-toggle {
        page-break-inside: avoid;
        orphans: 3;
        widows: 3;
    }

    h1, h2, h3, h4, h5, h6 {
        page-break-after: avoid;
        orphans: 3;
        widows: 3;
    }
}

/* Print button styling */
.print-controls {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 1000;
    background: white;
    padding: 10px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    border: 1px solid #ddd;
}

.print-btn {
    background: #1d70b8;
    color: white;
    border: none;
    padding: 12px 20px;
    border-radius: 6px;
    font-weight: bold;
    cursor: pointer;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.print-btn:hover {
    background: #003d82;
    transform: translateY(-2px);
    box-shadow: 0 6px 15px rgba(29, 112, 184, 0.3);
}

@media print {
    .print-controls {
        display: none !important;
    }
}