
/* === Admin > Users: drawer + table readability fixes === */

/* Custom drawer used on user_list.html */
.drawer { z-index: 1045; }
.drawer-panel {
  background: #0f1933 !important;
  color: #e6eaf2 !important;
  box-shadow: -8px 0 30px rgba(0,0,0,.45) !important;
  border-left: 1px solid rgba(255,255,255,.12);
}
.drawer-header {
  background: rgba(255,255,255,.04) !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
  color: #e6eaf2 !important;
}
.drawer-title { color: #fff !important; }
.drawer-body { color: #e6eaf2 !important; }

/* Inputs inside drawer */
.drawer .form-label { color: rgba(255,255,255,.9) !important; }
.drawer .form-control,
.drawer .form-select,
.drawer input[type="text"],
.drawer input[type="email"],
.drawer input[type="number"],
.drawer textarea {
  background: rgba(255,255,255,.06) !important;
  color: #e6eaf2 !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 10px;
}
.drawer .form-control:focus,
.drawer .form-select:focus {
  box-shadow: 0 0 0 .2rem rgba(76,111,255,.25) !important;
  border-color: rgba(76,111,255,.6) !important;
}
.drawer ::placeholder { color: rgba(255,255,255,.55) !important; }

/* Action buttons inside drawer */
.drawer .btn-success { background-color: #2ecc71 !important; border:0 !important; color:#fff !important; }
.drawer .btn-outline-danger { color:#ff8aa8 !important; border-color:#ff8aa8 !important; }
.drawer .btn-outline-danger:hover { background:#ff8aa8 !important; color:#0b132b !important; }

/* Table columns – stronger contrast for subject/grade/parallel */
.table td.col-subject,
.table td.col-grade,
.table td.col-parallel { color:#e6eaf2 !important; font-weight: 600; }

/* Make header readable in dark */
/* === GLOBAL button centering (applies everywhere) === */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1.2;
  vertical-align:middle;
  padding-top:.45rem;
  padding-bottom:.45rem;
}
.btn-sm{ padding-top:.30rem; padding-bottom:.30rem; }

/* ===================================================================== */
/* ===============  Submissions list (Подадени работи)  ================= */
/* ===================================================================== */

/* Панелът за сортиране – тъмен, четим */
.toolbar{
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  color: #e6eaf2 !important;
  border-radius: 12px !important;
}

.toolbar .form-select,
.toolbar .btn{
  background: rgba(255,255,255,.06) !important;
  color: #e6eaf2 !important;
  border-color: rgba(255,255,255,.18) !important;
  border-radius: 10px !important;
}
.toolbar .form-select:focus,
.toolbar .btn:focus{
  box-shadow: 0 0 0 .2rem rgba(76,111,255,.25) !important;
  border-color: rgba(76,111,255,.60) !important;
}

.sort-pill{ color:#b7c2d0 !important; }

/* Стики заглавията да не са бели на тъмния фон */
.table thead th.sticky{
  background:#0f1933 !important;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.12) !important;
  color:#e6eaf2 !important;
}

/* По-нежен hover на редовете */
.table-hover tbody tr:hover{
  background: rgba(255,255,255,.04) !important;
}

/* Бейджовете да имат контраст на тъмно */
.badge.bg-light,
.badge.bg-secondary-subtle,
.text-bg-light{
  background: rgba(255,255,255,.18) !important;
  color:#ffffff !important;
  border: 1px solid rgba(255,255,255,.22) !important;
}

/* ===================================================================== */
/* ======================  Grading view (Проверка)  ===================== */
/* ===================================================================== */

.grading-card{
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-left-width: 6px !important;
  border-radius: 12px !important;
  color:#e6eaf2 !important;
}
.grading-card:hover{ box-shadow:0 6px 18px rgba(0,0,0,.35) !important; }

.grading-card.correct{
  border-left-color:#10b981 !important;         /* Emerald */
  background: rgba(16,185,129,.10) !important;
}
.grading-card.partial{
  border-left-color:#f59e0b !important;         /* Amber */
  background: rgba(245,158,11,.10) !important;
}
.grading-card.empty{
  border-left-color: rgba(255,255,255,.18) !important;
}

.grading-section-title{ color:#e6f0ff !important; }
.grading-label{ color:#cbd5e1 !important; }
.grading-max{ color:#a8b3c2 !important; }

/* Полетата за точки/коментари да са четими */
.grading-points-input,
.grading-card textarea,
.grading-card input[type="text"],
.grading-card input[type="number"]{
  background: rgba(255,255,255,.06) !important;
  color:#e6eaf2 !important;
  border-color: rgba(255,255,255,.20) !important;
}
.grading-card textarea::placeholder,
.grading-card input::placeholder{ color: rgba(230,234,242,.65) !important; }

/* Пример/код блокове */
.grading-pre{
  background: rgba(0,0,0,.25) !important;
  border: 1px dashed rgba(255,255,255,.22) !important;
  color:#e6eaf2 !important;
}

/* Малките светли бейджове вътре в картите */
.grading-card .badge.bg-light,
.grading-card .badge.bg-secondary-subtle,
.grading-card .text-bg-light{
  background: rgba(255,255,255,.18) !important;
  color:#fff !important;
  border: 1px solid rgba(255,255,255,.22) !important;
}

.table thead th,
.table-light th { color:#d7deea !important; background: rgba(255,255,255,.06) !important; }

/* Badges/pills used for meta info – high contrast */
.table .badge.bg-light,
.table .text-bg-light,
.table .rounded-pill.bg-light,
.table .rounded-pill.bg-white {
  background: rgba(255,255,255,.18) !important;
  color: #fff !important;
  border: 1px solid rgba(255,255,255,.22) !important;
}

  /* четими “Ваш отговор” кутии на тъмен фон */
  pre.bg-light.anstext {
    background: rgba(255,255,255,.08) !important;
    color: #e6eaf2 !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 10px;
  }

  /* ако има и другаде .bg-light вътре в отговорите */
  .anstext.bg-light {
    background: rgba(255,255,255,.08) !important;
    color: #e6eaf2 !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 10px;
  }

  /* буквичките A/B/C и т.н. да се четат добре */
  .anskey{
    display:inline-block;
    padding:.05rem .45rem;
    border-radius:999px;
    background: rgba(255,255,255,.18);
    color:#fff;
    border:1px solid rgba(255,255,255,.22);
  }




/* 🔧 Корекция на отстъпите в рамката на въпроса */
.card.question-card {
  margin-bottom: 0.75rem !important;  /* по-малко разстояние до следващото */
}

.card.question-card .card-body {
  padding-top: 0.5rem !important;
  padding-bottom: 0.5rem !important;
}

.question-text {
  margin-top: 0 !important;
  margin-bottom: 0.25rem !important;
  padding-left: 0 !important;
  text-indent: 0 !important;  /* премахва първоначалната табулация */
}

/* намалява празното пространство между въпроса и отговорите */
.question-options, .answers-list {
  margin-top: 0 !important;
}
/* === Стягане на картата на въпроса === */

/* по-малки вътрешни отстъпи на рамката */
.card.question-card > .card-body{
  padding: 8px 14px !important;
}

/* по-малка дистанция до следващия елемент */
.card.question-card{
  margin-bottom: 10px !important;
}

/* заглавният ред да НЕ „центрира“ текста вертикално */
.card.question-card .d-flex.align-items-start{
  align-items: flex-start !important;
}

/* самият параграф: без табулация и с малък долен марджин */
.question-text{
  text-indent: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 6px !important;   /* намалява разстоянието до отговорите */
  padding-left: 0 !important;
  white-space: pre-wrap;           /* пази Enter при чист текст */
  line-height: 1.45;               /* повече въздух за многоредов текст */
}

/* MathJax формулите да стоят на един ред */
.question-text mjx-container{
  white-space: nowrap;
  display: inline-block;
}

/* самият контейнер с номер и карта – по-малка хоризонтална пролука */
.question-wrapper{
  gap: .5rem !important;
}

/* ако номерът „диша“ прекалено много – свали изкуственото изместване */
.question-number{
  margin-top: .2rem !important;    /* вместо 50px */
}/* Текстът пази новите редове, но НЕ пази поредица от интервали (махаме „таб“-ефекта) */
.question-text {
  white-space: pre-line !important;
  text-indent: 0 !important;
  padding-left: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 6px !important;
  line-height: 1.45;
}

/* MathJax формулите остават на един ред */
.question-text mjx-container {
  white-space: nowrap;
  display: inline-block;
}

/* редът с бейджа не „смачква“ текста */
.card.question-card .d-flex.align-items-start{
  align-items: flex-start !important;
}

/* (по желание) по-малко „въздух“ */
.card.question-card > .card-body{ padding: 8px 14px !important; }
.card.question-card{ margin-bottom: 10px !important; }

/* === Финален тунинг на подравняването === */

/* номерът и първият ред на текста да са на една линия */
.question-wrapper {
  align-items: flex-start !important;  /* вместо flex-start по подразбиране */
}

/* самият номер — по-малко вертикално изместване */
.question-number {
  margin-top: 0.2rem !important;  /* експериментирай 0–0.4rem */
  line-height: 1.45;
}

/* въпросът започва малко по-нагоре (сваля визуално текста) */

/* === Изчистване на празното пространство над текста на въпроса === */

/* сваляме вътрешния падинг на картата */
.card.question-card > .card-body {
  padding-top: 4px !important;  /* беше ~10–16px */
  padding-bottom: 8px !important;
}

/* премахваме скрития „резерв“ за първия елемент */
.card.question-card > .card-body > :first-child {
  margin-top: 0 !important;
}

/* самият текст — качваме го малко нагоре */
.question-text {
  margin-top: -0.35rem !important;   /* можеш да пробваш -0.3 до -0.5rem за фино изравняване */
}
/* 🚫 махни възглавницата над текста */
.card.question-card > .card-body{
  padding-top: 0 !important;           /* беше 6–16px */
  padding-bottom: 8px !important;
}

/* първият вътрешен блок да не добавя собствен отстъп */
.card.question-card > .card-body > *:first-child{
  margin-top: 0 !important;
}

/* конкретно заглавният ред (той е .d-flex ...) – леко отрицателен offset нагоре */

/* параграфът на въпроса – още малко нагоре за финално изравняване */
.question-text{
  white-space: pre-line !important;     /* пази Enter, без „таб“ ефект */
         /* фина настройка; можеш -2px..-6px */
  margin-bottom: 6px !important;
  line-height: 1.45;
}

/* MathJax формулите да не добавят пренасяне/въздух */
.question-text mjx-container{
  white-space: nowrap;
  display: inline-block;
             /* още малко прибира горния „дъх“ */
}

/* номерът остава долепен до първия ред */
.question-number{ margin-top: 0.2rem !important; }

/* ✅ Safe area fix за WebView/iOS/Android */
:root {
  --sat: env(safe-area-inset-top, 0px);
  --sab: env(safe-area-inset-bottom, 0px);
}

/* Ако имаш sticky/fixed navbar */
.navbar {
  padding-top: calc(var(--sat) + .35rem) !important;
}

/* Основното съдържание да не влиза под navbar-а */
body {
  padding-top: var(--sat);
  padding-bottom: var(--sab);
}

/* Footer да не влиза под долната системна лента */
footer {
  padding-bottom: calc(var(--sab) + 12px) !important;
}
/* ===== FINAL: clean math alignment in question text ===== */

.question-wrapper{
  gap: .5rem !important;
  align-items: flex-start !important;
}

.question-number{
  margin-top: 0 !important;
  line-height: 1.45 !important;
}

.card.question-card > .card-body{
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.card.question-card > .card-body > :first-child{
  margin-top: 0 !important;
}

.question-text{
  white-space: pre-line !important;
  text-indent: 0 !important;
  padding-left: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 6px !important;
  line-height: 1.45 !important;
}

/* MathJax inline formulas */
.question-text mjx-container,
.question-text .MathJax{
  display: inline-block !important;
  white-space: nowrap !important;
  vertical-align: baseline !important;
  margin: 0 !important;
  transform: translateY(-0.02em);
}
