/* Nurse Dojo SEO Pages */
.ndseo{
  --nd-navy:#1E2D50; --nd-coral:#FF6B4A; --nd-sky:#00A8E8; --nd-gold:#F5C542;
  --nd-ink:#1a2238; --nd-body:#2b3552; --nd-line:#d6dbe7; --nd-soft:#f3f5fa;
  --nd-ok:#0f7a4a; --nd-ok-bg:#e7f6ee; --nd-bad:#b42318; --nd-bad-bg:#fdecea;
  font-family:'Outfit',system-ui,-apple-system,sans-serif; color:var(--nd-body);
  font-size:17px; line-height:1.6; max-width:820px; margin:0 auto;
}
.ndseo *{box-sizing:border-box}
.ndseo [hidden]{display:none !important}
.ndseo h2{font-family:'Bebas Neue','Outfit',sans-serif; font-weight:400; letter-spacing:.02em;
  color:var(--nd-navy); font-size:32px; line-height:1.1; margin:36px 0 12px; border-left:6px solid var(--nd-coral); padding-left:12px}
.ndseo p{margin:0 0 14px}
.ndseo ul,.ndseo ol{margin:0 0 16px; padding-left:22px}
.ndseo li{margin:4px 0}
.ndseo a{color:#0066a6; text-decoration:underline; text-underline-offset:2px}
.ndseo a:hover{color:var(--nd-navy)}
.ndseo strong{color:var(--nd-ink)}
.ndseo-lead{font-size:19px; color:var(--nd-ink)}
.ndseo-small{font-size:14px; color:#44506e}

.ndseo-note{background:var(--nd-soft); border:1px solid var(--nd-line); border-radius:12px; padding:14px 16px; margin:18px 0}
.ndseo-note ul{margin:6px 0 0}

.ndseo-table{width:100%; border-collapse:collapse; margin:8px 0 16px; font-size:16px}
.ndseo-table th,.ndseo-table td{border:1px solid var(--nd-line); padding:9px 12px; text-align:left; vertical-align:top}
.ndseo-table thead th{background:var(--nd-navy); color:#fff; font-weight:600}
.ndseo-table tbody tr:nth-child(even) td{background:#f8f9fc}
.ndseo-table td:first-child{font-weight:500; color:var(--nd-ink)}

.ndseo-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:14px; margin:18px 0}
.ndseo .ndseo-card{display:flex; flex-direction:column; gap:6px; padding:16px; border-radius:14px; background:#fff;
  border:2px solid var(--nd-line); text-decoration:none; color:var(--nd-body); transition:border-color .15s, transform .15s}
.ndseo .ndseo-card:hover{border-color:var(--nd-sky); transform:translateY(-2px); color:var(--nd-body)}
.ndseo-card-t{font-family:'Bebas Neue','Outfit',sans-serif; font-size:24px; color:var(--nd-navy); line-height:1.1}
.ndseo-links li{margin:8px 0}

/* Buttons */
.ndseo .ndseo-btn{display:inline-block; border:0; border-radius:10px; padding:11px 18px; font:600 16px 'Outfit',sans-serif;
  background:var(--nd-navy); color:#fff; cursor:pointer; text-decoration:none; line-height:1.2}
.ndseo .ndseo-btn:hover{background:#2c4176; color:#fff}
.ndseo .ndseo-btn:focus-visible{outline:3px solid var(--nd-sky); outline-offset:2px}
.ndseo .ndseo-btn-gold{background:var(--nd-gold); color:var(--nd-navy)}
.ndseo .ndseo-btn-gold:hover{background:#ffd666; color:var(--nd-navy)}
.ndseo .ndseo-btn-light{background:#fff; color:var(--nd-navy)}
.ndseo .ndseo-btn-light:hover{background:#eef3ff; color:var(--nd-navy)}

/* Quiz */
.ndseo-quiz{margin:18px 0}
.ndseo-score{position:sticky; top:8px; z-index:5; background:var(--nd-navy); color:#fff; border-radius:10px; padding:8px 14px;
  font-weight:600; display:inline-block; margin-bottom:12px}
.ndseo-q{border:1px solid var(--nd-line); border-radius:14px; padding:16px; margin:0 0 16px; background:#fff}
.ndseo-q-meta{display:flex; flex-wrap:wrap; gap:8px; justify-content:space-between; font-size:14px; margin-bottom:6px}
.ndseo-q-num{font-weight:700; color:var(--nd-coral); text-transform:uppercase; letter-spacing:.04em}
.ndseo-q-cat{color:#3b4668; font-weight:500}
.ndseo-q-stem{font-weight:600; color:var(--nd-ink); font-size:17px}
.ndseo-opts{display:flex; flex-direction:column; gap:8px; margin:10px 0 14px}
.ndseo-opt{display:flex; gap:10px; align-items:flex-start; padding:10px 12px; border:2px solid var(--nd-line); border-radius:10px;
  cursor:pointer; background:#fff; color:var(--nd-body)}
.ndseo-opt:hover{border-color:var(--nd-sky)}
.ndseo-opt input{margin-top:5px; flex:none; width:18px; height:18px; accent-color:var(--nd-navy)}
.ndseo-opt.is-correct{border-color:var(--nd-ok); background:var(--nd-ok-bg)}
.ndseo-opt.is-wrong{border-color:var(--nd-bad); background:var(--nd-bad-bg)}
.ndseo-q.is-done .ndseo-opt{cursor:default}
.ndseo-rat{border-top:1px dashed var(--nd-line); margin-top:12px; padding-top:12px}
.ndseo-verdict{font-weight:700}
.ndseo-verdict.ok{color:var(--nd-ok)}
.ndseo-verdict.bad{color:var(--nd-bad)}

/* QOTD */
.ndseo-qotd-head{display:flex; flex-wrap:wrap; gap:10px; justify-content:space-between; align-items:center;
  background:var(--nd-navy); color:#fff; border-radius:12px; padding:10px 14px; margin-top:12px}
.ndseo-qotd-head strong{color:var(--nd-gold)}
.ndseo-qotd .ndseo-quiz{margin-top:12px}

/* Planner */
.ndseo-planner{background:var(--nd-soft); border:1px solid var(--nd-line); border-radius:14px; padding:16px; margin:18px 0;
  display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:12px; align-items:end}
.ndseo-field label{display:block; font-weight:600; color:var(--nd-ink); font-size:15px; margin-bottom:4px}
.ndseo-field input,.ndseo-field select{width:100%; padding:10px; border:1px solid #aab3c8; border-radius:8px; font:16px 'Outfit',sans-serif; background:#fff; color:var(--nd-ink)}
.ndseo-plan-out{grid-column:1/-1}
.ndseo-plan-out:empty{display:none}
.ndseo-plan-sum{font-weight:600; color:var(--nd-ink)}
.ndseo-plan-week{background:#fff; border:1px solid var(--nd-line); border-left:5px solid var(--nd-sky); border-radius:10px; padding:10px 14px; margin:8px 0}
.ndseo-plan-week b{color:var(--nd-navy)}
.ndseo-plan-warn{color:var(--nd-bad); font-weight:600}
.ndseo-weeks li{margin:8px 0}

/* CTA */
.ndseo-cta{background:var(--nd-navy); color:#fff; border-radius:16px; padding:22px; margin:32px 0; border-bottom:6px solid var(--nd-coral)}
.ndseo-cta p{color:#e8ecf6}
.ndseo-cta-t{font-family:'Bebas Neue','Outfit',sans-serif; font-size:30px; line-height:1.1; color:var(--nd-gold) !important; margin-bottom:8px}
.ndseo-cta-btns{display:flex; flex-wrap:wrap; gap:10px}

/* FAQ */
.ndseo-faq details{border:1px solid var(--nd-line); border-radius:10px; padding:10px 14px; margin:8px 0; background:#fff}
.ndseo-faq summary{font-weight:600; color:var(--nd-ink); cursor:pointer}
.ndseo-faq details p{margin:8px 0 0}

/* Related */
.ndseo-related{border-top:2px solid var(--nd-line); margin-top:28px; padding-top:16px}
.ndseo-related-t{font-family:'Bebas Neue','Outfit',sans-serif; font-size:24px; color:var(--nd-navy); margin-bottom:6px}
.ndseo-related ul{columns:2; column-gap:24px}
@media (max-width:600px){
  .ndseo{font-size:16px}
  .ndseo h2{font-size:28px}
  .ndseo-related ul{columns:1}
  .ndseo-table{font-size:15px}
  .ndseo-table th,.ndseo-table td{padding:8px}
}

@media print{
  .ndseo-cta,.ndseo-related,.ndseo-faq,.ndseo-print,.ndseo-btn{display:none !important}
  .ndseo h2{break-after:avoid}
  .ndseo-table{break-inside:avoid}
}

/* v1.2 trust + optin */
.ndseo-byline{display:flex; align-items:center; gap:10px; font-size:15px; color:#3b4668; margin:0 0 14px}
.ndseo-byline img{width:40px; height:40px; border-radius:50%; object-fit:cover}
.ndseo-author{display:flex; gap:16px; align-items:flex-start; border:1px solid var(--nd-line); border-radius:14px; padding:16px; margin:28px 0 0; background:#fff}
.ndseo-author img{width:96px; height:96px; border-radius:50%; object-fit:cover; flex:none}
.ndseo-author > div{min-width:0}
.ndseo-author-t{font-family:'Bebas Neue','Outfit',sans-serif; font-size:26px; color:var(--nd-navy); margin:0 0 6px}
.ndseo .ndseo-creds{display:flex; flex-wrap:wrap; gap:6px; list-style:none; padding:0; margin:0 0 12px}
.ndseo-creds li{background:#eef2fb; color:var(--nd-navy); font-weight:600; font-size:14px; padding:4px 10px; border-radius:999px; margin:0}
.ndseo-quote{margin:16px 0 0; padding:14px 16px; border-left:5px solid var(--nd-gold); background:#fffaf0; border-radius:0 12px 12px 0}
.ndseo-quote p{margin:0 0 6px; font-size:17px; color:var(--nd-ink)}
.ndseo-quote cite{font-style:normal; font-weight:600; color:#3b4668; font-size:15px}
.ndseo-optin{background:var(--nd-navy); color:#fff; border-radius:16px; padding:20px; margin:28px 0; border-bottom:6px solid var(--nd-gold)}
.ndseo-optin p{color:#e8ecf6}
.ndseo-optin-t{font-family:'Bebas Neue','Outfit',sans-serif; font-size:30px; line-height:1.1; color:var(--nd-gold) !important; margin:0 0 6px}
.ndseo-optin-row{display:flex; flex-wrap:wrap; gap:10px}
.ndseo-optin input[type=text],.ndseo-optin input[type=email]{flex:1 1 180px; min-width:0; padding:12px; border-radius:10px; border:0; font:16px 'Outfit',sans-serif; color:#1a2238; background:#fff}
.ndseo-optin-msg{margin:10px 0 0; font-weight:600}
.ndseo-optin-msg.ok{color:#9ff0c4}
.ndseo-optin-msg.bad{color:#ffc2b8}
.ndseo-hp{position:absolute !important; left:-9999px !important; width:1px; height:1px; opacity:0}
.ndseo-sr{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap}
@media (max-width:600px){.ndseo-author{flex-direction:column}}
@media print{.ndseo-optin,.ndseo-author,.ndseo-quote,.ndseo-byline img{display:none !important}}

/* v1.3 free layer */
.ndseo-wide{max-width:1100px}
.ndseo-games{display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:16px; margin:18px 0}
.ndseo .ndseo-game{display:flex; flex-direction:column; gap:6px; background:#fff; border:2px solid var(--nd-line); border-radius:16px; overflow:hidden; text-decoration:none; color:var(--nd-body); padding:0 0 14px; transition:transform .15s,border-color .15s}
.ndseo .ndseo-game:hover{transform:translateY(-3px); border-color:var(--nd-sky); color:var(--nd-body)}
.ndseo-game img{width:100%; aspect-ratio:16/10; object-fit:cover; display:block; background:#e9edf6}
.ndseo-game-tag,.ndseo-game-t,.ndseo-game-d,.ndseo-game-go{padding:0 14px}
.ndseo-game-tag{font-size:13px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--nd-coral); margin-top:6px}
.ndseo-game-t{font-family:'Bebas Neue','Outfit',sans-serif; font-size:26px; line-height:1.05; color:var(--nd-navy)}
.ndseo-game-d{font-size:15px; line-height:1.45; flex:1}
.ndseo-game-go{font-weight:700; color:var(--nd-navy); margin-top:4px}
.ndseo-game-go::after{content:" \2192"}
.ndseo-player{margin:10px 0 24px}
.ndseo-player-bar{display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; background:var(--nd-navy); color:#fff; border-radius:14px 14px 0 0; padding:10px 14px}
.ndseo .ndseo-player-back{color:#fff; font-weight:600; text-decoration:none}
.ndseo-player-name{font-family:'Bebas Neue','Outfit',sans-serif; font-size:24px; letter-spacing:.02em; color:var(--nd-gold); flex:1; min-width:0}
.ndseo-player-meter{background:rgba(255,255,255,.14); border-radius:999px; padding:5px 12px; font-weight:700; font-size:14px; font-variant-numeric:tabular-nums}
.ndseo-player-stage{position:relative; border:2px solid var(--nd-navy); border-top:0; border-radius:0 0 14px 14px; overflow:hidden; background:#0f1526}
.ndseo-player-stage iframe{display:block; width:100%; height:min(82vh,860px); min-height:560px; border:0; background:#fff}
.ndseo-player-lock{position:absolute; inset:0; background:rgba(15,21,38,.82); backdrop-filter:blur(4px); display:flex; align-items:center; justify-content:center; padding:16px; z-index:5}
.ndseo-player.is-locked iframe{pointer-events:none; filter:blur(2px)}
.ndseo-upgrade{background:#fff; color:var(--nd-body); border-radius:16px; padding:22px; max-width:520px; width:100%; border-top:6px solid var(--nd-gold); box-shadow:0 20px 50px rgba(0,0,0,.25); font-family:'Outfit',system-ui,sans-serif}
.ndseo-upgrade-t{font-family:'Bebas Neue','Outfit',sans-serif; font-size:32px; line-height:1.05; color:var(--nd-navy); margin:0 0 8px}
.ndseo-upgrade p{margin:0 0 12px; font-size:16px; line-height:1.5}
.ndseo-upgrade-btns{display:flex; flex-wrap:wrap; gap:10px; margin:6px 0 10px}
.ndseo .ndseo-upgrade .ndseo-btn-light{border:2px solid var(--nd-navy)}
.ndseo-upgrade-small{font-size:14px !important; color:#44506e}
.ndseo-upgrade-try a{font-weight:600}
@media (max-width:600px){.ndseo-player-stage iframe{min-height:520px}}
/* Phones: arcade sample opens full screen so the whole game window is visible */
@media (max-width:700px){
html.ndseo-fs, html.ndseo-fs body{overflow:hidden !important; height:100% !important}
.ndseo-player[data-kind="arcade"]{position:fixed; top:0; left:0; right:0; bottom:0; z-index:2147483000; margin:0; display:flex; flex-direction:column; background:#0f1526}
.ndseo-player[data-kind="arcade"] .ndseo-player-bar{flex:0 0 auto; flex-wrap:nowrap; border-radius:0; gap:8px; padding:calc(8px + env(safe-area-inset-top)) 12px 8px}
.ndseo-player[data-kind="arcade"] .ndseo-player-back{white-space:nowrap; font-size:15px}
.ndseo-player[data-kind="arcade"] .ndseo-player-name{font-size:20px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis}
.ndseo-player[data-kind="arcade"] .ndseo-player-meter{font-size:12px; padding:4px 9px; white-space:nowrap}
.ndseo-player[data-kind="arcade"] .ndseo-player-stage{flex:1 1 auto; min-height:0; border:0; border-radius:0}
.ndseo-player[data-kind="arcade"] .ndseo-player-stage iframe{height:100% !important; min-height:0 !important}
.ndseo-player[data-kind="arcade"] .ndseo-player-lock{overflow-y:auto; align-items:flex-start}
.ndseo-player[data-kind="arcade"] .ndseo-upgrade{margin:auto 0}
}

/* Show page title (theme hides it site-wide) */
body.ndseo-page .entry-header{display:block !important; height:auto !important}
body.ndseo-page h1.entry-title{display:block !important; font-family:'Bebas Neue','Arial Narrow',Impact,sans-serif; font-weight:400; font-size:clamp(36px,6vw,52px); line-height:1.02; letter-spacing:.01em; color:#1E2D50; max-width:820px; margin:8px auto 10px; padding:0; text-align:left}
.ndseo-course-card{margin:20px 0}
.ndseo-course-card .ndseo-upgrade{max-width:none; box-shadow:0 6px 24px rgba(30,45,80,.12)}
