/* Стили чата и форм авторизации в ретро-теме E1MAGIC */

.auth-form {
    max-width: 420px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 1rem 0;
}
.auth-form label { display: block; font-size: 0.95rem; }
.auth-form input {
    width: 100%;
    box-sizing: border-box;
    margin-top: 4px;
    padding: 8px 10px;
    background: #0d0d0d;
    color: #e7e7e7;
    border: 1px solid #444;
    font: inherit;
}
.auth-form input:focus { outline: none; border-color: #33ccff; }
.auth-form button {
    align-self: flex-start;
    padding: 8px 16px;
    background: #111;
    color: #33ff66;
    border: 1px solid #33ff66;
    cursor: pointer;
    font: inherit;
}
.auth-form button:hover { background: #33ff66; color: #0d0d0d; }

.chat-topbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border: 1px solid #444;
    background: #0d0d0d;
    padding: 8px 12px;
    margin-bottom: 12px;
    color: #b3b2b2;
}
.chat-topbar-links { display: inline-flex; gap: 8px; align-items: center; }
.chat-topbar a { color: #33ccff; }

.topic-nav { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }
.topic-chip {
    padding: 4px 12px;
    background: #0d0d0d;
    color: #b3b2b2;
    border: 1px solid #444;
    text-decoration: none;
    font-size: 0.9rem;
}
.topic-chip:hover { border-color: #33ccff; color: #33ccff; }
.topic-chip.active { background: #33ccff; color: #0d0d0d; border-color: #33ccff; font-weight: bold; }
.tg-topic {
    color: #ffcc33;
    border: 1px solid #5a4a1a;
    background: #16130a;
    padding: 0 6px;
    margin: 0 8px;
    font-size: 0.78rem;
    text-decoration: none;
}
.tg-topic:hover { color: #ffdd66; }

.chat-feed {
    border: 1px solid #333;
    background: #0a0a0a;
    padding: 10px;
    max-height: 70vh;
    overflow-y: auto;
}
.tg-msg {
    border: 1px solid #262626;
    background: #0d0d0d;
    color: #b3b2b2;
    padding: 10px;
    margin-bottom: 8px;
}
.tg-meta { display: flex; justify-content: space-between; font-size: 0.85rem; margin-bottom: 6px; }
.tg-user { color: #33ccff; font-weight: bold; }
.tg-date { color: #777; }
.tg-subj { color: #ffcc33; margin-bottom: 6px; font-weight: bold; }
.tg-body { text-align: justify; word-break: break-word; }
.tg-body a { color: #33ccff; }
.tg-link { text-align: right; margin-top: 6px; font-size: 0.8rem; }
.tg-link a { color: #777; }

.tg-actions { margin-top: 6px; text-align: right; }
.tg-del { display: inline; margin: 0; }
.tg-del-btn {
    padding: 2px 10px;
    background: #111;
    color: #ff7777;
    border: 1px solid #a33;
    cursor: pointer;
    font: inherit;
    font-size: 0.78rem;
}
.tg-del-btn:hover { background: #a33; color: #fff; }

.chat-composer { margin-top: 12px; }
.chat-composer form { display: flex; gap: 8px; align-items: stretch; }
.chat-composer textarea {
    flex: 1 1 auto;
    width: 100%;
    box-sizing: border-box;
    min-height: 56px;
    resize: vertical;
    background: #0d0d0d;
    color: #e7e7e7;
    border: 1px solid #444;
    font: inherit;
}
.chat-composer textarea:focus { outline: none; border-color: #33ccff; }
.chat-composer button#send-btn {
    flex: 0 0 auto;
    padding: 8px 18px;
    background: #111;
    color: #33ff66;
    border: 1px solid #33ff66;
    cursor: pointer;
    font: inherit;
}
.chat-composer button#send-btn:hover { background: #33ff66; color: #0d0d0d; }
.chat-composer-hint { color: #777; font-size: 0.82rem; margin-top: 6px; }
.chat-composer-hint a { color: #33ccff; }

.composer-lock {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    padding: 8px 12px;
    box-sizing: border-box;
    background: #0d0d0d;
    color: #777;
    border: 1px dashed #555;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
}
.composer-lock:hover { border-color: #33ccff; color: #33ccff; }

.tg-reply { color: #888; font-size: 0.82rem; margin-bottom: 4px; }

.load-older {
    display: block;
    width: 100%;
    margin-bottom: 8px;
    padding: 8px;
    background: #111;
    color: #33ccff;
    border: 1px dashed #33ccff;
    cursor: pointer;
    font: inherit;
}
.load-older:disabled { color: #777; border-color: #444; cursor: default; }

.captcha-img { display: block; border: 1px solid #444; margin: 6px 0; cursor: pointer; }

.tg-err, .tg-warn, .tg-ok, .tg-info {
    padding: 8px 12px;
    margin: 10px 0;
    border-left: 4px solid;
}
.tg-err  { border-color: #ff5555; background: rgba(255,85,85,.08); color: #ff9999; }
.tg-warn { border-color: #ffcc33; background: rgba(255,204,51,.08); color: #ffdd88; }
.tg-ok   { border-color: #33ff66; background: rgba(51,255,102,.08); color: #88ffaa; }
.tg-info { border-color: #33ccff; background: rgba(51,204,255,.08); color: #99e0ff; }

.chat-note { border: 1px solid #444; background: #0d0d0d; padding: 10px 14px; margin: 12px 0; }
.chat-hint { color: #888; font-size: 0.9rem; }

.adm-table { border-collapse: collapse; width: 100%; margin-bottom: 24px; font-size: 0.9rem; }
.adm-table th, .adm-table td { border: 1px solid #2a2a2a; padding: 6px 8px; text-align: left; vertical-align: middle; }
.adm-table th { color: #ffcc33; background: #111; }
.adm-table td { color: #b3b2b2; }

.inline-form { display: inline-flex; gap: 6px; align-items: center; margin: 0; }
.inline-form button {
    padding: 4px 10px;
    background: #111;
    color: #33ff66;
    border: 1px solid #33ff66;
    cursor: pointer;
    font: inherit;
    font-size: 0.85rem;
}
.inline-form button.tg-danger { color: #ff7777; border-color: #ff5555; }
.inline-form button:hover { opacity: 0.85; }

.linklike {
    background: none;
    border: none;
    color: #33ccff;
    cursor: pointer;
    padding: 0;
    font: inherit;
    text-decoration: underline;
}
