/* Nurse Dojo Core. Brand: navy #1E2D50, coral, sky, gold. Bebas Neue + Outfit. High contrast throughout. */
:root, .ndc-focus, .ndc-page, .ndc-courses {
  --nd-navy:#1E2D50; --nd-navy-2:#2A3B61; --nd-ink:#1B2233; --nd-muted:#4A5468; --nd-line:#E3DFD4;
  --nd-ground:#F4F2EC; --nd-surface:#FFFFFF;
  --nd-coral:#C2410C; --nd-coral-dark:#9A3412; --nd-coral-soft:#FDE7DC;
  --nd-sky:#0B6E99; --nd-sky-soft:#E6F4FB; --nd-gold:#F5C542; --nd-gold-ink:#8A6300;
  --nd-good:#1F6B3F; --nd-good-soft:#E3F4EA;
  --nd-shadow:0 18px 40px rgba(30,45,80,.12);
  --nd-display:'Bebas Neue',Impact,'Arial Narrow',sans-serif;
  --nd-body:'Outfit',system-ui,-apple-system,'Segoe UI',sans-serif;
  --nd-bar-h:60px;
}

/* ---------- Buttons ---------- */
html body .ndc-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 18px;border-radius:12px;border:2px solid var(--nd-line);background:var(--nd-surface);color:var(--nd-navy)!important;font:600 15px/1.2 var(--nd-body);text-decoration:none!important;cursor:pointer;box-sizing:border-box;transition:transform .12s ease,background .15s ease,border-color .15s ease;}
html body .ndc-btn:hover{border-color:var(--nd-navy);}
html body .ndc-btn:active{transform:translateY(1px);}
html body .ndc-btn-primary{background:var(--nd-coral);border-color:var(--nd-coral);color:#fff!important;}
html body .ndc-btn-primary:hover{background:var(--nd-coral-dark);border-color:var(--nd-coral-dark);}
html body .ndc-btn-navy{background:var(--nd-navy);border-color:var(--nd-navy);color:#fff!important;}
html body .ndc-btn-navy:hover{background:var(--nd-navy-2);border-color:var(--nd-navy-2);}
html body .ndc-btn-light{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.5);color:#fff!important;}
html body .ndc-btn-light:hover{background:rgba(255,255,255,.2);border-color:#fff;}
html body .ndc-btn-ghost{background:transparent;border-color:transparent;color:var(--nd-muted)!important;}
html body .ndc-btn-ghost:hover{border-color:var(--nd-line);}
html body .ndc-btns{display:flex;flex-wrap:wrap;gap:10px;}
html body .ndc-btn:focus-visible,html body .ndc-pill:focus-visible,html body .ndc-nav:focus-visible,html body .ndc-back:focus-visible,html body .ndc-lesson a:focus-visible,html body .ndc-ccard:focus-visible{outline:3px solid var(--nd-sky);outline-offset:2px;}
.ndc-eyebrow{font:700 12px/1.2 var(--nd-body);letter-spacing:.12em;text-transform:uppercase;color:var(--nd-coral);}
.ndc-eyebrow-gold{color:var(--nd-gold);}
.ndc-h2{font:400 30px/1.05 var(--nd-display);letter-spacing:.04em;color:var(--nd-navy);margin:4px 0 0;}
.ndc-sub{margin:6px 0 0;font-size:15px;color:var(--nd-muted);line-height:1.5;}

/* ---------- Lesson page ---------- */
body.ndc-focus{margin:0;background:var(--nd-ground);color:var(--nd-ink);font-family:var(--nd-body);}
.ndc-bar{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:50;height:var(--nd-bar-h);display:flex;align-items:center;gap:10px;padding:0 12px;padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));background:var(--nd-navy);color:#fff;box-sizing:border-box;box-shadow:0 2px 10px rgba(0,0,0,.18);}
html body .ndc-back{display:inline-flex;align-items:center;gap:6px;min-height:42px;padding:0 10px 0 6px;border-radius:10px;color:#fff!important;text-decoration:none!important;font:600 14px/1 var(--nd-body);}
html body .ndc-back:hover{background:var(--nd-navy-2);}
.ndc-bar-title{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;}
.ndc-bar-course{font:700 11px/1.2 var(--nd-body);letter-spacing:.1em;text-transform:uppercase;color:var(--nd-gold);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ndc-bar-lesson{font:600 16px/1.2 var(--nd-body);color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ndc-bar-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;}
.ndc-count{font:600 13px/1 var(--nd-body);color:#DCE3F0;margin-right:4px;font-variant-numeric:tabular-nums;}
html body .ndc-pill{display:inline-flex!important;align-items:center;gap:8px;min-height:40px;padding:0 14px;border-radius:999px;border:2px solid rgba(255,255,255,.55);background:transparent;color:#fff;font:600 14px/1 var(--nd-body);cursor:pointer;}
html body .ndc-pill:hover{border-color:#fff;background:var(--nd-navy-2);}
html body .ndc-pill-dot{display:block;flex-shrink:0;width:16px;height:16px;border-radius:50%;border:2px solid #fff;box-sizing:border-box;}
html body .ndc-pill.is-done{background:var(--nd-good-soft);border-color:var(--nd-good-soft);color:var(--nd-good);}
html body .ndc-pill.is-done .ndc-pill-dot{border-color:var(--nd-good);background:var(--nd-good);box-shadow:inset 0 0 0 2px var(--nd-good-soft);}
html body .ndc-nav{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:2px solid rgba(255,255,255,.4);color:#fff!important;}
html body .ndc-nav:hover{border-color:#fff;background:var(--nd-navy-2);}
html body .ndc-nav.is-off{opacity:.35;pointer-events:none;}
.ndc-stage{display:block;margin:0;padding:0;}
#ndc-frame{display:block;width:100%;border:0;height:calc(100vh - var(--nd-bar-h) - var(--wp-admin--admin-bar--height,0px));height:calc(100dvh - var(--nd-bar-h) - var(--wp-admin--admin-bar--height,0px));background:var(--nd-ground);}
@media (max-width:640px){
  .ndc-hide-sm{display:none;}
  html body .ndc-pill{padding:0 10px;}
  html body .ndc-pill-text{font-size:13px;}
  html body .ndc-nav{width:36px;height:36px;}
  .ndc-bar{gap:6px;padding:0 8px;}
}
@media (max-width:400px){
  html body .ndc-pill .ndc-pill-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);}
  html body .ndc-pill{width:40px;min-width:40px;padding:0!important;justify-content:center;gap:0;}
  html body .ndc-pill-dot{width:20px;height:20px;}
  html body .ndc-pill.is-done .ndc-pill-dot{box-shadow:none;background:var(--nd-good) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='white' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat;}
}
@media (max-width:640px){
  .ndc-bar-lesson{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14.5px;line-height:1.2;}
  .ndc-bar-course{font-size:10.5px;}
  html body .ndc-pill,html body .ndc-nav,html body .ndc-back{padding-top:0!important;padding-bottom:0!important;}
}

/* Below the lesson */
.ndc-extras{background:var(--nd-surface);border-top:1px solid var(--nd-line);padding:32px 16px 64px;}
.ndc-extras.is-main{border-top:0;background:var(--nd-ground);padding-top:24px;}
.ndc-wrap{max-width:1040px;margin:0 auto;display:flex;flex-direction:column;gap:36px;}
.ndc-block-head{margin-bottom:14px;}
.ndc-quiz{border:1px solid var(--nd-line);border-radius:16px;overflow:hidden;background:var(--nd-surface);}
#ndc-quiz-frame{display:block;width:100%;height:650px;border:0;}
.ndc-sheet{display:flex;gap:20px;align-items:center;padding:18px;border:1px solid var(--nd-line);border-radius:16px;background:var(--nd-ground);}
.ndc-sheet-thumb{flex:0 0 150px;display:block;border-radius:10px;overflow:hidden;border:1px solid var(--nd-line);background:#fff;}
.ndc-sheet-thumb img{display:block;width:100%;height:auto;}
.ndc-sheet-txt{min-width:0;display:flex;flex-direction:column;gap:2px;}
.ndc-sheet-txt .ndc-btns{margin-top:12px;}
@media (max-width:560px){.ndc-sheet{flex-direction:column;align-items:stretch;}.ndc-sheet-thumb{flex:none;max-width:220px;}}
.ndc-mn-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px;}
.ndc-mn{margin:0;background:var(--nd-ground);border:1px solid var(--nd-line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;}
.ndc-mn img{display:block;width:100%;height:auto;background:#fff;}
.ndc-mn figcaption{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;font:600 14px/1.3 var(--nd-body);color:var(--nd-ink);margin-top:auto;}
.ndc-mn-actions{display:flex;gap:12px;flex-shrink:0;}
.ndc-mn-actions a{color:var(--nd-sky);text-decoration:none;font-weight:700;}
.ndc-mn-actions a:hover{text-decoration:underline;}
.ndc-next{display:flex;flex-wrap:wrap;gap:10px;padding-top:8px;border-top:1px solid var(--nd-line);}

/* Free preview banner */
.ndc-preview{background:var(--nd-navy);color:#fff;border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:8px;}
.ndc-preview-h{font:400 34px/1 var(--nd-display);letter-spacing:.03em;color:#fff;}
.ndc-preview p{margin:0 0 6px;color:#DCE3F0;font-size:16px;line-height:1.5;}
.ndc-lock-free{margin:18px 0 0;font-size:15px;font-weight:600;}
.ndc-lock-free a{color:var(--nd-sky);}

/* Finish modal */
.ndc-finish{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:16px;background:rgba(20,26,38,.55);}
.ndc-finish[hidden]{display:none;}
.ndc-finish-card{width:100%;max-width:440px;background:var(--nd-surface);border-radius:20px;box-shadow:var(--nd-shadow);padding:28px 24px 20px;text-align:center;animation:ndcPop .22s ease-out;box-sizing:border-box;}
@keyframes ndcPop{from{transform:scale(.94);opacity:0}to{transform:none;opacity:1}}
.ndc-finish-check{width:64px;height:64px;margin:0 auto 12px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--nd-good-soft);color:var(--nd-good);}
.ndc-finish-h{font:400 36px/1 var(--nd-display);letter-spacing:.04em;color:var(--nd-navy);margin-bottom:6px;}
.ndc-finish-sp{display:inline-block;margin:2px 0 10px;padding:6px 14px;border-radius:999px;background:#FFF4D1;color:var(--nd-gold-ink);font:700 15px/1.2 var(--nd-body);}
.ndc-finish-sp[hidden]{display:none;}
.ndc-finish-p{margin:0 0 18px;color:var(--nd-muted);font-size:16px;font-weight:500;}
.ndc-finish-btns{display:flex;flex-direction:column;gap:8px;}
.ndc-finish-btns .ndc-btn{width:100%;}

/* Locked */
.ndc-locked{min-height:calc(100vh - var(--nd-bar-h));min-height:calc(100dvh - var(--nd-bar-h));display:flex;align-items:center;justify-content:center;padding:32px 16px;box-sizing:border-box;}
.ndc-lock-card{max-width:520px;width:100%;background:var(--nd-surface);border:1px solid var(--nd-line);border-radius:22px;box-shadow:var(--nd-shadow);padding:32px 26px;text-align:center;box-sizing:border-box;}
.ndc-lock-icon{width:60px;height:60px;margin:0 auto 14px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--nd-coral-soft);color:var(--nd-coral);}
.ndc-lock-h{font:400 38px/1.05 var(--nd-display);letter-spacing:.03em;margin:8px 0 10px;color:var(--nd-navy);}
.ndc-lock-p{color:var(--nd-muted);font-size:16px;font-weight:500;line-height:1.55;margin:0 0 20px;}
.ndc-lock-btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}

/* ---------- Course page ---------- */
.ndc-page{background:var(--nd-ground);font-family:var(--nd-body);color:var(--nd-ink);padding:20px 16px 56px;box-sizing:border-box;}
.ndc-course{max-width:960px;margin:0 auto;display:flex;flex-direction:column;gap:20px;}
.ndc-course-hero{display:flex;gap:24px;align-items:center;background:var(--nd-navy);color:#fff;border-radius:20px;padding:24px;box-sizing:border-box;}
.ndc-course-hero-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px;}
.ndc-course-h{font:400 46px/1 var(--nd-display);letter-spacing:.03em;margin:0;color:#fff;}
.ndc-course-intro{margin:0;font-size:16px;line-height:1.55;color:#DCE3F0;max-width:60ch;}
.ndc-course-meta{font-size:14px;font-weight:600;color:#DCE3F0;}
.ndc-course-prog{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:600;color:#fff;}
.ndc-course-prog .ndc-pbar{flex:1;max-width:320px;background:var(--nd-navy-2);}
.ndc-course-hero .ndc-btns{margin-top:6px;}
.ndc-course-art{flex:0 0 220px;}
.ndc-course-art img{display:block;width:100%;height:auto;border-radius:14px;background:#fff;}
@media (max-width:720px){.ndc-course-hero{flex-direction:column-reverse;align-items:stretch;padding:20px;}.ndc-course-art{flex:none;max-width:200px;}.ndc-course-h{font-size:38px;}}
.ndc-pbar{display:block;height:10px;border-radius:5px;background:#E6E2D8;overflow:hidden;}
.ndc-pbar i{display:block;height:100%;border-radius:5px;background:var(--nd-gold);}
.ndc-pbar-sm{height:7px;}
.ndc-lessons{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;}
.ndc-lesson a{display:flex;align-items:center;gap:14px;padding:14px 16px;background:var(--nd-surface);border:1px solid var(--nd-line);border-radius:14px;text-decoration:none!important;color:var(--nd-ink)!important;transition:border-color .15s ease,transform .12s ease;}
.ndc-lesson a:hover{border-color:var(--nd-navy);transform:translateY(-1px);}
.ndc-lesson-mark{flex:0 0 44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--nd-sky-soft);color:var(--nd-sky);font:700 14px/1 var(--nd-body);font-variant-numeric:tabular-nums;}
.ndc-lesson.is-done .ndc-lesson-mark{background:var(--nd-good-soft);color:var(--nd-good);}
.ndc-lesson.is-exam .ndc-lesson-mark{background:#FFF4D1;color:var(--nd-gold-ink);}
.ndc-lesson.is-next a{border:2px solid var(--nd-coral);}
.ndc-lesson-txt{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px;}
.ndc-lesson-title{font-size:17px;font-weight:600;line-height:1.3;color:var(--nd-ink);}
.ndc-lesson-sub{font-size:13px;font-weight:600;color:var(--nd-muted);}
.ndc-lesson.is-next .ndc-lesson-sub{color:var(--nd-coral);}
.ndc-lesson.is-done .ndc-lesson-sub{color:var(--nd-good);}
.ndc-lesson-go{color:var(--nd-navy);display:flex;}

/* ---------- Courses list [nd_courses] ---------- */
.ndc-courses{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;font-family:var(--nd-body);}
.ndc-ccard{display:flex;flex-direction:column;background:var(--nd-surface);border:1px solid var(--nd-line);border-radius:16px;overflow:hidden;text-decoration:none!important;color:var(--nd-ink)!important;transition:border-color .15s ease,transform .12s ease,box-shadow .15s ease;}
.ndc-ccard:hover{border-color:var(--nd-navy);transform:translateY(-2px);box-shadow:0 10px 24px rgba(30,45,80,.10);}
.ndc-ccard-art img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:var(--nd-ground);}
.ndc-ccard-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px;}
.ndc-ccard-title{font:400 26px/1.05 var(--nd-display);letter-spacing:.03em;color:var(--nd-navy);}
.ndc-ccard-meta{font-size:13px;font-weight:600;color:var(--nd-muted);}
.ndc-ccard-free{align-self:flex-start;margin-top:2px;padding:4px 10px;border-radius:999px;background:#E7F5EC;color:#14532D;font-size:13px;font-weight:700;}
.ndc-courses-head{margin-bottom:20px}
.ndc-courses-p{font-size:17px;line-height:1.55;color:var(--nd-ink);margin:4px 0 6px;max-width:680px}
.ndc-tool-courses .ndc-tool-wrap{max-width:1100px}
.ndc-courses-band{margin:32px 0 0}.ndc-courses-band .nd-rc-band{border-radius:16px}
.ndc-ref{margin-top:14px;border:1px solid #D9D4C7;border-radius:14px;background:#fff;padding:0 14px}
.ndc-ref summary{cursor:pointer;min-height:50px;display:flex;align-items:center;font-weight:700;color:#1E2D50;font-size:16px}
.ndc-ref[open]{padding-bottom:14px}
.ndc-tool-page{background:#F4F2EC;padding:20px 0 40px}
.ndc-tool-wrap{max-width:1000px;margin:0 auto;padding:0 16px}
.ndc-tool-trainer .ndc-tool-wrap{max-width:960px}

/* Lock it in drills */
html body .ndd{background:#fff;border:1px solid var(--nd-line);border-radius:16px;padding:14px;}
html body .ndd-tabs{display:flex;gap:6px;padding:4px;border-radius:12px;background:var(--nd-ground);border:1px solid var(--nd-line);margin-bottom:14px;}
html body .ndd-tab{flex:1;min-height:44px;border:0;border-radius:9px;background:transparent;font:600 15px/1.2 var(--nd-body);color:var(--nd-ink);cursor:pointer;padding:0 10px!important;}
html body .ndd-tab.is-on{background:var(--nd-navy);color:#fff;}
html body .ndd-rr-top{display:flex;justify-content:space-between;align-items:center;font:600 14px/1 var(--nd-body);color:var(--nd-ink);margin-bottom:10px;}
html body .ndd-rr-top b{color:var(--nd-coral);}
html body .ndd-flip{display:none;}
html body .ndd-flip.is-cur{display:block;}
html body .ndd-face{display:flex;flex-direction:column;gap:10px;width:100%;min-height:200px;border-radius:14px;padding:20px 18px;text-align:left;font-family:var(--nd-body);}
html body button.ndd-front{border:0;background:var(--nd-navy);color:#fff;cursor:pointer;justify-content:center;}
html body .ndd-back{background:var(--nd-ground);border:1.5px solid var(--nd-navy);color:var(--nd-ink);}
html body .ndd-k{font:700 12px/1.2 var(--nd-body);letter-spacing:.1em;text-transform:uppercase;color:var(--nd-gold);}
html body .ndd-back .ndd-k,html body .ndd-mq .ndd-k{color:var(--nd-sky-ink,#0B6E99);}
html body .ndd-q{font:400 30px/1.08 var(--nd-display,'Bebas Neue',Impact,sans-serif);letter-spacing:.03em;}
html body .ndd-hint{font-size:14px;color:#DCE3F0;}
html body .ndd-a{font-size:16.5px;line-height:1.5;}
html body .ndd-rate{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;}
html body .ndd-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px!important;border-radius:12px;border:1.5px solid var(--nd-navy);background:#fff;color:var(--nd-navy);font:600 15px/1 var(--nd-body);cursor:pointer;flex:1;}
html body .ndd-good{background:var(--nd-good);border-color:var(--nd-good);color:#fff;}
html body .ndd-primary{background:var(--nd-coral);border-color:var(--nd-coral);color:#fff;flex:0 0 auto;}
html body .ndd-done{text-align:center;padding:18px 6px;display:flex;flex-direction:column;align-items:center;gap:8px;}
html body .ndd-done-h{font:400 34px/1 var(--nd-display,'Bebas Neue',Impact,sans-serif);letter-spacing:.03em;color:var(--nd-navy);}
html body .ndd-done-p{margin:0;font-size:15.5px;color:var(--nd-ink);}
html body .ndd-mq{display:flex;flex-direction:column;gap:10px;}
html body .ndd-mname{font:400 30px/1.05 var(--nd-display,'Bebas Neue',Impact,sans-serif);letter-spacing:.03em;color:var(--nd-navy);}
html body .ndd-mstem{font-size:17px;font-weight:600;color:var(--nd-ink);}
html body .ndd-key{display:inline-block;min-width:30px;padding:3px 8px;border-radius:8px;background:var(--nd-navy);color:var(--nd-gold);font:400 20px/1.1 var(--nd-display,'Bebas Neue',Impact,sans-serif);text-align:center;}
html body .ndd-opts{display:flex;flex-direction:column;gap:8px;}
html body .ndd-opt{min-height:50px;text-align:left;padding:12px 14px!important;border-radius:12px;border:2px solid var(--nd-line);background:#fff;font:500 15.5px/1.35 var(--nd-body);color:var(--nd-ink);cursor:pointer;}
html body .ndd-opt.is-ok{border-color:var(--nd-good);background:var(--nd-good-soft);}
html body .ndd-opt.is-no{border-color:#B42318;background:#FDE4E1;}
html body .ndd-opt:disabled{cursor:default;color:var(--nd-ink);}
html body .ndd-next{display:flex;flex-direction:column;gap:10px;}
html body .ndd-full{display:flex;flex-direction:column;gap:4px;background:var(--nd-ground);border-radius:10px;padding:10px 12px;font-size:14.5px;}
html body .ndd-full b{color:var(--nd-navy);margin-right:4px;}
html body .ndd [hidden],html body .ndd[hidden]{display:none!important;}
/* WordPress's admin bar scrolls away on phones, so the lesson bar sticks to the very top there. */
@media (max-width:600px){.admin-bar .ndc-bar{top:0;}}

/* Cheat sheet library */
.ndc-lib{font-family:var(--nd-body);color:var(--nd-ink);}
.ndc-lib-head{display:flex;flex-direction:column;gap:6px;margin:0 0 18px;}
.ndc-lib-head .ndc-h2{margin:0;}
.ndc-lib-search{width:100%;min-height:50px;margin-top:8px;padding:0 16px;border:1.5px solid var(--nd-line);border-radius:14px;background:#fff;font:500 16px/1 var(--nd-body);color:var(--nd-ink);box-sizing:border-box;}
.ndc-lib-search:focus{outline:none;border-color:var(--nd-navy);}
.ndc-lib-search::placeholder{color:var(--nd-muted);}
.ndc-lib-course{margin:0 0 22px;}
.ndc-lib-course[hidden],.ndc-lib-item[hidden]{display:none!important;}
.ndc-lib-ch{display:flex;align-items:center;gap:10px;margin:0 0 10px;font:400 24px/1.1 var(--nd-display);letter-spacing:.03em;color:var(--nd-navy);}
.ndc-lib-cn{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 6px;border-radius:10px;background:var(--nd-navy);color:var(--nd-gold);font:400 20px/1 var(--nd-display);}
.ndc-lib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px;}
.ndc-lib-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:58px;padding:10px 14px;border:1px solid var(--nd-line);border-radius:14px;background:#fff;text-decoration:none!important;color:var(--nd-ink)!important;}
.ndc-lib-item:hover{border-color:var(--nd-navy);}
.ndc-lib-num{min-width:44px;font:400 20px/1 var(--nd-display);letter-spacing:.03em;color:var(--nd-coral);}
.ndc-lib-t{font:600 15.5px/1.3 var(--nd-body);}
.ndc-lib-go{font:700 13px/1 var(--nd-body);color:var(--nd-sky);white-space:nowrap;}
.ndc-lib-item.is-locked .ndc-lib-go{color:var(--nd-muted);}

/* Lesson progress strip (under the top bar) */
.ndc-prog{position:sticky;top:calc(var(--wp-admin--admin-bar--height,0px) + var(--nd-bar-h));z-index:49;display:flex;align-items:center;gap:8px;padding:7px 12px;background:#F4F2EC;border-bottom:1px solid var(--nd-line);font-family:var(--nd-body);transition:transform .2s,opacity .2s;}
.ndc-prog[hidden]{display:none!important;}
.ndc-prog.is-away{opacity:0;pointer-events:none;transform:translateY(-8px);}
.ndc-prog-mid{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;}
.ndc-prog-title{font:700 13.5px/1.25 var(--nd-body);color:var(--nd-navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.ndc-prog-track{height:6px;border-radius:3px;background:#D9D4C7;overflow:hidden;}
.ndc-prog-fill{display:block;height:100%;width:0;background:var(--nd-coral);border-radius:3px;transition:width .3s;}
.ndc-prog-count{font:700 13px/1 var(--nd-body);color:var(--nd-navy);white-space:nowrap;font-variant-numeric:tabular-nums;}
html body .ndc-prog-ic{flex-shrink:0;display:inline-flex!important;align-items:center;justify-content:center;width:38px;height:38px;padding:0!important;border-radius:10px;border:1.5px solid var(--nd-navy);background:#fff;color:var(--nd-navy);font:700 14px/1 var(--nd-body);cursor:pointer;}
html body .ndc-prog-ic:disabled{opacity:.35;cursor:default;}
.ndc-prog.is-big .ndc-prog-aa{background:var(--nd-navy);color:var(--nd-gold);}
#ndc-frame.is-auto,#ndc-quiz-frame.is-auto{min-height:0;}
@media (max-width:600px){.admin-bar .ndc-prog{top:var(--nd-bar-h);}}

/* The theme sets nowrap and its own colors on every button; ours wrap and keep their colors. */
html body .ndd-tab,html body .ndd-btn,html body .ndd-opt,html body button.ndd-front,html body .ndc-prog-ic,html body .ndm-print,html body .ndm-btn,html body .ndc-btn,html body .ndc-pill{white-space:normal;text-transform:none;letter-spacing:normal;}

/* Rebuilt lessons (CRNA Dojo format) and the quiz screen */
.ndc-v2 #ndc-frame{background:#F4F2EC;}
.ndc-v2 .ndc-extras-head{margin-bottom:-12px;}
.ndc-quizpage{padding:24px 16px 64px;background:var(--nd-ground);}
.ndc-quizpage .ndc-wrap{max-width:900px;gap:24px;}
.ndc-quizpage .ndc-next{border-top:0;padding-top:0;}
/* Rebuilt lessons: the lesson page is exactly one screen, so the page and the lesson never scroll against each other */
html:has(body.ndc-oneview){overflow:hidden;height:100%;}
body.ndc-oneview{overflow:hidden;height:100%;overscroll-behavior:none;}
.ndc-oneview .ndc-stage{position:fixed;left:0;right:0;bottom:0;top:calc(var(--wp-admin--admin-bar--height,0px) + var(--nd-bar-h));}
.ndc-oneview #ndc-frame{height:100%;}
.ndc-bar-cta{min-height:36px!important;padding:0 12px!important;font-size:13px!important;white-space:nowrap;}
.ndc-toolspage .ndc-extras-head{margin-bottom:0;}
.ndc-toolspage .ndc-extras-head .ndc-btns{margin-top:12px;}
.ndc-toolspage .ndc-block{scroll-margin-top:calc(var(--wp-admin--admin-bar--height,0px) + var(--nd-bar-h) + 16px);}
