/* NWOTA Custom Styles */

/* Navbar */
.navbar-brand {
    font-weight: 700;
    letter-spacing: 1px;
}

/* Cards */
.card-header {
    font-weight: 600;
}

/* Login page */
body.bg-light {
    min-height: 100vh;
}

/* Dashboard stats */
.card .display-6 {
    font-weight: 700;
}

/* Flash messages at top of page */
.alert {
    border-radius: 0.375rem;
}

/* DataTables adjustments */
.dataTables_wrapper .dt-buttons {
    margin-bottom: 0.5rem;
}

/* Child row expand/collapse control */
td.dt-control {
    cursor: pointer;
    width: 20px;
}
td.dt-control::before {
    content: '\25B6';
    color: #198754;
    font-size: 0.8em;
}
tr.shown td.dt-control::before {
    content: '\25BC';
}

/* Co-lead badges in child rows */
.colead-remove {
    cursor: pointer;
}

/* Attendance toggle: red when off, green when on */
.att-toggle .form-check-input {
    background-color: #dc3545;
    border-color: #dc3545;
}
.att-toggle .form-check-input:checked {
    background-color: #198754;
    border-color: #198754;
}
.att-toggle .form-check-input:focus {
    box-shadow: none;
}
.att-no .att-label-no { color: #dc3545; }
.att-no .att-label-yes { color: #ccc; }
.att-yes .att-label-no { color: #ccc; }
.att-yes .att-label-yes { color: #198754; }

/* Validation badges */
.badge-validated {
    background-color: #198754;
}

.badge-unvalidated {
    background-color: #6c757d;
}

/* ── ARCP assess page: independent scrollable panes ─────────────────────────
   The portfolio (left) and guidance+comments (right) become fixed-height,
   independently-scrolling panes so the comments box can never be scrolled out
   of view. JS sizes #arcp-split to the remaining viewport height. This only
   applies on lg+ where the columns sit side by side; below lg they stack and
   the page scrolls normally (the assessment form stays above the portfolio via
   the existing order-lg-* classes). */
.arcp-portfolio-frame { width: 100%; height: 72vh; border: 0; display: block; }
@media (min-width: 992px) {
    #arcp-split { overflow: hidden; }
    #arcp-split > [class*="col-"] { height: 100%; overflow-y: auto; }
    .arcp-portfolio-frame { height: 100%; }
}

/* ── Rendered Quill content ─────────────────────────────────────────────────
   Inside the Quill editor every line is a <p style="margin:0"> at line-height
   1.42, so a single Enter reads as a line break and a double Enter (stored as
   <p><br></p>) reads as a blank line. Outside the editor the browser's default
   <p> margin reintroduces a large gap. Add `.rich-text` to any element that
   displays stored Quill HTML to reproduce the editor's compact spacing.
   (PDF and email pipelines apply the equivalent rule themselves — see
   pages/arcp/pdf.php, includes/viva-email.php and includes/email.php.) */
.rich-text { line-height: 1.42; }
.rich-text p { margin: 0; }
