/* 1. ИМПОРТ СТАРОГО ФАЙЛА (Оставляем для совместимости структуры) */
@import url(style_cs.1776721612.css);

/*************************************************************
NIGHTTIME OVERRIDES & MODERN LAYOUT
Переопределяем все цвета и стили из style_cs.1776721612.css
**************************************************************/

:root {
    /* --- NIGHTTIME PALETTE --- */
    --bg-page: #0a0a0a;
    --bg-card: #161616;
    --bg-header: #1f1f1f;
    --bg-input: #0f0f12;
    
    --text-main: #e0e0e0;
    --text-muted: #888888;
    
    --primary: #bb86fc;       /* Фиолетовый акцент */
    --primary-hover: #9965f4;
    
    --border: #333333;
    --radius: 6px;
    --font-stack: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* 2. GLOBAL RESET & BASE */
*, *::before, *::after { box-sizing: border-box; }
html, body { margin: 0; padding: 0; height: 100%; }

body {
    font-family: var(--font-stack);
    background-color: var(--bg-page);
    color: var(--text-main);
    font-size: 14px; /* Компактный шрифт */
    line-height: 1.5;
}

a { color: var(--primary); text-decoration: none; transition: 0.2s; }
a:hover { color: var(--primary-hover); text-decoration: underline; }
img { max-width: 100%; height: auto; display: block; }

/* 3. LAYOUT CONTAINER */
#pun {
    max-width: 1100px;
    margin: 0 auto;
    padding: 20px;
}
.punbb { width: 100%; }
/* Карточки контента */
.punbb .section, .punbb .main, .punbb .category, .punbb .post, 
.punbb .formal, .punbb .info-box, #pun-stats, #pun-about, #pun-qjump {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    margin-bottom: 20px;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0,0,0,0.3);
}

/* 4. HEADER (CENTERED) */
#pun-title {
    margin: 0 auto 20px auto;
    border: none;
    text-align: center; /* Строго по центру */
    padding: 10px 0;
    background: transparent !important; /* Перебиваем старый стиль */
}
#pun-title h1 {
    font-size: 2.2rem;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 1px;
}
#pun-title h1 span {
    background: linear-gradient(90deg, #fff, var(--primary));
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 800;
}

/* 5. NAVIGATION (ADAPTED) */
#pun-navlinks {
    background: var(--bg-card);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 10px;
    margin-bottom: 25px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
}
#pun-navlinks li { display: inline-block; margin: 0; }
#pun-navlinks a {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-muted);
    padding: 6px 12px;    border-radius: 4px;
    background: rgba(255,255,255,0.03);
    transition: 0.2s;
}
#pun-navlinks a:hover {
    background: var(--primary);
    color: #000;
    text-decoration: none;
}

/* 6. FORUM LIST TABLES */
.punbb table { width: 100%; border-collapse: collapse; }
.punbb th {
    background: var(--bg-header);
    color: var(--text-muted);
    font-size: 11px;
    text-transform: uppercase;
    padding: 10px 15px;
    text-align: left;
    border-bottom: 1px solid var(--border);
}
.punbb td {
    padding: 12px 15px;
    border-bottom: 1px solid var(--border);
    vertical-align: middle;
    background: transparent !important; /* Сброс старых цветов ячеек */
}
.punbb tr:last-child td { border-bottom: none; }
.punbb tbody tr:hover td { background: rgba(255,255,255,0.02) !important; }

/* Заголовки разделов */
.punbb .section h2, #pun-main h2, #pun-stats h2 {
    background: var(--bg-header);
    padding: 10px 15px;
    margin: 0;
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    border-bottom: 1px solid var(--border);
    border-left: none; border-right: none; border-top: none;
}

.tcl h3 { font-size: 14px; margin: 0 0 3px 0; }
.tcl h3 a { color: var(--text-main); font-weight: 600; }
.tcl h3 a:hover { color: var(--primary); text-decoration: none; }
.forum-desc { font-size: 12px; color: var(--text-muted); display: block; margin-top: 4px; }
.tc2, .tc3 { text-align: center; font-size: 12px; color: var(--text-muted); }

/* Иконки статусов */
.punbb div.icon {    width: 8px; height: 8px;
    border-radius: 50%;
    background: #333;
    display: inline-block;
    margin-right: 10px;
    border: none !important; /* Убираем старые границы */
    vertical-align: middle;
}
.punbb .inew div.icon { background: var(--primary); box-shadow: 0 0 5px var(--primary); }

/* 7. POSTS (TOPICS) */
.punbb .post { display: flex; flex-direction: column; }

/* Шапка поста */
.punbb .post h3 {
    order: -1;
    background: var(--bg-header);
    padding: 8px 15px;
    border-bottom: 1px solid var(--border);
    font-size: 12px;
    color: var(--text-muted);
    display: flex;
    justify-content: space-between;
}
.punbb .post h3 strong { color: var(--text-main); float: none; font-weight: 600; }

/* Автор и Контент */
.punbb .post-author {
    background: #111;
    padding: 15px;
    border-right: 1px solid var(--border);
    text-align: center;
    width: 160px;
    vertical-align: top;
}
.pa-author {
    display: block;
    font-size: 13px;
    font-weight: 700;
    margin-bottom: 8px;
}
.pa-author a { color: var(--primary); }
.post-author img.avatar {
    width: 70px; height: 70px;
    border-radius: 4px;
    margin: 0 auto 8px auto;
    border: 2px solid #333;
}
.user-info, .user-title { font-size: 11px; color: #666; margin-bottom: 4px; }
.punbb .post-body {
    padding: 20px;
    font-size: 14px;
    color: #d1d1d1;
    vertical-align: top;
    background: transparent !important;
}

/* Цитаты и Код */
.punbb .quote-box, .punbb .code-box {
    background: #0f0f0f;
    border: 1px solid #333;
    border-left: 3px solid var(--primary);
    padding: 10px 15px;
    margin: 15px 0;
    color: #aaa;
    font-size: 13px;
}
.punbb .code-box { font-family: monospace; border-left-color: #ffd700; }

/* Подпись */
.punbb .post-sig dt {
    margin-top: 30px;
    padding-top: 10px;
    border-top: 1px dashed #333;
    font-size: 11px;
    color: #555;
}

/* Кнопки в посте */
.punbb .post-links {
    padding: 10px 15px;
    border-top: 1px solid var(--border);
    text-align: right;
    background: #111;
}
.punbb .post-links ul { list-style: none; padding: 0; margin: 0; }
.punbb .post-links li { display: inline-block; margin-left: 5px; }
.punbb .post-links a {
    font-size: 11px;
    padding: 4px 8px;
    background: #222;
    color: #888;
    border-radius: 3px;
    border: 1px solid #333;
}
.punbb .post-links a:hover { background: #333; color: #fff; text-decoration: none; }

/* 8. FORMS & INPUTS */
.punbb fieldset {    border: 1px solid var(--border);
    padding: 20px;
    background: var(--bg-card);
    border-radius: var(--radius);
}
.punbb legend { color: var(--primary); font-weight: bold; padding: 0 5px; }

.punbb input[type="text"], .punbb input[type="password"],
.punbb textarea, .punbb select {
    background: var(--bg-input);
    border: 1px solid #333;
    color: #fff;
    padding: 8px 10px;
    border-radius: 4px;
    width: 100%;
    font-size: 13px;
    margin-bottom: 10px;
}
.punbb input:focus, .punbb textarea:focus { border-color: var(--primary); outline: none; }

.punbb input[type="submit"], .linksb .postlink a, .linkst .postlink a {
    background: var(--primary);
    color: #000 !important;
    font-weight: 700;
    padding: 8px 16px;
    border-radius: 4px;
    border: none;
    cursor: pointer;
    font-size: 13px;
    display: inline-block;
}
.punbb input[type="submit"]:hover, .linksb .postlink a:hover {
    background: var(--primary-hover);
    text-decoration: none;
}

/* 9. MOBILE RESPONSIVENESS */
@media (max-width: 768px) {
    #pun { padding: 10px; }
    
    /* Меню в столбик */
    #pun-navlinks { flex-direction: column; gap: 5px; }
    #pun-navlinks a { display: block; text-align: center; width: 100%; }
    
    /* Скрываем статистику */
    .punbb .main .tc2, .punbb .main .tc3 { display: none; }
    .tcl { width: 100%; }
    
    /* Посты: автор сверху */
    .punbb .post-author {        width: 100%;
        border-right: none;
        border-bottom: 1px solid var(--border);
        display: flex;
        align-items: center;
        padding: 10px;
        text-align: left;
    }
    .post-author img.avatar { width: 32px; height: 32px; margin: 0 10px 0 0; }
    .pa-author { margin: 0; font-size: 13px; }
    .user-info, .user-title { display: none; }
    
    .punbb .post-body { padding: 15px; }
}

/* Скрытие старых хаков */
.acchide, .punbb .required label em { display: none; }
.clearer { clear: both; }