/*proj/static/style.css*/
:root {
    --bg: #f5f7fb;
    --surface: #ffffff;
    --surface-2: #eef1f6;
    --text: #111827;
    --muted: #6b7280;
    --border: #d5d9e3;
    --link: #0d6efd;
    --focus: #4c8dff;
    --shadow: 0 4px 12px rgba(17, 24, 39, 0.08);
}

/* Sötét mód tokenek */
.dark-mode {
    --bg: #0f1116;
    --surface: #1b1f2a;
    --surface-2: #161a23;
    --text: #e9ecf5;
    --muted: #9da3b1;
    --border: #2d3341;
    --link: #8bb6ff;
    --focus: #5d9cff;
    --shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
}

/* Alap beállítások */
body {
    background-color: var(--bg);
    color: var(--text);
    font-family: "Segoe UI", system-ui, -apple-system, sans-serif;
    transition: background-color 0.2s ease, color 0.2s ease;
}

a {
    color: var(--link);
}

a:hover {
    color: var(--focus);
}

.text-muted,
small,
.form-text {
    color: var(--muted) !important;
}

/* Fejléc és oldalsáv */
.header {
    background-color: var(--surface-2);
    color: var(--text);
    border-bottom: 1px solid var(--border);
}

.header .nav-link {
    color: var(--text) !important;
}

.header .nav-link:hover {
    color: var(--focus) !important;
}

.sidebar {
    background-color: var(--surface-2);
    color: var(--text);
    min-height: 100vh;
    border-right: 1px solid var(--border);
}

.sidebar a {
    color: var(--text);
}

.sidebar a:hover {
    color: var(--focus);
}

/* Kártyák és listák */
.card {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
}

.card-header {
    background-color: var(--surface-2);
    color: var(--text);
    border-bottom: 1px solid var(--border);
}

.list-group-item {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
}

.list-group-flush > .list-group-item {
    border-left: 0;
    border-right: 0;
}

#assignment-card,
#reviews-list,
#submission-list,
#materials-list,
#solution-keys-list,
#attachments-list,
#description-card,
#evaluation-guide-list,
#evaluation-review-list,
#review-edit-list,
#save-guide_line-card {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
}

/* Táblázatok */
table {
    color: var(--text);
}

th,
td {
    border-color: var(--border);
}

.table-striped > tbody > tr:nth-of-type(odd) {
    background-color: rgba(0, 0, 0, 0.02);
}

.dark-mode .table-striped > tbody > tr:nth-of-type(odd) {
    background-color: #161a23;
}

.table-hover > tbody > tr:hover {
    background-color: var(--surface-2);
}

.dark-mode .table-hover > tbody > tr:hover {
    background-color: #1f2431;
}

/* Gombok */
button#theme-toggle {
    border: 1px solid var(--border);
    background: transparent;
    font-size: 1.1rem;
    color: var(--text);
}


/* Űrlap elemek */
.form-control,
.form-select,
.form-check-input {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
}

.form-control:focus,
.form-select:focus,
.form-check-input:focus {
    border-color: var(--focus);
    box-shadow: 0 0 0 0.15rem rgba(76, 141, 255, 0.25);
}

.dark-mode .form-control,
.dark-mode .form-select,
.dark-mode .form-check-input {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
}

.dark-mode ::placeholder {
    color: var(--muted);
}

/* Jelzések, badge-ek */
.badge {
    background-color: var(--surface-2);
    color: var(--text);
    border: 1px solid var(--border);
}

/* Alert dobozok */
.alert {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
}

.alert-primary {
    background-color: #e8f1ff;
    border-color: #c9ddff;
    color: #0f3f91;
}

.dark-mode .alert-primary {
    background-color: #1b2a4a;
    border-color: #39558a;
    color: #e0e8ff;
}

.alert-success {
    background-color: #e9f7ef;
    border-color: #c6ebd5;
    color: #1f6b3a;
}

.dark-mode .alert-success {
    background-color: #1a3326;
    border-color: #2f5c44;
    color: #d7f7e6;
}

.alert-danger {
    background-color: #fde8eb;
    border-color: #f8c7cf;
    color: #842029;
}

.dark-mode .alert-danger {
    background-color: #3c1f25;
    border-color: #6b2e38;
    color: #ffe4e8;
}

.alert-warning {
    background-color: #fff6e6;
    border-color: #ffe4b8;
    color: #7c5700;
}

.dark-mode .alert-warning {
    background-color: #403014;
    border-color: #7a5a22;
    color: #ffe9bd;
}

.alert-info {
    background-color: #e7f2fd;
    border-color: #c5def9;
    color: #0b496e;
}

.dark-mode .alert-info {
    background-color: #10283a;
    border-color: #214d71;
    color: #d6e9ff;
}

/* Checkbox igazítás */
.form-check {
    display: flex;
    align-items: center;
}

.form-check-input {
    margin-right: 10px;
}

/* Review tartalom: inline stílus felülírása */
.review-scope * {
    color: inherit !important;
}

/* Rácsos elrendezés segédosztály */
.d-flex.flex-wrap.gap-2 {
    gap: 10px;
}
