/* CV_Builder_Pro_EN/css/template-classic.css */

/* This template provides a traditional, serif-font based layout.
  It uses CSS variables for accent colors that can be overridden by themeCustomizer.js.
*/

/* Define a local scope for the accent color variable for this template */
.cv-template-classic-container {
    --cv-accent-color-local: var(--cv-accent-color, var(--accent-color-default)); /* Fallback to global default */
    font-family: var(--font-family-serif); /* 'Georgia', 'Times New Roman', Times, serif */
    color: #222222; /* Darker text for classic feel */
    background-color: var(--surface-color); /* White paper */
    padding: 2cm 1.8cm 1.5cm 1.8cm; /* Top, H, Bottom, H margins */
    border: 1px solid #cccccc; /* Subtle border for the "paper" on screen */
    line-height: 1.45; /* Slightly tighter line height for serif */
    font-size: 11pt; /* Common font size for classic CVs */
}

/* Links within this template */
.cv-template-classic-container a {
    color: var(--cv-accent-color-local);
    text-decoration: none;
}
.cv-template-classic-container a:hover,
.cv-template-classic-container a:focus {
    text-decoration: underline;
}

/* Header Section */
.classic-cv-header {
    text-align: center;
    margin-bottom: 20px;
    padding-bottom: 15px;
    border-bottom: 2px solid #333333;
}
.classic-cv-profile-image {
    width: 100px;
    height: 100px;
    border-radius: 50%; /* Classic circular image */
    object-fit: cover;
    margin: 0 auto 10px auto; /* Center the image */
    border: 3px solid #dddddd;
    background-color: #f0f0f0; /* Placeholder bg */
}
.classic-cv-name {
    font-size: 24pt; /* Larger name for emphasis */
    font-weight: bold;
    margin-bottom: 4px;
    color: #111111;
    letter-spacing: 0.5px;
}
.classic-cv-job-title {
    font-size: 13pt;
    color: var(--cv-accent-color-local); /* Use accent color */
    margin-bottom: 10px;
    font-weight: 500; /* Semi-bold */
}
.classic-cv-contact-info {
    font-size: 10pt;
    color: #444444;
}
.classic-cv-contact-info p {
    margin: 1px 0;
    line-height: 1.5;
}
.classic-cv-contact-info p strong { /* For labels like Email:, Phone: */
    font-weight: 600;
    color: #333333;
}
.classic-cv-contact-info .contact-separator {
    margin: 0 5px;
    color: #888888;
}


/* General Section Styling */
.classic-cv-section {
    margin-bottom: 18px;
}
.classic-cv-section-title {
    font-size: 14pt;
    font-weight: bold;
    color: #222222;
    border-bottom: 1px solid #555555;
    padding-bottom: 4px;
    margin-bottom: 10px;
    text-transform: uppercase; /* Common in classic CVs */
    letter-spacing: 1px;
}
/* Optional: Accent color for section titles */
.classic-cv-section-title.use-accent-border {
    border-bottom: 1.5px solid var(--cv-accent-color-local);
}


/* Profile Summary Section */
.classic-cv-profile-summary p {
    font-size: 11pt;
    text-align: justify; /* Justified text common in classic formats */
    margin-bottom: 0;
}

/* Experience & Education Entry Styling */
.classic-cv-entry {
    margin-bottom: 15px;
}
.classic-cv-entry-header {
    display: flex; /* For title and date alignment */
    justify-content: space-between;
    align-items: baseline; /* Align baselines of title and date */
    margin-bottom: 2px;
}
.classic-cv-entry-title { /* e.g., Job Title, Degree Name */
    font-size: 12pt;
    font-weight: bold;
    color: #333333;
}
.classic-cv-entry-duration {
    font-size: 10pt;
    color: #555555;
    font-style: italic;
    white-space: nowrap; /* Prevent date from wrapping if possible */
}
.classic-cv-entry-subtitle { /* e.g., Company Name & Location, Institution Name & Location */
    font-size: 11pt;
    font-weight: 500; /* Semi-bold */
    color: var(--cv-accent-color-local); /* Accent for subtitle */
    margin-bottom: 4px;
}
.classic-cv-entry-description {
    font-size: 10.5pt;
    color: #444444;
    margin-left: 15px; /* Indent descriptions */
    text-align: justify;
}
.classic-cv-entry-description ul {
    list-style-type: disc; /* Standard bullets */
    margin: 5px 0 0 0;
    padding-left: 18px; /* Further indent for bullets */
}
.classic-cv-entry-description ul li {
    margin-bottom: 3px;
    line-height: 1.4;
}


/* Skills & Languages Section Styling */
.classic-cv-skills-list,
.classic-cv-languages-list {
    list-style-type: none;
    padding-left: 0;
    columns: 2; /* Display skills/languages in two columns if space allows */
    column-gap: 30px;
}
.classic-cv-skills-list li,
.classic-cv-languages-list li {
    font-size: 10.5pt;
    margin-bottom: 6px;
    display: flex; /* For aligning skill name and level */
    justify-content: space-between;
    padding-right: 10px; /* Space before level */
    page-break-inside: avoid; /* Try not to break list items */
}
.classic-cv-skills-list .skill-name, /* Class to be added by JS */
.classic-cv-languages-list .language-name { /* Class to be added by JS */
    font-weight: 500;
    color: #333333;
}
.classic-cv-skills-list .skill-level, /* Class to be added by JS */
.classic-cv-languages-list .language-level { /* Class to be added by JS */
    color: #555555;
    font-style: italic;
    white-space: nowrap;
}
@media (max-width: 500px) { /* Single column for skills/languages on very small CV previews */
    .classic-cv-skills-list,
    .classic-cv-languages-list {
        columns: 1;
    }
}

/* Custom Sections */
.classic-cv-custom-section-content p {
    font-size: 10.5pt;
    text-align: justify;
}
.classic-cv-custom-section-content ul {
    list-style-type: disc;
    margin: 5px 0 0 15px;
    padding-left: 18px;
}
.classic-cv-custom-section-content ul li {
    margin-bottom: 3px;
    line-height: 1.4;
}


/* References Section */
.classic-cv-reference-entry {
    margin-bottom: 10px;
}
.classic-cv-reference-entry p {
    margin: 0 0 2px 0;
    font-size: 10.5pt;
    line-height: 1.4;
}
.classic-cv-reference-entry .ref-name { /* Class to be added by JS */
    font-weight: bold;
    color: #333333;
}
.classic-cv-reference-entry .ref-contact { /* Class to be added by JS */
    color: #444444;
}
.classic-cv-reference-entry .ref-relation { /* Class to be added by JS */
    font-style: italic;
    color: #555555;
}


/* Print specific adjustments for this template */
@media print {
    .cv-template-classic-container {
        border: none !important; /* No border for actual print */
        padding: 1.5cm 1.5cm 1cm 1.5cm; /* Adjust print margins if needed */
        font-size: 10pt !important; /* Slightly smaller for print if desired */
        /* color-adjust must be in the main print block in style.css for broader effect */
    }
    .classic-cv-name {
        font-size: 22pt !important;
    }
    .classic-cv-job-title {
        font-size: 12pt !important;
    }
    .classic-cv-section-title {
        font-size: 13pt !important;
    }
    /* Ensure accent colors print if applied via JS changing --cv-accent-color-local */
    .classic-cv-job-title,
    .classic-cv-entry-subtitle,
    .cv-template-classic-container a {
        color: var(--cv-accent-color-local) !important;
    }
    .classic-cv-section-title.use-accent-border {
         border-bottom-color: var(--cv-accent-color-local) !important;
    }
}


