/* ========== Сетка фонетических семей ========== */
.family-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* 4 колонки на ПК */
    gap: 20px;
    margin: 30px 0;
    align-items: start;
}

/* Адаптив сетки */
@media (max-width: 1024px) {
    .family-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px) {
    .family-grid { grid-template-columns: repeat(2, 1fr); }
}

/* ========== Карточка семьи ========== */
.family-item,
.family-item:hover,
.family-item:focus,
.family-item .radical-key-card,
.family-item .radical-key-card * {
    text-decoration: none !important;
}

.family-item {
    display: block;
    text-decoration: none;
    color: inherit;
    transition: transform 0.2s, box-shadow 0.2s;
    border-radius: 8px;
}

/* Ховер-эффект */
.family-item:hover {
    transform: translateY(-4px);
}

.family-item:hover .radical-key-card {
    box-shadow: 0 10px 25px rgba(44, 110, 99, 0.25); /* Мягкая нефритовая тень */
    border-color: #1B4B43; /* Темный нефрит при наведении */
}

/* Сама карточка */
.family-item .radical-key-card {
    max-width: 100%;
    margin: 0;
    padding: 15px 20px;
    border: 2px solid #2C6E63; /* Нефритовый цвет */
    border-radius: 8px; 
    box-shadow: none;
    overflow: visible;
    background-color: #F4F7F6; /* Прохладный светлый фон */
}

/* Шапка карточки */
.family-item .radical-card-top {
    font-size: 0.9em;
    margin-bottom: 8px;
    display: flex;
    justify-content: center; 
    align-items: baseline;
    gap: 10px; 
}

.family-item .family-label {
    color: #1C1814; /* Оставляем темным для контраста */
    font-weight: 600;
}

.family-item .radical-pinyin {
    color: #2C6E63; /* Нефритовый цвет для пиньиня */
    font-weight: 700;
    font-size: 1.1em; 
}

/* Блок с иероглифом */
.family-item .radical-card-main {
    min-height: 80px; 
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.family-item .radical-char {
    font-size: 75px; 
    color: #1C1814;
    font-family: 'Ma Shan Zheng', "Noto Serif SC", serif;
    line-height: 1;
}

/* Низ карточки */
.family-item .radical-card-bottom {
    font-size: 0.9em;
    padding-top: 10px;
    margin-top: 10px;
    border-top: 1px solid rgba(44, 110, 99, 0.2); /* Линия в тон рамки */
    display: flex;
    justify-content: center; 
}

.family-item .radical-meaning {
    color: #4A5D5A; /* Спокойный серо-зеленый вместо коричневого */
    font-weight: 500;
}

/* ========== Мобильная версия (телефоны) ========== */
@media (max-width: 600px) {
    .family-grid {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important; /* Принудительно 2 колонки */
        gap: 10px !important; 
    }
    
    .family-item .radical-key-card {
        padding: 10px 10px 12px !important; 
    }
    
    .family-item .radical-card-top {
        font-size: 0.75em !important; 
        gap: 5px !important; 
        flex-wrap: wrap !important; 
    }
    
    .family-item .radical-card-main {
        min-height: 60px !important; 
    }
    
    .family-item .radical-char {
        font-size: 48px !important; 
    }
    
    .family-item .radical-card-bottom {
        font-size: 0.75em !important; 
        padding-top: 6px !important;
        margin-top: 6px !important;
    }
}

/* ========== Стили для пагинации (как на Иероглифах) ========== */
.wp-pagenavi {
    clear: both;
    text-align: center;
    margin-top: 20px;
    font-family: Oswald, Arial, Helvetica, sans-serif; 
    text-transform: uppercase; 
    font-size: 13px; 
}

.wp-pagenavi .pages {
    margin-right: 10px;
}

.wp-pagenavi a, 
.wp-pagenavi span {
    text-decoration: none;
    background: #eeeeee !important; 
    color: #444444 !important; 
    border: 1px solid #cccccc !important; 
    padding: 4px 8px; 
    margin: 2px;
    display: inline-block;
}

.wp-pagenavi a:hover {
    background: #dddddd !important;
}

.wp-pagenavi span.current {
    font-weight: bold; 
}

/* ========== Фильтры семей ========== */
.family-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 25px;
    margin-top: 20px;
    justify-content: center;
}

.filter-btn {
    display: inline-block;
    padding: 8px 16px;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 20px; /* Скругленные кнопки-таблетки */
    color: #5C4B3A;
    text-decoration: none !important;
    font-size: 0.9em;
    font-weight: 500;
    transition: all 0.2s;
}

.filter-btn:hover {
    border-color: #3b4a6b;
    color: #3b4a6b;
}

/* Активная кнопка */
.filter-btn.active {
    background-color: #F4F7F6; /* Легкий прохладный фон, как у карточек */
    border-color: #2C6E63; /* Нефритовая рамка */
    color: #2C6E63 !important; /* Нефритовый текст */
    font-weight: 700;
}
