/* =========================================================
   IPTV CHANNEL LIST — FRONTEND STYLES
   ========================================================= */

/* ================================
   CSS VARIABLES
   ================================ */
:root {
    --iptv-text-main: #111111;
    --iptv-text-muted: #6b7280;
    --iptv-divider: #e5e5e5;
    --iptv-hover: #ffa50014;
    --iptv-chevron: #111111;
}

/* ================================
   LIST RESET
   ================================ */
.iptv-country,
.iptv-folder,
.iptv-channel {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
}

/* Reset UL default spacing */
ul.iptv-country-list {
    list-style: none;
    padding-left: 0;
}

/* ================================
   BUTTON RESET + LAYOUT
   ================================ */
.iptv-country-toggle,
.iptv-folder-toggle {
    all: unset;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    padding: 10px 8px;
    cursor: pointer;
    font: inherit;
    color: var(--iptv-text-main);
    flex-wrap: nowrap;
    align-self: stretch; /* force full width in flex container */
}

/* Kill all WP / theme button styles */
.iptv-country-toggle,
.iptv-country-toggle:hover,
.iptv-country-toggle:focus,
.iptv-country-toggle:active,
.iptv-folder-toggle,
.iptv-folder-toggle:hover,
.iptv-folder-toggle:focus,
.iptv-folder-toggle:active {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
    border-radius: 0 !important;
}

/* ================================
   ROW DIVIDERS (VISIBLE ALWAYS)
   ================================ */
.iptv-country-toggle,
.iptv-folder-toggle,
.iptv-country-toggle:hover,
.iptv-folder-toggle:hover,
.iptv-country-toggle:active,
.iptv-folder-toggle:active,
.iptv-country-toggle[aria-expanded="true"],
.iptv-folder-toggle[aria-expanded="true"],
.iptv-country-toggle[aria-expanded="false"],
.iptv-folder-toggle[aria-expanded="false"] {
    color: var(--iptv-text-main) !important;               /* always black text */
    border-bottom: 1px solid var(--iptv-divider) !important; /* always visible bottom border */
}

/* Hover background */
.iptv-country-toggle:hover,
.iptv-folder-toggle:hover {
    background-color: var(--iptv-hover);
}

/* ================================
   CHEVRON — filled triangle, rotates
   ================================ */
.iptv-chevron img {
    display: none !important; /* remove emoji/image */
}

.iptv-chevron {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    min-width: 14px;
    flex-shrink: 0;
}

.iptv-folder-toggle .iptv-chevron {
    width: 11px;
    height: 11px;
    min-width: 11px;
}

.iptv-chevron::before {
    content: "";
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid #111111;
    transition: transform 150ms ease;
}

.iptv-folder-toggle .iptv-chevron::before {
    border-top-width: 4px;
    border-bottom-width: 4px;
    border-left-width: 6px;
}

/* Rotate down when expanded */
button[aria-expanded="true"] .iptv-chevron::before {
    transform: rotate(90deg);
}

/* ================================
   FLAG
   ================================ */
.iptv-flag {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
    margin: 0 4px;
}

.iptv-flag img {
    width: 20px;
    height: auto;
    display: block;
}

.iptv-flag-placeholder {
    font-size: 16px;
    opacity: 0.45;
}

/* ================================
   TEXT
   ================================ */
.iptv-country-name,
.iptv-folder-name {
    color: var(--iptv-text-main);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

.iptv-count {
    margin-left: auto;
    color: var(--iptv-text-muted);
    font-size: 0.9em;
    white-space: nowrap;
    flex-shrink: 0;
}

/* ================================
   CHANNEL ROWS
   ================================ */
.iptv-channel {
    padding: 6px 0;
    color: var(--iptv-text-main);
    font-size: 0.95em;
}


/* ================================
   FORCE FULL-WIDTH BUTTONS
   ================================ */
.iptv-country-toggle,
.iptv-folder-toggle {
    display: flex !important;   /* override inline-block */
    width: 100% !important;     /* fill parent */
    max-width: 100%;
    box-sizing: border-box;
    text-align: left;           /* avoid center alignment */
    padding: 10px 8px !important; /* override Elementor padding */
}


/* ================================
   Last updated text
   ================================ */
.iptv-last-updated {
    margin-bottom: 20px;
    font-size: 0.9em;
    /* color: var(--iptv-text-muted); */
    color:#D3B351;
    font-weight: bold;
}

/* ================================
   Search box
   ================================ */
div.iptv-search-box {
    margin-bottom: 10px;
}

