:root {
    --win-blue: #00a2ed;
    --win-bg: #0a0a0a; /* Еще глубже черный */
    --content-bg: #161616; /* Антрацитовый */
    --text-main: #efefef;
    --text-muted: #777777;
    --border: rgba(255,255,255,0.08);
    --row-hover: rgba(0, 162, 237, 0.08);
}

* { margin: 0; padding: 0; box-sizing: border-box; }

body {
    font-family: "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, sans-serif;
    background-color: var(--win-bg);
    background: radial-gradient(circle at 50% -20%, #1a1a1a 0%, #0a0a0a 100%);
    color: var(--text-main);
    padding: 40px 20px;
    -webkit-font-smoothing: antialiased;
}

/* Контейнер */
.explorer-container {
    max-width: 1100px;
    margin: 0 auto;
    background: var(--content-bg);
    border: 1px solid var(--border);
    border-radius: 12px;
    box-shadow: 0 30px 60px rgba(0,0,0,0.6);
    overflow: hidden;
}

/* Хлебные крошки / Путь */
.toolbar { 
    padding: 18px 25px; 
    background: rgba(255,255,255,0.02); 
    border-bottom: 1px solid var(--border); 
}
.address-bar { 
    display: flex; 
    align-items: center; 
    gap: 10px; 
    font-size: 14px; 
    letter-spacing: 0.3px;
}
.address-bar a { 
    color: var(--win-blue); 
    text-decoration: none; 
    opacity: 0.9;
    transition: 0.2s;
}
.address-bar a:hover { opacity: 1; text-decoration: underline; }
.address-bar span.sep { color: #444; font-weight: 300; }

/* Таблица файлов */
table { width: 100%; border-collapse: collapse; }

th { 
    text-align: left; 
    padding: 15px 25px; 
    font-size: 11px; 
    font-weight: 600;
    color: var(--text-muted); 
    text-transform: uppercase; 
    letter-spacing: 1px;
    border-bottom: 1px solid var(--border);
}

td { 
    padding: 12px 25px; 
    border-bottom: 1px solid rgba(255,255,255,0.03); 
    vertical-align: middle; 
    font-size: 14px;
}

tr:hover td { 
    background: var(--row-hover); 
}

/* Ссылка и название файла */
.entry-link { 
    display: flex; 
    align-items: center; 
    gap: 18px; 
    text-decoration: none; 
    color: var(--text-main);
    transition: transform 0.2s ease;
}

/* Названия файлов чуть жирнее при наведении */
tr:hover .entry-link { 
    color: #fff;
    transform: translateX(4px); 
}

/* Мета-данные (дата, размер) */
.indexcollastmod, .indexcolsize {
    color: var(--text-muted);
    font-family: "Segoe UI Mono", monospace;
    font-size: 13px;
}

/* Превью 16:9 */
.preview-box {
    width: 130px; 
    height: 74px; 
    background: #000; 
    border-radius: 6px; 
    overflow: hidden;
    display: flex; 
    align-items: center; 
    justify-content: center;
    border: 1px solid rgba(255,255,255,0.1);
    box-shadow: 0 4px 10px rgba(0,0,0,0.3);
    transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.preview-box img { 
    width: 100%; 
    height: 100%; 
    object-fit: cover; 
    opacity: 0.8;
    transition: 0.3s;
}

tr:hover .preview-box {
    border-color: var(--win-blue);
    transform: scale(1.05);
}

tr:hover .preview-box img {
    opacity: 1;
}

/* Кнопка копирования */
.copy-btn {
    padding: 6px 14px; 
    background: rgba(255,255,255,0.05); 
    border: 1px solid var(--border);
    border-radius: 6px; 
    color: #aaa; 
    font-size: 12px; 
    cursor: pointer; 
    opacity: 0; 
    transition: 0.2s;
}
tr:hover .copy-btn { opacity: 1; }
.copy-btn:hover { 
    background: var(--win-blue); 
    border-color: var(--win-blue); 
    color: #fff;
}

/* Галерея */
.modal {
    display: none; 
    position: fixed; 
    inset: 0; 
    background: rgba(0,0,0,0.96);
    z-index: 9999;
    flex-direction: column; 
    justify-content: center; 
    align-items: center;
    padding: 40px;
    backdrop-filter: blur(10px);
}
.modal.active { display: flex; }

.modal img {
    max-height: 82vh; 
    max-width: 92vw;
    border-radius: 8px;
    margin-bottom: 24px; 
    object-fit: contain;
    box-shadow: 0 0 60px rgba(0,0,0,0.8);
}

.nav-btn {
    position: absolute; top: 0; bottom: 0; width: 15%; background: none; border: none;
    color: #fff; font-size: 50px; cursor: pointer; opacity: 0.15; transition: 0.3s; z-index: 10;
}
.nav-btn:hover { opacity: 0.8; background: none; }
.prev { left: 0; text-align: left; padding-left: 30px; } 
.next { right: 0; text-align: right; padding-right: 30px; }

.close-btn { 
    position: absolute; top: 30px; right: 30px; 
    color: rgba(255,255,255,0.3); font-size: 40px; border: none; background: none; 
    cursor: pointer; z-index: 11; transition: 0.2s;
}
.close-btn:hover { color: #fff; transform: rotate(90deg); }

.counter { 
    background: rgba(255,255,255,0.08); 
    color: var(--text-muted);
    padding: 6px 18px; 
    border-radius: 30px; 
    font-size: 13px;
    border: 1px solid var(--border);
}

/* Техническое скрытие */
tr.is-image .indexcollastmod, 
tr.is-image .indexcolsize { 
    opacity: 0; 
    pointer-events: none; 
}
.indexcolicon, img[alt^="["] { display: none; }

/* ЖЕСТКИЙ СБРОС ЦВЕТОВ ССЫЛОК */
a, a:visited, a:active, a:focus {
    text-decoration: none !important; /* Убираем подчеркивание */
    color: var(--text-main) !important; /* Насильно ставим белый/светлый цвет */
    outline: none;
}

/* Цвет меняется ТОЛЬКО при наведении */
tr:hover .entry-link {
    color: var(--win-blue) !important;
}

/* Цвет ссылок в адресной строке (хлебные крошки) */
.address-bar a, .address-bar a:visited {
    color: var(--win-blue) !important;
    opacity: 0.8;
}

.address-bar a:hover {
    opacity: 1;
    text-decoration: underline !important;
}

