/* Cover Letter specific print settings */
@page {
    size: letter;
    margin: 0.4in 0.35in;
}

/* General page styling */
#cover-letter-content {
    font-family: "Outfit", sans-serif;
    font-optical-sizing: auto;
    line-height: 1.5;
    color: #1c1c1c;
    background: white;
    box-sizing: border-box;
    position: relative;
}

/* Screen-specific styles */
@media screen {
    #cover-letter-content {
        padding: 40px 40px 150px 40px;
        min-height: 10in;
        page-break-after: avoid;
        page-break-inside: avoid;
    }
}

/* Print-specific styles */
@media print {
    * {
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }

    body {
        margin: 0 !important;
        padding: 0 !important;
    }

    html {
        margin: 0 !important;
        padding: 0 !important;
    }

    #cover-letter-content {
        margin: 0 !important;
        padding: 1.8in 0.5in 0.25in !important;
        background: white !important;
        min-height: 11in !important;
        position: relative !important;
    }

    .gradient-header {
        page-break-after: avoid !important;
        page-break-inside: avoid !important;
        position: absolute !important;
        top: 0.2in !important;
        left: 0.5in !important;
        right: 0.5in !important;
        margin: 0 !important;
    }

    .footer-bar {
        page-break-before: avoid !important;
        position: absolute !important;
        bottom: 0.6in !important;
        left: 0.5in !important;
        right: 0.5in !important;
        margin: 0 !important;
        padding: 18px !important;
    }

    #cover-letter-content>p:first-of-type,
    #cover-letter-content>p,
    #cover-letter-content>strong {
        margin-top: 0 !important;
    }

    #cover-letter-content hr {
        display: none !important;
    }
}

/* Gradient Header */
#cover-letter-content .gradient-header {
    background: linear-gradient(90deg, #5db3ff, #ff9bbf, #ffd1a9);
    padding: 20px 18px;
    border-radius: 8px;
    text-align: left;
    color: white;
    margin-bottom: 24px;
}

#cover-letter-content .gradient-header h1 {
    margin: 0;
    font-size: 30px;
    font-weight: 700;
    color: white;
}

#cover-letter-content .contact-line {
    margin-top: 8px;
}

#cover-letter-content .contact-line {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

#cover-letter-content .contact-line a {
    color: white;
    text-decoration: none;
    font-size: 14px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

#cover-letter-content .contact-line a .iconify {
    font-size: 16px;
}

/* Body Content */
#cover-letter-content>p,
#cover-letter-content .section {
    margin-bottom: 16px;
    font-size: 14px;
    line-height: 1.5;
    text-align: justify;
}

#cover-letter-content hr {
    display: none;
}

#cover-letter-content strong {
    font-weight: 600;
}

/* Footer Bar */
#cover-letter-content .footer-bar {
    background: linear-gradient(90deg, #5db3ff, #ff9bbf, #ffd1a9);
    padding: 18px;
    border-radius: 8px;
    text-align: center;
    color: white;
    font-size: 14px;
}

#cover-letter-content .footer-bar a {
    color: white;
    margin: 0 12px;
    text-decoration: none;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

#cover-letter-content .footer-bar a .iconify {
    font-size: 16px;
}

/* Screen-specific footer positioning */
@media screen {
    #cover-letter-content .footer-bar {
        position: absolute;
        bottom: 40px;
        left: 40px;
        right: 40px;
    }
}
/* ════════════════════════════════════════════════════
   Phase 6 — Cover Letter Style Variants
   Applied by adding a class to #cover-letter-content
   ════════════════════════════════════════════════════ */

/* ── Modern: Inter font + left accent bar on h2 ─── */
#cover-letter-content.cl-modern {
    font-family: 'Inter', 'Segoe UI', system-ui, sans-serif;
}
#cover-letter-content.cl-modern h2,
#cover-letter-content.cl-modern h3 {
    border-left: 3px solid var(--v3-accent, #1E3A5F);
    padding-left: 8px;
    color: var(--v3-accent, #1E3A5F);
}
#cover-letter-content.cl-modern h1 {
    color: var(--v3-accent, #1E3A5F);
    letter-spacing: 1px;
}

/* ── Minimal: Georgia serif, subtle and clean ───── */
#cover-letter-content.cl-minimal {
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 11pt;
    line-height: 1.6;
    color: #2d2d2d;
}
#cover-letter-content.cl-minimal h1 {
    font-size: 15pt;
    font-weight: normal;
    letter-spacing: 2px;
    text-transform: uppercase;
    border-bottom: 1px solid #ccc;
    padding-bottom: 6px;
}
#cover-letter-content.cl-minimal h2,
#cover-letter-content.cl-minimal h3 {
    font-weight: normal;
    font-style: italic;
    color: #555;
}
#cover-letter-content.cl-minimal .gradient-header {
    background: none !important;
    border-bottom: 2px solid #2d2d2d;
    padding-bottom: 12px;
}
#cover-letter-content.cl-minimal .gradient-header h1 {
    color: #2d2d2d !important;
}

/* ── Bold: Strong headings, high-contrast accent ── */
#cover-letter-content.cl-bold {
    font-family: Calibri, 'Segoe UI', Arial, sans-serif;
}
#cover-letter-content.cl-bold .gradient-header {
    background: var(--v3-accent, #1E3A5F) !important;
    color: white !important;
    border-radius: 4px 4px 0 0;
}
#cover-letter-content.cl-bold .gradient-header h1 {
    color: white !important;
    font-size: 18pt;
    font-weight: 700;
}
#cover-letter-content.cl-bold .gradient-header a {
    color: rgba(255,255,255,0.85) !important;
}
#cover-letter-content.cl-bold p strong {
    color: var(--v3-accent, #1E3A5F);
}
#cover-letter-content.cl-bold .footer-bar {
    background: var(--v3-accent, #1E3A5F) !important;
    border-radius: 0 0 4px 4px;
}

/* ── Forbidden phrase highlights in preview ─────── */
.cl-forbidden-highlight {
    background: rgba(239, 68, 68, 0.18);
    border-bottom: 2px solid #ef4444;
    border-radius: 2px;
    cursor: help;
}
