:root{--bg:#090a0c;--panel:#121418;--panel2:#191c21;--line:#30343a;--text:#f4f4f5;--muted:#a1a1aa;--blue:#ef4444;--green:#22c55e;--yellow:#facc15;--red:#ef4444;--shadow:0 12px 30px rgba(0,0,0,.22)}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:linear-gradient(135deg,#090a0c,#111318 48%,#0b0c0f);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100vh}button,input,select{font:inherit}a{color:#f87171}.hidden{display:none!important}.muted{color:var(--muted)}.eyebrow{font-size:12px;font-weight:850;letter-spacing:.12em;text-transform:uppercase;color:#f87171}.wrap{max-width:1240px;margin:auto;padding:18px}.topbar{max-width:1240px;margin:0 auto;padding:14px 18px 3px;display:flex;align-items:center;justify-content:space-between}.nav{position:sticky;top:0;z-index:20;max-width:1240px;margin:10px auto;padding:7px;background:rgba(7,17,31,.94);backdrop-filter:blur(10px);border:1px solid var(--line);border-radius:15px;display:flex;gap:5px;overflow:auto}.nav button{border:0;background:transparent;color:var(--muted);padding:10px 12px;border-radius:9px;white-space:nowrap;cursor:pointer}.nav button.active{background:#16314d;color:white}.section{display:none}.section.active{display:block}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(520px,100%);background:#0b1d2d;border:1px solid #2d4b64;border-radius:28px;padding:34px;box-shadow:var(--shadow)}.auth-card h1{font-size:clamp(34px,8vw,52px);line-height:1.04;margin:14px 0}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;background:#081a2a;border:1px solid #284761;border-radius:13px;padding:5px;margin:26px 0}.auth-tab{border:0;background:transparent;color:var(--muted);padding:12px;border-radius:10px}.auth-tab.active{background:#173e63;color:white}.auth-form{display:grid;gap:16px}.auth-form label,label{display:grid;gap:6px;color:#b9cadc}.auth-form input,input,select{width:100%;background:#071725;color:white;border:1px solid #31506d;border-radius:11px;padding:12px}.auth-form .btn{width:100%;font-size:18px;font-weight:800}
.hero,.card,.qcard{background:rgba(13,27,42,.96);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow)}.hero{padding:24px;display:grid;grid-template-columns:1.4fr .6fr;gap:20px}.hero h1{font-size:clamp(30px,5vw,50px);margin:12px 0 8px}.hero p{line-height:1.6;color:var(--muted)}.hero-actions{display:flex;flex-direction:column;justify-content:center;gap:10px}.card{padding:18px;margin-bottom:14px}.card h2,.card h3{margin-top:0}.qcard{padding:18px;margin:13px 0}.qtitle{font-size:20px;line-height:1.42;font-weight:750;margin:10px 0 14px}.badge,.pill{display:inline-flex;align-items:center;border:1px solid #31506d;border-radius:999px;padding:5px 8px;margin:0 5px 5px 0;color:#b9dffc;font-size:12px}.stats{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:14px 0}.stat{background:#0a1928;border:1px solid var(--line);border-radius:14px;padding:15px;text-align:center}.stat b{display:block;font-size:26px}.stat span{color:var(--muted);font-size:12px}.metric{font-size:44px;font-weight:850}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.steps div{background:#081a2a;border:1px solid var(--line);border-radius:12px;padding:14px;display:flex;gap:10px}.steps b{color:#f87171}.btn{border:1px solid #31506d;background:#122a43;color:#e7f5ff;padding:10px 14px;border-radius:10px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:6px}.btn.primary{background:#075985;border-color:#0ea5e9}.btn.good{background:#14532d;border-color:#22c55e}.btn.warn{background:#5b4108;border-color:#facc15}.btn.danger{background:#5f1d1d;border-color:#ef4444}.btn.ghost{background:#0a1b2c}.btn:disabled{opacity:.5;cursor:not-allowed}.toolbar,.card-heading,.runner-head,.bank-tools{display:flex;gap:12px;align-items:end;justify-content:space-between;flex-wrap:wrap}.toolbar>div:first-child{margin-right:auto}.toolbar label{min-width:135px}
.choice{display:flex;width:100%;text-align:left;gap:9px;margin:7px 0;padding:12px 13px;border-radius:11px;border:1px solid #2b4661;background:#102238;color:var(--text);cursor:pointer}.choice.correct{background:#123d27;border-color:#22c55e}.choice.wrong{background:#4a2025;border-color:#ef4444}.choice.selected{outline:2px solid #38bdf8}.choice input{width:auto}.answer-box{margin-top:12px;padding:12px 14px;background:#0e2033;border-left:4px solid #38bdf8;border-radius:9px;line-height:1.55}.source{font-size:12px;color:var(--muted);margin-top:7px}.bookmark-btn{float:right}.progress{height:9px;background:#07121e;border-radius:99px;overflow:hidden;border:1px solid #1d344d;margin:10px 0}.progress>div{height:100%;background:linear-gradient(90deg,#0ea5e9,#22c55e)}.navigator{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;margin-top:12px}.navigator button{aspect-ratio:1;border-radius:7px;border:1px solid #28455f;background:#0d2135;color:#b9c9db}.navigator button.answered{background:#164e63;color:white}.navigator button.current{outline:2px solid #38bdf8}.test-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line)}.test-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:12px}.result-pass{color:#4ade80}.result-fail{color:#f87171}.wrong-review{border-color:#713039}.official-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.link-card{display:flex;flex-direction:column;gap:5px;padding:15px;border:1px solid var(--line);border-radius:12px;text-decoration:none;background:#091827}.link-card span{color:var(--muted)}.toast{position:fixed;right:18px;bottom:18px;z-index:99;background:#15314c;border:1px solid #3b607f;border-radius:12px;padding:14px 18px;transform:translateY(130%);transition:.2s;box-shadow:var(--shadow)}.toast.show{transform:translateY(0)}.note{background:#33290b;border:1px solid #665415;color:#fff2ad;border-radius:11px;padding:12px 14px}.section-picker{display:grid;grid-template-columns:220px 1fr;gap:10px}.source-text{max-height:440px;overflow:auto;background:#071522;border:1px solid #25435f;border-radius:12px;padding:15px;line-height:1.62;white-space:pre-wrap;color:#d7e4f1}.section-meta{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.section-score{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mini-stat{background:#081522;border:1px solid var(--line);border-radius:12px;padding:11px;text-align:center}.mini-stat b{display:block;font-size:21px}.bank-tools{justify-content:flex-start}.bank-tools input{flex:1;min-width:220px}.bank-tools select{width:auto;min-width:130px}.bank-item summary{cursor:pointer;font-weight:750;line-height:1.4}.doc-card{min-height:180px}.doc-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:15px}.source-row{padding:12px 0;border-bottom:1px solid var(--line)}.source-row b{display:block;margin-bottom:4px}
@media(max-width:900px){.stats{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:1fr 1fr}.hero,.grid2,.grid3{grid-template-columns:1fr}.hero-actions{flex-direction:row;justify-content:flex-start}.section-picker{grid-template-columns:1fr}.official-grid{grid-template-columns:1fr}.navigator{grid-template-columns:repeat(5,1fr)}}
@media(max-width:520px){.wrap{padding:11px}.topbar{padding:12px 12px 2px}.auth-card{padding:24px 18px;border-radius:22px}.stats{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr}.qtitle{font-size:18px}.test-row{align-items:flex-start;flex-direction:column}.toolbar{align-items:stretch}.toolbar label{width:100%}.hero-actions{flex-direction:column}.section-score{grid-template-columns:1fr 1fr 1fr}}
.top-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.modal{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:100;display:grid;place-items:center;padding:18px}.modal-card{width:min(520px,100%);background:#0d1b2a;border:1px solid #31506d;border-radius:18px;padding:20px;display:grid;gap:14px;box-shadow:var(--shadow)}.admin-shell{max-width:1500px;margin:auto;padding:18px}.admin-head{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.admin-actions{display:flex;gap:8px;flex-wrap:wrap}.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.admin-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.admin-table{width:100%;border-collapse:collapse;min-width:1050px}.admin-table th,.admin-table td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.admin-table th{position:sticky;top:0;background:#0a1928;color:#b9dffc;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.admin-table tr:hover td{background:#0b2033}.activity-list{display:grid;gap:9px}.activity-row{display:grid;grid-template-columns:180px 1fr 220px;gap:12px;padding:11px;border:1px solid var(--line);border-radius:11px;background:#081a2a}.reset-result{background:#13301f;border:1px solid #22c55e;border-radius:13px;padding:14px;margin:12px 0}.temp-password{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:21px;letter-spacing:.04em;word-break:break-all}.admin-search{max-width:420px}@media(max-width:900px){.admin-grid{grid-template-columns:repeat(2,1fr)}.activity-row{grid-template-columns:1fr}.top-actions{justify-content:flex-end}.topbar{align-items:flex-start}}@media(max-width:560px){.admin-grid{grid-template-columns:1fr}.top-actions .btn{padding:8px 10px;font-size:12px}}

.auth-link{border:0;background:transparent;color:#f87171;padding:8px 2px;text-align:left;cursor:pointer;font-weight:700}
.auth-link:hover{text-decoration:underline}
.auth-status{margin-top:8px;padding:11px 12px;border:1px solid #31506d;background:#0a1b2d;border-radius:10px;color:#d7e4f1;line-height:1.45}
.auth-status.good{border-color:#22c55e;background:#0b2b1a}
.auth-status.warn{border-color:#facc15;background:#33290b;color:#fff2ad}


/* ===== 2026 MODERN BLACK / CHARCOAL / RED THEME ===== */
:root{
  --bg:#090909;
  --panel:#131313;
  --panel2:#1b1b1b;
  --line:#343434;
  --text:#f4f4f4;
  --muted:#a9a9a9;
  --blue:#ef2b2d;
  --green:#2ea043;
  --yellow:#d6a521;
  --red:#ef2b2d;
  --shadow:0 16px 40px rgba(0,0,0,.38);
}
html{background:#090909}
body{
  background:
    radial-gradient(circle at 90% 0%,rgba(153,27,27,.16),transparent 34%),
    radial-gradient(circle at 0% 75%,rgba(239,43,45,.055),transparent 28%),
    linear-gradient(145deg,#070707,#111 52%,#090909);
  color:var(--text);
}
a{color:#ff5a5c}
.muted{color:#aaa}
.eyebrow{color:#ff4143;letter-spacing:.15em}

.topbar{padding-top:18px}
.topbar strong{color:#fff;font-size:18px}
.top-actions{gap:7px}

.nav{
  background:rgba(10,10,10,.94);
  border-color:#343434;
  box-shadow:0 8px 28px rgba(0,0,0,.28);
}
.nav button{color:#b8b8b8}
.nav button:hover{background:#191919;color:#fff}
.nav button.active{
  background:linear-gradient(180deg,#c81e20,#991b1b);
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 7px 18px rgba(153,27,27,.22);
}

.auth-shell{background:transparent}
.auth-card{
  background:linear-gradient(180deg,#151515,#101010);
  border-color:#3b3b3b;
  box-shadow:0 26px 70px rgba(0,0,0,.48);
  position:relative;
  overflow:hidden;
}
.auth-card:before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;height:4px;
  background:linear-gradient(90deg,#ef2b2d,#991b1b 58%,transparent);
}
.auth-card h1{color:#fff}
.auth-tabs{background:#0c0c0c;border-color:#373737}
.auth-tab{color:#aaa}
.auth-tab.active{background:#232323;color:#fff;box-shadow:inset 0 -2px 0 #ef2b2d}
.auth-form label,label{color:#c7c7c7}
.auth-form input,input,select{
  background:#0c0c0c;
  color:#fff;
  border-color:#3a3a3a;
}
input:focus,select:focus{
  outline:none;
  border-color:#ef2b2d;
  box-shadow:0 0 0 3px rgba(239,43,45,.14);
}

.hero,.card,.qcard{
  background:linear-gradient(180deg,rgba(24,24,24,.98),rgba(17,17,17,.98));
  border-color:#343434;
}
.hero{position:relative;overflow:hidden}
.hero:after{
  content:"";
  position:absolute;
  width:260px;height:260px;border-radius:50%;
  right:-130px;top:-150px;
  background:radial-gradient(circle,rgba(239,43,45,.16),transparent 68%);
  pointer-events:none;
}
.hero h1,.card h2,.card h3,.qtitle{color:#fff}
.badge,.pill{
  border-color:#444;
  color:#dedede;
  background:#171717;
}
.stats{gap:11px}
.stat,.mini-stat{
  background:#111;
  border-color:#343434;
}
.stat b,.mini-stat b{color:#fff}
.steps div{background:#111;border-color:#333}
.steps b{color:#ef2b2d}

.btn{
  border-color:#444;
  background:#202020;
  color:#f4f4f4;
  box-shadow:none;
}
.btn:hover{filter:brightness(1.08)}
.btn.primary{
  background:linear-gradient(180deg,#ef2b2d,#be1e20);
  border-color:#ff4749;
  color:#fff;
}
.btn.good{
  background:linear-gradient(180deg,#ba2022,#8f1719);
  border-color:#d63234;
  color:#fff;
}
.btn.warn{
  background:#2b2110;
  border-color:#8f6b19;
  color:#ffe6a3;
}
.btn.danger{background:#551719;border-color:#ef2b2d}
.btn.ghost{background:#171717;border-color:#3d3d3d;color:#eee}
.auth-link{color:#ff4b4d}
.auth-status{border-color:#404040;background:#161616;color:#e5e5e5}

.choice{
  background:#151515;
  border-color:#3a3a3a;
  color:#eee;
}
.choice:hover{background:#1c1c1c;border-color:#555}
.choice.selected{
  outline:2px solid #ef2b2d;
  border-color:#ef2b2d;
  background:#251314;
}
.choice.correct{background:#132a1a;border-color:#2ea043}
.choice.wrong{background:#351617;border-color:#ef2b2d}
.answer-box{
  background:#141414;
  border-left-color:#ef2b2d;
}
.progress{background:#0b0b0b;border-color:#333}
.progress>div{background:linear-gradient(90deg,#991b1b,#ef2b2d)}
.navigator button{background:#151515;border-color:#383838;color:#bbb}
.navigator button.answered{background:#3a1718;color:#fff;border-color:#7f1d1d}
.navigator button.current{outline:2px solid #ef2b2d}

.link-card{background:#121212;border-color:#343434}
.toast{background:#1c1c1c;border-color:#555;color:#fff}
.note{background:#241d10;border-color:#69531d;color:#f7e3ac}
.source-text{background:#0d0d0d;border-color:#383838;color:#e3e3e3}
.source-row{border-color:#333}
.modal-card{background:#151515;border-color:#3c3c3c}

.admin-table-wrap{border-color:#343434}
.admin-table th{background:#111;color:#d7d7d7}
.admin-table th,.admin-table td{border-color:#333}
.admin-table tr:hover td{background:#181818}
.activity-row{background:#111;border-color:#343434}
.reset-result{background:#132a1a;border-color:#2ea043}

::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-track{background:#0d0d0d}
::-webkit-scrollbar-thumb{background:#3a3a3a;border-radius:99px;border:2px solid #0d0d0d}
::-webkit-scrollbar-thumb:hover{background:#555}
::selection{background:#991b1b;color:white}

@media(max-width:520px){
  .auth-shell{padding:14px}
  .auth-card{padding:26px 20px}
  .nav{margin:8px 10px;border-radius:14px}
  .nav button{padding:10px 13px}
  .topbar{gap:12px}
  .top-actions{justify-content:flex-end}
  .top-actions .btn{font-size:12px;padding:8px 10px}
  .hero{padding:20px}
  .card,.qcard{border-radius:15px}
}
.course-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.course-panel{width:min(1080px,100%)}.course-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}.course-head h1{margin:.35rem 0}.course-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.course-card{appearance:none;text-align:left;min-height:260px;padding:24px;border-radius:20px;border:1px solid var(--line);background:linear-gradient(145deg,#15171b,#0e1013);color:var(--text);display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow)}.course-card strong{font-size:34px}.course-card span{font-size:18px}.course-card .course-kind{font-size:12px;font-weight:900;letter-spacing:.14em;color:#f87171}.course-card .course-sub{font-weight:800;color:#d4d4d8}.course-card em{margin-top:auto;font-style:normal;font-weight:850;color:#f87171}.active-course{cursor:pointer}.active-course:hover{transform:translateY(-2px);border-color:#ef4444;box-shadow:0 18px 38px rgba(0,0,0,.35)}.disabled-course{opacity:.5;cursor:not-allowed}.course-card:disabled{color:var(--text)}#courseBadges{display:flex;gap:8px;flex-wrap:wrap}.top-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}@media(max-width:800px){.course-grid{grid-template-columns:1fr}.course-card{min-height:200px}.course-head{flex-direction:column}.top-actions{justify-content:flex-end}}

.training-groups{display:grid;gap:20px}
.training-group{border:1px solid var(--line);border-radius:22px;background:rgba(15,17,21,.72);padding:18px}
.training-group-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin:2px 3px 14px}
.training-group-head h2{margin:4px 0 0;font-size:22px}
.training-group .course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.single-course-grid{max-width:520px}
.training-group .course-card{min-height:225px}
@media(max-width:800px){.training-group{padding:13px}.training-group-head{align-items:flex-start;flex-direction:column}.training-group .course-grid{grid-template-columns:1fr}.single-course-grid{max-width:none}}

.nfpa-quick-group{padding:14px;gap:8px}
.nfpa-quick-group .training-group-head{margin-bottom:10px}
.nfpa-quick-group .training-group-head h2{font-size:24px}
.nfpa-quick-group>.card{padding:15px;margin-bottom:0}
.nfpa-quick-group>.card h2{margin:4px 0 12px}
.nfpa-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:0}
.nfpa-quick-grid .btn{min-height:58px;padding:10px 12px;border-radius:14px;font-size:15px;font-weight:750}
@media(max-width:700px){.nfpa-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nfpa-quick-group{padding:11px}.nfpa-quick-group>.card{padding:13px}.nfpa-quick-grid .btn{min-height:54px;font-size:14px}}

/* Compact charcoal/red home redesign */
:root{--bg:#0c0d0f;--panel:#151619;--panel2:#1b1c20;--line:#303238;--text:#f4f4f5;--muted:#a4a7ad;--accent:#d62f32}
body{background:radial-gradient(circle at 50% -20%,#24262a 0,#121316 35%,#0b0c0e 72%);color:var(--text)}
.course-shell{padding:14px 18px;place-items:start center}.course-panel{width:min(1120px,100%)}
.course-head{align-items:center;margin:0 0 10px;padding:7px 2px 9px;border-bottom:1px solid #292b30}.course-head h1{font-size:clamp(24px,3vw,34px);margin:2px 0}.course-head .eyebrow{color:#e14a4c}.course-head .muted{font-size:13px}
.training-groups{gap:10px}.training-group{padding:11px 12px;border-radius:16px;background:linear-gradient(145deg,rgba(28,29,33,.94),rgba(18,19,22,.96));border-color:#303238;box-shadow:0 10px 28px rgba(0,0,0,.18)}
.training-group-head{margin:0 2px 8px;align-items:center}.training-group-head h2{font-size:17px;margin:1px 0}.course-kind{color:#d94a4c!important}
.nfpa-quick-group{padding:10px 12px}.nfpa-quick-group>.card{padding:0;background:transparent;border:0;box-shadow:none}.nfpa-quick-group .training-group-head{margin-bottom:7px}.nfpa-quick-group .training-group-head h2{font-size:17px}
.nfpa-quick-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.nfpa-quick-grid .btn{min-height:42px;padding:7px 6px;border-radius:10px;font-size:12px;background:#202126;border-color:#3b3d43;color:#f2f2f3}.nfpa-quick-grid .btn:hover{border-color:#d62f32;background:#292a2f}
.training-group .course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.single-course-grid{max-width:none}.training-group .course-card{min-height:126px;padding:14px 16px;border-radius:14px;gap:5px;background:linear-gradient(145deg,#202126,#151619);border-color:#34363c;box-shadow:0 7px 18px rgba(0,0,0,.18);position:relative;overflow:hidden}.training-group .course-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#b5272a}.course-card strong{font-size:24px}.course-card span{font-size:14px}.course-card .course-kind{font-size:10px}.course-card .course-sub{font-size:12px;color:#aeb0b5}.course-card em{font-size:12px;color:#dc4a4d}.active-course:hover{transform:translateY(-1px);border-color:#7b3537;box-shadow:0 10px 24px rgba(0,0,0,.28)}
.btn.primary{background:linear-gradient(180deg,#d33437,#aa2225);border-color:#df484b}.btn.good{background:#25262a;border-color:#4a4c52}.eyebrow{color:#d84a4c}
@media(max-width:800px){.course-shell{padding:10px}.course-head{flex-direction:row;align-items:center}.course-head h1{font-size:23px}.training-groups{gap:8px}.training-group{padding:9px}.training-group-head{flex-direction:row;align-items:center;margin-bottom:6px}.training-group .course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.training-group .course-card{min-height:112px;padding:11px 12px}.course-card strong{font-size:20px}.course-card span{font-size:12px}.course-card em{font-size:11px}.nfpa-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.nfpa-quick-grid .btn{min-height:38px;font-size:11px;padding:6px 4px}.course-head .btn{padding:8px 10px;font-size:12px}}
@media(max-width:430px){.course-shell{padding:8px}.course-head{margin-bottom:7px}.course-head h1{font-size:21px}.training-group-head h2,.nfpa-quick-group .training-group-head h2{font-size:15px}.training-group{border-radius:13px}.training-group .course-card{min-height:105px;border-radius:12px}.course-card strong{font-size:18px}.course-card .course-sub{display:none}.nfpa-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.nfpa-quick-grid .btn{font-size:10px}.course-card em{margin-top:4px}}

/* Full visual home-screen redesign matching approved charcoal mockup */
.home-bottom-nav{display:none!important}
/* Preserve view routing: the redesigned Home must disappear while a course is open. */
.course-shell.hidden{display:none!important}
.course-shell{display:block!important;padding:0!important;background:#08090a!important;min-height:100vh}
.course-panel{width:100%!important;max-width:none!important;padding-bottom:20px}
.course-head{height:76px!important;margin:0!important;padding:0 5.5%!important;border:0!important;background:rgba(8,9,10,.96)!important;display:flex!important;align-items:center!important;position:relative;z-index:5}
.course-head:before{content:"♦";font-size:30px;color:#ef3038;margin-right:14px;transform:rotate(45deg)}
.course-head>div{display:flex;align-items:center;gap:18px}.course-head h1{display:none}.course-head .eyebrow{font-size:14px!important;letter-spacing:.22em;color:#f1f1f1!important}.course-head .muted{margin:0!important;color:#f1f1f1!important;font-size:13px!important}.course-head .muted:before{content:"●";display:inline-grid;place-items:center;width:32px;height:32px;border:1px solid #777;border-radius:50%;margin-right:9px;color:#fff}.course-head #courseWelcome{color:#fff}.course-head #courseLogoutBtn{margin-left:auto;background:transparent!important;border:1px solid #555!important;border-radius:12px!important}
.modern-home{width:100%}.home-hero-panel{height:400px;position:relative;overflow:hidden;background:linear-gradient(90deg,#090a0b 0%,#090a0b 34%,rgba(9,10,11,.64) 56%,rgba(9,10,11,.15) 100%),url('/home-hero.jpg') right center/62% 100% no-repeat}.home-hero-panel:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 35% 50%,rgba(255,255,255,.055),transparent 35%);pointer-events:none}.hero-brand{position:absolute;left:5.5%;top:48px;z-index:2}.hero-rule{display:block;width:48px;height:4px;border-radius:5px;background:#ef3038;margin-bottom:22px}.hero-brand h2{font-size:clamp(42px,6vw,68px);line-height:.9;margin:0 0 28px;color:#f7f7f7;letter-spacing:-.04em}.hero-brand h2 b{color:#ef3038}.hero-start{width:245px;height:58px;border-radius:14px;border:1px solid #aaa;background:rgba(10,10,10,.55);color:white;font-size:18px;text-align:left;padding:0 24px}.hero-start span{float:right;color:#ef3038;font-size:30px;line-height:20px}
.home-nfpa{margin:-1px 3.2% 24px;padding:20px 24px 24px;border:1px solid #4a4a4a;border-radius:22px;background:linear-gradient(145deg,rgba(25,25,25,.97),rgba(11,11,11,.98));position:relative;z-index:3}.home-section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.home-section-title span{font-size:17px;letter-spacing:.28em;color:#e9e9e9}.home-section-title i{display:block;width:48px;height:4px;background:#ef3038;border-radius:4px;margin-top:12px}.book-icon{font-size:34px;color:#d7d7d7}.home-nfpa-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.home-nfpa-grid a{min-height:82px;border:1px solid #454545;border-radius:14px;background:linear-gradient(145deg,#282828,#151515);display:flex;align-items:center;gap:12px;padding:12px 14px;color:#f7f7f7;text-decoration:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.home-nfpa-grid a b{font-size:27px;color:#d5d7da}.home-nfpa-grid a span{font-weight:800;font-size:14px}.home-nfpa-grid a small{display:block;color:#aaa;font-weight:500;margin-top:5px}.home-nfpa-grid a em{font-style:normal;color:#ef3038;font-size:28px;margin-left:auto}
.home-training-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:0 3.2% 24px}.visual-course-card{height:340px;border:1px solid #555;border-radius:20px;overflow:hidden;position:relative;background-size:cover;background-position:center top;box-shadow:0 12px 28px rgba(0,0,0,.38)}.visual-course-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 22%,rgba(5,5,5,.18) 44%,rgba(5,5,5,.95) 78%,#070707 100%)}.sprinkler-visual{background-image:url('/sprinkler-card.jpg')}.alarm-visual{background-image:url('/alarm-card.jpg')}.extinguisher-visual{background-image:url('/extinguisher-card.jpg')}.visual-course-content{position:absolute;inset:0;z-index:2;padding:20px;display:flex;flex-direction:column;justify-content:flex-end}.round-course-icon{cursor:pointer;width:52px;height:52px;border:2px solid #ef3038;border-radius:50%;display:grid;place-items:center;color:#ef3038;font-size:25px;margin-bottom:12px;background:rgba(0,0,0,.55)}.visual-course-content h3{cursor:pointer;font-size:24px;line-height:1.08;margin:0;color:white}.visual-course-content h3:after{content:"";display:block;width:42px;height:4px;border-radius:3px;background:#ef3038;margin-top:18px}.round-open{position:absolute;right:18px;bottom:48px;width:50px;height:50px;border-radius:50%;border:1px solid #555;background:#151515;color:#ef3038;font-size:32px}.course-choice-row{display:flex;gap:7px;position:absolute;right:12px;bottom:42px}.course-mini-btn{border:1px solid #555;border-radius:20px;background:#141414;color:#fff;padding:8px 10px;font-size:11px;font-weight:800}.course-mini-btn:hover,.round-open:hover{border-color:#ef3038}
.home-bottom-nav{position:fixed;left:0;right:0;bottom:0;height:76px;background:rgba(11,11,11,.97);border-top:1px solid #333;z-index:20;display:grid;grid-template-columns:repeat(4,1fr);backdrop-filter:blur(12px)}.home-bottom-nav button{border:0;border-right:1px solid #292929;background:transparent;color:#d5d5d5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:12px}.home-bottom-nav button b{font-size:25px}.home-bottom-nav button.active{color:#ef3038}.home-bottom-nav button.active:after{content:"";position:absolute;bottom:0;width:54px;height:3px;background:#ef3038;border-radius:4px}
@media(max-width:700px){.course-head{height:64px!important;padding:0 4%!important}.course-head:before{font-size:20px;margin-right:8px}.course-head>div{gap:7px}.course-head .eyebrow{font-size:10px!important;letter-spacing:.17em}.course-head .muted{font-size:11px!important}.course-head .muted:before{display:none}.course-head #courseLogoutBtn{font-size:10px;padding:7px 9px}.home-hero-panel{height:270px;background-size:74% 100%;background-position:right center}.hero-brand{left:5%;top:30px}.hero-rule{width:34px;height:3px;margin-bottom:15px}.hero-brand h2{font-size:42px;margin-bottom:18px}.hero-start{width:185px;height:46px;font-size:14px;padding:0 16px}.home-nfpa{margin:0 2.5% 12px;padding:13px;border-radius:16px}.home-section-title{margin-bottom:10px}.home-section-title span{font-size:12px}.book-icon{font-size:25px}.home-nfpa-grid{grid-template-columns:repeat(4,1fr);gap:6px}.home-nfpa-grid a{min-height:61px;border-radius:10px;padding:7px 7px;gap:6px}.home-nfpa-grid a b{font-size:18px}.home-nfpa-grid a span{font-size:10px}.home-nfpa-grid a small{font-size:9px;margin-top:2px}.home-nfpa-grid a em{font-size:20px}.home-training-grid{gap:7px;padding:0 2.5% 12px}.visual-course-card{height:245px;border-radius:13px}.visual-course-content{padding:10px}.round-course-icon{width:38px;height:38px;font-size:18px;margin-bottom:8px}.visual-course-content h3{font-size:16px}.visual-course-content h3:after{width:30px;height:3px;margin-top:10px}.round-open{width:36px;height:36px;right:9px;bottom:30px;font-size:24px}.course-choice-row{right:6px;bottom:25px;gap:3px;flex-direction:column}.course-mini-btn{padding:5px 7px;font-size:8px}.home-bottom-nav{height:66px}.home-bottom-nav button b{font-size:21px}.home-bottom-nav button{font-size:10px}}
@media(max-width:390px){.course-head .eyebrow{max-width:145px}.course-head .muted{display:none}.home-hero-panel{height:245px}.hero-brand h2{font-size:36px}.hero-start{height:42px}.home-nfpa-grid{grid-template-columns:repeat(4,1fr)}.home-nfpa-grid a b{display:none}.visual-course-card{height:220px}.visual-course-content h3{font-size:14px}}

/* Larger Sprinkler study-guide choices + full-card course targets */
.extinguisher-visual.active-course{cursor:pointer}
.extinguisher-visual.active-course:hover{border-color:#ef3038;transform:translateY(-2px)}
.sprinkler-visual .course-choice-row{right:14px;bottom:34px;gap:8px;flex-direction:column;width:92px}
.sprinkler-visual .course-mini-btn{min-height:42px;padding:9px 12px;font-size:13px;letter-spacing:.05em;border:2px solid #777;background:rgba(8,8,8,.92);box-shadow:0 5px 14px rgba(0,0,0,.4)}
.sprinkler-visual .course-mini-btn:hover,.sprinkler-visual .course-mini-btn:focus{border-color:#ef3038;background:#241012;outline:none}
@media(max-width:700px){.sprinkler-visual .course-choice-row{right:7px;bottom:22px;width:66px;gap:6px}.sprinkler-visual .course-mini-btn{min-height:34px;padding:6px 5px;font-size:10px;border-width:2px}}
@media(max-width:390px){.sprinkler-visual .course-choice-row{width:62px}.sprinkler-visual .course-mini-btn{font-size:9px;min-height:32px}}

/* Sprinkler choices at top + reliable full-card targets */
.sprinkler-visual .course-choice-row{top:14px!important;right:14px!important;bottom:auto!important;width:112px!important;gap:9px!important;z-index:5!important}
.sprinkler-visual .course-mini-btn{min-height:48px!important;font-size:14px!important;padding:10px 12px!important;background:rgba(7,7,7,.94)!important;border:2px solid #8a8a8a!important}
.extinguisher-visual.active-course{cursor:pointer!important;touch-action:manipulation}
.extinguisher-visual.active-course:focus{outline:2px solid #ef3038;outline-offset:2px}
@media(max-width:700px){.sprinkler-visual .course-choice-row{top:9px!important;right:8px!important;bottom:auto!important;width:82px!important;gap:7px!important}.sprinkler-visual .course-mini-btn{min-height:40px!important;font-size:11px!important;padding:7px 6px!important}}
@media(max-width:390px){.sprinkler-visual .course-choice-row{width:76px!important}.sprinkler-visual .course-mini-btn{min-height:38px!important;font-size:10px!important}}


/* Served fire-protection background: reliable on iPhone/Safari */
.auth-shell{position:relative!important;overflow:hidden!important;background:#08090a!important}
.auth-bg-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% center;z-index:0;display:block!important;opacity:.76;filter:saturate(.95) contrast(1.04)}
.auth-shell:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,5,6,.76) 0%,rgba(4,5,6,.58) 44%,rgba(4,5,6,.30) 100%),linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.36));pointer-events:none}
.auth-card{position:relative!important;z-index:2!important;background:linear-gradient(145deg,rgba(24,24,24,.84),rgba(8,8,8,.94))!important;border:1px solid #555!important;box-shadow:0 24px 60px rgba(0,0,0,.58)!important;backdrop-filter:blur(8px)}
.auth-tabs{background:rgba(10,10,10,.88)!important;border-color:#444!important}.auth-tab.active{background:#b9232a!important;color:#fff!important}.auth-form input{background:rgba(7,7,7,.90)!important;border-color:#555!important}.auth-card .btn.primary{background:#b9232a!important;border-color:#ef3038!important}
.home-hero-panel{position:relative!important;overflow:hidden!important;background:#08090a!important}
.home-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block!important;z-index:0}
.home-hero-panel:after{content:""!important;position:absolute!important;inset:0!important;z-index:1!important;background:linear-gradient(90deg,rgba(5,5,5,.08),rgba(5,5,5,.02))!important;pointer-events:none!important}
@media(max-width:700px){.auth-shell{padding:16px!important}.auth-bg-photo{object-position:60% center}.home-hero-photo{object-position:center}.home-hero-panel{height:auto!important;aspect-ratio:941/476!important}}

/* Login background: use the same proven image URL as the Training Center hero.
   This rule is intentionally last so earlier theme rules cannot override it. */
.auth-shell{
  background-color:#08090a!important;
  background-image:linear-gradient(90deg,rgba(5,6,7,.70) 0%,rgba(5,6,7,.56) 45%,rgba(5,6,7,.34) 100%),url('/training-background.jpg?v=20260918e')!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-attachment:scroll!important;
}
.auth-bg-photo{display:none!important}
.auth-shell:before{
  background:linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.22))!important;
}
@media(max-width:700px){
  .auth-shell{background-position:58% center!important}
  .auth-card{background:linear-gradient(145deg,rgba(22,22,22,.80),rgba(7,7,7,.90))!important;backdrop-filter:blur(6px)}
}


/* Home screen only: cinematic fire-protection background */
.modern-home{
  background-color:#08090a!important;
  background-image:linear-gradient(180deg,rgba(6,7,8,.08) 0%,rgba(6,7,8,.20) 36%,rgba(6,7,8,.48) 72%,rgba(6,7,8,.76) 100%),url('/home-screen-background.jpg?v=20260918g')!important;
  background-size:cover!important;
  background-position:center top!important;
  background-repeat:no-repeat!important;
}
.home-nfpa{background:linear-gradient(145deg,rgba(25,25,25,.90),rgba(11,11,11,.93))!important}
@media(max-width:700px){
  .modern-home{background-position:center top!important}
  .home-hero-photo{object-position:center 22%!important}
}

/* Extinguisher study-guide choices: TFM01-TFM04 */
.alarm-visual .alarm-choice-row{top:14px!important;right:14px!important;bottom:auto!important;width:112px!important;display:flex!important;flex-direction:column!important;gap:9px!important;z-index:5!important}
.alarm-visual .course-mini-btn{min-height:48px!important;font-size:14px!important;padding:10px 12px!important;background:rgba(7,7,7,.94)!important;border:2px solid #8a8a8a!important}
.alarm-visual .course-mini-btn:hover,.alarm-visual .course-mini-btn:focus{border-color:#ef3038!important;background:#241012!important;outline:none!important}
@media(max-width:700px){.alarm-visual .alarm-choice-row{top:9px!important;right:8px!important;width:82px!important;gap:7px!important}.alarm-visual .course-mini-btn{min-height:40px!important;font-size:11px!important;padding:7px 6px!important}}
@media(max-width:390px){.alarm-visual .alarm-choice-row{width:76px!important}.alarm-visual .course-mini-btn{min-height:38px!important;font-size:10px!important}}

.extinguisher-visual .extinguisher-choice-row{top:14px!important;right:14px!important;bottom:auto!important;width:154px!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;z-index:5!important}
.extinguisher-visual .course-mini-btn{min-height:44px!important;font-size:12px!important;padding:8px 7px!important;background:rgba(7,7,7,.94)!important;border:2px solid #8a8a8a!important}
.extinguisher-visual .course-mini-btn:hover,.extinguisher-visual .course-mini-btn:focus{border-color:#ef3038!important;background:#241012!important;outline:none}
.extinguisher-visual .future-course{color:#8d8d8d!important;border-color:#555!important;background:rgba(14,14,14,.90)!important}
.extinguisher-visual .future-course:after{content:'Future';display:block;font-size:8px;letter-spacing:.06em;margin-top:2px;color:#777}
@media(max-width:700px){.extinguisher-visual .extinguisher-choice-row{top:9px!important;right:8px!important;width:110px!important;gap:5px!important}.extinguisher-visual .course-mini-btn{min-height:35px!important;font-size:9px!important;padding:5px 4px!important}.extinguisher-visual .future-course:after{font-size:7px}}
@media(max-width:390px){.extinguisher-visual .extinguisher-choice-row{width:102px!important}.extinguisher-visual .course-mini-btn{min-height:33px!important;font-size:8px!important}}

/* Sprinkler four-guide selector */
.sprinkler-choice-row{top:14px!important;right:14px!important;bottom:auto!important;width:218px!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;z-index:6!important;flex-direction:unset!important}
.sprinkler-choice-row .course-mini-btn{min-height:46px!important;padding:8px 7px!important;font-size:12px!important;background:rgba(7,7,7,.94)!important;border:2px solid #777!important}
.sprinkler-choice-row .future-course{opacity:.62!important;position:relative}
.sprinkler-choice-row .future-course:after{content:"FUTURE";display:block;font-size:7px;letter-spacing:.08em;color:#aaa;margin-top:2px}
@media(max-width:700px){.sprinkler-choice-row{top:8px!important;right:7px!important;width:150px!important;gap:5px!important}.sprinkler-choice-row .course-mini-btn{min-height:38px!important;padding:6px 4px!important;font-size:9px!important}}
@media(max-width:390px){.sprinkler-choice-row{width:140px!important}.sprinkler-choice-row .course-mini-btn{font-size:8px!important;min-height:36px!important}}

/* 2026-09-19 Home course selector — full-width vertical layout */
.home-training-grid{
  display:flex!important;
  flex-direction:column!important;
  grid-template-columns:none!important;
  width:100%!important;
  gap:12px!important;
  padding:0 3.2% 22px!important;
}
.home-training-grid .visual-course-card{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  border-radius:20px!important;
  background-position:center 30%!important;
  background-size:cover!important;
}
.home-training-grid .visual-course-card:after{
  background:linear-gradient(180deg,rgba(5,5,5,.05) 0%,rgba(5,5,5,.32) 28%,rgba(5,5,5,.88) 56%,#070707 100%)!important;
}
.home-training-grid .visual-course-content{
  position:relative!important;
  inset:auto!important;
  min-height:300px!important;
  padding:17px 20px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
}
.home-training-grid .alarm-visual .visual-course-content{min-height:235px!important}
.home-training-grid .round-course-icon{
  width:42px!important;
  height:42px!important;
  margin-bottom:8px!important;
  flex:0 0 auto!important;
}
.home-training-grid .visual-course-content h3{
  font-size:23px!important;
  margin:0!important;
  line-height:1.08!important;
}
.home-training-grid .visual-course-content h3:after{margin-top:8px!important}
.home-training-grid .course-choice-row,
.home-training-grid .sprinkler-choice-row,
.home-training-grid .alarm-choice-row,
.home-training-grid .extinguisher-choice-row{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  max-width:none!important;
  margin:11px 0 0!important;
  display:flex!important;
  flex-direction:column!important;
  grid-template-columns:none!important;
  gap:7px!important;
  z-index:6!important;
}
.home-training-grid .course-mini-btn,
.home-training-grid .sprinkler-choice-row .course-mini-btn,
.home-training-grid .alarm-choice-row .course-mini-btn,
.home-training-grid .extinguisher-choice-row .course-mini-btn{
  width:100%!important;
  min-height:44px!important;
  padding:8px 14px!important;
  border:2px solid #ef3038!important;
  border-radius:12px!important;
  background:rgba(12,12,13,.94)!important;
  color:#f7f7f7!important;
  font-size:14px!important;
  font-weight:800!important;
  letter-spacing:0!important;
  text-align:left!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  box-shadow:0 5px 14px rgba(0,0,0,.35)!important;
}
.home-training-grid .course-mini-btn:after{
  content:'›'!important;
  display:block!important;
  margin:0!important;
  color:#ef3038!important;
  font-size:24px!important;
  line-height:1!important;
  letter-spacing:0!important;
}
.home-training-grid .course-mini-btn:hover,
.home-training-grid .course-mini-btn:focus{
  border-color:#ff555b!important;
  background:#251214!important;
  outline:none!important;
  transform:translateY(-1px)!important;
}
.home-training-grid .future-course{
  opacity:.68!important;
  color:#b7b7b7!important;
  border-color:#744346!important;
}
.home-training-grid .future-course:after{
  content:'›'!important;
  color:#9a6668!important;
  font-size:24px!important;
}
@media(max-width:700px){
  .home-training-grid{padding:0 2.5% 14px!important;gap:9px!important}
  .home-training-grid .visual-course-card{border-radius:15px!important}
  .home-training-grid .visual-course-content{min-height:275px!important;padding:12px 12px 13px!important}
  .home-training-grid .alarm-visual .visual-course-content{min-height:205px!important}
  .home-training-grid .round-course-icon{width:38px!important;height:38px!important;font-size:18px!important}
  .home-training-grid .visual-course-content h3{font-size:19px!important}
  .home-training-grid .course-choice-row,
  .home-training-grid .sprinkler-choice-row,
  .home-training-grid .alarm-choice-row,
  .home-training-grid .extinguisher-choice-row{margin-top:9px!important;gap:6px!important}
  .home-training-grid .course-mini-btn,
  .home-training-grid .sprinkler-choice-row .course-mini-btn,
  .home-training-grid .alarm-choice-row .course-mini-btn,
  .home-training-grid .extinguisher-choice-row .course-mini-btn{min-height:41px!important;padding:7px 12px!important;font-size:13px!important;border-radius:10px!important}
}
@media(max-width:390px){
  .home-training-grid .visual-course-content{min-height:265px!important}
  .home-training-grid .alarm-visual .visual-course-content{min-height:195px!important}
  .home-training-grid .course-mini-btn,
  .home-training-grid .sprinkler-choice-row .course-mini-btn,
  .home-training-grid .alarm-choice-row .course-mini-btn,
  .home-training-grid .extinguisher-choice-row .course-mini-btn{font-size:12px!important;min-height:39px!important}
}

/* 2026-09-19 Compact course cards — icon + title header row */
.home-training-grid .visual-course-content{
  min-height:252px!important;
  padding:12px 16px 13px!important;
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:11px!important;
  row-gap:8px!important;
  align-content:end!important;
  justify-content:stretch!important;
}
.home-training-grid .alarm-visual .visual-course-content{min-height:166px!important}
.home-training-grid .round-course-icon{
  grid-column:1!important;
  grid-row:1!important;
  width:40px!important;
  height:40px!important;
  margin:0!important;
  align-self:center!important;
}
.home-training-grid .visual-course-content h3{
  grid-column:2!important;
  grid-row:1!important;
  align-self:center!important;
  font-size:21px!important;
  line-height:1.05!important;
  margin:0!important;
}
.home-training-grid .visual-course-content h3:after{
  width:34px!important;
  height:3px!important;
  margin-top:6px!important;
}
.home-training-grid .course-choice-row,
.home-training-grid .sprinkler-choice-row,
.home-training-grid .alarm-choice-row,
.home-training-grid .extinguisher-choice-row{
  grid-column:1 / -1!important;
  grid-row:2!important;
  margin:0!important;
  gap:6px!important;
}
.home-training-grid .course-mini-btn,
.home-training-grid .sprinkler-choice-row .course-mini-btn,
.home-training-grid .alarm-choice-row .course-mini-btn,
.home-training-grid .extinguisher-choice-row .course-mini-btn{
  min-height:39px!important;
  padding:6px 13px!important;
  font-size:13px!important;
  border-radius:10px!important;
}
@media(max-width:700px){
  .home-training-grid .visual-course-content{
    min-height:226px!important;
    padding:10px 11px 11px!important;
    grid-template-columns:36px minmax(0,1fr)!important;
    column-gap:9px!important;
    row-gap:7px!important;
  }
  .home-training-grid .alarm-visual .visual-course-content{min-height:148px!important}
  .home-training-grid .round-course-icon{width:34px!important;height:34px!important;font-size:16px!important}
  .home-training-grid .visual-course-content h3{font-size:17px!important}
  .home-training-grid .course-mini-btn,
  .home-training-grid .sprinkler-choice-row .course-mini-btn,
  .home-training-grid .alarm-choice-row .course-mini-btn,
  .home-training-grid .extinguisher-choice-row .course-mini-btn{min-height:36px!important;padding:5px 11px!important;font-size:12px!important}
}
@media(max-width:390px){
  .home-training-grid .visual-course-content{min-height:218px!important}
  .home-training-grid .alarm-visual .visual-course-content{min-height:142px!important}
  .home-training-grid .visual-course-content h3{font-size:16px!important}
  .home-training-grid .course-mini-btn,
  .home-training-grid .sprinkler-choice-row .course-mini-btn,
  .home-training-grid .alarm-choice-row .course-mini-btn,
  .home-training-grid .extinguisher-choice-row .course-mini-btn{min-height:35px!important;font-size:11px!important}
}


/* 2026-09-19 HOME SCREEN ONLY — transparent compact iPhone fit
   Visual-only override. Scoped to #courseView so login, study guides,
   practice tests, documents, admin, and app logic are untouched. */
#courseView .home-nfpa{
  background:rgba(8,9,10,.20)!important;
  border-color:rgba(255,255,255,.22)!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:blur(4px)!important;
  backdrop-filter:blur(4px)!important;
}
#courseView .home-nfpa-grid a{
  background:rgba(8,9,10,.20)!important;
  border-color:rgba(255,255,255,.20)!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:blur(3px)!important;
  backdrop-filter:blur(3px)!important;
}
#courseView .home-training-grid{
  gap:8px!important;
  padding-bottom:14px!important;
}
#courseView .home-training-grid .visual-course-card{
  background-image:none!important;
  background-color:rgba(8,9,10,.20)!important;
  border-color:rgba(255,255,255,.24)!important;
  box-shadow:0 5px 16px rgba(0,0,0,.18)!important;
  -webkit-backdrop-filter:blur(4px)!important;
  backdrop-filter:blur(4px)!important;
}
#courseView .home-training-grid .visual-course-card:after{
  background:linear-gradient(180deg,rgba(5,5,5,.02),rgba(5,5,5,.22))!important;
}
#courseView .home-training-grid .visual-course-content,
#courseView .home-training-grid .alarm-visual .visual-course-content{
  min-height:0!important;
  padding:10px 12px 11px!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:9px!important;
  row-gap:7px!important;
  align-content:center!important;
}
#courseView .home-training-grid .round-course-icon{
  width:34px!important;
  height:34px!important;
  font-size:16px!important;
  margin:0!important;
  background:rgba(0,0,0,.22)!important;
}
#courseView .home-training-grid .visual-course-content h3{
  font-size:18px!important;
  line-height:1.05!important;
  margin:0!important;
}
#courseView .home-training-grid .visual-course-content h3:after{
  width:28px!important;
  height:3px!important;
  margin-top:5px!important;
}
#courseView .home-training-grid .course-choice-row,
#courseView .home-training-grid .sprinkler-choice-row,
#courseView .home-training-grid .alarm-choice-row,
#courseView .home-training-grid .extinguisher-choice-row{
  position:static!important;
  inset:auto!important;
  width:100%!important;
  max-width:none!important;
  grid-column:1 / -1!important;
  grid-row:2!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  flex-direction:unset!important;
  margin:0!important;
  gap:5px!important;
}
#courseView .home-training-grid .course-mini-btn,
#courseView .home-training-grid .sprinkler-choice-row .course-mini-btn,
#courseView .home-training-grid .alarm-choice-row .course-mini-btn,
#courseView .home-training-grid .extinguisher-choice-row .course-mini-btn{
  width:100%!important;
  min-height:34px!important;
  padding:5px 8px!important;
  border-width:1px!important;
  border-color:rgba(239,48,56,.76)!important;
  border-radius:9px!important;
  background:rgba(8,9,10,.24)!important;
  box-shadow:none!important;
  font-size:11px!important;
  line-height:1.08!important;
  text-align:left!important;
}
#courseView .home-training-grid .course-mini-btn:after,
#courseView .home-training-grid .future-course:after{
  content:'›'!important;
  display:block!important;
  margin-left:5px!important;
  font-size:16px!important;
  line-height:1!important;
}
#courseView .home-training-grid .future-course{
  opacity:.62!important;
  background:rgba(8,9,10,.18)!important;
}

@media(max-width:700px){
  #courseView .course-head{
    height:54px!important;
    padding:0 3.2%!important;
  }
  #courseView .course-head:before{font-size:18px!important;margin-right:6px!important}
  #courseView .course-head .eyebrow{font-size:9px!important;letter-spacing:.14em!important}
  #courseView .course-head #courseLogoutBtn{padding:6px 8px!important;font-size:10px!important}
  #courseView .home-hero-panel{
    height:142px!important;
    min-height:0!important;
    aspect-ratio:auto!important;
  }
  #courseView .home-hero-photo{object-fit:cover!important;object-position:center 24%!important}
  #courseView .home-nfpa{
    margin:0 2.5% 7px!important;
    padding:8px 9px 9px!important;
    border-radius:13px!important;
  }
  #courseView .home-section-title{margin-bottom:6px!important}
  #courseView .home-section-title span{font-size:10px!important;letter-spacing:.20em!important}
  #courseView .home-section-title i{width:30px!important;height:3px!important;margin-top:6px!important}
  #courseView .book-icon{font-size:20px!important}
  #courseView .home-nfpa-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:4px!important}
  #courseView .home-nfpa-grid a{
    min-height:42px!important;
    padding:5px 6px!important;
    border-radius:8px!important;
    gap:4px!important;
  }
  #courseView .home-nfpa-grid a b{display:none!important}
  #courseView .home-nfpa-grid a span{font-size:9px!important;line-height:1!important}
  #courseView .home-nfpa-grid a small{font-size:8px!important;margin-top:2px!important}
  #courseView .home-nfpa-grid a em{font-size:15px!important}
  #courseView .home-training-grid{
    gap:6px!important;
    padding:0 2.5% 9px!important;
  }
  #courseView .home-training-grid .visual-course-card{border-radius:12px!important}
  #courseView .home-training-grid .visual-course-content,
  #courseView .home-training-grid .alarm-visual .visual-course-content{
    min-height:0!important;
    padding:8px 9px 9px!important;
    grid-template-columns:31px minmax(0,1fr)!important;
    column-gap:7px!important;
    row-gap:5px!important;
  }
  #courseView .home-training-grid .round-course-icon{
    width:29px!important;
    height:29px!important;
    font-size:14px!important;
    border-width:1px!important;
  }
  #courseView .home-training-grid .visual-course-content h3{font-size:15px!important}
  #courseView .home-training-grid .visual-course-content h3:after{width:23px!important;height:2px!important;margin-top:4px!important}
  #courseView .home-training-grid .course-choice-row,
  #courseView .home-training-grid .sprinkler-choice-row,
  #courseView .home-training-grid .alarm-choice-row,
  #courseView .home-training-grid .extinguisher-choice-row{gap:4px!important}
  #courseView .home-training-grid .course-mini-btn,
  #courseView .home-training-grid .sprinkler-choice-row .course-mini-btn,
  #courseView .home-training-grid .alarm-choice-row .course-mini-btn,
  #courseView .home-training-grid .extinguisher-choice-row .course-mini-btn{
    min-height:30px!important;
    padding:4px 6px!important;
    border-radius:8px!important;
    font-size:9.5px!important;
  }
  #courseView .home-training-grid .course-mini-btn:after,
  #courseView .home-training-grid .future-course:after{font-size:14px!important;margin-left:3px!important}
}

@media(max-width:390px){
  #courseView .course-head{height:50px!important}
  #courseView .home-hero-panel{height:130px!important}
  #courseView .home-nfpa{margin-bottom:6px!important;padding:7px 8px 8px!important}
  #courseView .home-nfpa-grid a{min-height:39px!important;padding:4px 5px!important}
  #courseView .home-training-grid{gap:5px!important;padding-bottom:7px!important}
  #courseView .home-training-grid .visual-course-content,
  #courseView .home-training-grid .alarm-visual .visual-course-content{padding:7px 8px 8px!important;row-gap:4px!important}
  #courseView .home-training-grid .visual-course-content h3{font-size:14px!important}
  #courseView .home-training-grid .course-mini-btn,
  #courseView .home-training-grid .sprinkler-choice-row .course-mini-btn,
  #courseView .home-training-grid .alarm-choice-row .course-mini-btn,
  #courseView .home-training-grid .extinguisher-choice-row .course-mini-btn{min-height:29px!important;font-size:9px!important;padding:4px 5px!important}
}



/* 2026-09-19 HOME SCREEN ONLY — responsive screen-fit refinement
   Portrait fills the usable iPhone height more naturally.
   iPhone landscape gets its own compact layout instead of desktop sizing. */
#courseView{
  width:100%!important;
  max-width:100%!important;
  min-height:100dvh!important;
  overflow-x:hidden!important;
}
#courseView .course-panel{width:100%!important;max-width:none!important}

@media (orientation:portrait) and (max-width:700px){
  #courseView .course-head{
    height:60px!important;
    min-height:60px!important;
    padding:0 3.5%!important;
  }
  #courseView .course-head:before{font-size:19px!important;margin-right:7px!important}
  #courseView .course-head .eyebrow{font-size:9.5px!important;letter-spacing:.15em!important}
  #courseView .course-head #courseLogoutBtn{padding:7px 9px!important;font-size:10.5px!important}

  #courseView .modern-home{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    min-height:calc(100dvh - 60px)!important;
  }
  #courseView .home-hero-panel{
    height:clamp(158px,20dvh,184px)!important;
    min-height:158px!important;
    flex:0 0 auto!important;
    aspect-ratio:auto!important;
  }
  #courseView .home-hero-photo{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 27%!important;
  }

  #courseView .home-nfpa{
    margin:0 2.5% 8px!important;
    padding:9px 10px 10px!important;
    border-radius:14px!important;
    flex:0 0 auto!important;
  }
  #courseView .home-section-title{margin-bottom:7px!important}
  #courseView .home-section-title span{font-size:11px!important;letter-spacing:.21em!important}
  #courseView .home-section-title i{width:32px!important;height:3px!important;margin-top:6px!important}
  #courseView .book-icon{font-size:21px!important}
  #courseView .home-nfpa-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important}
  #courseView .home-nfpa-grid a{
    min-height:46px!important;
    padding:6px 7px!important;
    border-radius:9px!important;
    gap:4px!important;
  }
  #courseView .home-nfpa-grid a b{display:none!important}
  #courseView .home-nfpa-grid a span{font-size:10px!important;line-height:1.05!important}
  #courseView .home-nfpa-grid a small{font-size:8.5px!important;margin-top:2px!important}
  #courseView .home-nfpa-grid a em{font-size:16px!important}

  #courseView .home-training-grid{
    display:flex!important;
    flex-direction:column!important;
    flex:1 0 auto!important;
    width:100%!important;
    gap:7px!important;
    padding:0 2.5% 10px!important;
  }
  #courseView .home-training-grid .visual-course-card{
    flex:1 1 0!important;
    width:100%!important;
    min-height:max-content!important;
    border-radius:13px!important;
  }
  #courseView .home-training-grid .visual-course-content,
  #courseView .home-training-grid .alarm-visual .visual-course-content{
    min-height:0!important;
    padding:9px 10px 10px!important;
    grid-template-columns:33px minmax(0,1fr)!important;
    column-gap:8px!important;
    row-gap:6px!important;
    align-content:center!important;
  }
  #courseView .home-training-grid .round-course-icon{
    width:31px!important;
    height:31px!important;
    font-size:15px!important;
  }
  #courseView .home-training-grid .visual-course-content h3{font-size:16px!important}
  #courseView .home-training-grid .visual-course-content h3:after{width:25px!important;height:2px!important;margin-top:4px!important}
  #courseView .home-training-grid .course-choice-row,
  #courseView .home-training-grid .sprinkler-choice-row,
  #courseView .home-training-grid .alarm-choice-row,
  #courseView .home-training-grid .extinguisher-choice-row{gap:5px!important}
  #courseView .home-training-grid .course-mini-btn,
  #courseView .home-training-grid .sprinkler-choice-row .course-mini-btn,
  #courseView .home-training-grid .alarm-choice-row .course-mini-btn,
  #courseView .home-training-grid .extinguisher-choice-row .course-mini-btn{
    min-height:32px!important;
    padding:5px 7px!important;
    border-radius:8px!important;
    font-size:10px!important;
    line-height:1.08!important;
  }
  #courseView .home-training-grid .course-mini-btn:after,
  #courseView .home-training-grid .future-course:after{font-size:14px!important;margin-left:3px!important}
}

@media (orientation:portrait) and (max-width:390px){
  #courseView .course-head{height:56px!important;min-height:56px!important}
  #courseView .modern-home{min-height:calc(100dvh - 56px)!important}
  #courseView .home-hero-panel{height:clamp(150px,19dvh,170px)!important;min-height:150px!important}
  #courseView .home-nfpa-grid a{min-height:43px!important;padding:5px 6px!important}
  #courseView .home-training-grid .visual-course-content,
  #courseView .home-training-grid .alarm-visual .visual-course-content{padding:8px 9px 9px!important;row-gap:5px!important}
  #courseView .home-training-grid .visual-course-content h3{font-size:15px!important}
  #courseView .home-training-grid .course-mini-btn,
  #courseView .home-training-grid .sprinkler-choice-row .course-mini-btn,
  #courseView .home-training-grid .alarm-choice-row .course-mini-btn,
  #courseView .home-training-grid .extinguisher-choice-row .course-mini-btn{min-height:31px!important;font-size:9.5px!important}
}

/* iPhone / small-device landscape: prevent desktop-sized cards and typography. */
@media (orientation:landscape) and (max-height:600px){
  #courseView .course-head{
    height:46px!important;
    min-height:46px!important;
    padding:0 max(2%,env(safe-area-inset-left))!important;
  }
  #courseView .course-head:before{font-size:17px!important;margin-right:6px!important}
  #courseView .course-head>div{gap:7px!important}
  #courseView .course-head .eyebrow{font-size:8.5px!important;letter-spacing:.14em!important;max-width:none!important}
  #courseView .course-head .muted{display:block!important;font-size:9px!important}
  #courseView .course-head .muted:before{display:none!important}
  #courseView .course-head #courseLogoutBtn{padding:5px 8px!important;font-size:9px!important}

  #courseView .modern-home{
    display:block!important;
    width:100%!important;
    min-height:0!important;
  }
  #courseView .home-hero-panel{
    height:112px!important;
    min-height:112px!important;
    aspect-ratio:auto!important;
  }
  #courseView .home-hero-photo{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 34%!important;
  }

  #courseView .home-nfpa{
    margin:0 1.7% 6px!important;
    padding:7px 8px 8px!important;
    border-radius:12px!important;
  }
  #courseView .home-section-title{margin-bottom:5px!important}
  #courseView .home-section-title span{font-size:9px!important;letter-spacing:.20em!important}
  #courseView .home-section-title i{width:26px!important;height:2px!important;margin-top:4px!important}
  #courseView .book-icon{font-size:17px!important}
  #courseView .home-nfpa-grid{
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:4px!important;
  }
  #courseView .home-nfpa-grid a{
    min-height:42px!important;
    padding:5px 6px!important;
    border-radius:8px!important;
    gap:3px!important;
  }
  #courseView .home-nfpa-grid a b{display:none!important}
  #courseView .home-nfpa-grid a span{font-size:9px!important;line-height:1!important}
  #courseView .home-nfpa-grid a small{font-size:7.5px!important;margin-top:2px!important}
  #courseView .home-nfpa-grid a em{font-size:14px!important}

  #courseView .home-training-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    flex-direction:unset!important;
    width:100%!important;
    gap:6px!important;
    padding:0 1.7% 8px!important;
  }
  #courseView .home-training-grid .visual-course-card{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    border-radius:11px!important;
  }
  #courseView .home-training-grid .visual-course-content,
  #courseView .home-training-grid .alarm-visual .visual-course-content{
    position:relative!important;
    inset:auto!important;
    min-height:0!important;
    padding:7px 8px 8px!important;
    display:grid!important;
    grid-template-columns:27px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    column-gap:6px!important;
    row-gap:5px!important;
    align-content:center!important;
  }
  #courseView .home-training-grid .round-course-icon{
    width:25px!important;
    height:25px!important;
    font-size:12px!important;
    border-width:1px!important;
  }
  #courseView .home-training-grid .visual-course-content h3{
    font-size:13px!important;
    line-height:1.03!important;
    white-space:nowrap!important;
  }
  #courseView .home-training-grid .visual-course-content h3:after{width:20px!important;height:2px!important;margin-top:3px!important}
  #courseView .home-training-grid .course-choice-row,
  #courseView .home-training-grid .sprinkler-choice-row,
  #courseView .home-training-grid .alarm-choice-row,
  #courseView .home-training-grid .extinguisher-choice-row{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:4px!important;
    margin:0!important;
  }
  #courseView .home-training-grid .course-mini-btn,
  #courseView .home-training-grid .sprinkler-choice-row .course-mini-btn,
  #courseView .home-training-grid .alarm-choice-row .course-mini-btn,
  #courseView .home-training-grid .extinguisher-choice-row .course-mini-btn{
    min-height:27px!important;
    padding:4px 5px!important;
    border-radius:7px!important;
    font-size:8px!important;
    line-height:1.05!important;
  }
  #courseView .home-training-grid .course-mini-btn:after,
  #courseView .home-training-grid .future-course:after{font-size:12px!important;margin-left:2px!important}
}

/* Dedicated study/test runner page */
.session-page{max-width:960px;margin:0 auto;padding-bottom:40px}.session-page .qcard{margin-top:14px}.session-page .card:first-child{position:sticky;top:10px;z-index:10;backdrop-filter:blur(12px)}
@media(max-width:700px){.session-page .card:first-child{position:static}.session-page .runner-head{align-items:center}.session-page .qtitle{font-size:20px}}

/* 2026-09-19 COURSE PAGES ONLY — card navigation layout
   Layout-only: existing tabs, handlers, study/test logic, data, and APIs remain unchanged. */
#appView #mainNav{display:none!important}
#appView .wrap{padding-top:8px}
#appView .course-card-menu-wrap{
  margin:0 0 16px;
  padding:16px;
  border:1px solid #343434;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(22,22,22,.96),rgba(13,13,13,.96));
  box-shadow:0 12px 30px rgba(0,0,0,.24);
}
#appView .course-menu-heading{margin-bottom:12px}
#appView .course-menu-heading h2{margin:4px 0 4px;color:#fff;font-size:24px}
#appView .course-menu-heading p{margin:0;font-size:13px}
#appView .course-card-menu{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
#appView .course-nav-card{
  appearance:none;
  width:100%;
  min-height:88px;
  padding:12px 14px;
  border:1px solid #6f292c;
  border-radius:14px;
  background:linear-gradient(135deg,rgba(24,24,24,.98),rgba(35,15,16,.94));
  color:#fff;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 18px;
  gap:11px;
  align-items:center;
  text-align:left;
  cursor:pointer;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 7px 18px rgba(0,0,0,.18);
}
#appView .course-nav-card:hover,
#appView .course-nav-card:focus-visible{
  border-color:#ef3038;
  background:linear-gradient(135deg,rgba(28,28,28,.98),rgba(62,18,20,.96));
  outline:none;
}
#appView .course-nav-icon{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border:1px solid #ef3038;
  border-radius:50%;
  color:#ff3b42;
  font-size:20px;
  font-weight:900;
  background:rgba(0,0,0,.22);
}
#appView .course-nav-copy{display:block;min-width:0}
#appView .course-nav-copy strong{display:block;font-size:17px;line-height:1.15;color:#fff;margin-bottom:4px}
#appView .course-nav-copy small{display:block;color:#b8b8b8;font-size:12px;line-height:1.3;font-weight:500}
#appView .course-nav-card em{font-style:normal;color:#ff3b42;font-size:28px;line-height:1;text-align:right}
#appView .course-page-back{margin:0 0 10px}
#appView .course-back-card{
  appearance:none;
  border:1px solid #3a3a3a;
  border-radius:12px;
  background:#141414;
  color:#f1f1f1;
  padding:8px 12px;
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:13px;
  cursor:pointer;
}
#appView .course-back-card span{color:#ef3038;font-size:23px;line-height:.8}
#appView .course-back-card:hover,
#appView .course-back-card:focus-visible{border-color:#ef3038;outline:none}

@media(max-width:700px){
  #appView .wrap{padding:8px 10px 18px}
  #appView .course-card-menu-wrap{padding:12px;margin-bottom:12px;border-radius:16px}
  #appView .course-menu-heading h2{font-size:21px}
  #appView .course-card-menu{grid-template-columns:1fr;gap:7px}
  #appView .course-nav-card{min-height:72px;padding:9px 11px;border-radius:12px;grid-template-columns:36px minmax(0,1fr) 16px;gap:9px}
  #appView .course-nav-icon{width:34px;height:34px;font-size:17px}
  #appView .course-nav-copy strong{font-size:15px}
  #appView .course-nav-copy small{font-size:11px}
  #appView .course-nav-card em{font-size:23px}
  #appView .course-page-back{margin-bottom:8px}
  #appView .course-back-card{padding:7px 10px;font-size:12px}
}



/* 2026-09-19 Option 8 compact dashboard — layout only */
#appView .dashboard-option8-shell{display:grid;gap:14px}
#appView .dashboard-option8-hero{min-height:150px;margin:0;padding:22px;border-radius:20px;display:flex;align-items:flex-end}
#appView .dashboard-option8-hero #dashboardTitle{margin:8px 0 6px;font-size:clamp(2rem,4vw,2.8rem);line-height:1.02}
#appView .dashboard-option8-hero #dashboardDescription{margin:0;color:#c7c7cc;max-width:720px}
#appView .option8-nav{display:grid;grid-template-columns:1fr;gap:8px}
#appView .option8-nav .course-nav-card{min-height:68px;padding:9px 12px;border-radius:14px;grid-template-columns:38px minmax(0,1fr) 16px;gap:10px;background:linear-gradient(135deg,rgba(20,20,22,.98),rgba(43,16,18,.94));box-shadow:none}
#appView .option8-nav .course-nav-icon{width:36px;height:36px;font-size:17px}
#appView .option8-nav .course-nav-copy strong{font-size:15px;margin-bottom:2px}
#appView .option8-nav .course-nav-copy small{font-size:11px;line-height:1.25;color:#b9b9bf}
#appView .option8-nav .course-nav-card em{font-size:22px}
#appView .option8-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
#appView .option8-stats .stat{padding:12px 8px;border-radius:14px;min-height:74px;background:linear-gradient(180deg,rgba(19,20,23,.96),rgba(12,13,15,.98));border:1px solid rgba(255,255,255,.06);box-shadow:none}
#appView .option8-stats .stat:nth-child(n+4){display:none}
#appView .option8-stats .stat b{font-size:1.35rem}
#appView .option8-stats .stat span{font-size:.72rem;line-height:1.2;color:#b8b8bd}
#appView .option8-progress-card,#appView .option8-missed-card{padding:14px 16px;border-radius:16px;margin:0}
#appView .option8-progress-card h2,#appView .option8-missed-card h2{font-size:1.08rem;margin:0 0 3px}
#appView .option8-progress-card .card-heading,#appView .option8-missed-card .card-heading{gap:10px;margin-bottom:10px}
#appView .option8-progress-card .muted,#appView .option8-missed-card .muted{font-size:.78rem;line-height:1.3;margin:0}
#appView .option8-progress-card .progress{margin:7px 0 9px}
#appView .option8-insights-hidden{display:none!important}
#appView .option8-missed-card>#toggleMissedBtn{width:100%}
@media(max-width:700px){
  #appView .dashboard-option8-shell{gap:10px}
  #appView .dashboard-option8-hero{min-height:124px;padding:15px 16px;border-radius:16px}
  #appView .dashboard-option8-hero #dashboardTitle{font-size:1.75rem;margin-top:6px}
  #appView .dashboard-option8-hero #dashboardDescription{font-size:.86rem;line-height:1.3}
  #appView .option8-nav{gap:6px}
  #appView .option8-nav .course-nav-card{min-height:61px;padding:8px 10px;border-radius:12px;grid-template-columns:34px minmax(0,1fr) 14px;gap:8px}
  #appView .option8-nav .course-nav-icon{width:32px;height:32px;font-size:15px}
  #appView .option8-nav .course-nav-copy strong{font-size:14px}
  #appView .option8-nav .course-nav-copy small{font-size:10px}
  #appView .option8-stats{gap:6px}
  #appView .option8-stats .stat{padding:9px 5px;border-radius:12px;min-height:66px}
  #appView .option8-stats .stat b{font-size:1.2rem}
  #appView .option8-stats .stat span{font-size:.64rem}
  #appView .option8-progress-card,#appView .option8-missed-card{padding:12px 13px;border-radius:14px}
}
/* Home-screen admin action */
#courseView .course-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:700px){#courseView .course-head-actions{gap:6px}#courseView #homeAdminConsoleBtn{padding:6px 8px;font-size:9px;border-radius:9px}}

/* 2026-09-19 clean admin console */
.admin-page{background:#090a0c}
.admin-clean-shell{max-width:1120px;padding:18px 16px 34px}
.admin-clean-head{padding:8px 0 4px;margin-bottom:12px}
.admin-clean-head h1{margin:4px 0;font-size:clamp(30px,6vw,44px)}
.admin-summary-clean{grid-template-columns:repeat(4,minmax(0,1fr));margin:10px 0 16px}
.admin-summary-clean .stat{background:linear-gradient(180deg,#15171b,#0e1013);border-color:#33363c;padding:16px 12px}
.admin-summary-clean .stat b{font-size:28px}
.admin-users-card{padding:16px}
.admin-users-details{padding:0}
.admin-users-body{display:grid;gap:12px;padding:14px 16px 16px}
.admin-users-body .admin-search{width:100%;max-width:420px}
.admin-users-heading{align-items:center;margin-bottom:12px}
.admin-users-heading h2{margin:4px 0 0;font-size:26px}
.admin-user-list{display:grid;gap:10px}
.admin-user-card{display:grid;grid-template-columns:minmax(220px,1.1fr) minmax(360px,1.7fr) auto;gap:16px;align-items:center;padding:14px;border:1px solid #34373d;border-radius:15px;background:linear-gradient(135deg,rgba(21,23,27,.98),rgba(12,13,16,.98))}
.admin-user-main{display:flex;align-items:center;gap:11px;min-width:0}
.admin-user-main strong{display:block;font-size:16px;margin-bottom:3px}
.admin-user-main .muted{font-size:12px;overflow-wrap:anywhere}
.admin-avatar{width:40px;height:40px;display:grid;place-items:center;border:1px solid #ef4444;border-radius:50%;color:#fff;background:rgba(239,68,68,.12);font-weight:850;flex:0 0 auto}
.admin-user-meta{display:grid;grid-template-columns:1.2fr .7fr 1fr;gap:10px}
.admin-user-meta span{color:#92959d;font-size:11px;line-height:1.35}
.admin-user-meta b{color:#f3f4f6;font-size:12px;font-weight:750}
.admin-user-action{display:flex;justify-content:flex-end}
.admin-details{padding:0;overflow:hidden}
.admin-details summary{list-style:none;cursor:pointer;padding:15px 16px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-weight:800}
.admin-details summary::-webkit-details-marker{display:none}
.admin-details summary:after{content:'+';color:#ef4444;font-size:24px;line-height:1}
.admin-details[open] summary:after{content:'−'}
.admin-details summary small{color:#888c94;font-weight:500;margin-left:auto}
.admin-details[open] summary{border-bottom:1px solid #30343a}
.admin-activity-clean{padding:12px 14px 14px}
.admin-activity-clean .activity-row{grid-template-columns:1fr auto;background:#101216;border-color:#2d3035;padding:10px 12px}
.admin-maintenance-body{display:grid;gap:10px;padding:14px 16px 16px}
.admin-maintenance-body .btn{justify-self:start}
.admin-empty{padding:16px;text-align:center}
.admin-search{max-width:360px;background:#0d0f12;border-color:#34373d}
.reset-result{margin:0 0 12px}
.reset-result .btn{margin-top:10px}
@media(max-width:850px){
 .admin-summary-clean{grid-template-columns:repeat(2,minmax(0,1fr))}
 .admin-user-card{grid-template-columns:1fr;gap:12px}
 .admin-user-meta{grid-template-columns:repeat(3,minmax(0,1fr))}
 .admin-user-action{justify-content:flex-start}
}
@media(max-width:560px){
 .admin-clean-shell{padding:12px 10px 28px}
 .admin-clean-head{align-items:flex-start}
 .admin-clean-head .admin-actions{width:100%;display:grid;grid-template-columns:1fr 1fr 1fr}
 .admin-clean-head .admin-actions .btn{width:100%;padding:9px 7px}
 .admin-summary-clean{gap:8px}
 .admin-summary-clean .stat{padding:13px 8px}
 .admin-summary-clean .stat b{font-size:24px}
 .admin-users-card{padding:12px}
 .admin-users-details{padding:0}
 .admin-users-body{padding:12px}
 .admin-users-heading{align-items:stretch}
 .admin-users-heading .admin-search{max-width:none;width:100%}
 .admin-user-card{padding:12px}
 .admin-user-meta{grid-template-columns:1fr 1fr}
 .admin-user-meta span:first-child{grid-column:1/-1}
 .admin-details summary{align-items:flex-start;flex-wrap:wrap}
 .admin-details summary small{width:100%;margin-left:0}
 .admin-activity-clean .activity-row{grid-template-columns:1fr}
}

.admin-reference-body{padding:16px}
.reference-toolbar{display:flex;gap:10px;align-items:end;justify-content:space-between;margin-bottom:12px}
.reference-toolbar label{margin:0;min-width:260px;flex:1}
.reference-guidance{padding:12px 14px;border:1px solid #49383a;border-radius:13px;background:rgba(127,29,29,.12);color:#d7d7dc;font-size:13px;line-height:1.5;margin-bottom:14px}
.reference-course-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:4px 0 14px}
.reference-course-head h2{margin:4px 0 4px}
.reference-course-head p{margin:0}
.reference-course-metrics{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.reference-course-metrics span{min-width:92px;padding:8px 10px;border:1px solid #34373d;border-radius:12px;background:#111317;color:#9ea2aa;font-size:12px;text-align:center}
.reference-course-metrics b{display:block;color:#fff;font-size:18px}
.reference-doc-list{display:grid;gap:10px}
.reference-doc{border:1px solid #34373d;border-radius:15px;background:linear-gradient(180deg,#15171b,#0e1013);overflow:hidden}
.reference-doc>summary{list-style:none;cursor:pointer;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.reference-doc>summary::-webkit-details-marker{display:none}
.reference-doc[open]>summary{border-bottom:1px solid #30343a}
.reference-doc-summary{min-width:0}
.reference-doc-summary strong{display:block;color:#fff;font-size:15px;line-height:1.35}
.reference-doc-summary span{display:block;color:#969aa2;font-size:12px;margin-top:4px}
.reference-doc-status{display:flex;align-items:flex-end;gap:6px;flex-direction:column;white-space:nowrap}
.reference-doc-status small{color:#777c84;font-size:11px}
.ref-status-current{border-color:#27583c!important;color:#86efac!important}
.ref-status-review{border-color:#755b1f!important;color:#fde68a!important}
.ref-status-archived{border-color:#4b5563!important;color:#cbd5e1!important}
.reference-doc-body{padding:14px}
.reference-doc-actions{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.reference-edit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}
.reference-edit-grid label{margin:0}
.reference-edit-grid .wide{grid-column:1/-1}
.reference-edit-grid textarea{width:100%;resize:vertical;min-height:76px}
.reference-section-map{margin-top:16px;padding-top:14px;border-top:1px solid #2d3035}
.reference-section-map>.eyebrow{margin-bottom:8px}
.reference-section-row{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:10px 0;border-bottom:1px solid #26292e}
.reference-section-row:last-child{border-bottom:0}
.reference-section-row b{display:block;font-size:13px;color:#f4f4f5}
.reference-section-row small{display:block;color:#8f949d;font-size:11px;line-height:1.4;margin-top:3px;overflow-wrap:anywhere}
.reference-section-row>span{color:#c6c9cf;font-size:12px;white-space:nowrap}
@media(max-width:700px){
 .admin-reference-body{padding:12px}
 .reference-toolbar{display:grid;grid-template-columns:1fr;align-items:stretch}
 .reference-toolbar label{min-width:0}
 .reference-course-head{display:grid;gap:10px}
 .reference-course-metrics{justify-content:flex-start;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}
 .reference-course-metrics span{min-width:0}
 .reference-doc>summary{align-items:flex-start}
 .reference-doc-status small{display:none}
 .reference-edit-grid{grid-template-columns:1fr}
 .reference-edit-grid .wide{grid-column:auto}
 .reference-section-row{display:grid;gap:5px}
 .reference-section-row>span{white-space:normal}
}

.reference-supporting{margin-top:12px;border:1px solid #30343a;border-radius:14px;background:#101216;overflow:hidden}
.reference-supporting>summary{list-style:none;cursor:pointer;padding:12px 14px;display:flex;justify-content:space-between;gap:10px;font-weight:800}
.reference-supporting>summary::-webkit-details-marker{display:none}
.reference-supporting>summary small{color:#81858e;font-weight:500}
.reference-supporting[open]>summary{border-bottom:1px solid #2d3035}
.reference-support-list{display:grid}
.reference-support-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 14px;border-bottom:1px solid #25282d;text-decoration:none;color:#f4f4f5}
.reference-support-row:last-child{border-bottom:0}
.reference-support-row b{display:block;font-size:13px}
.reference-support-row small{display:block;color:#8e939c;font-size:11px;line-height:1.4;margin-top:3px}
.reference-support-row>span{color:#ef4444;font-size:12px;white-space:nowrap}
@media(max-width:700px){.reference-supporting>summary{display:grid}.reference-support-row{align-items:flex-start}}


/* Admin R2 reference storage */
.r2-storage-status{margin:12px 0 14px}.r2-status{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;padding:12px 14px;border-radius:14px;border:1px solid #35383f;background:#121418}.r2-status b{font-size:14px}.r2-status span{color:#b8bbc2;font-size:12px;line-height:1.4;text-align:right}.r2-status code{color:#fff}.r2-status.r2-on{border-color:#255d3b;background:linear-gradient(135deg,rgba(21,52,35,.55),rgba(17,20,24,.96))}.r2-status.r2-off{border-color:#725a22;background:linear-gradient(135deg,rgba(64,48,16,.5),rgba(17,20,24,.96))}.reference-r2-card{margin:14px 0;padding:14px;border:1px solid #3a3d44;border-radius:14px;background:linear-gradient(135deg,rgba(17,19,23,.98),rgba(28,18,19,.94))}.reference-r2-card.active{border-color:#6f292c}.reference-r2-card.disabled{opacity:.82}.reference-r2-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.reference-r2-head b{display:block;margin:3px 0;font-size:14px}.reference-r2-head small{display:block;color:#aeb1b8;font-size:12px;line-height:1.4}.reference-r2-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:12px}.reference-r2-actions input[type=file]{max-width:100%;font-size:12px;color:#c7c9ce;background:#0d0f12;border:1px solid #333740;border-radius:10px;padding:8px}.reference-r2-actions .btn{min-height:40px}
@media(max-width:700px){.r2-status{display:block}.r2-status span{display:block;text-align:left;margin-top:5px}.reference-r2-head{display:block}.reference-r2-head .pill{display:inline-flex;margin-top:8px}.reference-r2-actions{display:grid;grid-template-columns:1fr}.reference-r2-actions input[type=file],.reference-r2-actions .btn{width:100%}}



/* Question reference detail */
.reference-detail{margin:14px 0 16px;padding:15px 16px;border:1px solid rgba(255,255,255,.12);border-left:4px solid #ef4048;border-radius:14px;background:#111316;display:grid;gap:8px}
.reference-label{font-size:.7rem;letter-spacing:.17em;font-weight:850;color:#ef5a60;margin-bottom:2px}
.reference-context{font-size:.82rem;line-height:1.4;color:#aeb0b6;border-bottom:1px solid rgba(255,255,255,.07);padding-bottom:9px;margin-bottom:1px}
.reference-source-row{padding:10px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.reference-source-row:last-of-type{border-bottom:0}
.reference-document{font-size:1.02rem;font-weight:850;color:#fff;line-height:1.35}
.reference-standard-title{font-size:.9rem;color:#c6c7cb;line-height:1.4;margin-top:2px}
.reference-chapter{font-size:.94rem;font-weight:700;color:#f0f0f2;line-height:1.4;margin-top:7px}
.reference-section{font-size:1rem;font-weight:850;color:#ff6268;line-height:1.4;margin-top:3px}
.reference-topic{font-size:.86rem;color:#aeb0b6;margin-top:2px}
.reference-paper{margin-top:7px;background:#f4f1ea;border:1px solid #d6d0c4;border-radius:10px;padding:14px 15px;color:#171717;box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}
.reference-paper-head{font-size:.68rem;letter-spacing:.15em;font-weight:900;color:#8b1f24;margin-bottom:9px}
.reference-paper-text{font-family:Georgia,'Times New Roman',serif;font-size:.98rem;line-height:1.5;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start}
.reference-paper-text b{white-space:nowrap;font-size:1.02rem}
.reference-paper-text span{display:block}
@media(max-width:700px){.reference-detail{padding:12px 13px;margin:12px 0 14px}.reference-document{font-size:.98rem}.reference-standard-title,.reference-chapter{font-size:.86rem}.reference-section{font-size:.92rem}.reference-paper{padding:12px}.reference-paper-text{font-size:.92rem;grid-template-columns:1fr;gap:3px}}
/* Cleaner answered-question feedback */
.answer-box.study-feedback{margin-top:14px}
.answer-box.correct-feedback{border-left-color:#22c55e;background:rgba(20,83,45,.16)}
.answer-box.correct-feedback> b,.answer-box .correct-wording{color:#4ade80}
.answer-box.correct-feedback> b{display:block;margin-bottom:5px}
.answer-box.review-feedback{border-left-color:#ef4444}
.answer-box .feedback-reference-excerpt{margin-top:12px}
.answer-box.correct-feedback .feedback-reference-excerpt{border-color:#22c55e}




/* Dedicated full-screen Study / Practice Test session page */
body.runner-active{overflow:hidden!important}
#sessionRunnerPage.session-page.active{
  position:fixed!important;
  inset:0!important;
  z-index:80!important;
  display:block!important;
  width:100%!important;
  max-width:none!important;
  height:100dvh!important;
  margin:0!important;
  padding:max(14px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  background:linear-gradient(145deg,#08090b,#101216 55%,#090a0c)!important;
}
#sessionRunnerPage.session-page.active #sessionRunner{width:min(960px,100%);margin:0 auto;padding:0 0 36px}
#sessionRunnerPage.session-page.active .card:first-child{position:relative!important;top:auto!important}
#sessionRunnerPage.session-page.active .runner-head{align-items:center}
@media(max-width:700px){
  #sessionRunnerPage.session-page.active{padding:12px 12px calc(28px + env(safe-area-inset-bottom))!important}
  #sessionRunnerPage.session-page.active #sessionRunner{padding-bottom:48px}
}


/* Global reference feedback — all study guides */
.reference-topic{margin-top:7px;color:#d8d8dc;font-size:.9rem;font-weight:700}
.reference-feedback-card{margin-top:14px;border:1px solid #343941;border-left:5px solid #ef4444;border-radius:18px;background:#0f1216;padding:16px;display:grid;gap:13px}
.reference-feedback-label{font-size:.78rem;letter-spacing:.18em;font-weight:900;color:#ff6068}
.reference-feedback-source{display:grid;gap:7px;padding:13px;border:1px solid #2d333b;border-radius:14px;background:rgba(255,255,255,.018)}
.reference-feedback-source-head{display:flex;gap:9px;align-items:baseline;flex-wrap:wrap}.reference-feedback-source-head span{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:#9298a1}.reference-feedback-source-head b{font-size:1.04rem;color:#fff}
.reference-feedback-field{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;align-items:start}.reference-feedback-field span{font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:#9298a1;padding-top:2px}.reference-feedback-field strong{font-size:.94rem;line-height:1.4;color:#e8e9eb}
.reference-feedback-overview{border-top:1px solid #272c33;padding-top:10px}.reference-feedback-overview>span,.reference-feedback-requirement>span{display:block;font-size:.72rem;letter-spacing:.13em;font-weight:900;color:#b3b7bd;margin-bottom:6px}.reference-feedback-overview p{margin:0;color:#d0d3d7;line-height:1.5;font-size:.93rem}
.reference-feedback-requirement{border-radius:14px;border:1px solid rgba(54,211,121,.38);background:rgba(25,116,63,.16);padding:13px}.reference-feedback-requirement>span{color:#67df98}.reference-feedback-requirement p{margin:0;color:#7be3a4;font-weight:700;line-height:1.55}
.reference-feedback-citation{font-size:.8rem;color:#9399a2;border-top:1px solid #272c33;padding-top:10px;word-break:break-word}
.review-correct-answer{color:#69df98}.review-correct-answer b{color:#7be3a4}
.correct-feedback>.reference-feedback-card{border-left-color:#32c766}.correct-feedback .reference-feedback-label{color:#67df98}.correct-feedback .reference-feedback-overview p{color:#7be3a4}.review-feedback>.reference-feedback-card{border-left-color:#ef4444}
@media(max-width:600px){.reference-feedback-card{padding:13px}.reference-feedback-field{grid-template-columns:72px minmax(0,1fr);gap:8px}.reference-feedback-source{padding:11px}.reference-feedback-field strong{font-size:.9rem}}

/* 2026-09-21 Home cleanup: training cards fill space after NFPA Home links were removed. */
#courseView .modern-home{display:flex!important;flex-direction:column!important;min-height:calc(100dvh - 76px)!important}
#courseView .home-training-grid{
  flex:1 1 auto!important;
  align-items:stretch!important;
  margin-top:0!important;
  padding-top:10px!important;
  padding-bottom:18px!important;
}
#courseView .home-training-grid .visual-course-card{height:auto!important;min-height:230px!important}
@media (orientation:portrait) and (max-width:700px){
  #courseView .modern-home{min-height:calc(100dvh - 60px)!important}
  #courseView .home-hero-panel{flex:0 0 auto!important}
  #courseView .home-training-grid{
    display:flex!important;
    flex-direction:column!important;
    flex:1 1 auto!important;
    gap:9px!important;
    padding:8px 2.5% max(12px,env(safe-area-inset-bottom))!important;
  }
  #courseView .home-training-grid .visual-course-card{
    flex:1 1 0!important;
    min-height:150px!important;
    height:auto!important;
  }
  #courseView .home-training-grid .visual-course-content,
  #courseView .home-training-grid .alarm-visual .visual-course-content{align-content:center!important}
}
@media (orientation:portrait) and (max-width:390px){
  #courseView .modern-home{min-height:calc(100dvh - 56px)!important}
  #courseView .home-training-grid{padding-top:7px!important;gap:7px!important}
  #courseView .home-training-grid .visual-course-card{min-height:142px!important}
}
@media (orientation:landscape) and (max-height:600px){
  #courseView .modern-home{min-height:calc(100dvh - 46px)!important;display:flex!important;flex-direction:column!important}
  #courseView .home-training-grid{
    flex:1 1 auto!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-template-rows:1fr!important;
    padding:7px 1.7% max(8px,env(safe-area-inset-bottom))!important;
  }
  #courseView .home-training-grid .visual-course-card{height:100%!important;min-height:112px!important}
}

/* 2026-09-21 Home screen only — larger category icons */
#courseView .home-training-grid .round-course-icon{
  width:48px!important;
  height:48px!important;
  font-size:23px!important;
  border-width:2px!important;
}
#courseView .home-training-grid .visual-course-content,
#courseView .home-training-grid .alarm-visual .visual-course-content{
  grid-template-columns:50px minmax(0,1fr)!important;
  column-gap:12px!important;
}
@media (orientation:portrait) and (max-width:700px){
  #courseView .home-training-grid .round-course-icon{
    width:44px!important;
    height:44px!important;
    font-size:21px!important;
  }
  #courseView .home-training-grid .visual-course-content,
  #courseView .home-training-grid .alarm-visual .visual-course-content{
    grid-template-columns:46px minmax(0,1fr)!important;
    column-gap:10px!important;
  }
}
@media (orientation:portrait) and (max-width:390px){
  #courseView .home-training-grid .round-course-icon{
    width:41px!important;
    height:41px!important;
    font-size:19px!important;
  }
  #courseView .home-training-grid .visual-course-content,
  #courseView .home-training-grid .alarm-visual .visual-course-content{
    grid-template-columns:43px minmax(0,1fr)!important;
    column-gap:9px!important;
  }
}
@media (orientation:landscape) and (max-height:600px){
  #courseView .home-training-grid .round-course-icon{
    width:36px!important;
    height:36px!important;
    font-size:17px!important;
  }
  #courseView .home-training-grid .visual-course-content,
  #courseView .home-training-grid .alarm-visual .visual-course-content{
    grid-template-columns:38px minmax(0,1fr)!important;
    column-gap:8px!important;
  }
}

/* 2026-09-21 Home screen only — larger, near full-card-width course buttons */
#courseView .home-training-grid .course-choice-row,
#courseView .home-training-grid .sprinkler-choice-row,
#courseView .home-training-grid .alarm-choice-row,
#courseView .home-training-grid .extinguisher-choice-row{
  width:calc(100% + 20px)!important;
  max-width:none!important;
  margin-left:-10px!important;
  margin-right:-10px!important;
}
#courseView .home-training-grid .course-mini-btn,
#courseView .home-training-grid .sprinkler-choice-row .course-mini-btn,
#courseView .home-training-grid .alarm-choice-row .course-mini-btn,
#courseView .home-training-grid .extinguisher-choice-row .course-mini-btn{
  width:100%!important;
  min-height:48px!important;
  padding:10px 16px!important;
  font-size:14px!important;
}
@media (orientation:portrait) and (max-width:700px){
  #courseView .home-training-grid .course-choice-row,
  #courseView .home-training-grid .sprinkler-choice-row,
  #courseView .home-training-grid .alarm-choice-row,
  #courseView .home-training-grid .extinguisher-choice-row{
    width:calc(100% + 12px)!important;
    margin-left:-6px!important;
    margin-right:-6px!important;
  }
  #courseView .home-training-grid .course-mini-btn,
  #courseView .home-training-grid .sprinkler-choice-row .course-mini-btn,
  #courseView .home-training-grid .alarm-choice-row .course-mini-btn,
  #courseView .home-training-grid .extinguisher-choice-row .course-mini-btn{
    min-height:45px!important;
    padding:9px 14px!important;
    font-size:13px!important;
  }
}
@media (orientation:portrait) and (max-width:390px){
  #courseView .home-training-grid .course-mini-btn,
  #courseView .home-training-grid .sprinkler-choice-row .course-mini-btn,
  #courseView .home-training-grid .alarm-choice-row .course-mini-btn,
  #courseView .home-training-grid .extinguisher-choice-row .course-mini-btn{
    min-height:44px!important;
    font-size:12.5px!important;
  }
}


