/* ============================================================
   ObsCyber Eco-Navbar — v1.1.0
   Barre de navigation inter-sites de l'écosystème CyberLex
   ============================================================ */

/* --- Reset global page — éliminer tout fond blanc --- */
html, body {
    background-color: #080e0a !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Pour les sites GhostProbe spécifiquement */
body.ghostprobe-theme,
body.ghostprobe-theme .site,
body.ghostprobe-theme .site-content,
body.ghostprobe-theme #page,
body.ghostprobe-theme #content,
body.ghostprobe-theme .entry-content,
body.ghostprobe-theme .site-main {
    background: #080e0a !important;
}

/* --- Conteneur principal --- */
.oecn-bar {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 8px 16px;
    background: #050a05 !important;
    border-bottom: 1px solid rgba(34, 197, 94, 0.15);
    border-top: none;
    font-family: 'JetBrains Mono', 'Fira Code', 'Consolas', monospace;
    font-size: 0;
    box-sizing: border-box;
    width: 100%;
    z-index: 9999;
}

/* Position header */
.oecn-header {
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
}

/* Position footer */
.oecn-footer {
    border-bottom: none;
    border-top: 1px solid rgba(34, 197, 94, 0.12);
    margin-top: 0;
}

/* Wrapper footer */
.oecn-footer-wrap {
    width: 100%;
    background: #050a05 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* --- Label "ÉCOSYSTÈME" --- */
.oecn-label {
    font-size: 10px;
    letter-spacing: 0.12em;
    color: rgba(74, 222, 128, 0.5);
    white-space: nowrap;
    text-transform: uppercase;
}

/* --- Séparateur vertical --- */
.oecn-divider {
    display: inline-block;
    width: 1px;
    height: 20px;
    background: rgba(34, 197, 94, 0.2);
    margin: 0 4px;
    vertical-align: middle;
}

/* --- Badge commun --- */
.oecn-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 12px;
    border-radius: 20px;
    border: 0.8px solid;
    font-size: 12px;
    font-family: inherit;
    text-decoration: none;
    opacity: 0.55;
    transition: opacity 0.18s ease, transform 0.12s ease;
    white-space: nowrap;
    cursor: pointer;
    line-height: 1.4;
}

.oecn-badge:hover {
    opacity: 0.9;
    transform: translateY(-1px);
    text-decoration: none;
}

.oecn-badge:active {
    transform: translateY(0);
}

/* Badge du site courant */
.oecn-badge.oecn-current {
    opacity: 1;
    padding: 4px 14px;
    border-width: 1.5px;
    pointer-events: none;
    cursor: default;
}

/* --- Point coloré --- */
.oecn-dot {
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
}

/* --- Indicateur LIVE --- */
.oecn-live {
    font-size: 8px;
    animation: oecn-pulse 2s ease-in-out infinite;
    margin-left: 2px;
    opacity: 0.8;
}

@keyframes oecn-pulse {
    0%, 100% { opacity: 0.8; }
    50%       { opacity: 0.3; }
}

/* --- Couleurs individuelles --- */
.oecn-obscyber     { color: #22c55e;  border-color: #22c55e;  background: #0a2010; }
.oecn-quantumproof { color: #38bdf8;  border-color: #38bdf8;  background: #0a0a1a; }
.oecn-pentest      { color: #f59e0b;  border-color: #f59e0b;  background: #0f0a00; }
.oecn-ghostprobe   { color: #1bff9a;  border-color: #1bff9a;  background: #080e0a; }
.oecn-caji         { color: #d4a843;  border-color: #d4a843;  background: #0d0a00; }
.oecn-hubresearch  { color: #a78bfa;  border-color: #a78bfa;  background: #0a001a; }

/* --- Fix fond blanc thème Vlog / thèmes clairs --- */
.site-footer,
.footer-widgets,
.site-info,
footer.site-footer,
#colophon,
.wp-block-template-part {
    background: #050a05 !important;
    color: #4a7a5a !important;
    border-top: none !important;
}

/* Zone après footer */
body::after,
html::after {
    background: #080e0a !important;
}

/* Blocs WordPress vides */
.wp-site-blocks,
.wp-site-blocks > * {
    background: inherit;
}

/* --- Responsive --- */
@media (max-width: 640px) {
    .oecn-label,
    .oecn-divider { display: none; }
    .oecn-bar { padding: 6px 10px; gap: 6px; justify-content: center; }
    .oecn-badge { font-size: 11px; padding: 3px 10px; }
    .oecn-badge.oecn-current { padding: 3px 11px; }
}

@media (max-width: 400px) {
    .oecn-badge { font-size: 10px; padding: 3px 8px; gap: 4px; }
}

/* --- Forcer dark mode même si le thème est clair --- */
@media (prefers-color-scheme: light) {
    .oecn-bar { background: #050a05 !important; border-bottom-color: rgba(34,197,94,0.15); }
    .oecn-footer { border-top-color: rgba(34,197,94,0.12); }
    .oecn-label { color: rgba(74,222,128,0.5); }
    .oecn-divider { background: rgba(34,197,94,0.2); }
}

/* --- Accessibilité --- */
.oecn-badge:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 2px;
}
