/* Nursing Admission Readiness Calculator: every rule is scoped to .nrc so it won't affect your theme. */
.nrc{
  --nrc-paper:#F6F8FA; --nrc-surface:#FFFFFF; --nrc-ink:#15233B; --nrc-muted:#56637A; --nrc-rule:#DCE3EA;
  --nrc-teal:#0F7B83; --nrc-teal-soft:#E3F2F3; --nrc-chip:#EEF2F6; --nrc-focus:#0F7B83;
  --nrc-good:#2F7D57; --nrc-good-soft:#E6F3EC; --nrc-warn:#9A6210; --nrc-warn-soft:#FBF1E0; --nrc-bad:#B4233A; --nrc-bad-soft:#FBE9EC;
  box-sizing:border-box; width:100%; max-width:var(--nrc-max,none); margin:0 auto 2rem; padding:clamp(1.25rem,4vw,2.5rem);
  background:var(--nrc-paper); color:var(--nrc-ink); border-radius:1rem; font-family:var(--nrc-body); font-size:1.0625rem; line-height:1.6; text-align:left;
}
.nrc:not(.nrc-theme-fonts){
  --nrc-body:"Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --nrc-display:"Bricolage Grotesque","Atkinson Hyperlegible",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
.nrc.nrc-theme-fonts{font-family:inherit}
.nrc *,.nrc *::before,.nrc *::after{box-sizing:border-box}
.nrc h2,.nrc h3,.nrc h4,.nrc p,.nrc ol,.nrc ul,.nrc li,.nrc fieldset,.nrc legend,.nrc table{margin:0;padding:0;border:0;background:none}
.nrc h2,.nrc h3,.nrc h4{line-height:1.2}
.nrc:not(.nrc-theme-fonts) h2,.nrc:not(.nrc-theme-fonts) h3,.nrc:not(.nrc-theme-fonts) h4{font-family:var(--nrc-display);color:var(--nrc-ink);text-transform:none;letter-spacing:normal}
.nrc a{color:var(--nrc-teal);text-decoration:underline;text-underline-offset:2px}
.nrc a:focus-visible,.nrc button:focus-visible,.nrc select:focus-visible,.nrc input:focus-visible{outline:3px solid var(--nrc-focus);outline-offset:2px}

.nrc .nrc-title{font-size:clamp(1.6rem,3.4vw,2.3rem);width:100%;text-align:left;text-wrap:balance}
.nrc:not(.nrc-theme-fonts) .nrc-title{font-weight:750;letter-spacing:-.015em}
.nrc .nrc-lede{color:var(--nrc-muted);max-width:48rem;margin-top:.75rem}

.nrc .nrc-bar{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1rem;align-items:center;margin-top:1.5rem;padding:.65rem .9rem;border-radius:.6rem;background:var(--nrc-teal-soft);font-size:.92rem}
.nrc .nrc-bar-btns{display:flex;gap:1rem}
.nrc .nrc-link{-webkit-appearance:none;appearance:none;font:inherit;font-size:.92rem;background:none;border:0;padding:0;margin:0;color:var(--nrc-teal);text-decoration:underline;text-underline-offset:2px;cursor:pointer;box-shadow:none;width:auto;text-transform:none;letter-spacing:normal}

/* Sections */
.nrc .nrc-sec{margin-top:2rem;padding-top:1.75rem;border-top:1px solid var(--nrc-rule)}
.nrc .nrc-h{display:flex;gap:.65rem;align-items:center;font-size:1.3rem;margin-bottom:.5rem}
.nrc:not(.nrc-theme-fonts) .nrc-h{font-weight:600}
.nrc .nrc-n{display:inline-grid;place-items:center;flex:none;width:1.8rem;height:1.8rem;border-radius:50%;background:var(--nrc-ink);color:var(--nrc-paper);font-size:.95rem;font-weight:700;font-family:var(--nrc-body)}
.nrc .nrc-help{color:var(--nrc-muted);max-width:46rem;margin-bottom:1rem}
.nrc .nrc-tiny{font-size:.87rem;color:var(--nrc-muted);margin-top:.4rem}
.nrc .nrc-row{display:flex;flex-wrap:wrap;gap:1rem 1.25rem;align-items:flex-end;margin-bottom:1rem}
.nrc .nrc-row-top{align-items:flex-start;margin-top:1.4rem;margin-bottom:0}
.nrc .nrc-f{display:flex;flex-direction:column;min-width:0}
.nrc .nrc-row > .nrc-f{flex:1 1 13rem;max-width:20rem}
.nrc .nrc-row > .nrc-f-wide{max-width:26rem;flex-basis:20rem}
.nrc .nrc-row > .nrc-f-btn{flex:0 0 auto}
.nrc .nrc-label{display:block;font-size:.86rem;color:var(--nrc-muted);margin:0 0 .3rem;font-weight:400;padding:0}
.nrc .nrc-in{width:100%;max-width:none;height:2.75rem;font:inherit;font-size:.98rem;line-height:1.4;padding:.5rem .65rem;border-radius:.45rem;border:2px solid var(--nrc-rule);background-color:var(--nrc-surface);color:var(--nrc-ink);box-shadow:none;margin:0}
.nrc .nrc-in:focus{border-color:var(--nrc-teal)}

/* Course rows */
.nrc .nrc-courses{display:grid;gap:.5rem}
.nrc .nrc-crow{display:grid;grid-template-columns:minmax(9rem,1.7fr) minmax(7.5rem,1fr) 4rem minmax(7.5rem,1fr) minmax(9.5rem,1.25fr) auto;gap:.6rem;align-items:end;padding:.65rem .75rem;border-radius:.6rem;background:var(--nrc-surface);border:1px solid var(--nrc-rule)}
.nrc .nrc-crow + .nrc-crow .nrc-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.nrc .nrc-f-del{align-self:center}
.nrc .nrc-crow + .nrc-crow .nrc-f-del{align-self:end;padding-bottom:.35rem}
.nrc .nrc-crow:first-child .nrc-f-del{align-self:end;padding-bottom:.35rem}
.nrc .nrc-del{-webkit-appearance:none;appearance:none;font:inherit;font-size:.85rem;background:none;border:0;padding:.2rem 0;margin:0;color:var(--nrc-muted);text-decoration:underline;cursor:pointer;box-shadow:none;width:auto;text-transform:none;letter-spacing:normal}
.nrc .nrc-del:hover{color:var(--nrc-bad)}

/* Buttons */
.nrc .nrc-btn{-webkit-appearance:none;appearance:none;font:inherit;font-size:.96rem;line-height:1.3;text-transform:none;letter-spacing:normal;cursor:pointer;border-radius:.5rem;padding:.55rem 1rem;border:2px solid var(--nrc-ink);background:transparent;color:var(--nrc-ink);box-shadow:none;margin:0;width:auto}
.nrc .nrc-btn:hover{background:var(--nrc-chip)}
.nrc .nrc-btn-solid{background:var(--nrc-ink);color:var(--nrc-paper)}
.nrc .nrc-btn-solid:hover{background:var(--nrc-teal);border-color:var(--nrc-teal);color:#fff}
.nrc .nrc-actions{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:.9rem}

/* Exam and experience */
.nrc .nrc-fs{margin-top:1rem}
.nrc .nrc-checks{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;margin-top:.2rem}
.nrc .nrc-check{display:flex;gap:.5rem;align-items:center;font-size:.97rem;margin:0;font-weight:400;cursor:pointer}
.nrc .nrc-check input{width:1.1rem;height:1.1rem;margin:0;accent-color:var(--nrc-teal)}

/* Programs */
.nrc .nrc-prog{background:var(--nrc-surface);border:1px solid var(--nrc-rule);border-radius:.8rem;padding:1rem 1.1rem;margin-bottom:.8rem}
.nrc .nrc-prog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}
.nrc .nrc-prog-head h4{font-family:var(--nrc-body);font-size:1rem;font-weight:700;color:var(--nrc-ink);text-transform:none;letter-spacing:normal}
.nrc .nrc-pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(13rem,1fr));gap:.8rem 1rem;align-items:end}

/* Results */
.nrc .nrc-empty{border:2px dashed var(--nrc-rule);border-radius:.75rem;padding:1.3rem;color:var(--nrc-muted)}
.nrc .nrc-gauges{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;margin-top:.6rem}
.nrc .nrc-gauge{background:var(--nrc-surface);border:1px solid var(--nrc-rule);border-radius:.8rem;padding:1rem 1.1rem}
.nrc .nrc-g-top{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}
.nrc .nrc-g-label{font-size:.95rem;color:var(--nrc-muted)}
.nrc .nrc-g-val{font-size:2rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1}
.nrc .nrc-g-track{position:relative;height:.7rem;border-radius:1rem;background:var(--nrc-chip);margin-top:.9rem}
.nrc .nrc-g-fill{position:absolute;left:0;top:0;bottom:0;border-radius:1rem;background:var(--nrc-teal)}
.nrc .nrc-g-mark{position:absolute;top:-.35rem;bottom:-.35rem;width:3px;margin-left:-1.5px;background:var(--nrc-ink);border-radius:2px;z-index:1}
.nrc .nrc-g-ticks{display:flex;justify-content:space-between;font-size:.75rem;color:var(--nrc-muted);margin-top:.35rem;font-variant-numeric:tabular-nums}
.nrc .nrc-g-legend{display:flex;flex-direction:column;gap:.15rem;margin-top:.5rem;font-size:.84rem;color:var(--nrc-muted)}
.nrc .nrc-g-key{display:inline-block;width:3px;height:.8rem;background:var(--nrc-ink);border-radius:2px;margin-right:.45rem;vertical-align:-1px}
.nrc .nrc-alt{margin-top:1.1rem;padding:.9rem 1rem;border-radius:.7rem;background:var(--nrc-warn-soft)}
.nrc .nrc-alt-title{font-weight:700;font-size:.97rem;margin-bottom:.5rem}
.nrc .nrc-table{width:100%;border-collapse:collapse;font-size:.93rem;font-variant-numeric:tabular-nums}
.nrc .nrc-table th,.nrc .nrc-table td{text-align:left;padding:.35rem .4rem;border:0;border-bottom:1px solid rgba(21,35,59,.12);background:none}
.nrc .nrc-table tr.is-cur td{font-weight:700}
.nrc .nrc-h4{font-family:var(--nrc-body);font-size:1.08rem;font-weight:700;margin:1.6rem 0 .6rem;color:var(--nrc-ink);text-transform:none;letter-spacing:normal}
.nrc .nrc-pres{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1rem}
.nrc .nrc-pcard{background:var(--nrc-surface);border:1px solid var(--nrc-rule);border-top:5px solid var(--nrc-muted);border-radius:.8rem;padding:1rem 1.1rem}
.nrc .nrc-pcard.is-ok{border-top-color:var(--nrc-good)}
.nrc .nrc-pcard.is-low{border-top-color:var(--nrc-bad)}
.nrc .nrc-pcard.is-part{border-top-color:var(--nrc-warn)}
.nrc .nrc-pname{font-weight:700;font-size:1.05rem}
.nrc .nrc-phead{color:var(--nrc-muted);font-size:.95rem;margin-bottom:.6rem}
.nrc .nrc-checklist{list-style:none;display:grid;gap:.45rem}
.nrc .nrc-checklist li{display:flex;gap:.6rem;font-size:.93rem;list-style:none}
.nrc .nrc-ico{display:inline-grid;place-items:center;flex:none;width:1.35rem;height:1.35rem;border-radius:50%;font-size:.8rem;font-weight:700;margin-top:.1rem}
.nrc .is-ok .nrc-ico{background:var(--nrc-good-soft);color:var(--nrc-good)}
.nrc .is-low .nrc-ico{background:var(--nrc-bad-soft);color:var(--nrc-bad)}
.nrc .is-missing .nrc-ico{background:var(--nrc-chip);color:var(--nrc-muted)}
.nrc .nrc-avg{margin-top:.7rem;padding-top:.6rem;border-top:1px solid var(--nrc-rule);font-size:.92rem}
.nrc .nrc-plan{padding-left:1.4rem;display:grid;gap:.55rem;max-width:50rem}
.nrc .nrc-plan li{list-style:decimal;padding-left:.2rem}
.nrc .nrc-plan li.nrc-plan-must::marker{color:var(--nrc-bad);font-weight:700}
.nrc .nrc-note{font-size:.93rem;color:var(--nrc-muted);margin-top:1rem;max-width:50rem}
.nrc .nrc-related{margin-top:1.6rem;font-size:.95rem}
.nrc .nrc-disclaimer{font-size:.86rem;color:var(--nrc-muted);border-top:1px solid var(--nrc-rule);margin-top:1.6rem;padding-top:1.1rem}

@media (max-width:760px){
  .nrc .nrc-crow{grid-template-columns:1fr 1fr;padding:.8rem}
  .nrc .nrc-crow .nrc-f-name{grid-column:1 / -1}
  .nrc .nrc-crow + .nrc-crow .nrc-label{position:static;width:auto;height:auto;overflow:visible;clip:auto;white-space:normal}
  .nrc .nrc-f-del{grid-column:1 / -1;align-self:start}
  .nrc .nrc-crow + .nrc-crow .nrc-f-del,.nrc .nrc-crow:first-child .nrc-f-del{padding-bottom:0}
}

/* How to use this tool */
.nrc .nrc-howto{margin-top:1.25rem;max-width:44rem;background:var(--nrc-surface);border:1px solid var(--nrc-rule);border-left:4px solid var(--nrc-teal);border-radius:.6rem;padding:0}
.nrc .nrc-howto-sum{cursor:pointer;list-style:none;display:flex;align-items:center;gap:.55rem;padding:.7rem 1rem;font-weight:700;color:var(--nrc-ink)}
.nrc .nrc-howto-sum::-webkit-details-marker{display:none}
.nrc .nrc-howto-sum::before{content:"+";display:inline-grid;place-items:center;width:1.45rem;height:1.45rem;border-radius:50%;background:var(--nrc-teal);color:#fff;font-size:1.05rem;line-height:1;flex:none}
.nrc details[open] > .nrc-howto-sum::before{content:"\2212"}
.nrc .nrc-howto-sum:focus-visible{outline:3px solid var(--nrc-teal);outline-offset:2px}
.nrc .nrc-howto-body{padding:0 1.1rem 1rem 1.1rem;font-size:1.05rem;line-height:1.55}
.nrc .nrc-howto-body p{margin:0 0 .5rem}
.nrc .nrc-howto-what{color:var(--nrc-muted)}
.nrc .nrc-howto-body ol{margin:0 0 .6rem;padding-left:1.6rem}
.nrc .nrc-howto-body li{list-style:decimal;margin:.35rem 0;padding-left:.2rem}
.nrc .nrc-howto-body li::marker{font-weight:700;color:var(--nrc-teal)}
.nrc .nrc-howto-tips{margin-top:.6rem !important;padding-top:.6rem;border-top:1px solid var(--nrc-rule)}
.nrc .nrc-howto-sub{margin-top:.6rem !important}
