html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
  color: var(--bs-secondary-color);
  text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
  text-align: start;
}

/* ===== UMGTR navbar ===== */
.umgtr-navbar { background:#16233F; }
.umgtr-navbar .navbar-brand { color:#fff; font-weight:700; letter-spacing:.5px; font-size:1.25rem; }
.umgtr-navbar .navbar-brand .tr { color:#E30A17; }
.umgtr-navbar .nav-link { color:rgba(255,255,255,.82); font-weight:500; padding-inline:.9rem; transition:color .15s ease; }
.umgtr-navbar .nav-link:hover, .umgtr-navbar .nav-link:focus { color:#fff; }
.umgtr-navbar .nav-link.active { color:#fff; }
.umgtr-navbar .nav-link.active::after { content:""; display:block; height:2px; margin-top:4px; border-radius:2px; background:#E30A17; }
.umgtr-navbar .navbar-toggler { border-color:rgba(255,255,255,.35); }

/* ===== Users: sortable headers + filter ===== */
.users-toolbar { gap:.5rem; }
.filter-group { max-width:380px; }
.th-sort { color:#16233F; text-decoration:none; font-weight:600; display:inline-flex; align-items:center; gap:.35rem; white-space:nowrap; }
.th-sort:hover { color:#E30A17; }
.th-sort .arrow { font-size:.7rem; color:#9aa3b2; line-height:1; }
.th-sort .arrow.active { color:#E30A17; }
.users-table thead th { border-bottom:2px solid #e6e8ec; }

.umgtr-navbar .umgtr-logout { background:none; border:0; padding-inline:.9rem; cursor:pointer; }
.umgtr-navbar .umgtr-logout:hover { color:#fff; }

/* WYSIWYG content (editor + public) */
.page-content{line-height:1.7}
.page-content h1,.page-content h2,.page-content h3{margin-top:1.2em}
.page-content blockquote{border-left:4px solid #E30A17;margin:1em 0;padding:.25em 1em;color:#495057;background:#f8f9fa}
.page-content pre{padding:1rem;border-radius:.5rem;overflow:auto;background:#0e1524;color:#f5f6f8}
.page-content pre.cmd{background:#000;color:#c8facc;font-family:ui-monospace,Consolas,monospace}
.page-content pre.cmd::before{content:"$ ";color:#5b6b8c}
.page-content img{max-width:100%;height:auto}
.ta-left{text-align:left}.ta-center{text-align:center}.ta-right{text-align:right}.ta-justify{text-align:justify}
.txt-navy{color:#16233F}.txt-red{color:#E30A17}.txt-steel{color:#5B6B8C}.txt-muted{color:#6c757d}
.fs-12{font-size:12px}.fs-14{font-size:14px}.fs-16{font-size:16px}.fs-18{font-size:18px}.fs-20{font-size:20px}
.fs-24{font-size:24px}.fs-28{font-size:28px}.fs-32{font-size:32px}.fs-40{font-size:40px}.fs-48{font-size:48px}
.page-content ul.cl{list-style:none;padding-left:1.6em}
.page-content ul.cl li{position:relative}
.page-content ul.cl li::before{content:"\2610";position:absolute;left:-1.5em}
.page-content ul.cl li.on::before{content:"\2611";color:#16a34a}
.page-content table.tbl{border-collapse:collapse;width:100%;margin:1em 0;table-layout:fixed}
.page-content table.tbl td,.page-content table.tbl th{border:1px solid #ccd2db;padding:.4em .6em}
.page-content table.tbl.bd-navy td,.page-content table.tbl.bd-navy th{border-color:#16233F}
.page-content table.tbl.bd-red td,.page-content table.tbl.bd-red th{border-color:#E30A17}
.page-content table.tbl.bd-steel td,.page-content table.tbl.bd-steel th{border-color:#5B6B8C}
.page-content table.tbl.bd-light td,.page-content table.tbl.bd-light th{border-color:#e6e8ec}
.page-content table.tbl.bd-none td,.page-content table.tbl.bd-none th{border-color:transparent}
.page-content td.bg-navy,.page-content th.bg-navy{background:#16233F;color:#fff}
.page-content td.bg-red,.page-content th.bg-red{background:#E30A17;color:#fff}
.page-content td.bg-steel,.page-content th.bg-steel{background:#5B6B8C;color:#fff}
.page-content td.bg-light,.page-content th.bg-light{background:#e9edf3}
.page-content td.bg-mist,.page-content th.bg-mist{background:#F5F6F8}
.page-content td.bg-none,.page-content th.bg-none{background:transparent;color:inherit}
.indent-1{margin-left:2em}.indent-2{margin-left:4em}.indent-3{margin-left:6em}.indent-4{margin-left:8em}.indent-5{margin-left:10em}
.page-content figure.fig{margin:1em 0;display:inline-block;max-width:100%}
.page-content figure.fig figcaption{font-size:.85em;color:#6c757d;text-align:center;margin-top:.35em}
.page-content figure.f-center{display:block;margin-left:auto;margin-right:auto;text-align:center}
.page-content figure.f-left{float:left;margin:0 1em 1em 0}
.page-content figure.f-right{float:right;margin:0 0 1em 1em}
.page-content .img-row{display:flex;gap:1em;flex-wrap:wrap;align-items:flex-start;margin:1em 0}
.page-content .img-row figure.fig{flex:1 1 0;margin:0}
.page-content .img-row img{width:100%}
.page-content img.rot-90{transform:rotate(90deg)}
.page-content img.rot-180{transform:rotate(180deg)}
.page-content img.rot-270{transform:rotate(270deg)}
.page-content img.adj-gray{filter:grayscale(1)}
.page-content img.adj-bright{filter:brightness(1.2)}
.page-content img.adj-contrast{filter:contrast(1.3)}
.page-content video{max-width:100%;height:auto}
.page-content audio{width:100%;margin:.5em 0}
.page-content .embed{position:relative;aspect-ratio:16/9;max-width:800px;margin:1em 0}
.page-content .embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
