/*
Theme Name:     CAJI — Centre d'Analyse Juridique Internationale
Theme URI:      https://caji-international.fr
Description:    Thème enfant Vlog configuré pour le Centre d'Analyse Juridique Internationale
Author:         CAJI
Author URI:     https://caji-international.fr
Template:       vlog
Version:        1.0
Text Domain:    vlog-caji
*/

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400;1,700&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500;9..40,600&family=DM+Mono:wght@400;500&display=swap');

:root {
    --caji-navy:     #0f1f38;
    --caji-blue:     #1a3a5c;
    --caji-accent:   #2e6da4;
    --caji-gold:     #c9a84c;
    --caji-gold-hover: #e2be6a;
    --caji-light:    #f4f1eb;
    --caji-white:    #ffffff;
    --caji-gray:     #6b7280;
    --caji-lightgray:#e8e4dc;
}

/* TYPOGRAPHIE */
body, p, li, td, input, textarea, select, button {
    font-family: 'DM Sans', sans-serif !important;
}
h1, h2, h3, h4, h5, h6, .entry-title, .entry-title a, .widget-title span, .module-title {
    font-family: 'Playfair Display', serif !important;
    color: var(--caji-navy) !important;
}

/* LIENS */
a { color: var(--caji-accent); }
a:hover { color: var(--caji-gold); }

/* HEADER */
#header, .vlog-site-header {
    background-color: var(--caji-navy) !important;
    border-bottom: 2px solid var(--caji-gold) !important;
}
.vlog-main-nav ul li a, #header .vlog-nav-item > a {
    font-family: 'DM Sans', sans-serif !important;
    font-size: 12px !important; font-weight: 600 !important;
    color: rgba(255,255,255,0.75) !important;
    letter-spacing: 0.08em !important; text-transform: uppercase !important;
}
.vlog-main-nav ul li a:hover,
.vlog-main-nav ul li.current-menu-item > a { color: var(--caji-gold) !important; }
.vlog-main-nav ul ul { background: var(--caji-navy) !important; border-top: 2px solid var(--caji-gold) !important; }
.vlog-sticky-header, #sticky-header { background-color: var(--caji-navy) !important; }
.vlog-topbar { background-color: var(--caji-blue) !important; border-bottom: 1px solid rgba(201,168,76,0.2) !important; }
.vlog-topbar, .vlog-topbar a { color: rgba(255,255,255,0.6) !important; font-size: 11px !important; }
.vlog-topbar a:hover { color: var(--caji-gold) !important; }
.vlog-responsive-header, .vlog-mobile-header { background-color: var(--caji-navy) !important; }

/* CATEGORIES */
.entry-category a, .vlog-cat-label, .cat-label {
    background-color: var(--caji-gold) !important; color: var(--caji-navy) !important;
    font-family: 'DM Mono', monospace !important; font-size: 10px !important;
    letter-spacing: 0.12em !important; text-transform: uppercase !important;
    padding: 3px 10px !important; border-radius: 0 !important;
}
.entry-category a:hover { background-color: var(--caji-navy) !important; color: var(--caji-gold) !important; }

/* CONTENU */
.vlog-site-content { background-color: var(--caji-light) !important; }
.entry-title a { font-family: 'Playfair Display', serif !important; font-weight: 700 !important; color: var(--caji-navy) !important; }
.entry-title a:hover { color: var(--caji-accent) !important; }
.meta-item, .meta-item a, .entry-date, .entry-author {
    font-family: 'DM Mono', monospace !important; font-size: 11px !important;
    color: var(--caji-gray) !important; letter-spacing: 0.05em !important;
}
.entry-content p, .entry-content li { font-size: 1rem !important; line-height: 1.85 !important; color: #333 !important; font-weight: 300 !important; }
.entry-content h2 { font-family: 'Playfair Display', serif !important; font-size: 1.6rem !important; color: var(--caji-navy) !important; border-bottom: 2px solid var(--caji-gold) !important; display: inline-block !important; }
.entry-content blockquote { border-left: 4px solid var(--caji-gold) !important; background: var(--caji-white) !important; padding: 1.5rem 2rem !important; font-family: 'Playfair Display', serif !important; font-style: italic !important; color: var(--caji-blue) !important; }

/* BOUTONS */
.vlog-btn, .vlog-read-more, button[type="submit"], input[type="submit"] {
    background-color: var(--caji-gold) !important; color: var(--caji-navy) !important;
    font-family: 'DM Sans', sans-serif !important; font-weight: 600 !important;
    font-size: 12px !important; letter-spacing: 0.1em !important;
    text-transform: uppercase !important; border: none !important;
    border-radius: 0 !important; padding: 12px 28px !important;
}
.vlog-btn:hover, .vlog-read-more:hover, button[type="submit"]:hover, input[type="submit"]:hover {
    background-color: var(--caji-gold-hover) !important; color: var(--caji-navy) !important;
}

/* WIDGETS */
.widget-title { border-bottom: 2px solid var(--caji-gold) !important; font-family: 'Playfair Display', serif !important; }
.vlog-highlight { background-color: var(--caji-navy) !important; color: var(--caji-white) !important; }
.vlog-highlight .widget-title { border-bottom-color: rgba(201,168,76,0.3) !important; }

/* PAGINATION */
.vlog-pagination a, .page-numbers { font-family: 'DM Mono', monospace !important; border-radius: 0 !important; }
.vlog-pagination .current, .page-numbers.current { background: var(--caji-gold) !important; color: var(--caji-navy) !important; border-color: var(--caji-gold) !important; }

/* FOOTER */
#footer, .vlog-site-footer { background-color: var(--caji-navy) !important; border-top: 2px solid rgba(201,168,76,0.3) !important; }
#footer .widget-title span, .vlog-site-footer .widget-title span {
    font-family: 'DM Mono', monospace !important; font-size: 11px !important;
    color: var(--caji-gold) !important; letter-spacing: 0.2em !important; text-transform: uppercase !important;
}
#footer .widget-title, .vlog-site-footer .widget-title { border-bottom-color: rgba(201,168,76,0.2) !important; }
#footer p, #footer li, #footer a, .vlog-site-footer p, .vlog-site-footer li, .vlog-site-footer a {
    color: rgba(255,255,255,0.5) !important; font-size: 0.875rem !important; font-weight: 300 !important;
}
#footer a:hover, .vlog-site-footer a:hover { color: var(--caji-white) !important; }
.vlog-copyright { background-color: rgba(0,0,0,0.3) !important; border-top: 1px solid rgba(255,255,255,0.06) !important; font-family: 'DM Mono', monospace !important; font-size: 11px !important; color: rgba(255,255,255,0.25) !important; }
.vlog-copyright a { color: rgba(255,255,255,0.35) !important; }
.vlog-copyright a:hover { color: var(--caji-gold) !important; }

/* FORMULAIRES */
input[type="text"], input[type="email"], input[type="search"], input[type="password"], textarea, select {
    border: 1px solid var(--caji-lightgray) !important; background: var(--caji-light) !important;
    border-radius: 0 !important; font-family: 'DM Sans', sans-serif !important;
}
input:focus, textarea:focus, select:focus { border-color: var(--caji-accent) !important; outline: none !important; }

/* TAGS */
.tagcloud a, .widget_tag_cloud a {
    background: transparent !important; border: 1px solid var(--caji-lightgray) !important;
    color: var(--caji-gray) !important; border-radius: 0 !important;
    font-family: 'DM Mono', monospace !important; font-size: 11px !important; padding: 4px 10px !important;
}
.tagcloud a:hover, .widget_tag_cloud a:hover { background: var(--caji-gold) !important; border-color: var(--caji-gold) !important; color: var(--caji-navy) !important; }

/* SINGLE POST */
.single .entry-title { font-size: clamp(1.8rem, 3.5vw, 3rem) !important; font-weight: 900 !important; }
.page .entry-title { font-size: 2.5rem !important; border-bottom: 3px solid var(--caji-gold) !important; padding-bottom: 0.75rem !important; display: inline-block !important; }

/* COVER */
.vlog-cover-overlay, .vlog-post-cover::after {
    background: linear-gradient(to top, rgba(15,31,56,0.95) 0%, rgba(15,31,56,0.3) 60%, transparent 100%) !important;
}

/* BREAKING NEWS */
.vlog-breaking { background: var(--caji-gold) !important; color: var(--caji-navy) !important; font-family: 'DM Mono', monospace !important; }
.vlog-breaking-label { background: var(--caji-navy) !important; color: var(--caji-gold) !important; }

/* SELECTION */
::selection { background: var(--caji-gold) !important; color: var(--caji-navy) !important; }
::-moz-selection { background: var(--caji-gold) !important; color: var(--caji-navy) !important; }

/* SCROLLBAR */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--caji-light); }
::-webkit-scrollbar-thumb { background: var(--caji-gold); }
::-webkit-scrollbar-thumb:hover { background: var(--caji-navy); }

.btn-conseil {
    padding: 14px 32px;
    background: transparent;
    color: #c9a84c !important;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    border: 1px solid #c9a84c;
    cursor: pointer;
    transition: all 0.2s;
    text-decoration: none !important;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}
.btn-conseil:hover {
    background: #c9a84c !important;
    color: #0f1f38 !important;
    transform: translateY(-1px);
}