:root {
    --bg: #09111b;
    --panel: #101a27;
    --panel-soft: #0d1520;
    --text: #eef3f8;
    --muted: #91a3b4;
    --border: rgba(255, 255, 255, 0.08);
    --border-strong: rgba(255, 255, 255, 0.14);
    --accent: #ffc21c;
    --accent-dark: #d4aa53;
    --success-bg: #d9f0e6;
    --success-text: #123d2c;
    --danger-bg: #ffd9dd;
    --danger-text: #5f1520;
}

body.panel-dark {
    background: var(--bg);
    color: var(--text);
}

.panel-shell {
    max-width: 1480px;
}

.panel-card {
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.18);
}

.panel-muted {
    color: var(--muted);
}

.panel-input,
.panel-select,
.panel-textarea {
    background: var(--panel-soft);
    border: 1px solid var(--border-strong);
    color: var(--text);
    border-radius: 12px;
}

.panel-input:focus,
.panel-select:focus,
.panel-textarea:focus {
    background: var(--panel-soft);
    color: var(--text);
    border-color: var(--accent-dark);
    box-shadow: none;
}

.panel-select option {
    background: var(--panel-soft);
    color: var(--text);
}

.panel-btn-primary {
    background: var(--accent);
    color: #111;
    border: 0;
    font-weight: 700;
    border-radius: 12px;
}

.panel-btn-primary:hover {
    background: #ffca39;
    color: #111;
}

.panel-btn-secondary {
    border: 1px solid var(--border-strong);
    color: var(--text);
    border-radius: 12px;
    background: transparent;
}

.panel-btn-secondary:hover {
    border-color: var(--accent-dark);
    color: var(--text);
}

.panel-table {
    --bs-table-bg: transparent;
    --bs-table-color: var(--text);
    --bs-table-border-color: var(--border);
}

.panel-table thead th {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--text);
}

.panel-alert-success {
    background: var(--success-bg);
    color: var(--success-text);
    border: 0;
    border-radius: 14px;
}

.panel-alert-danger {
    background: var(--danger-bg);
    color: var(--danger-text);
    border: 0;
    border-radius: 14px;
}

.panel-chip {
    display: inline-block;
    padding: 0.35rem 0.65rem;
    border-radius: 999px;
    background: rgba(255, 194, 28, 0.12);
    color: #ffd562;
    font-size: 0.85rem;
}
