/* =========================================================
   Breaking Barriers Training LMS — Premium Dark Main-Site UI
   Purpose: restyles the LMS subsite to match the main BBT site
   without changing PHP logic, database structure, forms or reports.
   ========================================================= */
:root{
  --bbt-lms-bg:#03050a;
  --bbt-lms-bg-2:#060a12;
  --bbt-lms-panel:#0b111c;
  --bbt-lms-panel-2:#101827;
  --bbt-lms-panel-3:#121d2d;
  --bbt-lms-ink:#f2f6fa;
  --bbt-lms-ink-2:#d9e4ef;
  --bbt-lms-muted:#9fb0c4;
  --bbt-lms-muted-2:#7f91a8;
  --bbt-lms-line:rgba(255,255,255,.10);
  --bbt-lms-line-strong:rgba(255,255,255,.16);
  --bbt-lms-teal:#19a7b8;
  --bbt-lms-teal-2:#4fd2de;
  --bbt-lms-gold:#d5a24d;
  --bbt-lms-gold-2:#f2cd85;
  --bbt-lms-danger:#ef4444;
  --bbt-lms-success:#22c55e;
  --bbt-lms-warning:#f59e0b;
  --bbt-lms-radius:26px;
  --bbt-lms-radius-sm:16px;
  --bbt-lms-shadow:0 24px 60px rgba(0,0,0,.34);
  --bbt-lms-shadow-soft:0 14px 34px rgba(0,0,0,.24);

  --ink:var(--bbt-lms-ink)!important;
  --muted:var(--bbt-lms-muted)!important;
  --line:var(--bbt-lms-line)!important;
  --soft:var(--bbt-lms-bg-2)!important;
  --panel:var(--bbt-lms-panel)!important;
  --paper:var(--bbt-lms-panel)!important;
  --bg:var(--bbt-lms-bg)!important;
  --brand:var(--bbt-lms-teal)!important;
  --accent:var(--bbt-lms-gold)!important;
  --accent2:var(--bbt-lms-teal)!important;
  --primary:var(--bbt-lms-teal)!important;
  --navy:#05070c!important;
  --gold:var(--bbt-lms-gold)!important;
  --shadow:var(--bbt-lms-shadow-soft)!important;
}

html{scroll-padding-top:150px;background:var(--bbt-lms-bg)!important;}
body{
  min-height:100vh;
  color:var(--bbt-lms-ink)!important;
  background:
    radial-gradient(circle at 82% 4%,rgba(25,167,184,.16),transparent 28%),
    radial-gradient(circle at 10% 24%,rgba(213,162,77,.13),transparent 27%),
    linear-gradient(180deg,#03050a 0%,#050914 48%,#03050a 100%)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;
  letter-spacing:0;
}
body:before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.88),rgba(0,0,0,.12));
  z-index:-1;
}
::selection{background:rgba(79,210,222,.28);color:#fff;}
a{color:var(--bbt-lms-teal-2)!important;text-decoration:none!important;}
a:hover{color:#ffffff!important;}
.container{width:min(1180px,calc(100% - 40px))!important;max-width:1180px!important;margin-inline:auto!important;padding-left:0!important;padding-right:0!important;}
.page{padding-top:42px!important;padding-bottom:62px!important;}

/* Main website header */
.bbt-main-header{
  position:sticky!important;
  top:0!important;
  z-index:10000!important;
  background:rgba(3,5,10,.92)!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.30)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}
.bbt-header-inner{min-height:76px!important;}
.bbt-main-logo{color:#fff!important;}
.bbt-main-logo img{
  width:34px!important;height:26px!important;max-width:34px!important;max-height:26px!important;
  object-fit:contain!important;filter:drop-shadow(0 8px 20px rgba(0,0,0,.25));
}
.bbt-main-logo strong{color:#fff!important;font-weight:950!important;letter-spacing:-.035em!important;}
.bbt-main-logo small{color:#aebacc!important;font-weight:700!important;}
.bbt-main-nav a{
  color:#dbe6f1!important;
  background:transparent!important;
  border:1px solid transparent!important;
  font-weight:820!important;
}
.bbt-main-nav a:hover,.bbt-main-nav a:focus-visible{
  background:#101826!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.08)!important;
}
.bbt-main-nav .bbt-header-cta{
  background:linear-gradient(135deg,#0f1728,#19a7b8)!important;
  border-color:rgba(79,210,222,.30)!important;
  color:#fff!important;
  box-shadow:0 16px 36px rgba(25,167,184,.18)!important;
}
.bbt-main-nav .bbt-header-cta:hover{background:linear-gradient(135deg,#152033,#22b8c8)!important;color:#fff!important;}
.bbt-main-nav-toggle{
  background:#0d1521!important;
  color:#fff!important;
  border:1px solid #203044!important;
  box-shadow:0 12px 28px rgba(0,0,0,.25)!important;
}

/* LMS secondary header */
.site-header,.topbar,header.site-header,header.topbar{
  position:sticky!important;
  top:76px!important;
  z-index:9990!important;
  background:rgba(5,8,14,.88)!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  color:var(--bbt-lms-ink)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
.site-header.admin{border-top:3px solid rgba(79,210,222,.7)!important;}
.site-header.learner{border-top:3px solid rgba(213,162,77,.76)!important;}
.nav,.nav-wrap,.header-inner{min-height:72px!important;gap:20px!important;}
.brand,.logo,.app-title{
  color:#fff!important;
  font-weight:950!important;
  letter-spacing:-.035em!important;
  font-size:1.02rem!important;
}
.brand span,.logo span{color:#fff!important;}
.brand:hover,.logo:hover{color:#fff!important;}
nav,.nav-links,.main-nav{gap:8px!important;}
nav a,.nav-links a,.main-nav a,.nav a{
  color:#dbe6f1!important;
  background:transparent!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  padding:9px 13px!important;
  min-height:40px!important;
  font-weight:800!important;
  font-size:.91rem!important;
  text-decoration:none!important;
}
nav a:hover,.nav-links a:hover,.main-nav a:hover,.nav a:hover{
  background:#101826!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.08)!important;
}

/* Typography */
h1,h2,h3,h4{
  color:var(--bbt-lms-ink)!important;
  letter-spacing:-.045em!important;
}
h1{font-size:clamp(2.25rem,5vw,4.45rem)!important;line-height:1.02!important;margin-bottom:1rem!important;}
h2{font-size:clamp(1.55rem,3vw,2.6rem)!important;line-height:1.08!important;margin-bottom:.8rem!important;}
h3{font-size:clamp(1.1rem,1.7vw,1.35rem)!important;line-height:1.18!important;}
p,li,.muted,.small,.help,.hint,.hero p,.card p,.panel p,.report-card p{
  color:var(--bbt-lms-muted)!important;
}
strong,b{color:var(--bbt-lms-ink)!important;}
.small{font-size:.86rem!important;}
.eyebrow,.label,.kicker{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  padding:8px 13px!important;
  border-radius:999px!important;
  background:#0d1520!important;
  border:1px solid rgba(79,210,222,.20)!important;
  color:var(--bbt-lms-teal-2)!important;
  box-shadow:none!important;
  font-size:.73rem!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  margin:0 0 14px!important;
}

/* Hero and catalogue areas */
.hero,.bbt-hero,.dashboard-hero,.page-banner{
  position:relative!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr)!important;
  gap:34px!important;
  align-items:center!important;
  padding:76px 0 60px!important;
  background:
    radial-gradient(circle at 86% 10%,rgba(25,167,184,.21),transparent 28%),
    radial-gradient(circle at 12% 86%,rgba(213,162,77,.16),transparent 30%),
    linear-gradient(135deg,#03050a 0%,#07101a 52%,#0b1220 100%)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:34px!important;
  box-shadow:var(--bbt-lms-shadow)!important;
  padding-left:34px!important;
  padding-right:34px!important;
  margin-bottom:28px!important;
}
.hero:before,.bbt-hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px)!important;
  background-size:48px 48px!important;
  opacity:.48!important;
}
.hero:after,.bbt-hero:after{
  content:""!important;
  position:absolute!important;
  right:-90px!important;
  top:-90px!important;
  width:260px!important;
  height:260px!important;
  border-radius:50%!important;
  background:radial-gradient(circle,rgba(79,210,222,.20),rgba(79,210,222,0) 66%)!important;
  pointer-events:none!important;
}
.hero > *,.bbt-hero > *{position:relative!important;z-index:1!important;}
.hero h1,.bbt-hero h1{max-width:850px!important;color:#fff!important;}
.hero p,.bbt-hero p{max-width:760px!important;color:#aab7c8!important;font-size:1.08rem!important;}
.brand-strip{
  background:linear-gradient(145deg,#0b111c,#101928)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-left:0!important;
  border-radius:26px!important;
  color:#dbe6f1!important;
  box-shadow:0 20px 48px rgba(0,0,0,.26)!important;
}
.brand-strip strong{color:#fff!important;}

/* Cards and panels */
.card,.panel,.report-card,.question,.concept-block,.case-block,.takeaway-box,.chosen-answer,.correct-answer-box,.interactive-option,.resource-box,.concept-reference-box{
  background:linear-gradient(145deg,#0b111c,#101928)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:var(--bbt-lms-radius)!important;
  color:var(--bbt-lms-ink)!important;
  box-shadow:var(--bbt-lms-shadow-soft)!important;
}
.card,.panel,.report-card{padding:26px!important;}
.card:hover,.course-card:hover,.panel:hover{
  transform:translateY(-2px);
  box-shadow:0 28px 64px rgba(0,0,0,.34)!important;
  border-color:rgba(79,210,222,.22)!important;
}
.bbt-card{
  border-top:0!important;
  background:linear-gradient(145deg,rgba(12,19,30,.94),rgba(14,47,61,.86))!important;
  border-color:rgba(79,210,222,.24)!important;
}
.course-card{min-height:100%;}
.course-card h3,.course-card h2{margin-top:0!important;}
.course-card .button{margin-top:auto!important;}
.grid{gap:22px!important;}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.media-preview,.concept-image{
  border-radius:20px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 18px 46px rgba(0,0,0,.22)!important;
}
.video-frame{border:1px solid rgba(255,255,255,.10)!important;background:#02040a!important;box-shadow:0 18px 46px rgba(0,0,0,.30)!important;}

/* Buttons */
.button,.btn,button,input[type=submit],.link-button{
  min-height:44px!important;
  border-radius:999px!important;
  padding:11px 18px!important;
  border:1px solid rgba(79,210,222,.30)!important;
  background:linear-gradient(135deg,#0f1728,#19a7b8)!important;
  color:#fff!important;
  font-weight:900!important;
  letter-spacing:0!important;
  text-transform:none!important;
  box-shadow:0 16px 34px rgba(25,167,184,.18)!important;
}
.button:hover,.btn:hover,button:hover,input[type=submit]:hover,.link-button:hover{
  transform:translateY(-1px);
  background:linear-gradient(135deg,#152033,#22b8c8)!important;
  border-color:rgba(79,210,222,.42)!important;
  color:#fff!important;
  box-shadow:0 20px 44px rgba(25,167,184,.24)!important;
}
.button.ghost,.btn.ghost,.button.secondary,.btn.secondary,.btn-secondary{
  background:#0d1520!important;
  color:#eaf2fa!important;
  border-color:#223148!important;
  box-shadow:none!important;
}
.button.ghost:hover,.btn.ghost:hover,.button.secondary:hover,.btn.secondary:hover,.btn-secondary:hover{
  background:#111927!important;
  border-color:#2b425f!important;
  color:#fff!important;
}
.button.danger,.btn.danger,.btn-danger{
  background:linear-gradient(135deg,#7f1d1d,#ef4444)!important;
  border-color:rgba(239,68,68,.45)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(239,68,68,.18)!important;
}
.btn.small,button.small{min-height:34px!important;padding:7px 11px!important;font-size:.78rem!important;}
.actions{gap:11px!important;align-items:center!important;}

/* Forms */
label{color:#eaf2fa!important;font-weight:850!important;}
input,textarea,select,.form-control{
  background:#08111b!important;
  border:1px solid #223246!important;
  color:#edf3f8!important;
  border-radius:16px!important;
  box-shadow:none!important;
  caret-color:var(--bbt-lms-teal-2)!important;
}
input::placeholder,textarea::placeholder{color:#6f8198!important;}
input:focus,textarea:focus,select:focus,.form-control:focus{
  outline:none!important;
  border-color:#35c3d4!important;
  box-shadow:0 0 0 4px rgba(53,195,212,.12)!important;
}
option{background:#08111b!important;color:#edf3f8!important;}
.help{color:#8fa2b8!important;}

/* Tables */
.table-wrap{
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:22px!important;
  overflow:auto!important;
  background:#0b111c!important;
  box-shadow:var(--bbt-lms-shadow-soft)!important;
}
table{background:#0b111c!important;color:#dce6f2!important;border-collapse:collapse!important;}
th{
  background:#101826!important;
  color:#9fb0c4!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  font-size:.76rem!important;
  text-transform:uppercase!important;
  letter-spacing:.09em!important;
}
td{color:#dce6f2!important;border-bottom:1px solid rgba(255,255,255,.08)!important;}
th,td{padding:14px!important;}
tr:hover td{background:rgba(79,210,222,.035)!important;}

/* Badges, alerts and progress */
.badge,.pill,.level,.emotion{
  border-radius:999px!important;
  font-weight:900!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.badge-success{background:rgba(34,197,94,.14)!important;color:#86efac!important;}
.badge-warning{background:rgba(245,158,11,.15)!important;color:#fcd34d!important;}
.badge-muted{background:rgba(148,163,184,.16)!important;color:#cbd5e1!important;}
.alert{
  border-radius:18px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  box-shadow:var(--bbt-lms-shadow-soft)!important;
}
.alert-success{background:rgba(34,197,94,.13)!important;color:#bbf7d0!important;border-color:rgba(34,197,94,.26)!important;}
.alert-error{background:rgba(239,68,68,.13)!important;color:#fecaca!important;border-color:rgba(239,68,68,.28)!important;}
.alert-warning{background:rgba(245,158,11,.13)!important;color:#fde68a!important;border-color:rgba(245,158,11,.28)!important;}
.alert-info{background:rgba(25,167,184,.13)!important;color:#cffafe!important;border-color:rgba(25,167,184,.30)!important;}
.bar{background:#172234!important;border:1px solid rgba(255,255,255,.08)!important;height:13px!important;}
.bar span{background:linear-gradient(90deg,#19a7b8,#f2cd85)!important;box-shadow:0 0 18px rgba(79,210,222,.26)!important;}
.bar-label{color:#cbd8e6!important;}
.bar-label strong{color:#fff!important;}
.score-circle{
  background:linear-gradient(135deg,#19a7b8,#d5a24d)!important;
  box-shadow:0 20px 48px rgba(25,167,184,.24)!important;
  color:#fff!important;
}
.score-circle span,.score-circle small{color:#fff!important;}
.score-strip{background:#0d1520!important;border-color:rgba(79,210,222,.22)!important;color:#e8f8fb!important;}

/* Learning, module and assessment objects */
.module-item{
  background:linear-gradient(145deg,#0b111c,#101928)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:20px!important;
  box-shadow:0 12px 28px rgba(0,0,0,.20)!important;
}
.module-index,.brand-mark,.logo-mark,.category-icon{
  background:linear-gradient(135deg,#0f1728,#19a7b8)!important;
  color:#fff!important;
  border:1px solid rgba(79,210,222,.22)!important;
  box-shadow:0 14px 30px rgba(25,167,184,.16)!important;
}
.concept-block{background:linear-gradient(145deg,#0b111c,#0f1826)!important;line-height:1.72!important;}
.case-block{
  background:linear-gradient(145deg,#101826,#151d2d)!important;
  border-left:5px solid var(--bbt-lms-gold)!important;
  line-height:1.72!important;
}
.takeaway-box,.resource-box{
  background:rgba(213,162,77,.10)!important;
  border-color:rgba(242,205,133,.24)!important;
  color:#f6ead4!important;
}
.correct-answer-box{
  background:rgba(34,197,94,.12)!important;
  border-color:rgba(34,197,94,.28)!important;
  color:#bbf7d0!important;
}
.chosen-answer{
  background:#0d1520!important;
  border-color:rgba(255,255,255,.10)!important;
}
.interactive-option,.option{
  color:#dbe6f1!important;
}
.interactive-option{
  background:#0d1520!important;
  border-color:rgba(255,255,255,.10)!important;
  box-shadow:none!important;
}
.interactive-option:hover{
  border-color:rgba(79,210,222,.42)!important;
  background:#111b28!important;
  box-shadow:0 16px 34px rgba(0,0,0,.18)!important;
}
.question .option{
  background:#0d1520!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:16px!important;
  padding:12px 13px!important;
}
.question .option:hover{border-color:rgba(79,210,222,.32)!important;background:#111b28!important;}
.question .option input{accent-color:var(--bbt-lms-teal)!important;}
.concept-reference-box{
  background:rgba(25,167,184,.08)!important;
  border-color:rgba(25,167,184,.25)!important;
}
.warning-option{background:rgba(245,158,11,.12)!important;border-color:rgba(245,158,11,.34)!important;color:#fde68a!important;}
.mcq-option-editor{background:#0d1520!important;border-color:rgba(255,255,255,.10)!important;}
.code-textarea{background:#05070c!important;color:#e2e8f0!important;}

/* Reports and certificates */
.printable-report,.certificate{
  background:linear-gradient(145deg,#0b111c,#101928)!important;
  color:var(--bbt-lms-ink)!important;
  border-color:rgba(213,162,77,.35)!important;
  box-shadow:var(--bbt-lms-shadow)!important;
}
.certificate{
  border:10px solid rgba(213,162,77,.42)!important;
  border-radius:28px!important;
}
.certificate h1{color:#fff!important;}
.certificate .cert-no{color:var(--bbt-lms-gold-2)!important;}
.certificate-logo{filter:drop-shadow(0 14px 26px rgba(0,0,0,.28));}
.report-topline{gap:26px!important;}

/* Footer */
.footer{
  background:#02040a!important;
  border-top:1px solid rgba(255,255,255,.08)!important;
  color:#9fb0c4!important;
  padding:34px 0!important;
}
.footer strong{color:#fff!important;}
.footer span{color:#9fb0c4!important;}
.footer a{color:#cfe9ee!important;font-weight:850!important;}
.footer a:hover{color:#fff!important;}
.footer-inner{display:flex!important;justify-content:space-between!important;gap:22px!important;align-items:flex-start!important;}

/* Responsive alignment */
@media(max-width:980px){
  .hero,.bbt-hero,.grid.two,.grid.three{grid-template-columns:1fr!important;}
  .hero,.bbt-hero{padding:52px 24px 34px!important;border-radius:28px!important;}
  .site-header,.topbar,header.site-header,header.topbar{top:76px!important;}
}
@media(max-width:820px){
  html{scroll-padding-top:120px!important;}
  .container{width:min(100% - 28px,1180px)!important;}
  .bbt-header-inner{min-height:68px!important;width:min(100% - 28px,1180px)!important;}
  .bbt-main-logo strong{font-size:.96rem!important;}
  .bbt-main-nav-toggle{display:inline-flex!important;}
  .bbt-main-nav{
    position:absolute!important;
    left:14px!important;
    right:14px!important;
    top:74px!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
    padding:14px!important;
    background:#0c131e!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:22px!important;
    box-shadow:0 26px 70px rgba(0,0,0,.44)!important;
  }
  .bbt-main-nav.is-open{display:flex!important;}
  .bbt-main-nav a{justify-content:flex-start!important;width:100%!important;border-radius:15px!important;}
  .site-header,.topbar,header.site-header,header.topbar{top:68px!important;}
  .nav,.nav-wrap{min-height:0!important;padding:11px 0!important;align-items:flex-start!important;flex-direction:column!important;gap:10px!important;}
  .brand,.logo,.app-title{font-size:.98rem!important;width:100%!important;}
  nav,.nav-links{width:100%!important;display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch!important;padding:2px 0 8px!important;scrollbar-width:none!important;}
  nav::-webkit-scrollbar,.nav-links::-webkit-scrollbar{display:none!important;}
  nav a,.nav-links a{flex:0 0 auto!important;background:#0d1520!important;border-color:rgba(255,255,255,.08)!important;font-size:.82rem!important;}
  .page{padding-top:24px!important;padding-bottom:42px!important;}
  .hero,.bbt-hero{margin-top:0!important;padding:38px 18px 26px!important;gap:18px!important;}
  h1{font-size:clamp(1.9rem,9vw,3rem)!important;line-height:1.06!important;}
  h2{font-size:clamp(1.35rem,6vw,2rem)!important;}
  .hero p,.bbt-hero p{font-size:1rem!important;}
  .actions{display:grid!important;grid-template-columns:1fr!important;width:100%!important;}
  .actions .button,.actions .btn,.actions button,.actions input[type=submit],.course-card .button{width:100%!important;}
  .card,.panel,.report-card,.question,.concept-block,.case-block,.takeaway-box,.chosen-answer,.correct-answer-box{padding:18px!important;border-radius:20px!important;}
  .module-item{grid-template-columns:40px 1fr!important;align-items:start!important;}
  .module-item > *:last-child{grid-column:1 / -1!important;width:100%!important;}
  .brand-strip,.footer-inner{flex-direction:column!important;align-items:flex-start!important;}
  .table-wrap:before{
    content:'Swipe sideways to view the full table';
    display:block;
    padding:9px 12px;
    font-size:12px;
    color:#aab7c8;
    background:#0d1520;
    border-bottom:1px solid rgba(255,255,255,.10);
  }
}
@media(max-width:420px){
  .container{width:min(100% - 22px,1180px)!important;}
  .hero,.bbt-hero{border-radius:22px!important;padding:30px 14px 22px!important;}
  .card,.panel,.report-card{padding:16px!important;border-radius:18px!important;}
  nav a,.nav-links a{font-size:.78rem!important;padding:8px 10px!important;}
}

/* Print: keep reports and certificates clean on paper */
@media print{
  body{background:#fff!important;color:#111827!important;}
  body:before,.bbt-main-header,.site-header,.topbar,.footer,.actions,.no-print{display:none!important;}
  h1,h2,h3,h4,p,li,strong,b,.muted,.small{color:#111827!important;}
  .container{width:100%!important;max-width:none!important;}
  .page{padding:0!important;}
  .card,.panel,.report-card,.question,.concept-block,.case-block,.takeaway-box,.chosen-answer,.correct-answer-box,.certificate,.printable-report{background:#fff!important;color:#111827!important;border-color:#ddd!important;box-shadow:none!important;}
  table,th,td{background:#fff!important;color:#111827!important;border-color:#ddd!important;}
  .bar{background:#eee!important;border-color:#ddd!important;}
  .bar span{background:#123d56!important;box-shadow:none!important;}
  .score-circle{background:#123d56!important;box-shadow:none!important;color:#fff!important;}
  .table-wrap:before{display:none!important;}
}

/* =========================================================
   Assessment visibility QA patch - June 2026
   Fixes dark-text-on-dark-card issue caused by the shared
   global option rules. Applies to learner and public forms.
   ========================================================= */
.question,
.question * {
  color: var(--bbt-lms-ink-2) !important;
}
.question > label,
.question label:not(.option),
.question legend,
.question .question-title,
.question .question-label {
  color: #ffffff !important;
  font-weight: 900 !important;
}
.question .help,
.question .muted,
.question .small {
  color: #a9b8c9 !important;
}
.question .options,
.public-form .options,
.assessment-form .options {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  width: 100% !important;
}
.question .option,
.public-form .option,
.assessment-form .option,
.option.choice,
.answer-option,
.question-option {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 48px !important;
  padding: 13px 14px !important;
  background: #0d1520 !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 16px !important;
  color: #eaf2fa !important;
  line-height: 1.5 !important;
  cursor: pointer !important;
}
.question .option:hover,
.public-form .option:hover,
.assessment-form .option:hover,
.answer-option:hover,
.question-option:hover {
  background: #111b28 !important;
  border-color: rgba(79,210,222,.42) !important;
}
.question .option span,
.public-form .option span,
.assessment-form .option span,
.option.choice span,
.answer-option span,
.question-option span,
.interactive-option span,
.question .option strong,
.public-form .option strong,
.assessment-form .option strong,
.answer-option strong,
.question-option strong {
  display: block !important;
  min-width: 0 !important;
  color: #f2f6fa !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}
.question .option input[type="radio"],
.question .option input[type="checkbox"],
.public-form .option input[type="radio"],
.public-form .option input[type="checkbox"],
.assessment-form .option input[type="radio"],
.assessment-form .option input[type="checkbox"] {
  grid-column: 1 !important;
  justify-self: center !important;
  align-self: start !important;
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  margin: 4px 0 0 !important;
  accent-color: var(--bbt-lms-teal-2) !important;
}
.question input[type="text"],
.question input[type="email"],
.question input[type="number"],
.question input[type="date"],
.question textarea,
.question select {
  color: #f2f6fa !important;
  background: #08111b !important;
  border-color: #26384f !important;
}
.question select option {
  color: #f2f6fa !important;
  background: #08111b !important;
}
.question input[type="range"] {
  accent-color: var(--bbt-lms-teal-2) !important;
}
@media(max-width:640px){
  .question .option,
  .public-form .option,
  .assessment-form .option,
  .answer-option,
  .question-option {
    grid-template-columns: 20px minmax(0,1fr) !important;
    gap: 10px !important;
    padding: 12px !important;
  }
}
@media print{
  .question,
  .question *,
  .question .option span,
  .public-form .option span,
  .assessment-form .option span,
  .answer-option span,
  .question-option span {
    color: #111827 !important;
  }
  .question .option,
  .public-form .option,
  .assessment-form .option,
  .answer-option,
  .question-option {
    background: #ffffff !important;
    border-color: #dddddd !important;
  }
}
