/* ================================================================
   pm/tabs — Frontend styles (theme-independent)
   Skinnovate brand-defaultok: accent #333333, nav-szegély #d8d1c6
   ================================================================ */

/* ---- CSS variable defaults ---- */
.pm-tabs {
    --pm-tabs-accent:           #333333;
    --pm-tabs-nav-border:       #d8d1c6;
    --pm-tabs-inactive-opacity: 0.4;
    display: block;
    width: 100%;
}

/* ---- Tab nav ---- */
.pm-tabs-nav {
    display: flex;
    flex-wrap: nowrap;
    gap: 0;
    border-bottom: 2px solid var(--pm-tabs-nav-border);
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
}
.pm-tabs-nav::-webkit-scrollbar { display: none; }

/* ---- Tab buttons ---- */
.pm-tab-btn {
    flex-shrink: 0;
    position: relative;
    padding: 11px 20px;
    background: none !important;
    border: none !important;
    outline: none;
    cursor: pointer;
    font-family: inherit;
    font-size: inherit;
    font-weight: 600;
    letter-spacing: 0.03em;
    color: currentColor !important;
    opacity: var(--pm-tabs-inactive-opacity);
    transition: opacity 0.18s ease;
    white-space: nowrap;
    line-height: 1.4;
    margin-bottom: -2px;
    text-transform: uppercase;
}

.pm-tab-btn:hover     { opacity: 0.7; }
.pm-tab-btn.is-active { opacity: 1; }

/* Aktív jelző vonal — ::after (elkerüli a téma button reset-jét) */
.pm-tab-btn::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 10px;
    right: 10px;
    height: 2px;
    background: var(--pm-tabs-accent);
    border-radius: 2px 2px 0 0;
    transform: scaleX(0);
    transition: transform 0.18s ease;
}
.pm-tab-btn.is-active::after { transform: scaleX(1); }

/* ---- Tab panel ---- */
.pm-tab-panel {
    padding: 2rem 0;
    animation: pm-tab-fadein 0.2s ease;
}
.pm-tab-panel[hidden] { display: none; }

@keyframes pm-tab-fadein {
    from { opacity: 0; transform: translateY(5px); }
    to   { opacity: 1; transform: translateY(0);   }
}

/* ==================================================================
   STYLE VARIANTS
================================================================== */

/* ---- is-style-pills ---- */
.is-style-pills .pm-tabs-nav {
    border-bottom: none;
    gap: 4px;
    padding-bottom: 0;
    margin-bottom: 0.75rem;
}
.is-style-pills .pm-tab-btn {
    border-radius: 999px !important;
    border: 1.5px solid rgba(0, 0, 0, 0.18) !important;
    padding: 7px 18px;
    margin-bottom: 0;
    opacity: 1;
    text-transform: none;
    font-weight: 500;
    transition: border-color 0.18s ease, color 0.18s ease, opacity 0.18s ease;
}
.is-style-pills .pm-tab-btn:not(.is-active) { opacity: 0.5; }
.is-style-pills .pm-tab-btn:hover {
    opacity: 1;
    border-color: var(--pm-tabs-accent) !important;
    color: var(--pm-tabs-accent) !important;
}
.is-style-pills .pm-tab-btn.is-active {
    opacity: 1;
    border-color: var(--pm-tabs-accent) !important;
    color: var(--pm-tabs-accent) !important;
}
.is-style-pills .pm-tab-btn::after { display: none; }
.is-style-pills .pm-tab-panel      { padding: 1.5rem 0; }

/* ---- is-style-filled ---- */
.is-style-filled .pm-tabs-nav {
    border-bottom: none;
    gap: 4px;
    padding-bottom: 0;
    margin-bottom: 0.75rem;
}
.is-style-filled .pm-tab-btn {
    border-radius: 6px !important;
    padding: 8px 18px;
    margin-bottom: 0;
    opacity: 0.35;
    background: var(--pm-tabs-accent) !important;
    color: #fff !important;
    text-transform: none;
    font-weight: 500;
    transition: opacity 0.18s ease;
}
.is-style-filled .pm-tab-btn:hover     { opacity: 0.7; }
.is-style-filled .pm-tab-btn.is-active { opacity: 1; }
.is-style-filled .pm-tab-btn::after    { display: none; }
.is-style-filled .pm-tab-panel         { padding: 1.5rem 0; }

/* ---- is-style-segmented ---- */
.is-style-segmented .pm-tabs-nav {
    border-bottom: none;
    gap: 2px;
    padding: 3px;
    margin-bottom: 1rem;
    background: rgba(0, 0, 0, 0.07);
    border-radius: 10px;
    display: inline-flex;
    max-width: 100%;
}
.is-style-segmented .pm-tab-btn {
    border-radius: 8px !important;
    padding: 7px 16px;
    margin-bottom: 0;
    opacity: 1;
    color: currentColor !important;
    text-transform: none;
    font-weight: 500;
    transition: background 0.18s ease, box-shadow 0.18s ease, color 0.18s ease;
}
.is-style-segmented .pm-tab-btn:not(.is-active) { opacity: 0.55; }
.is-style-segmented .pm-tab-btn:hover           { opacity: 1; }
.is-style-segmented .pm-tab-btn.is-active {
    opacity: 1;
    background: #fff !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.14), 0 0 0 0.5px rgba(0, 0, 0, 0.06);
    color: var(--pm-tabs-accent) !important;
}
.is-style-segmented .pm-tab-btn::after { display: none; }
.is-style-segmented .pm-tab-panel      { padding: 1.5rem 0; }

/* ---- Responsive ---- */
@media (max-width: 640px) {
    .pm-tab-btn { padding: 9px 13px; font-size: 0.82em; }
    .pm-tab-btn::after { left: 6px; right: 6px; }
    .pm-tab-panel { padding: 1.25rem 0; }

    .is-style-pills .pm-tab-btn,
    .is-style-filled .pm-tab-btn,
    .is-style-segmented .pm-tab-btn { padding: 6px 12px; font-size: 0.82em; }
}
