/* --- Standard Base Styles --- */
.striped:nth-of-type(even), 
.table-striped > tbody > tr:nth-child(odd) > td, 
.table-striped > tbody > tr:nth-child(odd) > th {
    background: #F2F2F2;
}

a.list-group-item:hover, 
a.list-group-item:active, 
li.list-group-item.mail:hover {
    background-color: #A9E2F3;
}

a.unread { background: #FFFFFF; }
span.badge.new { background: #2E9AFE; color: #FFFFFF; }
a.read { background: #E6E6E6; }
span.badge.scanned { background-color: #2E9AFE; }

blockquote {
    font-size: 14px;
    border-left: 5px solid #A4A4A4;
    margin: .5em;
    padding: .5em;
}

div.message { margin: 1em 0; }
input.dropdown { clear: both; margin: 0 0 1em 0; }
pre.ansi { background-color: black; font-family: Courier New, monospace; line-height: 1; }
pre.list { color: inherit; background-color: inherit; border: none; }

.list-group-item.sidebar { overflow: hidden; word-wrap: break-word; }
.list-group-item.sidebar:empty { display: none; }
.icon { margin: 0 1em 1em 0; }
.reply { margin: 1em 0; }

/* --- Animations --- */
@keyframes indicator-fade {
    from { background-color: #82E0AA; }
    to { background-color: transparent; }
}
.indicator {
    background-color: transparent !important;
    animation: indicator-fade 3s ease 0s 1 alternate !important;
}

/* --- Dark Mode Overrides --- */
.dark { background-color: #222 !important; color: #eee; }

.dark .striped:nth-of-type(even), 
.dark .table-striped > tbody > tr:nth-child(odd) > td, 
.dark .table-striped > tbody > tr:nth-child(odd) > th {
    background: #222;
}

.dark .list-group-item {
    background-color: #333;
    color: #ddd;
    border-color: #888;
}

.dark a.list-group-item:hover, 
.dark a.list-group-item:active {
    background-color: #888;
    color: #222;
}

.dark li.list-group-item.mail:hover {
    background-color: #888;
    color: #FFF;
}

.dark .breadcrumb { background-color: #333; }
.dark .badge.ignored { background-color: #aaa; }
.dark .text-danger { color: #ef1c18; }
.dark .text-success { color: #3eef41; }

.dark a.btn, .dark .icon { color: #000; background-color: #ddd !important; }
.dark .btn { color: #000; background-color: #ddd; }
.dark .btn-primary { color: #FFF; background-color: #337ab7; }
.dark a.btn:hover, .dark .icon:hover { color: #000; background-color: #fff !important; }
.dark .modal-content { background-color: #333 !important; color: #ddd !important; }

.dark input, .dark select, .dark textarea {
    color: #111;
    background-color: #DDD;
}

/* --- Navigation & Switch Alignment --- */
.dark-switch { padding: 0px; }
@media (max-width: 767px) { .dark-switch { padding: 10px 15px; } }

.darkswitchbox label {
    display: flex !important;
    align-items: center;
    gap: 10px;
    margin-bottom: 0;
}
.darkswitchbox span { flex-shrink: 0; }
.dark .switch-label { color: #b8f2ff; }
