/* Compact Print Optimizer for SJ Resume Builder
 * Optimizes resume printing for single-page layouts with intelligent scaling
 */

/* ===== COMPACT PRINT MODE ===== */
@media print {
    /* Reset and optimize for print */
    * {
        box-sizing: border-box;
    }
    
    body {
        margin: 0 !important;
        padding: 0 !important;
        background: white !important;
        font-size: 11pt !important;
        line-height: 1.3 !important;
        color: black !important;
    }
    
    /* Hide non-essential elements */
    .preview-header,
    .print-instructions,
    .btn,
    .template-actions,
    .resume-preview-mode .preview-header,
    .sj-resume-templates-v2 .preview-header {
        display: none !important;
    }
    
    /* Education section styling - school name bold, subject italic */
    .education-entry h3 {
        font-size: 20px !important;
        font-weight: bold !important;
        font-style: normal !important;
        margin: 0 0 5px 0 !important;
    }
    
    .education-entry .subject {
        font-size: 16px !important;
        font-weight: normal !important;
        font-style: italic !important;
        margin: 0 0 10px 0 !important;
    }
    
    /* Optimize resume container - only in compact mode or print */
    .compact-mode-active .resume-container,
    .ultra-compact-mode-active .resume-container,
    .compact-print-mode .resume-container,
    .resume-preview-container,
    .compact-mode-active.resume-preview-container,
    .ultra-compact-mode-active.resume-preview-container,
    .compact-print-mode.resume-preview-container,
    .compact-mode-active.sj-resume-templates-v2,
    .ultra-compact-mode-active.sj-resume-templates-v2,
    .compact-print-mode.sj-resume-templates-v2 {
        margin: 0 !important;
        padding: 0.5in !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        max-width: none !important;
        width: 100% !important;
        height: auto !important;
    }
    
    /* ===== COMPACT HEADER OPTIMIZATION ===== */
    .compact-mode-active .resume-header,
    .ultra-compact-mode-active .resume-header,
    .compact-print-mode .resume-header,
    .compact-mode-active.resume-preview-container .resume-header,
    .ultra-compact-mode-active.resume-preview-container .resume-header,
    .compact-print-mode.resume-preview-container .resume-header,
    .compact-mode-active.resume-preview-container .resume-container .resume-header,
    .ultra-compact-mode-active.resume-preview-container .resume-container .resume-header,
    .compact-print-mode.resume-preview-container .resume-container .resume-header {
        margin-bottom: 0.75rem !important;
        padding: 0.5rem 0 !important;
        border-bottom: 1px solid #000 !important;
    }
    
    .compact-mode-active .resume-header h1,
    .ultra-compact-mode-active .resume-header h1,
    .compact-print-mode .resume-header h1,
    .compact-mode-active.resume-preview-container .resume-header h1,
    .ultra-compact-mode-active.resume-preview-container .resume-header h1,
    .compact-print-mode.resume-preview-container .resume-header h1,
    .compact-mode-active.resume-preview-container .resume-container .resume-header h1,
    .ultra-compact-mode-active.resume-preview-container .resume-container .resume-header h1,
    .compact-print-mode.resume-preview-container .resume-container .resume-header h1 {
        font-size: 1.5rem !important;
        margin: 0 0 0.25rem 0 !important;
        line-height: 1.2 !important;
    }
    
    .compact-mode-active .resume-header .title,
    .compact-mode-active .resume-header .job-title,
    .ultra-compact-mode-active .resume-header .title,
    .ultra-compact-mode-active .resume-header .job-title,
    .compact-print-mode .resume-header .title,
    .compact-print-mode .resume-header .job-title,
    .compact-mode-active.resume-preview-container .resume-header .title,
    .compact-mode-active.resume-preview-container .resume-header .job-title,
    .ultra-compact-mode-active.resume-preview-container .resume-header .title,
    .ultra-compact-mode-active.resume-preview-container .resume-header .job-title,
    .compact-print-mode.resume-preview-container .resume-header .title,
    .compact-print-mode.resume-preview-container .resume-header .job-title,
    .compact-mode-active.resume-preview-container .resume-container .resume-header .title,
    .compact-mode-active.resume-preview-container .resume-container .resume-header .job-title,
    .ultra-compact-mode-active.resume-preview-container .resume-container .resume-header .title,
    .ultra-compact-mode-active.resume-preview-container .resume-container .resume-header .job-title,
    .compact-print-mode.resume-preview-container .resume-container .resume-header .title,
    .compact-print-mode.resume-preview-container .resume-container .resume-header .job-title {
        font-size: 1rem !important;
        margin: 0 0 0.25rem 0 !important;
    }
    
    /* Compact contact info */
    .compact-mode-active .contact-info,
    .ultra-compact-mode-active .contact-info,
    .compact-print-mode .contact-info,
    .compact-mode-active.resume-preview-container .contact-info,
    .ultra-compact-mode-active.resume-preview-container .contact-info,
    .compact-print-mode.resume-preview-container .contact-info,
    .compact-mode-active.resume-preview-container .resume-container .contact-info,
    .ultra-compact-mode-active.resume-preview-container .resume-container .contact-info,
    .compact-print-mode.resume-preview-container .resume-container .contact-info {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 0.5rem !important;
        margin: 0.25rem 0 0 0 !important;
        font-size: 0.8rem !important;
    }
    
    .compact-mode-active .contact-info span,
    .compact-mode-active .contact-info p,
    .ultra-compact-mode-active .contact-info span,
    .ultra-compact-mode-active .contact-info p,
    .compact-print-mode .contact-info span,
    .compact-print-mode .contact-info p,
    .compact-mode-active.resume-preview-container .contact-info span,
    .compact-mode-active.resume-preview-container .contact-info p,
    .ultra-compact-mode-active.resume-preview-container .contact-info span,
    .ultra-compact-mode-active.resume-preview-container .contact-info p,
    .compact-print-mode.resume-preview-container .contact-info span,
    .compact-print-mode.resume-preview-container .contact-info p,
    .compact-mode-active.resume-preview-container .resume-container .contact-info span,
    .compact-mode-active.resume-preview-container .resume-container .contact-info p,
    .ultra-compact-mode-active.resume-preview-container .resume-container .contact-info span,
    .ultra-compact-mode-active.resume-preview-container .resume-container .contact-info p,
    .compact-print-mode.resume-preview-container .resume-container .contact-info span,
    .compact-print-mode.resume-preview-container .resume-container .contact-info p {
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Profile photo optimization */
    .compact-mode-active .profile-photo,
    .ultra-compact-mode-active .profile-photo,
    .compact-print-mode .profile-photo,
    .compact-mode-active.resume-preview-container .profile-photo,
    .ultra-compact-mode-active.resume-preview-container .profile-photo,
    .compact-print-mode.resume-preview-container .profile-photo {
        width: 60px !important;
        height: 60px !important;
        margin-right: 0.75rem !important;
    }
    
    /* ===== COMPACT SECTION OPTIMIZATION ===== */
    .compact-mode-active .resume-section,
    .ultra-compact-mode-active .resume-section,
    .compact-print-mode .resume-section,
    .compact-mode-active.resume-preview-container .resume-section,
    .ultra-compact-mode-active.resume-preview-container .resume-section,
    .compact-print-mode.resume-preview-container .resume-section,
    .compact-mode-active.resume-preview-container .resume-container .resume-section,
    .ultra-compact-mode-active.resume-preview-container .resume-container .resume-section,
    .compact-print-mode.resume-preview-container .resume-container .resume-section,
    /* More specific selectors to override template CSS */
    body .compact-mode-active.resume-preview-container .resume-container .resume-section,
    body .ultra-compact-mode-active.resume-preview-container .resume-container .resume-section,
    body .compact-print-mode.resume-preview-container .resume-container .resume-section,
    html body .compact-mode-active.resume-preview-container .resume-container .resume-section,
    html body .ultra-compact-mode-active.resume-preview-container .resume-container .resume-section,
    html body .compact-print-mode.resume-preview-container .resume-container .resume-section {
        margin-bottom: 0.75rem !important;
        page-break-inside: avoid !important;
    }
    
    .compact-mode-active .resume-section:last-child,
    .ultra-compact-mode-active .resume-section:last-child,
    .compact-print-mode .resume-section:last-child,
    .compact-mode-active.resume-preview-container .resume-section:last-child,
    .ultra-compact-mode-active.resume-preview-container .resume-section:last-child,
    .compact-print-mode.resume-preview-container .resume-section:last-child,
    .compact-mode-active.resume-preview-container .resume-container .resume-section:last-child,
    .ultra-compact-mode-active.resume-preview-container .resume-container .resume-section:last-child,
    .compact-print-mode.resume-preview-container .resume-container .resume-section:last-child {
        margin-bottom: 0 !important;
    }
    
    .compact-mode-active .resume-section h2,
    .compact-mode-active .resume-section h3,
    .ultra-compact-mode-active .resume-section h2,
    .ultra-compact-mode-active .resume-section h3,
    .compact-print-mode .resume-section h2,
    .compact-print-mode .resume-section h3,
    .compact-mode-active.resume-preview-container .resume-section h2,
    .compact-mode-active.resume-preview-container .resume-section h3,
    .ultra-compact-mode-active.resume-preview-container .resume-section h2,
    .ultra-compact-mode-active.resume-preview-container .resume-section h3,
    .compact-print-mode.resume-preview-container .resume-section h2,
    .compact-print-mode.resume-preview-container .resume-section h3,
    .compact-mode-active.resume-preview-container .resume-container .resume-section h2,
    .compact-mode-active.resume-preview-container .resume-container .resume-section h3,
    .ultra-compact-mode-active.resume-preview-container .resume-container .resume-section h2,
    .ultra-compact-mode-active.resume-preview-container .resume-container .resume-section h3,
    .compact-print-mode.resume-preview-container .resume-container .resume-section h2,
    .compact-print-mode.resume-preview-container .resume-container .resume-section h3,
    .compact-mode-active.sj-resume-templates-v2 .resume-section h2,
    .compact-mode-active.sj-resume-templates-v2 .resume-section h3,
    .ultra-compact-mode-active.sj-resume-templates-v2 .resume-section h2,
    .ultra-compact-mode-active.sj-resume-templates-v2 .resume-section h3,
    .compact-print-mode.sj-resume-templates-v2 .resume-section h2,
    .compact-print-mode.sj-resume-templates-v2 .resume-section h3 {
        font-size: 1.1rem !important;
        margin: 0 0 0.5rem 0 !important;
        padding-bottom: 0.25rem !important;
        border-bottom: 1px solid #000 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
        font-weight: 600 !important;
    }
    
    /* ===== COMPACT SECTION HEADER SPACING OPTIMIZATION ===== */
    /* Reduce top margin of section headers to bring them closer to previous section */
    .compact-mode-active .resume-section h2,
    .compact-mode-active .resume-section h3,
    .ultra-compact-mode-active .resume-section h2,
    .ultra-compact-mode-active .resume-section h3,
    .compact-print-mode .resume-section h2,
    .compact-print-mode .resume-section h3,
    .compact-mode-active.resume-preview-container .resume-section h2,
    .compact-mode-active.resume-preview-container .resume-section h3,
    .ultra-compact-mode-active.resume-preview-container .resume-section h2,
    .ultra-compact-mode-active.resume-preview-container .resume-section h3,
    .compact-print-mode.resume-preview-container .resume-section h2,
    .compact-print-mode.resume-preview-container .resume-section h3,
    .compact-mode-active.resume-preview-container .resume-container .resume-section h2,
    .compact-mode-active.resume-preview-container .resume-container .resume-section h3,
    .ultra-compact-mode-active.resume-preview-container .resume-container .resume-section h2,
    .ultra-compact-mode-active.resume-preview-container .resume-container .resume-section h3,
    .compact-print-mode.resume-preview-container .resume-container .resume-section h2,
    .compact-print-mode.resume-preview-container .resume-container .resume-section h3,
    .compact-mode-active.sj-resume-templates-v2 .resume-section h2,
    .compact-mode-active.sj-resume-templates-v2 .resume-section h3,
    .ultra-compact-mode-active.sj-resume-templates-v2 .resume-section h2,
    .ultra-compact-mode-active.sj-resume-templates-v2 .resume-section h3,
    .compact-print-mode.sj-resume-templates-v2 .resume-section h2,
    .compact-print-mode.sj-resume-templates-v2 .resume-section h3 {
        margin-top: 0.25rem !important; /* Reduced from default to bring closer to previous section */
        padding-top: 0.25rem !important; /* Reduced top padding */
    }
    
    /* ===== COMPACT ITEM OPTIMIZATION ===== */
    .compact-mode-active .section-item,
    .compact-mode-active .experience-item,
    .compact-mode-active .education-item,
    .compact-mode-active .certificate-item,
    .compact-mode-active .reference-item,
    .compact-mode-active [class*="item"],
    .ultra-compact-mode-active .section-item,
    .ultra-compact-mode-active .experience-item,
    .ultra-compact-mode-active .education-item,
    .ultra-compact-mode-active .certificate-item,
    .ultra-compact-mode-active .reference-item,
    .ultra-compact-mode-active [class*="item"],
    .compact-print-mode .section-item,
    .compact-print-mode .experience-item,
    .compact-print-mode .education-item,
    .compact-print-mode .certificate-item,
    .compact-print-mode .reference-item,
    .compact-print-mode [class*="item"],
    .compact-mode-active.resume-preview-container .section-item,
    .compact-mode-active.resume-preview-container .experience-item,
    .compact-mode-active.resume-preview-container .education-item,
    .compact-mode-active.resume-preview-container .certificate-item,
    .compact-mode-active.resume-preview-container .reference-item,
    .compact-mode-active.resume-preview-container [class*="item"],
    .ultra-compact-mode-active.resume-preview-container .section-item,
    .ultra-compact-mode-active.resume-preview-container .experience-item,
    .ultra-compact-mode-active.resume-preview-container .education-item,
    .ultra-compact-mode-active.resume-preview-container .certificate-item,
    .ultra-compact-mode-active.resume-preview-container .reference-item,
    .ultra-compact-mode-active.resume-preview-container [class*="item"],
    .compact-print-mode.resume-preview-container .section-item,
    .compact-print-mode.resume-preview-container .experience-item,
    .compact-print-mode.resume-preview-container .education-item,
    .compact-print-mode.resume-preview-container .certificate-item,
    .compact-print-mode.resume-preview-container .reference-item,
    .compact-print-mode.resume-preview-container [class*="item"],
    .compact-mode-active.resume-preview-container .resume-container .section-item,
    .compact-mode-active.resume-preview-container .resume-container .experience-item,
    .compact-mode-active.resume-preview-container .resume-container .education-item,
    .compact-mode-active.resume-preview-container .resume-container .certificate-item,
    .compact-mode-active.resume-preview-container .resume-container .reference-item,
    .compact-mode-active.resume-preview-container .resume-container [class*="item"],
    .ultra-compact-mode-active.resume-preview-container .resume-container .section-item,
    .ultra-compact-mode-active.resume-preview-container .resume-container .experience-item,
    .ultra-compact-mode-active.resume-preview-container .resume-container .education-item,
    .ultra-compact-mode-active.resume-preview-container .resume-container .certificate-item,
    .ultra-compact-mode-active.resume-preview-container .resume-container .reference-item,
    .ultra-compact-mode-active.resume-preview-container .resume-container [class*="item"],
    .compact-print-mode.resume-preview-container .resume-container .section-item,
    .compact-print-mode.resume-preview-container .resume-container .experience-item,
    .compact-print-mode.resume-preview-container .resume-container .education-item,
    .compact-print-mode.resume-preview-container .resume-container .certificate-item,
    .compact-print-mode.resume-preview-container .resume-container .reference-item,
    .compact-print-mode.resume-preview-container .resume-container [class*="item"],
    /* More specific selectors to override template CSS */
    body .compact-mode-active.resume-preview-container .resume-container .section-item,
    body .compact-mode-active.resume-preview-container .resume-container .experience-item,
    body .compact-mode-active.resume-preview-container .resume-container .education-item,
    body .compact-mode-active.resume-preview-container .resume-container .certificate-item,
    body .compact-mode-active.resume-preview-container .resume-container .reference-item,
    body .compact-mode-active.resume-preview-container .resume-container [class*="item"],
    body .ultra-compact-mode-active.resume-preview-container .resume-container .section-item,
    body .ultra-compact-mode-active.resume-preview-container .resume-container .experience-item,
    body .ultra-compact-mode-active.resume-preview-container .resume-container .education-item,
    body .ultra-compact-mode-active.resume-preview-container .resume-container .certificate-item,
    body .ultra-compact-mode-active.resume-preview-container .resume-container .reference-item,
    body .ultra-compact-mode-active.resume-preview-container .resume-container [class*="item"],
    body .compact-print-mode.resume-preview-container .resume-container .section-item,
    body .compact-print-mode.resume-preview-container .resume-container .experience-item,
    body .compact-print-mode.resume-preview-container .resume-container .education-item,
    body .compact-print-mode.resume-preview-container .resume-container .certificate-item,
    body .compact-print-mode.resume-preview-container .resume-container .reference-item,
    body .compact-print-mode.resume-preview-container .resume-container [class*="item"],
    html body .compact-mode-active.resume-preview-container .resume-container .section-item,
    html body .compact-mode-active.resume-preview-container .resume-container .experience-item,
    html body .compact-mode-active.resume-preview-container .resume-container .education-item,
    html body .compact-mode-active.resume-preview-container .resume-container .certificate-item,
    html body .compact-mode-active.resume-preview-container .resume-container .reference-item,
    html body .compact-mode-active.resume-preview-container .resume-container [class*="item"],
    html body .ultra-compact-mode-active.resume-preview-container .resume-container .section-item,
    html body .ultra-compact-mode-active.resume-preview-container .resume-container .experience-item,
    html body .ultra-compact-mode-active.resume-preview-container .resume-container .education-item,
    html body .ultra-compact-mode-active.resume-preview-container .resume-container .certificate-item,
    html body .ultra-compact-mode-active.resume-preview-container .resume-container .reference-item,
    html body .ultra-compact-mode-active.resume-preview-container .resume-container [class*="item"],
    html body .compact-print-mode.resume-preview-container .resume-container .section-item,
    html body .compact-print-mode.resume-preview-container .resume-container .experience-item,
    html body .compact-print-mode.resume-preview-container .resume-container .education-item,
    html body .compact-print-mode.resume-preview-container .resume-container .certificate-item,
    html body .compact-print-mode.resume-preview-container .resume-container .reference-item,
    html body .compact-print-mode.resume-preview-container .resume-container [class*="item"],
    .compact-mode-active.sj-resume-templates-v2 .section-item,
    .compact-mode-active.sj-resume-templates-v2 .experience-item,
    .compact-mode-active.sj-resume-templates-v2 .education-item,
    .compact-mode-active.sj-resume-templates-v2 .certificate-item,
    .compact-mode-active.sj-resume-templates-v2 .reference-item,
    .compact-mode-active.sj-resume-templates-v2 [class*="item"],
    .ultra-compact-mode-active.sj-resume-templates-v2 .section-item,
    .ultra-compact-mode-active.sj-resume-templates-v2 .experience-item,
    .ultra-compact-mode-active.sj-resume-templates-v2 .education-item,
    .ultra-compact-mode-active.sj-resume-templates-v2 .certificate-item,
    .ultra-compact-mode-active.sj-resume-templates-v2 .reference-item,
    .ultra-compact-mode-active.sj-resume-templates-v2 [class*="item"],
    .compact-print-mode.sj-resume-templates-v2 .section-item,
    .compact-print-mode.sj-resume-templates-v2 .experience-item,
    .compact-print-mode.sj-resume-templates-v2 .education-item,
    .compact-print-mode.sj-resume-templates-v2 .certificate-item,
    .compact-print-mode.sj-resume-templates-v2 .reference-item,
    .compact-print-mode.sj-resume-templates-v2 [class*="item"] {
        margin-bottom: 0.5rem !important;
        padding: 0 !important;
    }
    
    .compact-mode-active .section-item:last-child,
    .compact-mode-active .experience-item:last-child,
    .compact-mode-active .education-item:last-child,
    .compact-mode-active .certificate-item:last-child,
    .compact-mode-active .reference-item:last-child,
    .compact-mode-active [class*="item"]:last-child,
    .ultra-compact-mode-active .section-item:last-child,
    .ultra-compact-mode-active .experience-item:last-child,
    .ultra-compact-mode-active .education-item:last-child,
    .ultra-compact-mode-active .certificate-item:last-child,
    .ultra-compact-mode-active .reference-item:last-child,
    .ultra-compact-mode-active [class*="item"]:last-child,
    .compact-print-mode .section-item:last-child,
    .compact-print-mode .experience-item:last-child,
    .compact-print-mode .education-item:last-child,
    .compact-print-mode .certificate-item:last-child,
    .compact-print-mode .reference-item:last-child,
    .compact-print-mode [class*="item"]:last-child {
        margin-bottom: 0 !important;
    }
    
    /* Compact item headers */
    .compact-mode-active .item-header h3,
    .compact-mode-active .experience-item h3,
    .compact-mode-active .education-item h3,
    .compact-mode-active .certificate-item h3,
    .compact-mode-active .reference-item h3,
    .ultra-compact-mode-active .item-header h3,
    .ultra-compact-mode-active .experience-item h3,
    .ultra-compact-mode-active .education-item h3,
    .ultra-compact-mode-active .certificate-item h3,
    .ultra-compact-mode-active .reference-item h3,
    .compact-print-mode .item-header h3,
    .compact-print-mode .experience-item h3,
    .compact-print-mode .education-item h3,
    .compact-print-mode .certificate-item h3,
    .compact-print-mode .reference-item h3 {
        font-size: 1rem !important;
        margin: 0 0 0.125rem 0 !important;
        font-weight: 600 !important;
    }
    
    /* Compact company/school info */
    .compact-mode-active .company,
    .compact-mode-active .school,
    .compact-mode-active .issuer,
    .ultra-compact-mode-active .company,
    .ultra-compact-mode-active .school,
    .ultra-compact-mode-active .issuer,
    .compact-print-mode .company,
    .compact-print-mode .school,
    .compact-print-mode .issuer {
        font-size: 0.9rem !important;
        margin: 0 0 0.125rem 0 !important;
        font-weight: 500 !important;
    }
    
    /* Compact dates */
    .compact-mode-active .date,
    .compact-mode-active .period,
    .compact-mode-active .year,
    .ultra-compact-mode-active .date,
    .ultra-compact-mode-active .period,
    .ultra-compact-mode-active .year,
    .compact-print-mode .date,
    .compact-print-mode .period,
    .compact-print-mode .year {
        font-size: 0.8rem !important;
        margin: 0 0 0.25rem 0 !important;
        color: #666 !important;
    }
    
    /* Compact descriptions */
    .compact-mode-active .description,
    .compact-mode-active .item-content,
    .compact-mode-active .job-description,
    .ultra-compact-mode-active .description,
    .ultra-compact-mode-active .item-content,
    .ultra-compact-mode-active .job-description,
    .compact-print-mode .description,
    .compact-print-mode .item-content,
    .compact-print-mode .job-description {
        font-size: 0.85rem !important;
        line-height: 1.3 !important;
        margin: 0.25rem 0 0 0 !important;
    }
    
    /* ===== COMPACT SKILLS OPTIMIZATION ===== */
    .compact-mode-active .skills-grid,
    .ultra-compact-mode-active .skills-grid,
    .compact-print-mode .skills-grid {
        display: grid !important;
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
        gap: 0.5rem !important;
    }
    
    .compact-mode-active .skill-item,
    .ultra-compact-mode-active .skill-item,
    .compact-print-mode .skill-item {
        padding: 0.25rem 0.5rem !important;
        margin: 0 !important;
        font-size: 0.8rem !important;
    }
    
    .compact-mode-active .skill-name,
    .ultra-compact-mode-active .skill-name,
    .compact-print-mode .skill-name {
        font-size: 0.8rem !important;
        margin: 0 !important;
    }
    
    /* ===== COMPACT REFERENCES OPTIMIZATION ===== */
    .compact-mode-active .references-grid,
    .ultra-compact-mode-active .references-grid,
    .compact-print-mode .references-grid {
        display: grid !important;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
        gap: 0.5rem !important;
    }
    
    .compact-mode-active .reference-item,
    .ultra-compact-mode-active .reference-item,
    .compact-print-mode .reference-item {
        padding: 0.25rem 0.5rem !important;
        margin: 0 !important;
    }
    
    .compact-mode-active .reference-item h3,
    .ultra-compact-mode-active .reference-item h3,
    .compact-print-mode .reference-item h3 {
        font-size: 0.9rem !important;
        margin: 0 0 0.125rem 0 !important;
    }
    
    .compact-mode-active .reference-item p,
    .ultra-compact-mode-active .reference-item p,
    .compact-print-mode .reference-item p {
        font-size: 0.8rem !important;
        margin: 0.0625rem 0 !important;
    }
    
    /* ===== COMPACT SUMMARY OPTIMIZATION ===== */
    .compact-mode-active .resume-section.summary .section-content,
    .ultra-compact-mode-active .resume-section.summary .section-content,
    .compact-print-mode .resume-section.summary .section-content {
        padding: 0.5rem !important;
        margin: 0 !important;
    }
    
    .compact-mode-active .resume-section.summary p,
    .ultra-compact-mode-active .resume-section.summary p,
    .compact-print-mode .resume-section.summary p {
        font-size: 0.85rem !important;
        line-height: 1.3 !important;
        margin: 0 !important;
    }
    
    /* ===== INTELLIGENT SCALING ===== */
    /* Detect content length and scale accordingly */
    .compact-mode-active .resume-container:has(.resume-section:nth-child(6)),
    .ultra-compact-mode-active .resume-container:has(.resume-section:nth-child(6)),
    .compact-print-mode .resume-container:has(.resume-section:nth-child(6)) {
        font-size: 10pt !important;
    }
    
    .compact-mode-active .resume-container:has(.resume-section:nth-child(7)),
    .ultra-compact-mode-active .resume-container:has(.resume-section:nth-child(7)),
    .compact-print-mode .resume-container:has(.resume-section:nth-child(7)) {
        font-size: 9pt !important;
    }
    
    .compact-mode-active .resume-container:has(.resume-section:nth-child(8)),
    .ultra-compact-mode-active .resume-container:has(.resume-section:nth-child(8)),
    .compact-print-mode .resume-container:has(.resume-section:nth-child(8)) {
        font-size: 8pt !important;
    }
    
    /* ===== PAGE BREAK OPTIMIZATION ===== */
    /* Prevent awkward breaks */
    .compact-mode-active .resume-section,
    .ultra-compact-mode-active .resume-section,
    .compact-print-mode .resume-section {
        page-break-inside: avoid !important;
    }
    
    .compact-mode-active .section-item,
    .compact-mode-active .experience-item,
    .compact-mode-active .education-item,
    .compact-mode-active [class*="item"],
    .ultra-compact-mode-active .section-item,
    .ultra-compact-mode-active .experience-item,
    .ultra-compact-mode-active .education-item,
    .ultra-compact-mode-active [class*="item"],
    .compact-print-mode .section-item,
    .compact-print-mode .experience-item,
    .compact-print-mode .education-item,
    .compact-print-mode [class*="item"] {
        page-break-inside: avoid !important;
    }
    
    /* Force page break before references if needed */
    .compact-mode-active .resume-section:has(h2:contains("References")),
    .ultra-compact-mode-active .resume-section:has(h2:contains("References")),
    .compact-print-mode .resume-section:has(h2:contains("References")) {
        page-break-before: auto !important;
    }
    
    /* ===== TEMPLATE-SPECIFIC OPTIMIZATIONS ===== */
    
    /* Modern Template */
    .compact-mode-active .modern-template .resume-header,
    .ultra-compact-mode-active .modern-template .resume-header,
    .compact-print-mode .modern-template .resume-header {
        padding: 0.5rem 0 !important;
    }
    
    .compact-mode-active .modern-template .section-item,
    .ultra-compact-mode-active .modern-template .section-item,
    .compact-print-mode .modern-template .section-item {
        margin-bottom: 0.5rem !important;
    }
    
    /* Classic Template */
    .compact-mode-active .classic-template .resume-section h2,
    .ultra-compact-mode-active .classic-template .resume-section h2,
    .compact-print-mode .classic-template .resume-section h2 {
        font-size: 1rem !important;
        margin-bottom: 0.375rem !important;
    }
    
    /* Compact Template */
    .compact-mode-active .compact-template,
    .ultra-compact-mode-active .compact-template,
    .compact-print-mode .compact-template {
        font-size: 10pt !important;
    }
    
    .compact-mode-active .compact-template .resume-header h1,
    .ultra-compact-mode-active .compact-template .resume-header h1,
    .compact-print-mode .compact-template .resume-header h1 {
        font-size: 1.25rem !important;
    }
    
    .compact-mode-active .compact-template .resume-section,
    .ultra-compact-mode-active .compact-template .resume-section,
    .compact-print-mode .compact-template .resume-section {
        margin-bottom: 0.5rem !important;
    }
    
    /* Creative Template */
    .compact-mode-active .creative-template .resume-header,
    .ultra-compact-mode-active .creative-template .resume-header,
    .compact-print-mode .creative-template .resume-header {
        margin: 0 0 0.75rem 0 !important;
        padding: 0.5rem 0 !important;
        border-radius: 0 !important;
        background: none !important;
        color: black !important;
    }
    
    /* Portfolio Template */
    .compact-mode-active .portfolio-template .resume-header,
    .ultra-compact-mode-active .portfolio-template .resume-header,
    .compact-print-mode .portfolio-template .resume-header {
        margin: 0 0 0.75rem 0 !important;
        padding: 0.5rem 0 !important;
        border-radius: 0 !important;
        background: none !important;
        color: black !important;
    }
    
    /* Photo Templates */
    .compact-mode-active .photo-modern-template .profile-photo,
    .compact-mode-active .sidebar-photo-template .profile-photo,
    .compact-mode-active .elegant-photo-template .profile-photo,
    .compact-mode-active .timeline-photo-template .profile-photo,
    .ultra-compact-mode-active .photo-modern-template .profile-photo,
    .ultra-compact-mode-active .sidebar-photo-template .profile-photo,
    .ultra-compact-mode-active .elegant-photo-template .profile-photo,
    .ultra-compact-mode-active .timeline-photo-template .profile-photo,
    .compact-print-mode .photo-modern-template .profile-photo,
    .compact-print-mode .sidebar-photo-template .profile-photo,
    .compact-print-mode .elegant-photo-template .profile-photo,
    .compact-print-mode .timeline-photo-template .profile-photo {
        width: 50px !important;
        height: 50px !important;
    }
    
    /* ===== ULTRA-COMPACT MODE FOR LONG RESUMES ===== */
    /* Apply when content is very long */
    .compact-mode-active .resume-container.ultra-compact,
    .ultra-compact-mode-active .resume-container.ultra-compact,
    .compact-print-mode .resume-container.ultra-compact {
        font-size: 9pt !important;
        padding: 0.25in !important;
    }
    
    .compact-mode-active .resume-container.ultra-compact .resume-header h1,
    .ultra-compact-mode-active .resume-container.ultra-compact .resume-header h1,
    .compact-print-mode .resume-container.ultra-compact .resume-header h1 {
        font-size: 1.25rem !important;
    }
    
    .compact-mode-active .resume-container.ultra-compact .resume-section,
    .ultra-compact-mode-active .resume-container.ultra-compact .resume-section,
    .compact-print-mode .resume-container.ultra-compact .resume-section {
        margin-bottom: 0.5rem !important;
    }
    
    .compact-mode-active .resume-container.ultra-compact .section-item,
    .ultra-compact-mode-active .resume-container.ultra-compact .section-item,
    .compact-print-mode .resume-container.ultra-compact .section-item {
        margin-bottom: 0.25rem !important;
    }
    
    /* ===== PRINT-SPECIFIC ENHANCEMENTS ===== */
    
    /* Ensure good contrast */
    * {
        color-adjust: exact !important;
        -webkit-print-color-adjust: exact !important;
    }
    
    /* Optimize for A4/Letter paper */
    @page {
        size: A4;
        margin: 0.5in;
    }
    
    /* Alternative for Letter size */
    @page letter {
        size: letter;
        margin: 0.5in;
    }
    
    /* ===== ACCESSIBILITY FOR PRINT ===== */
    /* Ensure sufficient contrast */
    .compact-mode-active .contact-info,
    .compact-mode-active .date,
    .compact-mode-active .period,
    .compact-mode-active .year,
    .ultra-compact-mode-active .contact-info,
    .ultra-compact-mode-active .date,
    .ultra-compact-mode-active .period,
    .ultra-compact-mode-active .year,
    .compact-print-mode .contact-info,
    .compact-print-mode .date,
    .compact-print-mode .period,
    .compact-print-mode .year {
        color: #333 !important;
    }
    
    /* Make sure borders are visible */
    .compact-mode-active .resume-section h2,
    .compact-mode-active .resume-section h3,
    .ultra-compact-mode-active .resume-section h2,
    .ultra-compact-mode-active .resume-section h3,
    .compact-print-mode .resume-section h2,
    .compact-print-mode .resume-section h3 {
        border-bottom-color: #000 !important;
    }
    
    /* ===== RESPONSIVE PRINT ===== */
    /* Adjust for different paper sizes */
    @media print and (max-width: 8.5in) {
        .compact-mode-active .resume-container,
        .ultra-compact-mode-active .resume-container,
        .compact-print-mode .resume-container {
            padding: 0.25in !important;
        }
    }
    
    @media print and (min-width: 8.5in) {
        .compact-mode-active .resume-container,
        .ultra-compact-mode-active .resume-container,
        .compact-print-mode .resume-container {
            padding: 0.75in !important;
        }
    }
}

/* ===== COMPACT MODE TOGGLE (for testing) ===== */
.compact-print-mode {
    font-size: 11pt !important;
    line-height: 1.3 !important;
}

.compact-print-mode .resume-section {
    margin-bottom: 0.75rem !important;
}

.compact-print-mode .section-item {
    margin-bottom: 0.5rem !important;
}

/* ===== JAVASCRIPT-ENHANCED COMPACT MODE ===== */
/* These classes can be applied dynamically based on content length */
.compact-mode-active {
    font-size: 10pt !important;
}

.ultra-compact-mode-active {
    font-size: 9pt !important;
}

/* ===== SCREEN-SPECIFIC COMPACT MODE SPACING ===== */
/* Reduce section header spacing for screen view when compact mode is active */
.compact-mode-active .resume-section h2,
.compact-mode-active .resume-section h3,
.ultra-compact-mode-active .resume-section h2,
.ultra-compact-mode-active .resume-section h3,
.compact-print-mode .resume-section h2,
.compact-print-mode .resume-section h3,
.compact-mode-active.sj-resume-templates-v2 .resume-section h2,
.compact-mode-active.sj-resume-templates-v2 .resume-section h3,
.ultra-compact-mode-active.sj-resume-templates-v2 .resume-section h2,
.ultra-compact-mode-active.sj-resume-templates-v2 .resume-section h3,
.compact-print-mode.sj-resume-templates-v2 .resume-section h2,
.compact-print-mode.sj-resume-templates-v2 .resume-section h3 {
    margin-top: 0.05rem !important; /* Much more reduced for true compact mode */
    padding-top: 0.05rem !important; /* Much more reduced top padding */
}

/* ===== HIGHER SPECIFICITY FOR TEMPLATE OVERRIDE ===== */
/* Override template-specific CSS with higher specificity */
.compact-mode-active .modern-main h2,
.compact-mode-active .modern-main h3,
.ultra-compact-mode-active .modern-main h2,
.ultra-compact-mode-active .modern-main h3,
.compact-print-mode .modern-main h2,
.compact-print-mode .modern-main h3,
.compact-mode-active.sj-resume-templates-v2 .modern-main h2,
.compact-mode-active.sj-resume-templates-v2 .modern-main h3,
.ultra-compact-mode-active.sj-resume-templates-v2 .modern-main h2,
.ultra-compact-mode-active.sj-resume-templates-v2 .modern-main h3,
.compact-print-mode.sj-resume-templates-v2 .modern-main h2,
.compact-print-mode.sj-resume-templates-v2 .modern-main h3 {
    margin-top: 0.05rem !important; /* Much more reduced for true compact mode */
    padding-top: 0.05rem !important; /* Much more reduced top padding */
    margin-bottom: 0.05in !important; /* Much more reduced bottom margin */
}

/* ===== ULTRA HIGH SPECIFICITY FOR ALL TEMPLATES ===== */
/* Target all possible template variations */
.compact-mode-active h2,
.compact-mode-active h3,
.ultra-compact-mode-active h2,
.ultra-compact-mode-active h3,
.compact-print-mode h2,
.compact-print-mode h3,
.compact-mode-active.sj-resume-templates-v2 h2,
.compact-mode-active.sj-resume-templates-v2 h3,
.ultra-compact-mode-active.sj-resume-templates-v2 h2,
.ultra-compact-mode-active.sj-resume-templates-v2 h3,
.compact-print-mode.sj-resume-templates-v2 h2,
.compact-print-mode.sj-resume-templates-v2 h3 {
    margin-top: 0.05rem !important; /* Much more reduced for true compact mode */
    padding-top: 0.05rem !important; /* Much more reduced top padding */
}

/* ===== MAXIMUM SPECIFICITY OVERRIDE ===== */
/* Force override any template CSS with maximum specificity */
html body .compact-mode-active h2,
html body .compact-mode-active h3,
html body .ultra-compact-mode-active h2,
html body .ultra-compact-mode-active h3,
html body .compact-print-mode h2,
html body .compact-print-mode h3,
html body .compact-mode-active.sj-resume-templates-v2 h2,
html body .compact-mode-active.sj-resume-templates-v2 h3,
html body .ultra-compact-mode-active.sj-resume-templates-v2 h2,
html body .ultra-compact-mode-active.sj-resume-templates-v2 h3,
html body .compact-print-mode.sj-resume-templates-v2 h2,
html body .compact-print-mode.sj-resume-templates-v2 h3 {
    margin-top: 0.05rem !important; /* Much more reduced for true compact mode */
    padding-top: 0.05rem !important; /* Much more reduced top padding */
    margin-bottom: 0.05in !important; /* Much more reduced bottom margin */
}

/* ===== ULTRA AGGRESSIVE OVERRIDE ===== */
/* Use maximum specificity and force override everything */
html body .compact-mode-active h2,
html body .compact-mode-active h3,
html body .ultra-compact-mode-active h2,
html body .ultra-compact-mode-active h3,
html body .compact-print-mode h2,
html body .compact-print-mode h3,
html body .compact-mode-active.sj-resume-templates-v2 h2,
html body .compact-mode-active.sj-resume-templates-v2 h3,
html body .ultra-compact-mode-active.sj-resume-templates-v2 h2,
html body .ultra-compact-mode-active.sj-resume-templates-v2 h3,
html body .compact-print-mode.sj-resume-templates-v2 h2,
html body .compact-print-mode.sj-resume-templates-v2 h3 {
    margin-top: 0 !important; /* Zero margin for maximum compactness */
    padding-top: 0 !important; /* Zero padding for maximum compactness */
    margin-bottom: 0.02in !important; /* Minimal bottom margin */
}



/* ===== TARGET POTENTIAL SPACING CULPRITS ===== */
/* Target section containers and any potential spacing elements */
.compact-mode-active .resume-section,
.ultra-compact-mode-active .resume-section,
.compact-print-mode .resume-section,
.compact-mode-active.sj-resume-templates-v2 .resume-section,
.ultra-compact-mode-active.sj-resume-templates-v2 .resume-section,
.compact-print-mode.sj-resume-templates-v2 .resume-section {
    margin-top: 0 !important;
    padding-top: 0 !important;
}



/* Target any potential spacing elements within sections */
.compact-mode-active .resume-section > *,
.ultra-compact-mode-active .resume-section > *,
.compact-print-mode .resume-section > *,
.compact-mode-active.sj-resume-templates-v2 .resume-section > *,
.ultra-compact-mode-active.sj-resume-templates-v2 .resume-section > *,
.compact-print-mode.sj-resume-templates-v2 .resume-section > * {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* Target specific template elements that might cause spacing */
.compact-mode-active .modern-main-section,
.ultra-compact-mode-active .modern-main-section,
.compact-print-mode .modern-main-section,
.compact-mode-active.sj-resume-templates-v2 .modern-main-section,
.ultra-compact-mode-active.sj-resume-templates-v2 .modern-main-section,
.compact-print-mode.sj-resume-templates-v2 .modern-main-section {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-bottom: 0.1in !important;
}



/* ===== PRINT PREVIEW OPTIMIZATION ===== */
@media screen and (max-width: 8.5in) {
    .print-preview-mode .resume-container {
        width: 8.5in !important;
        height: 11in !important;
        margin: 0 auto !important;
        box-shadow: 0 0 10px rgba(0,0,0,0.3) !important;
    }
} 