.pn-lab{--pn-ink:#163348;--pn-blue:#267da5;--pn-mint:#19a99a;--pn-coral:#e46e72;--pn-line:#cce0e7;color:var(--pn-ink);background:#f6fbfd;border:1px solid var(--pn-line);border-radius:24px;overflow:hidden;margin:16px 0;font-size:16px;line-height:1.6;isolation:isolate}.pn-lab *{box-sizing:border-box}.pn-lab button,.pn-lab input,.pn-lab select{font:inherit}.pn-lab button{cursor:pointer;color:inherit}.pn-lab button:focus-visible,.pn-lab input:focus-visible,.pn-lab select:focus-visible,.pn-lab summary:focus-visible{outline:3px solid #d67525;outline-offset:3px}.pn-lab-top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;background:#e8f5f7;font-size:11px;font-weight:800;letter-spacing:.08em}.pn-lab-top button{border:0;background:transparent;font-size:12px;letter-spacing:0;text-decoration:underline}.pn-stage-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:14px;gap:8px}.pn-stage-tabs button{border:1px solid var(--pn-line);border-radius:14px;background:white;padding:12px 8px;font-size:13px;line-height:1.3;font-weight:750;overflow-wrap:anywhere}.pn-stage-tabs button span{display:block;font-size:11px;margin-bottom:5px;opacity:.7}.pn-stage-tabs button[aria-pressed=true]{background:#17475c;color:white;border-color:#17475c;box-shadow:0 4px 12px #173c4920}.pn-scene{padding:12px 22px 22px;background:linear-gradient(145deg,#fdfefe,#eaf6f7)}.pn-svg{display:block;width:min(100%,520px);height:auto;max-height:360px;margin:12px auto}.pn-svg text{font:700 10px system-ui,sans-serif;text-anchor:middle;fill:#36576a;letter-spacing:.04em}.pn-svg text.pn-svg-label{font-size:12px}.pn-modes{display:flex;flex-wrap:wrap;justify-content:center;gap:7px}.pn-modes button{padding:8px 13px;border-radius:30px;border:1px solid #bdd8e0;background:white;font-size:12px;font-weight:700}.pn-modes button[aria-pressed=true]{background:#d4f2ed;border-color:#168a7d;color:#0e5c54}.pn-stage-explanation{padding:22px 26px;border-top:1px solid #d6e7ed;background:#fff}.pn-stage-explanation h3{margin:0 0 10px;font-size:21px;color:#173b4d}.pn-stage-explanation p{margin:0;white-space:pre-line;font-size:16px;line-height:1.75;color:#334e60}.pn-lab-status,.pn-readout{padding:15px 18px;border-left:4px solid #1aa38f;background:#e5f5f0;border-radius:4px 12px 12px 4px;font-size:14px;margin:14px 0 0;min-height:68px;color:#244b4e}.pn-scene-note{font-size:12px;color:#576f7d;margin:12px 0 0;line-height:1.5}.pn-concepts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 22px 16px;background:white}.pn-concepts details{border:1px solid #d6e7ed;border-radius:12px;padding:12px;font-size:13px;background:#f8fcfd}.pn-concepts summary{cursor:pointer;font-weight:750}.pn-concepts p{margin:9px 0 0}.pn-visited{margin:0;padding:11px 22px;border-top:1px solid #d6e7ed;font-size:12px;font-weight:750;text-align:right}.pn-lung{fill:#f8b3b7;stroke:#b95268;stroke-width:3;transform-origin:190px 160px;animation:pn-breathe 5s ease-in-out infinite}.pn-airway{stroke:#4f9db8;stroke-width:15;stroke-linecap:round;fill:none}.pn-target{fill:none;stroke:#ec9b27;stroke-width:6;opacity:0;stroke-dasharray:8 4}.pn-lab[data-mode="0"] .target-0,.pn-lab[data-mode="1"] .target-1,.pn-lab[data-mode="2"] .target-2{opacity:1}.pn-sac{fill:#dcf3fb;stroke:#d7838c;stroke-width:15}.pn-capillary{fill:none;stroke:#bd5a6f;stroke-width:24;stroke-linecap:round;stroke-dasharray:16 8;animation:pn-flow 4s linear infinite}.pn-oxygen{fill:#3f9ac5;animation:pn-drift 3s ease-in-out infinite;animation-delay:calc(var(--i)*-.27s)}.pn-gas-arrow{fill:none;stroke:#4a9dc0;stroke-width:9;stroke-dasharray:10 8;opacity:var(--vent,.5);animation:pn-flow 2s linear infinite}.pn-gas-grid .pn-capillary{opacity:calc(.1 + var(--perf,.5)*.9)}.pn-gas-grid .pn-oxygen{opacity:var(--vent,.5)}.pn-exudate{fill:#f3cf77;opacity:0;transition:opacity .6s}.pn-neutrophil{fill:#a179b6;stroke:#6e578e;stroke-width:2;opacity:0;animation:pn-drift 4s ease-in-out infinite;animation-delay:calc(var(--i)*-.2s)}.pn-lab[data-mode="1"] .pn-exudate,.pn-lab[data-mode="1"] .pn-neutrophil{opacity:1}.pn-lab[data-mode="1"] .pn-alveolus .pn-oxygen{opacity:.15}.pn-lab[data-mode="2"] .pn-exudate{opacity:.2}.pn-lab[data-mode="2"] .pn-neutrophil{opacity:.3}.pn-atlas{font-size:13px;margin-top:15px}.pn-atlas summary{cursor:pointer;font-weight:700}.pn-atlas img{width:100%;height:auto;border-radius:15px;margin:14px 0 0}.pn-atlas p{font-size:12px}.pn-film{fill:#19374a}.pn-image .pn-lung{fill:#285167;stroke:#6c8c9a;animation:none}.pn-image .pn-airway{stroke:#8ba9b8;stroke-width:8}.pn-opacity,.pn-atelectasis,.pn-fluid,.pn-cavity,.pn-cavity-line{opacity:0;transition:opacity .4s}.pn-opacity{fill:#e0eaf0}.pn-atelectasis{fill:#c6d9e2}.pn-fluid{fill:#68b7d3}.pn-cavity{fill:#102d40;stroke:#e1e8e7;stroke-width:9}.pn-cavity-line{stroke:#7dbbd0;stroke-width:8}.pn-lab[data-family="cavity"] .pn-image,.pn-lab[data-family="imaging"] .pn-image{background:#102a3b;border-radius:18px}.pn-lab[data-mode="0"] .pn-opacity,.pn-lab[data-mode="1"] .pn-atelectasis,.pn-lab[data-mode="2"] .pn-fluid,.pn-lab[data-mode="3"] .pn-cavity,.pn-lab[data-mode="3"] .pn-cavity-line{opacity:1}.pn-probe{fill:#e7f2f5}.pn-pleural-line{stroke:#eefaff;stroke-width:7;animation:pn-slide 3s ease-in-out infinite}.pn-b-lines{stroke:#e9f8ff;stroke-width:12;opacity:0}.pn-us-tissue{fill:#7b9ca9;opacity:0}.pn-us-fluid{fill:#071620;stroke:#c7e6ef;stroke-width:2;opacity:0}.pn-lab[data-mode="1"] .pn-b-lines,.pn-lab[data-mode="2"] .pn-us-tissue,.pn-lab[data-mode="3"] .pn-us-fluid{opacity:1}.pn-ultrasound text{fill:white}.pn-tube{fill:#f2ddd8;stroke:#bb8190;stroke-width:9}.pn-mucus{fill:none;stroke:#7fc9c2;stroke-width:18}.pn-cilium{fill:none;stroke:#8c5d85;stroke-width:3;transform-box:fill-box;transform-origin:bottom;animation:pn-cilia 1.6s ease-in-out infinite;animation-delay:calc(var(--i)*-.06s)}.pn-microbe{fill:#9762a4;animation:pn-drift 3s ease-in-out infinite;animation-delay:calc(var(--i)*-.2s)}.pn-macrophage{fill:#b6a0d5;stroke:#79649d;stroke-width:4}.pn-flow,.pn-aspiration-flow{fill:none;stroke:#c78138;stroke-width:8;stroke-dasharray:10 9;animation:pn-flow 3s linear infinite}.pn-lab[data-family="defense"][data-mode="1"] .pn-cilium{animation-duration:7s}.pn-lab[data-family="defense"][data-mode="2"] .pn-microbe{r:9}.pn-cuff{fill:#b3d6df;stroke:#4d7e8a;stroke-width:4}.pn-et-tube{stroke:#f3efc6;stroke-width:16;fill:none}.pn-lab[data-family="ventilator"][data-mode="3"] .pn-et-tube,.pn-lab[data-family="ventilator"][data-mode="3"] .pn-cuff{opacity:.2}.pn-pleural-fluid{fill:#67b2d0;opacity:0;transition:opacity .4s}.pn-septa{stroke:#c8eaf2;stroke-width:4;opacity:0}.pn-drain{fill:none;stroke:#c98c37;stroke-width:7;opacity:0}.pn-lab[data-family="pleura"][data-mode="1"] .pn-pleural-fluid,.pn-lab[data-family="pleura"][data-mode="2"] .pn-pleural-fluid{opacity:.85}.pn-lab[data-family="pleura"][data-mode="2"] .pn-septa,.pn-lab[data-family="pleura"][data-mode="3"] .pn-drain{opacity:1}.pn-lab[data-family="pleura"][data-mode="3"] .pn-pleural-fluid{opacity:.25}.pn-specimen{display:flex;justify-content:center;align-items:center;gap:15px;min-height:230px;padding:20px 0}.pn-container{width:86px;height:130px;border:5px solid #609aaa;border-top:16px solid #3c778d;border-radius:12px;position:relative;display:flex;align-items:flex-end;justify-content:center;padding-bottom:8px;flex-shrink:0}.pn-container b{font-size:10px;z-index:1}.pn-sample{position:absolute;inset:44px 3px 3px;background:#dfc16d;border-radius:0 0 5px 5px}.pn-petri{width:145px;height:145px;border:8px solid #91b6bd;border-radius:50%;background:#e4bc9b;position:relative;flex-shrink:0}.pn-petri i{position:absolute;width:8px;height:8px;border-radius:50%;background:#8d669c;animation:pn-colony 4s ease-in-out infinite;animation-delay:calc(var(--i)*-.12s)}.pn-lab[data-family="lab"][data-mode="1"] .pn-petri i:nth-child(even){background:#4c8b86;width:13px;height:13px}.pn-lab[data-family="lab"][data-mode="2"] .pn-petri i:nth-child(n+5){opacity:.1}.pn-report{display:grid;gap:5px;padding:12px;background:white;border:1px solid #cadde3;transform:rotate(3deg);font-size:12px}.pn-report span{border-bottom:1px solid #deebef;padding:3px}.pn-lab-arrow{font-size:27px;color:#456b73}.pn-bacterium{fill:#e3d7ea;stroke:#9774ad;stroke-width:10}.pn-porin{stroke:#e8f9f8;stroke-width:15}.pn-drug{stroke:#329bb0;stroke-width:7;fill:none;stroke-dasharray:8 5;animation:pn-flow 3s linear infinite}.pn-target-site{fill:#e8b86f;stroke:#ab7b36;stroke-width:5}.pn-enzyme{fill:#dd7884;opacity:0}.pn-efflux{stroke:#9974b6;stroke-width:8;fill:none;opacity:0}.pn-lab[data-family="resistance"][data-mode="1"] .pn-target-site{stroke-dasharray:5 7;fill:#c59ecd}.pn-lab[data-family="resistance"][data-mode="2"] .pn-enzyme,.pn-lab[data-family="resistance"][data-mode="3"] .pn-efflux{opacity:1}.pn-lab[data-family="resistance"][data-mode="3"] .pn-porin{stroke-width:4}.pn-dna{stroke:#5293b1;stroke-width:6;fill:none}.pn-ribosome{fill:#b3798b}.pn-wall-target{stroke:#e8a233;stroke-width:12;fill:none;opacity:0}.pn-lab[data-family="therapy"][data-mode="0"] .pn-wall-target{opacity:1}.pn-lab[data-family="therapy"][data-mode="1"] .pn-ribosome{stroke:#e3a239;stroke-width:5}.pn-lab[data-family="therapy"][data-mode="2"] .pn-dna{stroke:#d28d25;stroke-width:10}.pn-pathogens,.pn-prevention{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:16px 0}.pn-pathogens button,.pn-prevention button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:122px;background:white;border:1px solid #c7dce5;border-radius:18px;padding:12px 8px;font-size:13px;font-weight:750;line-height:1.3}.pn-pathogens button[aria-pressed=true],.pn-prevention button[aria-pressed=true]{background:#dbf2ec;border-color:#318a7b}.pn-organism{width:70px;height:48px;position:relative;display:flex;justify-content:center;align-items:center;gap:3px;animation:pn-breathe 4s ease-in-out infinite}.pn-organism i{width:20px;height:25px;background:#a78ac4;border-radius:50%;border:2px solid #7a5b98}.organism-0 i:last-child{display:none}.organism-1 i{border:0;background:#d8a7a3;transform:rotate(25deg);border-radius:36% 70% 35% 50%}.organism-2 i,.organism-5 i{width:13px;height:38px;background:#6fae9c;border-color:#477c6e;transform:rotate(35deg)}.organism-3 i{width:32px;height:32px;background:#dda06e;border:5px dotted #a66d42}.organism-3 i:nth-child(n+2){display:none}.organism-4 i{width:21px;height:21px;background:#cc9e63;transform:translateY(7px)}.organism-4 i:nth-child(2){transform:translateY(-7px)}.pn-prevention button span{font-size:35px;color:#208c80}.pn-decision-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;padding:24px 0}.pn-decision-flow button{position:relative;display:flex;flex-direction:column;align-items:center;gap:13px;padding:20px 8px;border:1px solid #c6dce3;border-radius:18px;background:white;font-size:12px;line-height:1.4;overflow-wrap:anywhere}.pn-decision-flow button span{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#e3eef6;font-size:21px;color:#27708e}.pn-decision-flow button[aria-pressed=true]{border-color:#1c9488;background:#e0f4ed}.pn-decision-flow button[aria-pressed=true] span{background:#176c66;color:white;animation:pn-pulse 2.8s ease-in-out infinite}.pn-controls label,.pn-range-label{display:block;font-weight:750;font-size:14px;margin:12px 0}.pn-controls output,.pn-range-label output{float:right;font-variant-numeric:tabular-nums}.pn-lab input[type=range]{display:block;width:100%;accent-color:#1b8f86;margin:13px 0}.pn-calculator{padding:8px 0}.pn-calculator-heading{font-size:14px;font-weight:800;margin:0 0 14px}.pn-check{display:flex;align-items:center;gap:10px;padding:11px 12px;background:white;border:1px solid #d6e6ec;border-radius:11px;margin-bottom:7px;font-size:13px;cursor:pointer}.pn-check input{width:19px;height:19px;flex-shrink:0;accent-color:#1b8f86}.pn-check b{margin-left:auto;white-space:nowrap;font-size:12px;color:#537482}.pn-score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}.pn-score-grid .pn-check{margin:0}.pn-psi-demographics{display:grid;grid-template-columns:1fr 2fr;gap:14px;margin-bottom:15px}.pn-psi-demographics label{font-size:12px;font-weight:750}.pn-psi-demographics input,.pn-psi-demographics select{width:100%;padding:10px;margin-top:7px;border:1px solid #abcbd6;border-radius:8px;background:white;color:#23495c}.pn-score-result{background:#183e51;color:white;border-radius:16px;padding:19px;margin:18px 0;font-size:15px;font-weight:650;line-height:1.65}.pn-calculator>button{background:white;border:1px solid #b7d4df;border-radius:10px;padding:9px 14px;margin:0 7px 7px 0;font-size:13px;font-weight:700}.pn-calculator h4{margin:18px 0 10px;font-size:15px}.pn-lab.is-paused *,.pn-lab.is-reduced *{animation-play-state:paused!important}.pn-lab.is-reduced *{transition:none!important}@keyframes pn-breathe{50%{transform:scale(1.025)}}@keyframes pn-flow{to{stroke-dashoffset:-96}}@keyframes pn-drift{50%{transform:translate(3px,-4px)}}@keyframes pn-cilia{50%{transform:rotate(15deg)}}@keyframes pn-slide{50%{transform:translateX(4px)}}@keyframes pn-colony{50%{transform:scale(1.25)}}@keyframes pn-pulse{50%{box-shadow:0 0 0 7px #248e8412}}@media(min-width:700px){.pn-gas-grid{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:22px}.pn-gas-grid .pn-svg{min-width:0}}@media(max-width:540px){.pn-stage-tabs{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.pn-lab-top{padding:12px;gap:5px;letter-spacing:.02em;font-size:9px}.pn-lab-top button{font-size:10px}.pn-scene{padding:10px 13px 16px}.pn-stage-explanation{padding:19px 17px}.pn-stage-explanation h3{font-size:19px}.pn-stage-explanation p{font-size:15px}.pn-concepts{grid-template-columns:1fr;padding:0 16px 16px}.pn-svg{max-height:290px}.pn-pathogens,.pn-prevention{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pn-pathogens button,.pn-prevention button{min-height:105px}.pn-specimen{gap:7px;flex-wrap:wrap;min-height:210px}.pn-container{width:58px;height:105px}.pn-petri{width:96px;height:96px;border-width:5px}.pn-report{font-size:10px;padding:7px}.pn-lab-arrow{font-size:19px}.pn-decision-flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:15px 0}.pn-decision-flow button{padding:14px 8px}.pn-score-grid{grid-template-columns:1fr}.pn-psi-demographics{grid-template-columns:1fr}.pn-check{font-size:12px}.pn-score-result{font-size:14px}.pn-modes button{font-size:11px;padding:7px 10px}}@media(prefers-reduced-motion:reduce){.pn-lab *{animation:none!important;transition:none!important}}
.pn-lab button:not([aria-pressed="true"]):not([data-pn-pause]),.pn-check,.pn-psi-demographics input,.pn-psi-demographics select{border-color:#6d8b9a}
.pn-stage-tabs button,.pn-modes button,.pn-calculator>button{min-height:44px}
.pn-lab .pn-svg text{font-size:14px;letter-spacing:0}
.pn-lab .pn-svg text.pn-svg-label{font-size:15px}
.pn-lab-top{font-size:11px;letter-spacing:.025em}
.pn-lab-top button{font-size:12px;min-height:36px}
@media(max-width:540px){.pn-lab-top{font-size:10px}.pn-lab-top button{font-size:12px}.pn-modes button{font-size:12px}.pn-check{font-size:13px}.pn-visited{font-size:12px}}

/* Strong boundaries for answer options on the existing dark lesson shell. */
#sinapsis-main[data-topic="neumonia"] .snp-option:not(.is-selected):not(.is-correct):not(.is-wrong){border-color:#6d8b9a}
