/* OrbisCraft LiteBans presentation layer. Data and LiteBans logic remain unchanged. */
:root {
    --orbis-cyan: #9bedff;
    --orbis-blue: #00d2ff;
    --orbis-ink: #07111c;
    --orbis-panel: #0c1b2a;
    --orbis-panel-alt: #10283a;
    --orbis-line: rgba(155, 237, 255, 0.18);
    --orbis-text: #f4fbff;
    --orbis-muted: #a9bfca;
}

html, body { min-height: 100%; }

body {
    padding-top: 88px;
    color: var(--orbis-text);
    background: radial-gradient(circle at 10% 0%, rgba(0, 210, 255, 0.13), transparent 34rem), linear-gradient(145deg, #07111c 0%, #0a1826 48%, #06101a 100%);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.litebans-header, .col-lg-12 { text-align: center; }

.navbar {
    position: fixed;
    font-weight: 600;
    border-bottom: 1px solid rgba(155, 237, 255, 0.24);
    background: linear-gradient(100deg, #07111c 0%, #0d2738 55%, #07111c 100%) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.28);
}

.navbar-brand { color: var(--orbis-cyan) !important; font-weight: 800; letter-spacing: 0.035em; }
.navbar-brand::before { content: "◆ "; color: var(--orbis-blue); }
.navbar .nav-link, .navbar .my-lg-0 a { color: var(--orbis-muted) !important; transition: color .15s ease, text-shadow .15s ease; }
.navbar .nav-link:hover, .navbar .my-lg-0 a:hover, .navbar .nav-item.active .nav-link, .navbar .navbar-active .nav-link { color: var(--orbis-cyan) !important; text-shadow: 0 0 16px rgba(0, 210, 255, 0.42); }
.navbar-toggler { border-color: var(--orbis-line); }
.navbar-toggler-icon { filter: hue-rotate(145deg) saturate(2); }

.container { max-width: 1180px; }
.modal-header, .litebans-header { border: 1px solid var(--orbis-line); border-radius: 12px; background: linear-gradient(135deg, rgba(16, 40, 58, .94), rgba(8, 22, 35, .96)); box-shadow: 0 14px 36px rgba(0, 0, 0, .22); }
.litebans-header h1, .litebans-header h2, .litebans-header h3, .litebans-header h4, .litebans-header h5, .litebans-header h6 { color: var(--orbis-cyan); letter-spacing: .02em; }
.litebans-index { text-align: center; }
.litebans-index-main { color: var(--orbis-cyan); font-weight: 800; }
.litebans-index-sub, p, small { color: var(--orbis-muted); }

a, a:hover, a:focus { color: var(--orbis-cyan); text-decoration: none; }

table { overflow: hidden; border: 1px solid var(--orbis-line); border-radius: 10px; background: rgba(12, 27, 42, .82); box-shadow: 0 12px 28px rgba(0, 0, 0, .2); }
th { color: var(--orbis-cyan); background: rgba(0, 210, 255, .09); border-color: var(--orbis-line) !important; text-align: center; font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
table tr td { padding: .75rem .6rem; color: var(--orbis-text); vertical-align: middle !important; text-align: center; border-color: rgba(155, 237, 255, .1) !important; }
table tbody tr:nth-of-type(odd) { background: rgba(255, 255, 255, .025); }
table tbody tr:hover { background: rgba(0, 210, 255, .09); }
tr.hover { cursor: pointer; }

.badge, .badge-pill { font-weight: 700; }
.badge-primary, .badge-info { color: var(--orbis-ink); background: linear-gradient(90deg, var(--orbis-cyan), var(--orbis-blue)); }
.litebans-label-active, .litebans-label-permanent, .litebans-label-ipban, .litebans-label-ipmute { color: #fff; background-color: #d95565; }
.litebans-label-inactive { color: #fff; background-color: #c88435; }
.litebans-label-expired { color: #fff; background-color: #52636d; }
.litebans-label-ban { background-color: #a94250; }
.litebans-label-mute { background-color: #52636d; }
.litebans-label-warn { background-color: #c88435; }
.litebans-label-kick { background-color: #b95b50; }

.form-control, .custom-select { color: var(--orbis-text); background-color: var(--orbis-panel); border-color: var(--orbis-line); }
.form-control:focus, .custom-select:focus { color: var(--orbis-text); background-color: var(--orbis-panel-alt); border-color: var(--orbis-blue); box-shadow: 0 0 0 .2rem rgba(0, 210, 255, .16); }
.btn-primary { color: var(--orbis-ink); border-color: var(--orbis-blue); background: linear-gradient(90deg, var(--orbis-cyan), var(--orbis-blue)); font-weight: 700; }
.btn-primary:hover, .btn-primary:focus { color: var(--orbis-ink); border-color: var(--orbis-cyan); background: linear-gradient(90deg, #b6f3ff, var(--orbis-cyan)); }
.alert-light { color: var(--orbis-text) !important; background: var(--orbis-panel) !important; border-color: var(--orbis-line) !important; }

.litebans-check { text-align: left; }
.litebans-check-btn { margin-left: 5px; }
.litebans-check-form { margin-left: 15px; }
.litebans-check-output { margin-left: 3px; }
.litebans-pager { font-size: 30px; }
.litebans-pager-number { margin-top: 24px; text-align: center; font-size: 15px; }
.litebans-pager-left { float: left; }
.litebans-pager-right { float: right; }
.litebans-pager-active { color: var(--orbis-cyan); }
.litebans-pager-inactive { visibility: hidden; pointer-events: none; cursor: default; }
.litebans-label-container { display: inline-flex; }
.litebans-label-info { margin-left: 15px; font-size: 17px; font-weight: 800; }
.litebans-label-history { display: inline; font-size: 16px; font-weight: 800; }

p { margin-top: 2px; }
.noselect { -webkit-touch-callout: none; -webkit-user-select: none; user-select: none; }
.noalign-w { width: 0; }
.noalign-h { height: 0; }

@media (max-width: 991.98px) {
    body { padding-top: 76px; }
    .navbar-collapse { padding: .75rem 0; }
    table { display: block; overflow-x: auto; white-space: nowrap; }
}
