/*
Theme Name: SEO & GEO Specialist
Theme URI: https://example.com
Author: SEO & GEO Specialist
Description: Tema dark glassmorphism per SEO & GEO Specialist.
Version: 1.3.0
Requires at least: 6.0
Requires PHP: 7.2
License: Proprietary
Text Domain: seo-geo-specialist
*/

.glass-card {
    background-color: rgba(20, 20, 20, 0.6);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

/* ── NAV TOP LEVEL ── */
#primary-menu {
    display: flex;
    align-items: center;
    gap: 2rem;
    list-style: none;
    margin: 0;
    padding: 0;
}
#primary-menu > li {
    position: relative;
    list-style: none;
}
#primary-menu > li > a {
    font-family: 'Geist', sans-serif;
    font-size: 16px;
    color: #c2c6d8;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 0;
    transition: color 0.3s;
    white-space: nowrap;
}
#primary-menu > li > a:hover,
#primary-menu > li.current-menu-item > a,
#primary-menu > li.current-menu-ancestor > a {
    color: #b3c5ff;
}
#primary-menu > li.menu-item-has-children > a::after {
    content: 'expand_more';
    font-family: 'Material Symbols Outlined';
    font-size: 18px;
    line-height: 1;
    display: inline-block;
    transition: transform 0.25s ease;
}
#primary-menu > li.menu-item-has-children:hover > a::after {
    transform: rotate(180deg);
}

/* ── DROPDOWN
   Usa visibility+opacity invece di display:none
   così possiamo aggiungere un ritardo di chiusura (0.35s)
   che dà tempo al mouse di spostarsi dal link alla tendina.
   Il pannello inizia a top:100% senza gap esterno: il padding
   interno crea la separazione visiva senza creare un "buco"
   in cui il mouse perde il hover.
── */
#primary-menu .sub-menu {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    min-width: 230px;
    background: rgba(14, 14, 14, 0.97);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0.5rem;
    padding: 12px 0 8px;
    z-index: 9999;
    box-shadow: 0 8px 40px rgba(0,0,0,0.5), 0 0 0 1px rgba(0,102,255,0.08);
    list-style: none;
    margin: 0;
    /* nasconde con ritardo di 0.35s — dà tempo di raggiungere la tendina */
    transition: opacity 0.15s ease, visibility 0s linear 0.35s;
}
#primary-menu > li.menu-item-has-children:hover > .sub-menu {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    /* appare subito, nessun ritardo */
    transition: opacity 0.15s ease, visibility 0s linear 0s;
}
#primary-menu .sub-menu li {
    list-style: none;
}
#primary-menu .sub-menu li + li {
    border-top: 1px solid rgba(255,255,255,0.05);
}
#primary-menu .sub-menu li a {
    display: block;
    padding: 10px 20px;
    font-family: 'Geist', sans-serif;
    font-size: 15px;
    color: #c2c6d8;
    text-decoration: none;
    transition: background 0.2s, color 0.2s;
    white-space: nowrap;
}
#primary-menu .sub-menu li a:hover {
    background: rgba(179, 197, 255, 0.08);
    color: #b3c5ff;
}

/* ── MOBILE MENU ── */
#mob-menu ul { list-style: none; margin: 0; padding: 0; }
#mob-menu li { list-style: none; }
#mob-menu > ul > li > a {
    display: block;
    padding: 10px 0;
    font-family: 'Geist', sans-serif;
    font-size: 16px;
    color: #c2c6d8;
    text-decoration: none;
    border-bottom: 1px solid rgba(255,255,255,0.05);
}
#mob-menu .sub-menu {
    padding-left: 16px;
    border-left: 2px solid #424656;
    margin: 4px 0 8px;
}
#mob-menu .sub-menu li a {
    display: block;
    padding: 6px 0;
    font-family: 'Geist', sans-serif;
    font-size: 14px;
    color: #8c90a1;
    text-decoration: none;
}
#mob-menu .sub-menu li a:hover { color: #b3c5ff; }

/* ── RANK MATH ── */
.rank-math-breadcrumb { font-family: 'JetBrains Mono', monospace; font-size: 12px; color: #8c90a1; }
.rank-math-breadcrumb a { color: #b3c5ff; text-decoration: none; }
