/* ============================================
   Toolora Resume Builder - Template Styles
   10 Professional Resume Templates
   ============================================ */

.trb-resume { 
    font-family: 'Segoe UI', Arial, sans-serif; 
    font-size: 11pt; 
    line-height: 1.5; 
    color: #333; 
    padding: 40px;
    box-sizing: border-box;
    width: 210mm;
    min-height: 297mm;
    --accent: #1a7f4e;
}
.trb-resume h1, .trb-resume h2, .trb-resume h3 { margin: 0; }
.trb-resume p { margin: 0 0 5px; }

.trb-photo-circle { width: 100px; height: 100px; border-radius: 50%; object-fit: cover; }
.trb-photo-square { width: 100px; height: 120px; object-fit: cover; border-radius: 4px; }
.trb-section-title { font-size: 14pt; font-weight: 700; color: var(--accent); margin: 20px 0 10px; padding-bottom: 4px; border-bottom: 2px solid var(--accent); text-transform: uppercase; letter-spacing: 0.5px; }
.trb-item { margin-bottom: 12px; }
.trb-item-title { font-weight: 700; font-size: 12pt; color: #222; }
.trb-item-sub { color: #666; font-size: 10pt; font-style: italic; margin-bottom: 4px; }
.trb-item-desc { font-size: 10.5pt; color: #444; }

.trb-skills-grid { display: flex; flex-wrap: wrap; gap: 8px; }
.trb-skill-tag { background: var(--accent); color: #fff; padding: 4px 12px; border-radius: 15px; font-size: 10pt; }

.trb-contact-row { display: flex; flex-wrap: wrap; gap: 15px; font-size: 10pt; color: #555; }
.trb-contact-row span { display: inline-flex; align-items: center; gap: 4px; }

/* ============ TEMPLATE 1: MODERN ============ */
.trb-template-modern { padding: 0; }
.trb-template-modern .trb-header-block {
    background: var(--accent); color: #fff; padding: 30px 40px; display: flex; align-items: center; gap: 25px;
}
.trb-template-modern .trb-header-text h1 { font-size: 28pt; font-weight: 700; }
.trb-template-modern .trb-header-text .trb-title { font-size: 13pt; opacity: 0.9; margin-top: 5px; }
.trb-template-modern .trb-header-text .trb-contact-row { color: #e8f5ee; margin-top: 10px; }
.trb-template-modern .trb-body { padding: 25px 40px; }
.trb-template-modern .trb-section-title { color: var(--accent); border-bottom-color: var(--accent); }

/* ============ TEMPLATE 2: CLASSIC ============ */
.trb-template-classic { font-family: 'Georgia', 'Times New Roman', serif; }
.trb-template-classic .trb-header-block { text-align: center; border-bottom: 3px double var(--accent); padding-bottom: 15px; margin-bottom: 15px; }
.trb-template-classic h1 { font-size: 26pt; color: var(--accent); }
.trb-template-classic .trb-title { font-size: 13pt; color: #666; margin: 5px 0 10px; font-style: italic; }
.trb-template-classic .trb-contact-row { justify-content: center; }
.trb-template-classic .trb-section-title { border-bottom-style: solid; }

/* ============ TEMPLATE 3: MINIMALIST ============ */
.trb-template-minimalist { font-family: 'Helvetica Neue', Arial, sans-serif; }
.trb-template-minimalist h1 { font-size: 30pt; font-weight: 300; letter-spacing: -1px; color: #222; }
.trb-template-minimalist .trb-title { font-size: 12pt; color: #888; margin: 4px 0 12px; }
.trb-template-minimalist .trb-section-title { border-bottom: none; font-size: 11pt; color: #999; letter-spacing: 2px; margin: 25px 0 10px; }
.trb-template-minimalist .trb-skill-tag { background: none; color: #333; border: 1px solid #ddd; }

/* ============ TEMPLATE 4: CREATIVE ============ */
.trb-template-creative { padding: 0; display: grid; grid-template-columns: 35% 65%; min-height: 297mm; }
.trb-template-creative .trb-sidebar { background: var(--accent); color: #fff; padding: 30px 20px; }
.trb-template-creative .trb-main { padding: 30px 25px; }
.trb-template-creative .trb-photo-circle { margin: 0 auto 15px; display: block; border: 4px solid #fff; }
.trb-template-creative .trb-sidebar h1 { font-size: 20pt; text-align: center; }
.trb-template-creative .trb-sidebar .trb-title { text-align: center; font-size: 11pt; opacity: 0.9; margin-bottom: 15px; }
.trb-template-creative .trb-sidebar .trb-section-title { color: #fff; border-bottom-color: rgba(255,255,255,0.4); font-size: 12pt; }
.trb-template-creative .trb-sidebar .trb-skill-tag { background: rgba(255,255,255,0.2); }
.trb-template-creative .trb-main .trb-section-title { color: var(--accent); }

/* ============ TEMPLATE 5: PROFESSIONAL ============ */
.trb-template-professional { border-top: 6px solid var(--accent); }
.trb-template-professional h1 { font-size: 24pt; color: #222; }
.trb-template-professional .trb-title { color: var(--accent); font-size: 13pt; font-weight: 600; margin: 4px 0 10px; }
.trb-template-professional .trb-section-title { background: #f5f5f5; padding: 6px 12px; border-bottom: none; border-left: 4px solid var(--accent); color: #222; }

/* ============ TEMPLATE 6: EXECUTIVE ============ */
.trb-template-executive { font-family: 'Garamond', 'Georgia', serif; padding: 50px; }
.trb-template-executive h1 { font-size: 28pt; text-align: center; letter-spacing: 3px; color: #1a1a1a; }
.trb-template-executive .trb-title { text-align: center; font-size: 12pt; color: var(--accent); letter-spacing: 2px; margin: 8px 0; text-transform: uppercase; }
.trb-template-executive .trb-contact-row { justify-content: center; border-top: 1px solid #ccc; border-bottom: 1px solid #ccc; padding: 10px 0; margin: 15px 0 25px; }
.trb-template-executive .trb-section-title { text-align: center; border-bottom: none; letter-spacing: 3px; }

/* ============ TEMPLATE 7: TECH ============ */
.trb-template-tech { font-family: 'Courier New', 'Consolas', monospace; background: #f8f9fa; }
.trb-template-tech h1 { font-size: 24pt; color: var(--accent); }
.trb-template-tech h1::before { content: '> '; color: #999; }
.trb-template-tech .trb-title { color: #555; font-size: 11pt; }
.trb-template-tech .trb-section-title { font-size: 12pt; }
.trb-template-tech .trb-section-title::before { content: '## '; color: #999; }
.trb-template-tech .trb-skill-tag { font-family: 'Courier New', monospace; background: #222; color: #0f0; border-radius: 3px; }

/* ============ TEMPLATE 8: ELEGANT ============ */
.trb-template-elegant { font-family: 'Playfair Display', 'Georgia', serif; }
.trb-template-elegant .trb-header-block { text-align: center; padding: 20px 0; }
.trb-template-elegant h1 { font-size: 32pt; font-weight: 400; color: var(--accent); }
.trb-template-elegant .trb-title { font-size: 12pt; color: #888; letter-spacing: 4px; text-transform: uppercase; margin: 5px 0 12px; }
.trb-template-elegant .trb-contact-row { justify-content: center; font-size: 10pt; }
.trb-template-elegant .trb-section-title { text-align: center; border-bottom: none; font-weight: 400; letter-spacing: 4px; position: relative; }
.trb-template-elegant .trb-section-title::after { content: ''; display: block; width: 40px; height: 2px; background: var(--accent); margin: 5px auto 0; }

/* ============ TEMPLATE 9: BOLD ============ */
.trb-template-bold { padding: 0; }
.trb-template-bold .trb-header-block { background: #222; color: #fff; padding: 35px 40px; border-left: 10px solid var(--accent); }
.trb-template-bold h1 { font-size: 32pt; font-weight: 900; text-transform: uppercase; letter-spacing: 2px; }
.trb-template-bold .trb-title { font-size: 13pt; color: var(--accent); font-weight: 700; margin: 8px 0; }
.trb-template-bold .trb-body { padding: 25px 40px; }
.trb-template-bold .trb-section-title { background: var(--accent); color: #fff; padding: 6px 12px; border-bottom: none; font-weight: 800; }

/* ============ TEMPLATE 10: ATS-CLEAN ============ */
.trb-template-ats-clean { font-family: 'Arial', sans-serif; font-size: 11pt; }
.trb-template-ats-clean h1 { font-size: 20pt; color: #000; }
.trb-template-ats-clean .trb-title { font-size: 12pt; color: #333; margin: 4px 0 8px; }
.trb-template-ats-clean .trb-section-title { color: #000; border-bottom: 1px solid #000; font-size: 12pt; }
.trb-template-ats-clean .trb-skill-tag { background: none; color: #000; padding: 0; border-radius: 0; }
.trb-template-ats-clean .trb-skill-tag::after { content: ' • '; }
.trb-template-ats-clean .trb-skill-tag:last-child::after { content: ''; }

/* ============ WATERMARK ============ */
.trb-watermark {
    position: absolute; bottom: 10px; right: 20px;
    font-size: 9pt; color: #bbb; font-style: italic;
}

/* ============ PRINT STYLES ============ */
@media print {
    body * { visibility: hidden; }
    .trb-resume, .trb-resume * { visibility: visible; }
    .trb-resume { position: absolute; left: 0; top: 0; box-shadow: none; margin: 0; }
}
