/* CareNestPro lesson styles, scoped so they only affect .cnp-lsn content */


.cnp-s1 *,.cnp-s1 *::before,.cnp-s1 *::after{box-sizing:border-box;margin:0;padding:0}
.cnp-s1{
  --navy:#0E2F43;--navyM:#1A3F58;--navyL:#1C4A6E;--navyXL:#243E54;
  --sky:#42C6F3;--skyL:#A8E4FA;--skyLL:#D6F2FD;--skyXL:#EBF8FE;
  --mint:#85E68E;--mintL:#C2F5C8;--mintLL:#E8FBE9;
  --white:#FFFFFF;--offW:#F4FCFE;--grey:#EEF8FA;
  --warn:#E67E22;--warnL:#FEF3E7;--red:#E74C3C;--redL:#FDEDEC;
  --gold:#F39C12;--goldL:#FEF9E7;
  --font:'Segoe UI',system-ui,-apple-system,sans-serif;
  --r:12px;--rs:8px;--sh:0 4px 24px rgba(14,47,67,.13);--shs:0 2px 12px rgba(14,47,67,.08);
}
.cnp-s1{scroll-behavior:smooth}
.cnp-s1{font-family:var(--font);background:var(--offW);color:var(--navy);min-height:auto;}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideL{from{opacity:0;transform:translateX(-32px)}to{opacity:1;transform:translateX(0)}}
@keyframes slideR{from{opacity:0;transform:translateX(32px)}to{opacity:1;transform:translateX(0)}}
@keyframes scaleIn{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}
@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.12)}70%{transform:scale(.96)}100%{transform:scale(1)}}
@keyframes shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(8px)}60%{transform:translateX(-6px)}80%{transform:translateX(6px)}}
@keyframes glow{0%,100%{box-shadow:0 0 0 rgba(66,198,243,0)}50%{box-shadow:0 0 18px rgba(66,198,243,.45)}}
@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0deg);opacity:1}100%{transform:translateY(120px) rotate(720deg);opacity:0}}
@keyframes progressFill{from{width:0}to{width:var(--pw,0%)}}
.cnp-s1 .au{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease}
.cnp-s1 .al{opacity:0;transform:translateX(-28px);transition:opacity .55s ease,transform .55s ease}
.cnp-s1 .ar{opacity:0;transform:translateX(28px);transition:opacity .55s ease,transform .55s ease}
.cnp-s1 .as{opacity:0;transform:scale(.9);transition:opacity .5s ease,transform .5s ease}
.cnp-s1 .visible{opacity:1!important;transform:none!important}
.cnp-s1 .d1{transition-delay:.1s}.cnp-s1 .d2{transition-delay:.2s}.cnp-s1 .d3{transition-delay:.3s}
.cnp-s1 .d4{transition-delay:.4s}.cnp-s1 .d5{transition-delay:.5s}.cnp-s1 .d6{transition-delay:.6s}
/* HEADER */
.cnp-s1 .lh{background:var(--navy);position:relative;overflow:hidden}
.cnp-s1 .lh-bg{position:absolute;inset:0;pointer-events:none}
.cnp-s1 .lh-wave{position:absolute;border-radius:50%;opacity:.13}
.cnp-s1 .lh-w1{width:500px;height:500px;background:var(--sky);right:-100px;top:-150px}
.cnp-s1 .lh-w2{width:350px;height:350px;background:var(--mint);right:80px;top:-80px}
.cnp-s1 .lh-w3{width:200px;height:200px;background:var(--skyL);right:260px;top:20px}
.cnp-s1 .lh-dots{position:absolute;right:18px;top:18px;display:grid;grid-template-columns:repeat(5,8px);gap:6px}
.cnp-s1 .lh-dot{width:7px;height:7px;border-radius:50%;background:var(--mint);opacity:.3}
.cnp-s1 .lh-inner{position:relative;z-index:1;padding:26px 30px 24px}
.cnp-s1 .brand-row{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.cnp-s1 .brand-logo{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--sky),var(--mint));display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cnp-s1 .brand-name{font-size:11px;font-weight:800;color:var(--mint);letter-spacing:2.5px;text-transform:uppercase}
.cnp-s1 .lesson-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(66,198,243,.14);border:1px solid rgba(66,198,243,.28);border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700;color:var(--skyL);margin-bottom:10px}
.cnp-s1 .lesson-title{font-size:clamp(19px,3.2vw,29px);font-weight:900;color:var(--white);line-height:1.2;margin-bottom:8px}
.cnp-s1 .lesson-title .hl{color:var(--mint)}
.cnp-s1 .lesson-meta{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:10px}
.cnp-s1 .meta-item{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--skyL)}
.cnp-s1 .obj-pill{background:rgba(255,255,255,.08);border-left:3px solid var(--sky);border-radius:0 8px 8px 0;padding:10px 14px;font-size:13px;color:var(--skyL);line-height:1.5}
.cnp-s1 .obj-pill strong{color:var(--white);font-size:11px;text-transform:uppercase;letter-spacing:1px;display:block;margin-bottom:3px}
/* PROGRESS */
.cnp-s1 .prog-wrap{background:var(--navyM);padding:10px 30px;display:flex;align-items:center;gap:14px;border-bottom:1px solid rgba(66,198,243,.1)}
.cnp-s1 .prog-bar{flex:1;height:7px;border-radius:4px;background:rgba(255,255,255,.1);overflow:hidden}
.cnp-s1 .prog-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,var(--sky),var(--mint));transition:width .5s ease;width:0}
.cnp-s1 .prog-steps{display:flex;align-items:center;gap:5px}
.cnp-s1 .prog-step{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.2);transition:all .3s}
.cnp-s1 .prog-step.done{background:var(--mint)}
.cnp-s1 .prog-step.active{background:var(--sky);animation:glow 1.5s infinite}
.cnp-s1 .prog-label{font-size:11px;color:var(--skyL);white-space:nowrap;min-width:62px;text-align:right}
/* BODY */
.cnp-s1 .lb{max-width:960px;margin:0 auto;padding:26px 26px 48px;display:flex;flex-direction:column;gap:24px}
/* CARDS */
.cnp-s1 .card{background:var(--white);border-radius:var(--r);box-shadow:var(--shs);overflow:hidden;border:1px solid rgba(66,198,243,.1)}
.cnp-s1 .card-hd{padding:14px 20px;display:flex;align-items:center;gap:11px;background:var(--navy)}
.cnp-s1 .card-icon{width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,var(--sky),var(--mint));display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cnp-s1 .card-icon svg{width:18px;height:18px;color:var(--navy)}
.cnp-s1 .card-icon.warn{background:linear-gradient(135deg,var(--warn),var(--gold))}
.cnp-s1 .card-icon.grn{background:linear-gradient(135deg,var(--mint),#27AE60)}
.cnp-s1 .card-icon.red{background:linear-gradient(135deg,var(--red),#C0392B)}
.cnp-s1 .card-title{font-size:14px;font-weight:800;color:var(--white)}
.cnp-s1 .card-sub{font-size:11.5px;color:var(--skyL);margin-top:1px}
.cnp-s1 .card-bd{padding:20px}
.cnp-s1 .card-bd p{font-size:14px;line-height:1.75;color:var(--navyM)}
.cnp-s1 .card-bd p+p{margin-top:11px}
/* PERSONA */
.cnp-s1 .persona-wrap{background:var(--skyXL);border-radius:var(--r);padding:18px;border-left:4px solid var(--sky)}
.cnp-s1 .persona{display:flex;gap:14px;align-items:flex-start}
.cnp-s1 .persona-av{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--navyL));display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:900;color:var(--mint);flex-shrink:0;border:3px solid var(--sky)}
.cnp-s1 .persona-name{font-size:15px;font-weight:800;color:var(--navy)}
.cnp-s1 .persona-ctx{font-size:12px;color:var(--navyL);margin:3px 0 8px}
.cnp-s1 .persona-tag{display:inline-flex;background:var(--navy);color:var(--mint);font-size:10px;font-weight:700;padding:2px 8px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}
.cnp-s1 .persona-quote{font-size:13.5px;font-style:italic;color:var(--navyM);background:var(--white);border-radius:var(--rs);padding:10px 14px;border-left:3px solid var(--sky);line-height:1.55}
.cnp-s1 .persona-body{font-size:13.5px;color:var(--navyM);line-height:1.65;margin-top:10px}
/* STATS */
.cnp-s1 .stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}
.cnp-s1 .stat-card{background:linear-gradient(135deg,var(--navy),var(--navyL));border-radius:var(--r);padding:16px;text-align:center;position:relative;overflow:hidden}
.cnp-s1 .stat-card::after{content:'';position:absolute;right:-16px;bottom:-16px;width:70px;height:70px;border-radius:50%;background:rgba(66,198,243,.1)}
.cnp-s1 .stat-num{font-size:clamp(24px,4vw,34px);font-weight:900;color:var(--mint);line-height:1}
.cnp-s1 .stat-unit{font-size:12px;color:var(--sky);margin:3px 0 5px}
.cnp-s1 .stat-desc{font-size:11.5px;color:var(--skyL);line-height:1.4}
/* KEY CONCEPT */
.cnp-s1 .kc{background:linear-gradient(135deg,var(--navyM),var(--navyL));border-radius:var(--r);padding:24px;position:relative;overflow:hidden;border-left:4px solid var(--sky)}
.cnp-s1 .kc::before{content:'';position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(66,198,243,.16) 0%,transparent 70%)}
.cnp-s1 .kc-label{font-size:10px;font-weight:800;color:var(--mint);text-transform:uppercase;letter-spacing:2.5px;margin-bottom:10px;display:flex;align-items:center;gap:6px}
.cnp-s1 .kc-main{font-size:17px;font-weight:800;color:var(--white);line-height:1.4}
.cnp-s1 .kc-sub{font-size:13.5px;color:var(--skyL);margin-top:9px;line-height:1.6}
.cnp-s1 .kc-rule{margin-top:13px;padding:11px 14px;background:rgba(66,198,243,.12);border-radius:8px;font-size:13px;color:var(--skyL)}
.cnp-s1 .kc-rule strong{color:var(--white);display:block;margin-bottom:3px}
/* DO/DON'T */
.cnp-s1 .dd-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:560px){.cnp-s1 .dd-grid{grid-template-columns:1fr}}
.cnp-s1 .dd-col{border-radius:var(--rs);overflow:hidden}
.cnp-s1 .dd-hd{padding:10px 14px;font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;display:flex;align-items:center;gap:6px}
.cnp-s1 .dd-hd.do{background:var(--mint);color:var(--navy)}
.cnp-s1 .dd-hd.dont{background:var(--red);color:var(--white)}
.cnp-s1 .dd-items{background:var(--white);border:1px solid;border-top:none;padding:11px;display:flex;flex-direction:column;gap:7px}
.cnp-s1 .dd-items.do{border-color:var(--mintL)}
.cnp-s1 .dd-items.dont{border-color:#fcc}
.cnp-s1 .dd-item{display:flex;align-items:flex-start;gap:8px;padding:7px 9px;border-radius:6px;font-size:13px;line-height:1.55}
.cnp-s1 .dd-item.do{background:var(--mintLL);color:var(--navy)}
.cnp-s1 .dd-item.dont{background:var(--redL);color:var(--navy)}
.cnp-s1 .dd-dot{width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}
.cnp-s1 .dd-dot.do{background:var(--mint)}
.cnp-s1 .dd-dot.dont{background:var(--red)}
/* TIMELINE */
.cnp-s1 .tl-step{display:flex;gap:0;cursor:pointer;position:relative}
.cnp-s1 .tl-step:not(:last-child)::after{content:'';position:absolute;left:21px;top:44px;width:2px;height:calc(100% - 28px);background:rgba(66,198,243,.2);z-index:0}
.cnp-s1 .tl-step.done::after{background:var(--sky)}
.cnp-s1 .tl-num{width:42px;height:42px;border-radius:50%;background:rgba(66,198,243,.1);border:2px solid rgba(66,198,243,.25);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:var(--skyL);flex-shrink:0;position:relative;z-index:1;transition:all .35s;margin-top:2px}
.cnp-s1 .tl-step.active .tl-num{background:linear-gradient(135deg,var(--sky),var(--mint));border-color:transparent;color:var(--navy);animation:pop .4s ease}
.cnp-s1 .tl-step.done .tl-num{background:var(--mint);border-color:transparent;color:var(--navy)}
.cnp-s1 .tl-content{flex:1;padding:4px 0 20px 16px}
.cnp-s1 .tl-head{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:3px}
.cnp-s1 .tl-body{font-size:13px;color:var(--navyM);line-height:1.65;max-height:0;overflow:hidden;transition:max-height .5s ease,opacity .4s ease;opacity:0}
.cnp-s1 .tl-step.active .tl-body,.cnp-s1 .tl-step.done .tl-body{max-height:400px;opacity:1}
.cnp-s1 .tl-say{background:var(--skyXL);border-radius:6px;padding:9px 12px;margin-top:8px;font-style:italic;font-size:13px;color:var(--navy);border-left:3px solid var(--sky)}
.cnp-s1 .tl-warn{margin-top:8px;font-size:12.5px;color:var(--warn);display:flex;align-items:flex-start;gap:5px}
.cnp-s1 .tl-tag{display:inline-flex;font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px;text-transform:uppercase;margin-bottom:5px}
.cnp-s1 .tl-tag.pro{background:var(--mintLL);color:var(--navy)}
.cnp-s1 .tl-tag.warn{background:var(--warnL);color:var(--warn)}
.cnp-s1 .tl-tag.info{background:var(--skyLL);color:var(--navyL)}
/* EXAMPLE */
.cnp-s1 .ex-block{background:var(--skyXL);border-left:4px solid var(--sky);border-radius:0 var(--rs) var(--rs) 0;padding:15px 17px}
.cnp-s1 .ex-label{font-size:11px;font-weight:800;color:var(--sky);text-transform:uppercase;letter-spacing:1.5px;display:flex;align-items:center;gap:5px;margin-bottom:8px}
.cnp-s1 .ex-text{font-size:14px;color:var(--navy);line-height:1.7}
.cnp-s1 .ex-say{background:var(--white);border-radius:var(--rs);padding:10px 14px;margin-top:10px;font-style:italic;font-size:13.5px;color:var(--navy);border-left:3px solid var(--mint);line-height:1.55}
.cnp-s1 .ex-outcome{margin-top:9px;font-size:13px;color:var(--navyM);line-height:1.6}
/* CASE STUDY */
.cnp-s1 .cs-panel{background:var(--navy);border-radius:var(--r);padding:20px}
.cnp-s1 .cs-label{font-size:10px;font-weight:800;color:var(--mint);text-transform:uppercase;letter-spacing:2px;margin-bottom:12px;display:flex;align-items:center;gap:5px}
.cnp-s1 .cs-persona{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.06);border-radius:var(--rs);padding:12px;margin-bottom:14px}
.cnp-s1 .cs-av{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--navyM),var(--navyL));display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:900;color:var(--mint);border:2px solid var(--sky);flex-shrink:0}
.cnp-s1 .cs-persona-name{font-size:13.5px;font-weight:800;color:var(--white)}
.cnp-s1 .cs-persona-ctx{font-size:11.5px;color:var(--skyL);margin-top:2px}
.cnp-s1 .cs-scene{font-size:14px;color:var(--skyL);line-height:1.7;margin-bottom:14px}
.cnp-s1 .cs-scene strong{color:var(--white)}
.cnp-s1 .cs-q{font-size:14px;font-weight:700;color:var(--white);margin-bottom:10px;padding:12px;background:rgba(255,255,255,.06);border-radius:var(--rs);border-left:3px solid var(--warn)}
.cnp-s1 .cs-choices{display:flex;flex-direction:column;gap:7px}
.cnp-s1 .cs-choice{background:rgba(255,255,255,.07);border:1.5px solid rgba(66,198,243,.22);border-radius:var(--rs);padding:11px 14px;cursor:pointer;font-size:13px;color:var(--white);display:flex;align-items:flex-start;gap:9px;transition:all .2s;font-family:var(--font);text-align:left;width:100%}
.cnp-s1 .cs-choice:hover{background:rgba(66,198,243,.12);border-color:var(--sky);transform:translateX(4px)}
.cnp-s1 .cs-choice.correct{background:rgba(133,230,142,.18);border-color:var(--mint)}
.cnp-s1 .cs-choice.wrong{background:rgba(231,76,60,.14);border-color:var(--red)}
.cnp-s1 .cs-choice.disabled{pointer-events:none}
.cnp-s1 .cs-ltr{width:26px;height:26px;border-radius:50%;border:1.5px solid rgba(66,198,243,.4);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;flex-shrink:0;font-family:var(--font)}
.cnp-s1 .cs-fb{display:none;margin-top:12px;padding:13px;border-radius:var(--rs);font-size:13px;line-height:1.6}
.cnp-s1 .cs-fb.show{display:block;animation:fadeUp .35s ease}
.cnp-s1 .cs-fb.correct{background:rgba(133,230,142,.15);border:1px solid rgba(133,230,142,.4);color:var(--mintL)}
.cnp-s1 .cs-fb.wrong{background:rgba(231,76,60,.12);border:1px solid rgba(231,76,60,.4);color:#faa}
.cnp-s1 .cs-fb strong{display:flex;align-items:center;gap:5px;margin-bottom:5px;font-size:13.5px}
.cnp-s1 .cs-bp{display:none;margin-top:13px;background:rgba(66,198,243,.1);border:1px solid rgba(66,198,243,.28);border-radius:var(--rs);padding:13px}
.cnp-s1 .cs-bp.show{display:block;animation:fadeUp .4s ease}
.cnp-s1 .cs-bp-title{font-size:11px;font-weight:800;color:var(--sky);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}
.cnp-s1 .cs-bp ul{list-style:none;display:flex;flex-direction:column;gap:5px}
.cnp-s1 .cs-bp li{display:flex;align-items:flex-start;gap:6px;font-size:13px;color:var(--skyL);line-height:1.45}
.cnp-s1 .cs-bp li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--mint);flex-shrink:0;margin-top:5px}
.cnp-s1 .cs-next{display:none;margin-top:13px;background:linear-gradient(135deg,var(--sky),var(--mint));border:none;border-radius:var(--rs);padding:10px 20px;font-size:13.5px;font-weight:800;color:var(--navy);cursor:pointer;font-family:var(--font);transition:opacity .2s;align-items:center;gap:6px}
.cnp-s1 .cs-next.show{display:inline-flex;animation:scaleIn .35s ease}
/* MATCHING */
.cnp-s1 .match-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:540px){.cnp-s1 .match-grid{grid-template-columns:1fr}}
.cnp-s1 .match-col-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--navyL);margin-bottom:7px}
.cnp-s1 .match-items{display:flex;flex-direction:column;gap:7px}
.cnp-s1 .match-term,.cnp-s1 .match-def{padding:11px 13px;border-radius:var(--rs);cursor:pointer;font-size:13px;line-height:1.5;border:2px solid;transition:all .2s;font-family:var(--font);text-align:left;width:100%;position:relative}
.cnp-s1 .match-term{background:var(--skyXL);border-color:var(--skyL);color:var(--navy);font-weight:600}
.cnp-s1 .match-def{background:var(--mintLL);border-color:var(--mintL);color:var(--navy)}
.cnp-s1 .match-term:hover,.cnp-s1 .match-def:hover{transform:translateY(-2px);box-shadow:var(--shs)}
.cnp-s1 .match-term.sel{border-color:var(--sky);background:var(--skyLL);box-shadow:0 0 0 3px rgba(66,198,243,.22)}
.cnp-s1 .match-def.sel{border-color:var(--mint);background:var(--mintL);box-shadow:0 0 0 3px rgba(133,230,142,.22)}
.cnp-s1 .match-term.matched,.cnp-s1 .match-def.matched{border-color:var(--mint);background:var(--mintLL);cursor:default;pointer-events:none;opacity:.85}
.cnp-s1 .match-term.wrong,.cnp-s1 .match-def.wrong{animation:shake .4s ease;border-color:var(--red);background:var(--redL)}
.cnp-s1 .match-score{text-align:center;font-size:14px;font-weight:700;color:var(--navy);margin-top:11px;display:none}
.cnp-s1 .match-score.show{display:block;animation:fadeIn .4s ease}
/* HOTSPOT */
.cnp-s1 .hs-panel{background:linear-gradient(135deg,var(--navyM),var(--navyXL));border-radius:var(--r);padding:20px}
.cnp-s1 .hs-desc{font-size:14px;color:var(--skyL);line-height:1.7;margin-bottom:16px}
.cnp-s1 .hs-desc strong{color:var(--white)}
.cnp-s1 .hs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:9px}
.cnp-s1 .hs-item{background:rgba(255,255,255,.08);border:1.5px solid rgba(66,198,243,.2);border-radius:var(--rs);padding:13px;cursor:pointer;transition:all .25s;text-align:center;font-family:var(--font)}
.cnp-s1 .hs-item:hover{border-color:var(--sky);background:rgba(66,198,243,.1);transform:translateY(-3px)}
.cnp-s1 .hs-item.hazard{border-color:rgba(231,76,60,.4)}
.cnp-s1 .hs-item.safe{border-color:rgba(133,230,142,.4)}
.cnp-s1 .hs-item.found{pointer-events:none;opacity:.9}
.cnp-s1 .hs-emoji{font-size:26px;margin-bottom:5px}
.cnp-s1 .hs-name{font-size:12px;font-weight:600;color:var(--white)}
.cnp-s1 .hs-reveal{display:none;margin-top:7px;font-size:11.5px;line-height:1.4;padding:7px;border-radius:5px}
.cnp-s1 .hs-item.hazard.found .hs-reveal{display:block;background:rgba(231,76,60,.2);color:#fcc;border:1px solid rgba(231,76,60,.35)}
.cnp-s1 .hs-item.safe.found .hs-reveal{display:block;background:rgba(133,230,142,.12);color:var(--mintL);border:1px solid rgba(133,230,142,.3)}
.cnp-s1 .hs-counter{font-size:13px;font-weight:700;color:var(--sky);margin-top:13px;text-align:center}
/* KNOWLEDGE CHECK */
.cnp-s1 .kcheck{background:var(--white);border:2px solid var(--skyL);border-radius:var(--r);padding:18px}
.cnp-s1 .kcheck-label{font-size:10.5px;font-weight:800;color:var(--sky);text-transform:uppercase;letter-spacing:1.5px;display:flex;align-items:center;gap:5px;margin-bottom:12px}
.cnp-s1 .kcheck-q{font-size:15px;font-weight:700;color:var(--navy);margin-bottom:13px;line-height:1.45}
.cnp-s1 .kcheck-opts{display:flex;flex-direction:column;gap:7px}
.cnp-s1 .kcheck-opt{background:var(--offW);border:1.5px solid var(--skyL);border-radius:var(--rs);padding:10px 14px;cursor:pointer;font-size:13.5px;color:var(--navy);transition:all .2s;display:flex;align-items:center;gap:10px;font-family:var(--font);text-align:left;width:100%}
.cnp-s1 .kcheck-opt:hover{border-color:var(--sky);background:var(--skyXL);transform:translateX(3px)}
.cnp-s1 .kcheck-opt.correct{border-color:var(--mint);background:var(--mintLL)}
.cnp-s1 .kcheck-opt.wrong{border-color:var(--red);background:var(--redL);animation:shake .4s ease}
.cnp-s1 .kcheck-opt.disabled{pointer-events:none}
.cnp-s1 .kcheck-ltr{width:26px;height:26px;border-radius:50%;border:1.5px solid var(--skyL);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;flex-shrink:0;font-family:var(--font);transition:all .2s}
.cnp-s1 .kcheck-opt.correct .kcheck-ltr{background:var(--mint);border-color:var(--mint);color:var(--navy)}
.cnp-s1 .kcheck-opt.wrong .kcheck-ltr{background:var(--red);border-color:var(--red);color:var(--white)}
.cnp-s1 .kcheck-result{display:none;margin-top:11px;padding:13px;border-radius:var(--rs);font-size:13.5px;line-height:1.55}
.cnp-s1 .kcheck-result.show{display:block;animation:fadeUp .35s ease}
.cnp-s1 .kcheck-result.correct{background:var(--mintLL);border:1px solid var(--mintL);color:var(--navy)}
.cnp-s1 .kcheck-result.wrong{background:var(--redL);border:1px solid #fcc;color:var(--navy)}
.cnp-s1 .kcheck-result strong{display:flex;align-items:center;gap:5px;margin-bottom:4px;font-size:13.5px}
/* QUICKFIRE */
.cnp-s1 .qf-wrap{background:var(--navy);border-radius:var(--r);padding:20px}
.cnp-s1 .qf-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.cnp-s1 .qf-title{font-size:12px;font-weight:800;color:var(--mint);text-transform:uppercase;letter-spacing:1.5px}
.cnp-s1 .qf-score-display{font-size:14px;font-weight:800;color:var(--sky)}
.cnp-s1 .qf-pips{display:flex;gap:5px;margin-bottom:13px}
.cnp-s1 .qf-pip{height:5px;flex:1;border-radius:3px;background:rgba(255,255,255,.15);transition:all .3s}
.cnp-s1 .qf-pip.done.c{background:var(--mint)}
.cnp-s1 .qf-pip.done.w{background:var(--red)}
.cnp-s1 .qf-pip.cur{background:var(--sky)}
.cnp-s1 .qf-q{display:none}
.cnp-s1 .qf-q.active{display:block;animation:fadeUp .3s ease}
.cnp-s1 .qf-qtext{font-size:14.5px;font-weight:700;color:var(--white);margin-bottom:12px}
.cnp-s1 .qf-opts{display:flex;flex-direction:column;gap:7px}
.cnp-s1 .qf-opt{background:rgba(255,255,255,.08);border:1.5px solid rgba(66,198,243,.22);border-radius:var(--rs);padding:10px 14px;cursor:pointer;font-size:13px;color:var(--white);transition:all .2s;font-family:var(--font);text-align:left;width:100%}
.cnp-s1 .qf-opt:hover{background:rgba(66,198,243,.15);border-color:var(--sky)}
.cnp-s1 .qf-opt.correct{background:rgba(133,230,142,.2);border-color:var(--mint)}
.cnp-s1 .qf-opt.wrong{background:rgba(231,76,60,.15);border-color:var(--red);animation:shake .35s}
.cnp-s1 .qf-opt.disabled{pointer-events:none}
.cnp-s1 .qf-fb{display:none;font-size:12.5px;margin-top:7px;padding:8px 11px;border-radius:6px;line-height:1.5}
.cnp-s1 .qf-fb.show{display:block;animation:fadeIn .3s}
.cnp-s1 .qf-fb.correct{background:rgba(133,230,142,.15);color:var(--mintL)}
.cnp-s1 .qf-fb.wrong{background:rgba(231,76,60,.12);color:#faa}
.cnp-s1 .qf-result{display:none;text-align:center;padding:18px}
.cnp-s1 .qf-result.show{display:block;animation:scaleIn .4s ease}
.cnp-s1 .qf-rnum{font-size:50px;font-weight:900;color:var(--mint)}
.cnp-s1 .qf-rlabel{font-size:14px;color:var(--skyL);margin-top:3px}
.cnp-s1 .qf-retry{background:rgba(66,198,243,.14);border:1.5px solid var(--sky);border-radius:var(--rs);padding:8px 18px;font-size:13px;font-weight:700;color:var(--sky);cursor:pointer;font-family:var(--font);margin-top:12px;transition:all .2s}
.cnp-s1 .qf-retry:hover{background:rgba(66,198,243,.24)}
/* FLIP */
.cnp-s1 .flip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:11px}
.cnp-s1 .flip-card{height:130px;perspective:1000px;cursor:pointer}
.cnp-s1 .flip-inner{position:relative;width:100%;height:100%;transition:transform .5s ease;transform-style:preserve-3d}
.cnp-s1 .flip-card.flipped .flip-inner{transform:rotateY(180deg)}
.cnp-s1 .flip-front,.cnp-s1 .flip-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:var(--rs);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px;text-align:center}
.cnp-s1 .flip-front{background:linear-gradient(135deg,var(--navyM),var(--navyL));border:1.5px solid rgba(66,198,243,.22)}
.cnp-s1 .flip-back{background:var(--mintLL);border:1.5px solid var(--mintL);transform:rotateY(180deg)}
.cnp-s1 .flip-emoji{font-size:26px;margin-bottom:7px}
.cnp-s1 .flip-front-text{font-size:13px;font-weight:700;color:var(--white)}
.cnp-s1 .flip-back-text{font-size:12.5px;color:var(--navy);line-height:1.5}
.cnp-s1 .flip-hint{font-size:11px;color:var(--skyL);text-align:center;margin-top:5px;display:flex;align-items:center;justify-content:center;gap:4px}
/* INFO GRID */
.cnp-s1 .ig-list{display:flex;flex-direction:column;gap:9px}
.cnp-s1 .ig-item{display:flex;align-items:flex-start;gap:11px;background:var(--white);border-radius:var(--rs);padding:13px 14px;border:1px solid var(--skyL)}
.cnp-s1 .ig-num{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--sky),var(--mint));display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;color:var(--navy);flex-shrink:0}
.cnp-s1 .ig-label{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:2px}
.cnp-s1 .ig-text{font-size:13px;color:var(--navyM);line-height:1.55}
/* ALERT */
.cnp-s1 .alert-box{border-radius:var(--rs);padding:13px 15px;display:flex;align-items:flex-start;gap:11px}
.cnp-s1 .alert-box.warn{background:var(--warnL);border-left:4px solid var(--warn)}
.cnp-s1 .alert-box.info{background:var(--skyXL);border-left:4px solid var(--sky)}
.cnp-s1 .alert-box.critical{background:var(--redL);border-left:4px solid var(--red)}
.cnp-s1 .alert-box.success{background:var(--mintLL);border-left:4px solid var(--mint)}
.cnp-s1 .alert-icon{width:22px;height:22px;flex-shrink:0;margin-top:1px}
.cnp-s1 .alert-text{font-size:13.5px;color:var(--navy);line-height:1.6}
.cnp-s1 .alert-text strong{display:block;margin-bottom:2px}
/* TAKEAWAYS */
.cnp-s1 .ta-list{display:flex;flex-direction:column;gap:9px}
.cnp-s1 .ta-item{display:flex;align-items:flex-start;gap:12px;background:var(--white);border-radius:var(--rs);padding:13px 14px;border:1px solid var(--skyL)}
.cnp-s1 .ta-num{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--sky),var(--mint));display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;color:var(--navy);flex-shrink:0}
.cnp-s1 .ta-text{font-size:14px;color:var(--navyM);line-height:1.55;padding-top:3px}
/* COMPLETE */
.cnp-s1 .complete-section{text-align:center;padding:10px 0 4px;opacity:.45;pointer-events:none;transition:all .4s}
.cnp-s1 .complete-section.ready{opacity:1;pointer-events:all}
.cnp-s1 .complete-btn{background:linear-gradient(135deg,var(--sky),var(--mint));border:none;border-radius:var(--r);padding:14px 38px;font-size:15.5px;font-weight:900;color:var(--navy);cursor:pointer;font-family:var(--font);box-shadow:0 4px 20px rgba(66,198,243,.35);transition:transform .2s,box-shadow .2s;display:inline-flex;align-items:center;gap:9px}
.cnp-s1 .complete-btn:hover{transform:translateY(-3px);box-shadow:0 8px 28px rgba(66,198,243,.45)}
.cnp-s1 .complete-note{font-size:12px;color:var(--navyL);margin-top:7px;opacity:.6}
.cnp-s1 .complete-req{font-size:12px;color:var(--warn);margin-top:5px}
/* FOOTER */
.cnp-s1 .lf{background:var(--navy);padding:13px 30px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px}
.cnp-s1 .lf-brand{font-size:11px;color:var(--mint);font-weight:800;letter-spacing:1.5px}
.cnp-s1 .lf-note{font-size:10px;color:rgba(168,228,250,.48)}
/* CONFETTI */
.cnp-s1 .confetti-piece{position:fixed;pointer-events:none;z-index:9999;animation:confettiFall 1.3s ease-in forwards}
@media(max-width:600px){.cnp-s1 .lh-inner{padding:16px 14px}.cnp-s1 .lb{padding:14px 10px 36px}.cnp-s1 .stats-row{grid-template-columns:1fr 1fr}}


.cnp-s2 *,.cnp-s2 *::before,.cnp-s2 *::after{box-sizing:border-box;margin:0;padding:0}.cnp-s2{--navy:#0E2F43;--navyM:#1A3F58;--navyL:#1C4A6E;--sky:#42C6F3;--skyL:#A8E4FA;--skyLL:#D6F2FD;--skyXL:#EBF8FE;--mint:#85E68E;--mintL:#C2F5C8;--mintLL:#E8FBE9;--white:#fff;--offW:#F4FCFE;--warn:#E67E22;--warnL:#FEF3E7;--red:#E74C3C;--redL:#FDEDEC;--gold:#F39C12;--font:'Segoe UI',system-ui,sans-serif;--r:12px;--rs:8px;--sh:0 4px 24px rgba(14,47,67,.13);--shs:0 2px 12px rgba(14,47,67,.08)}.cnp-s2{scroll-behavior:smooth}.cnp-s2{font-family:var(--font);background:var(--offW);color:var(--navy);min-height:auto;}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideL{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:translateX(0)}}
@keyframes slideR{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:translateX(0)}}
@keyframes scaleIn{from{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}
@keyframes pop{0%{transform:scale(1)}40%{transform:scale(1.12)}70%{transform:scale(.96)}100%{transform:scale(1)}}
@keyframes shake{0%,100%{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(8px)}60%{transform:translateX(-5px)}80%{transform:translateX(5px)}}
@keyframes glow{0%,100%{box-shadow:0 0 0 rgba(66,198,243,0)}50%{box-shadow:0 0 18px rgba(66,198,243,.4)}}
@keyframes confettiFall{0%{transform:translateY(-20px) rotate(0);opacity:1}100%{transform:translateY(120px) rotate(720deg);opacity:0}}
@keyframes progressFill{from{width:0}to{width:var(--pw,0%)}}
.cnp-s2 .au{opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease}
.cnp-s2 .al{opacity:0;transform:translateX(-28px);transition:opacity .55s ease,transform .55s ease}
.cnp-s2 .ar{opacity:0;transform:translateX(28px);transition:opacity .55s ease,transform .55s ease}
.cnp-s2 .as{opacity:0;transform:scale(.9);transition:opacity .5s ease,transform .5s ease}
.cnp-s2 .visible{opacity:1!important;transform:none!important}
.cnp-s2 .d1{transition-delay:.1s}.cnp-s2 .d2{transition-delay:.2s}.cnp-s2 .d3{transition-delay:.3s}.cnp-s2 .d4{transition-delay:.4s}.cnp-s2 .d5{transition-delay:.5s}.cnp-s2 .d6{transition-delay:.6s}
.cnp-s2 .lh{background:var(--navy);position:relative;overflow:hidden}
.cnp-s2 .lh-bg{position:absolute;inset:0;pointer-events:none}
.cnp-s2 .lh-wave{position:absolute;border-radius:50%;opacity:.13}
.cnp-s2 .lh-w1{width:480px;height:480px;background:var(--sky);right:-80px;top:-140px}
.cnp-s2 .lh-w2{width:320px;height:320px;background:var(--mint);right:100px;top:-60px}
.cnp-s2 .lh-w3{width:180px;height:180px;background:var(--skyL);right:280px;top:30px}
.cnp-s2 .lh-dots{position:absolute;right:24px;top:24px;display:grid;grid-template-columns:repeat(5,9px);gap:6px}
.cnp-s2 .lh-dot{width:7px;height:7px;border-radius:50%;background:var(--mint);opacity:.3}
.cnp-s2 .lh-inner{position:relative;z-index:1;padding:26px 32px 24px}
.cnp-s2 .brand-row{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.cnp-s2 .brand-logo{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--sky),var(--mint));display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cnp-s2 .brand-name{font-size:11px;font-weight:800;color:var(--mint);letter-spacing:2px;text-transform:uppercase}
.cnp-s2 .lesson-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(66,198,243,.14);border:1px solid rgba(66,198,243,.28);border-radius:20px;padding:4px 12px;font-size:11px;font-weight:700;color:var(--skyL);margin-bottom:10px}
.cnp-s2 .lesson-title{font-size:clamp(19px,3.5vw,29px);font-weight:900;color:#fff;line-height:1.2;margin-bottom:8px}
.cnp-s2 .lesson-title .hl{color:var(--mint)}
.cnp-s2 .lesson-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:10px}
.cnp-s2 .meta-item{display:flex;align-items:center;gap:5px;font-size:12px;color:var(--skyL)}
.cnp-s2 .obj-pill{background:rgba(255,255,255,.08);border-left:3px solid var(--sky);border-radius:0 8px 8px 0;padding:10px 14px;font-size:13px;color:var(--skyL);line-height:1.5}
.cnp-s2 .obj-pill strong{color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:1px;display:block;margin-bottom:3px}
.cnp-s2 .prog-wrap{background:var(--navyM);padding:10px 32px;display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(66,198,243,.1)}
.cnp-s2 .prog-bar{flex:1;height:7px;border-radius:4px;background:rgba(255,255,255,.1);overflow:hidden}
.cnp-s2 .prog-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,var(--sky),var(--mint));animation:progressFill .9s .3s ease both}
.cnp-s2 .prog-steps{display:flex;align-items:center;gap:5px}
.cnp-s2 .prog-step{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.2);transition:all .3s}
.cnp-s2 .prog-step.done{background:var(--mint)}
.cnp-s2 .prog-step.active{background:var(--sky);animation:glow 1.5s infinite}
.cnp-s2 .prog-label{font-size:11px;color:var(--skyL);white-space:nowrap;min-width:64px;text-align:right}
.cnp-s2 .lb{max-width:960px;margin:0 auto;padding:26px 28px 48px;display:flex;flex-direction:column;gap:24px}
.cnp-s2 .card{background:#fff;border-radius:var(--r);box-shadow:var(--shs);overflow:hidden;border:1px solid rgba(66,198,243,.1)}
.cnp-s2 .card-hd{padding:14px 20px;display:flex;align-items:center;gap:11px;background:var(--navy)}
.cnp-s2 .card-icon{width:36px;height:36px;border-radius:9px;background:linear-gradient(135deg,var(--sky),var(--mint));display:flex;align-items:center;justify-content:center;flex-shrink:0}
.cnp-s2 .card-icon svg{width:18px;height:18px;color:var(--navy)}
.cnp-s2 .card-icon.warn-icon{background:linear-gradient(135deg,var(--warn),var(--gold))}
.cnp-s2 .card-icon.green-icon{background:linear-gradient(135deg,var(--mint),#27AE60)}
.cnp-s2 .card-icon.red-icon{background:linear-gradient(135deg,var(--red),#C0392B)}
.cnp-s2 .card-title{font-size:14px;font-weight:800;color:#fff}
.cnp-s2 .card-sub{font-size:11.5px;color:var(--skyL);margin-top:1px}
.cnp-s2 .card-bd{padding:22px}
.cnp-s2 .card-bd p{font-size:14px;line-height:1.75;color:var(--navyM)}
.cnp-s2 .card-bd p+p{margin-top:12px}
.cnp-s2 .persona{display:flex;gap:16px;align-items:flex-start;background:var(--skyXL);border-radius:var(--r);padding:18px;border-left:4px solid var(--sky)}
.cnp-s2 .persona-av{width:54px;height:54px;border-radius:50%;background:linear-gradient(135deg,var(--navy),var(--navyL));display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:900;color:var(--mint);flex-shrink:0;border:3px solid var(--sky)}
.cnp-s2 .persona-info{flex:1}
.cnp-s2 .persona-name{font-size:15px;font-weight:800;color:var(--navy)}
.cnp-s2 .persona-ctx{font-size:12px;color:var(--navyL);margin:3px 0 8px}
.cnp-s2 .persona-quote{font-size:13px;font-style:italic;color:var(--navyM);background:#fff;border-radius:var(--rs);padding:10px 14px;border-left:3px solid var(--sky);line-height:1.55}
.cnp-s2 .persona-tag{display:inline-flex;background:var(--navy);color:var(--mint);font-size:10px;font-weight:700;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.cnp-s2 .persona-body{font-size:13.5px;color:var(--navyM);line-height:1.65;margin-top:10px}
.cnp-s2 .stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:13px}
.cnp-s2 .stat-card{background:linear-gradient(135deg,var(--navy),var(--navyL));border-radius:var(--r);padding:18px 14px;text-align:center;position:relative;overflow:hidden}
.cnp-s2 .stat-card::after{content:'';position:absolute;right:-18px;bottom:-18px;width:70px;height:70px;border-radius:50%;background:rgba(66,198,243,.1)}
.cnp-s2 .stat-num{font-size:clamp(24px,4vw,34px);font-weight:900;color:var(--mint);line-height:1}
.cnp-s2 .stat-unit{font-size:12px;color:var(--sky);margin:3px 0 5px}
.cnp-s2 .stat-desc{font-size:11px;color:var(--skyL);line-height:1.4}
.cnp-s2 .kc{background:linear-gradient(135deg,var(--navyM),var(--navyL));border-radius:var(--r);padding:24px;position:relative;overflow:hidden;border-left:4px solid var(--sky)}
.cnp-s2 .kc::before{content:'';position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(66,198,243,.18) 0%,transparent 70%)}
.cnp-s2 .kc-label{font-size:10px;font-weight:800;color:var(--mint);text-transform:uppercase;letter-spacing:2px;margin-bottom:10px}
.cnp-s2 .kc-main{font-size:17px;font-weight:800;color:#fff;line-height:1.4}
.cnp-s2 .kc-sub{font-size:13.5px;color:var(--skyL);margin-top:10px;line-height:1.6}
.cnp-s2 .kc-rule{margin-top:14px;padding:12px 16px;background:rgba(66,198,243,.12);border-radius:8px;font-size:13px;color:var(--skyL)}
.cnp-s2 .kc-rule strong{color:#fff;display:block;margin-bottom:4px}
.cnp-s2 .dd-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
@media(max-width:560px){.cnp-s2 .dd-grid{grid-template-columns:1fr}}
.cnp-s2 .dd-col{border-radius:var(--rs);overflow:hidden}
.cnp-s2 .dd-hd{padding:11px 16px;font-size:12px;font-weight:800;letter-spacing:1px;text-transform:uppercase;display:flex;align-items:center;gap:7px}
.cnp-s2 .dd-hd.do{background:var(--mint);color:var(--navy)}.cnp-s2 .dd-hd.dont{background:var(--red);color:#fff}
.cnp-s2 .dd-items{background:#fff;border:1px solid;border-top:none;padding:12px;display:flex;flex-direction:column;gap:8px}
.cnp-s2 .dd-items.do{border-color:var(--mintL)}.cnp-s2 .dd-items.dont{border-color:#fcc}
.cnp-s2 .dd-item{display:flex;align-items:flex-start;gap:8px;padding:8px 10px;border-radius:7px;font-size:13px;line-height:1.55}
.cnp-s2 .dd-item.do{background:var(--mintLL);color:var(--navy)}.cnp-s2 .dd-item.dont{background:var(--redL);color:var(--navy)}
.cnp-s2 .dd-dot{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.cnp-s2 .dd-dot.do{background:var(--mint)}.cnp-s2 .dd-dot.dont{background:var(--red)}
.cnp-s2 .dd-dot svg{width:10px;height:10px}
.cnp-s2 .tl{display:flex;flex-direction:column;gap:0}
.cnp-s2 .tl-step{display:flex;gap:0;cursor:pointer;position:relative}
.cnp-s2 .tl-step:not(:last-child)::after{content:'';position:absolute;left:21px;top:46px;width:2px;height:calc(100% - 28px);background:rgba(66,198,243,.2);z-index:0}
.cnp-s2 .tl-step.active::after,.cnp-s2 .tl-step.done::after{background:var(--sky)}
.cnp-s2 .tl-num{width:42px;height:42px;border-radius:50%;background:rgba(66,198,243,.1);border:2px solid rgba(66,198,243,.3);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;color:var(--skyL);flex-shrink:0;position:relative;z-index:1;transition:all .35s;margin-top:4px}
.cnp-s2 .tl-step.active .tl-num{background:linear-gradient(135deg,var(--sky),var(--mint));border-color:transparent;color:var(--navy);animation:pop .4s ease}
.cnp-s2 .tl-step.done .tl-num{background:var(--mint);border-color:transparent;color:var(--navy)}
.cnp-s2 .tl-content{flex:1;padding:5px 0 20px 16px}
.cnp-s2 .tl-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:4px}
.cnp-s2 .tl-body{font-size:13px;color:var(--navyM);line-height:1.65;max-height:0;overflow:hidden;transition:max-height .5s ease,opacity .4s ease;opacity:0}
.cnp-s2 .tl-step.active .tl-body,.cnp-s2 .tl-step.done .tl-body{max-height:400px;opacity:1}
.cnp-s2 .tl-say{background:var(--skyXL);border-left:3px solid var(--sky);border-radius:0 6px 6px 0;padding:10px 13px;margin-top:8px;font-size:13px;font-style:italic;color:var(--navy)}
.cnp-s2 .tl-warn{margin-top:8px;font-size:12.5px;color:var(--warn);display:flex;align-items:flex-start;gap:5px}
.cnp-s2 .tl-hint{font-size:11px;color:var(--skyL);margin-top:12px;font-style:italic}
.cnp-s2 .ex-block{background:var(--skyXL);border-left:4px solid var(--sky);border-radius:0 var(--rs) var(--rs) 0;padding:16px 18px}
.cnp-s2 .ex-label{font-size:11px;font-weight:800;color:var(--sky);text-transform:uppercase;letter-spacing:1.5px;display:flex;align-items:center;gap:6px;margin-bottom:8px}
.cnp-s2 .ex-text{font-size:14px;color:var(--navy);line-height:1.7}
.cnp-s2 .ex-say{background:#fff;border-radius:var(--rs);padding:12px 14px;margin-top:10px;border-left:3px solid var(--mint);font-style:italic;font-size:13.5px;color:var(--navy);line-height:1.6}
.cnp-s2 .ex-outcome{margin-top:10px;font-size:13px;color:var(--navyM);line-height:1.6}
.cnp-s2 .cs-wrap{background:var(--navy);border-radius:0;padding:22px}
.cnp-s2 .cs-label{font-size:10px;font-weight:800;color:var(--mint);text-transform:uppercase;letter-spacing:2px;margin-bottom:12px;display:flex;align-items:center;gap:6px}
.cnp-s2 .cs-text{font-size:14.5px;color:var(--skyL);line-height:1.7}
.cnp-s2 .cs-text strong{color:#fff}
.cnp-s2 .cs-q-box{background:rgba(255,255,255,.06);border-radius:var(--rs);padding:14px;margin-top:14px;border-left:3px solid var(--warn)}
.cnp-s2 .cs-q{font-size:13.5px;font-weight:700;color:#fff;margin-bottom:12px}
.cnp-s2 .cs-choices{display:flex;flex-direction:column;gap:8px}
.cnp-s2 .cs-choice{background:rgba(255,255,255,.07);border:1.5px solid rgba(66,198,243,.22);border-radius:var(--rs);padding:12px 16px;cursor:pointer;font-size:13px;color:#fff;display:flex;align-items:flex-start;gap:10px;transition:all .2s;font-family:var(--font);text-align:left;width:100%}
.cnp-s2 .cs-choice:hover{background:rgba(66,198,243,.12);border-color:var(--sky);transform:translateX(4px)}
.cnp-s2 .cs-choice.correct{background:rgba(133,230,142,.18);border-color:var(--mint)}
.cnp-s2 .cs-choice.wrong{background:rgba(231,76,60,.14);border-color:var(--red);animation:shake .4s ease}
.cnp-s2 .cs-choice.disabled{pointer-events:none}
.cnp-s2 .cs-ltr{width:28px;height:28px;border-radius:50%;border:1.5px solid rgba(66,198,243,.4);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;flex-shrink:0;font-family:var(--font)}
.cnp-s2 .cs-fb{display:none;margin-top:12px;padding:13px;border-radius:var(--rs);font-size:13.5px;line-height:1.6;animation:fadeUp .35s ease}
.cnp-s2 .cs-fb.show{display:block}
.cnp-s2 .cs-fb.correct{background:rgba(133,230,142,.15);border:1px solid rgba(133,230,142,.4);color:var(--mintL)}
.cnp-s2 .cs-fb.wrong{background:rgba(231,76,60,.12);border:1px solid rgba(231,76,60,.4);color:#faa}
.cnp-s2 .cs-fb strong{display:flex;align-items:center;gap:6px;margin-bottom:6px;font-size:14px}
.cnp-s2 .cs-bp{display:none;margin-top:14px;background:rgba(66,198,243,.1);border:1px solid rgba(66,198,243,.28);border-radius:var(--rs);padding:14px;animation:fadeUp .4s ease}
.cnp-s2 .cs-bp.show{display:block}
.cnp-s2 .cs-bp-title{font-size:11px;font-weight:800;color:var(--sky);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px}
.cnp-s2 .cs-bp-list{list-style:none;display:flex;flex-direction:column;gap:6px}
.cnp-s2 .cs-bp-list li{display:flex;align-items:flex-start;gap:7px;font-size:13px;color:var(--skyL);line-height:1.45}
.cnp-s2 .cs-bp-list li::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--mint);flex-shrink:0;margin-top:5px}
.cnp-s2 .cs-next{display:none;margin-top:14px;background:linear-gradient(135deg,var(--sky),var(--mint));border:none;border-radius:var(--rs);padding:11px 22px;font-size:14px;font-weight:800;color:var(--navy);cursor:pointer;font-family:var(--font);align-items:center;gap:7px;transition:opacity .2s}
.cnp-s2 .cs-next.show{display:inline-flex;animation:scaleIn .35s ease}
.cnp-s2 .cs-next:hover{opacity:.88}
.cnp-s2 .match-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:550px){.cnp-s2 .match-grid{grid-template-columns:1fr}}
.cnp-s2 .match-col-title{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--navyL);margin-bottom:8px;padding:0 4px}
.cnp-s2 .match-items{display:flex;flex-direction:column;gap:8px}
.cnp-s2 .match-term,.cnp-s2 .match-def{padding:12px 14px;border-radius:var(--rs);cursor:pointer;font-size:13px;line-height:1.45;border:2px solid;transition:all .2s;font-family:var(--font);text-align:left;width:100%;position:relative}
.cnp-s2 .match-term{background:var(--skyXL);border-color:var(--skyL);color:var(--navy);font-weight:600}
.cnp-s2 .match-def{background:var(--mintLL);border-color:var(--mintL);color:var(--navy)}
.cnp-s2 .match-term:hover,.cnp-s2 .match-def:hover{transform:translateY(-2px);box-shadow:var(--shs)}
.cnp-s2 .match-term.selected{border-color:var(--sky);box-shadow:0 0 0 3px rgba(66,198,243,.25)}
.cnp-s2 .match-def.selected{border-color:var(--mint);box-shadow:0 0 0 3px rgba(133,230,142,.25)}
.cnp-s2 .match-term.matched,.cnp-s2 .match-def.matched{border-color:var(--mint);background:var(--mintLL);pointer-events:none}
.cnp-s2 .match-term.wrong,.cnp-s2 .match-def.wrong{animation:shake .4s;border-color:var(--red);background:var(--redL)}
.cnp-s2 .match-badge{position:absolute;right:10px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;background:var(--mint);display:none;align-items:center;justify-content:center;font-size:11px;font-weight:900;color:var(--navy)}
.cnp-s2 .match-term.matched .match-badge,.cnp-s2 .match-def.matched .match-badge{display:flex}
.cnp-s2 .match-score{text-align:center;font-size:14px;font-weight:700;color:var(--navy);margin-top:12px;display:none;animation:fadeIn .4s}
.cnp-s2 .match-score.show{display:block}
.cnp-s2 .hs-scene{background:linear-gradient(135deg,var(--navyM),var(--navyL));border-radius:0;padding:22px}
.cnp-s2 .hs-desc{font-size:14px;color:var(--skyL);line-height:1.7;margin-bottom:16px}
.cnp-s2 .hs-desc strong{color:#fff}
.cnp-s2 .hs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.cnp-s2 .hs-item{background:rgba(255,255,255,.08);border:1.5px solid rgba(66,198,243,.22);border-radius:var(--rs);padding:14px;cursor:pointer;transition:all .25s;text-align:center;font-family:var(--font)}
.cnp-s2 .hs-item:hover{border-color:var(--sky);background:rgba(66,198,243,.1);transform:translateY(-3px)}
.cnp-s2 .hs-item.hazard{border-color:transparent}
.cnp-s2 .hs-item.safe{border-color:transparent}
.cnp-s2 .hs-item.found.hazard{border-color:var(--red);background:rgba(231,76,60,.14)}
.cnp-s2 .hs-item.found.safe{border-color:var(--mint);background:rgba(133,230,142,.14)}
.cnp-s2 .hs-item.found{pointer-events:none}
.cnp-s2 .hs-emoji{font-size:28px;margin-bottom:6px}
.cnp-s2 .hs-name{font-size:12px;font-weight:600;color:#fff}
.cnp-s2 .hs-reveal{display:none;margin-top:8px;font-size:11.5px;line-height:1.4;padding:7px;border-radius:6px}
.cnp-s2 .hs-item.found.hazard .hs-reveal{display:block;background:rgba(231,76,60,.2);color:#faa}
.cnp-s2 .hs-item.found.safe .hs-reveal{display:block;background:rgba(133,230,142,.15);color:var(--mintL)}
.cnp-s2 .hs-counter{font-size:13px;font-weight:700;color:var(--sky);margin-top:14px;text-align:center}
.cnp-s2 .kcheck{background:#fff;border:2px solid var(--skyL);border-radius:var(--r);padding:20px}
.cnp-s2 .kcheck-lbl{font-size:10.5px;font-weight:800;color:var(--sky);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:12px}
.cnp-s2 .kcheck-q{font-size:15px;font-weight:700;color:var(--navy);margin-bottom:14px;line-height:1.45}
.cnp-s2 .kcheck-opts{display:flex;flex-direction:column;gap:8px}
.cnp-s2 .kcheck-opt{background:var(--offW);border:1.5px solid var(--skyL);border-radius:var(--rs);padding:11px 16px;cursor:pointer;font-size:13.5px;color:var(--navy);transition:all .2s;display:flex;align-items:center;gap:11px;font-family:var(--font);text-align:left;width:100%}
.cnp-s2 .kcheck-opt:hover{border-color:var(--sky);background:var(--skyXL);transform:translateX(3px)}
.cnp-s2 .kcheck-opt.correct{border-color:var(--mint);background:var(--mintLL)}
.cnp-s2 .kcheck-opt.wrong{border-color:var(--red);background:var(--redL);animation:shake .4s ease}
.cnp-s2 .kcheck-opt.disabled{pointer-events:none}
.cnp-s2 .kcheck-ltr{width:28px;height:28px;border-radius:50%;border:1.5px solid var(--skyL);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;flex-shrink:0;transition:all .2s}
.cnp-s2 .kcheck-opt.correct .kcheck-ltr{background:var(--mint);border-color:var(--mint);color:var(--navy)}
.cnp-s2 .kcheck-opt.wrong .kcheck-ltr{background:var(--red);border-color:var(--red);color:#fff}
.cnp-s2 .kcheck-res{display:none;margin-top:12px;padding:13px;border-radius:var(--rs);font-size:13.5px;line-height:1.55}
.cnp-s2 .kcheck-res.show{display:block;animation:fadeUp .35s ease}
.cnp-s2 .kcheck-res.correct{background:var(--mintLL);border:1px solid var(--mintL);color:var(--navy)}
.cnp-s2 .kcheck-res.wrong{background:var(--redL);border:1px solid #fcc;color:var(--navy)}
.cnp-s2 .kcheck-res strong{display:flex;align-items:center;gap:6px;margin-bottom:5px;font-size:14px}
.cnp-s2 .qf-wrap{background:var(--navy);border-radius:0;padding:22px}
.cnp-s2 .qf-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.cnp-s2 .qf-title{font-size:11px;font-weight:800;color:var(--mint);text-transform:uppercase;letter-spacing:1.5px}
.cnp-s2 .qf-score-disp{font-size:13px;font-weight:800;color:var(--sky)}
.cnp-s2 .qf-pips{display:flex;gap:5px;margin-bottom:14px}
.cnp-s2 .qf-pip{width:26px;height:5px;border-radius:3px;background:rgba(255,255,255,.15);transition:all .3s}
.cnp-s2 .qf-pip.done.correct{background:var(--mint)}
.cnp-s2 .qf-pip.done.wrong{background:var(--red)}
.cnp-s2 .qf-pip.current{background:var(--sky)}
.cnp-s2 .qf-q{display:none}.cnp-s2 .qf-q.active{display:block;animation:fadeUp .3s ease}
.cnp-s2 .qf-q-text{font-size:15px;font-weight:700;color:#fff;margin-bottom:13px}
.cnp-s2 .qf-opts{display:flex;flex-direction:column;gap:8px}
.cnp-s2 .qf-opt{background:rgba(255,255,255,.08);border:1.5px solid rgba(66,198,243,.22);border-radius:var(--rs);padding:11px 14px;cursor:pointer;font-size:13px;color:#fff;transition:all .2s;font-family:var(--font);text-align:left;width:100%}
.cnp-s2 .qf-opt:hover{background:rgba(66,198,243,.15);border-color:var(--sky)}
.cnp-s2 .qf-opt.correct{background:rgba(133,230,142,.2);border-color:var(--mint)}
.cnp-s2 .qf-opt.wrong{background:rgba(231,76,60,.15);border-color:var(--red);animation:shake .35s}
.cnp-s2 .qf-opt.disabled{pointer-events:none}
.cnp-s2 .qf-fb{display:none;font-size:12.5px;margin-top:8px;padding:8px 12px;border-radius:6px;line-height:1.5}
.cnp-s2 .qf-fb.show{display:block;animation:fadeIn .3s}
.cnp-s2 .qf-fb.correct{background:rgba(133,230,142,.15);color:var(--mintL)}
.cnp-s2 .qf-fb.wrong{background:rgba(231,76,60,.12);color:#faa}
.cnp-s2 .qf-result{display:none;text-align:center;padding:22px}
.cnp-s2 .qf-result.show{display:block;animation:scaleIn .4s ease}
.cnp-s2 .qf-rnum{font-size:52px;font-weight:900;color:var(--mint)}
.cnp-s2 .qf-rlbl{font-size:14px;color:var(--skyL);margin-top:4px}
.cnp-s2 .qf-retry{background:rgba(66,198,243,.15);border:1.5px solid var(--sky);border-radius:var(--rs);padding:9px 20px;font-size:13px;font-weight:700;color:var(--sky);cursor:pointer;font-family:var(--font);margin-top:14px;transition:all .2s}
.cnp-s2 .qf-retry:hover{background:rgba(66,198,243,.25)}
.cnp-s2 .flip-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.cnp-s2 .flip-card{height:130px;perspective:1000px;cursor:pointer}
.cnp-s2 .flip-inner{width:100%;height:100%;transition:transform .5s ease;transform-style:preserve-3d;position:relative}
.cnp-s2 .flip-card.flipped .flip-inner{transform:rotateY(180deg)}
.cnp-s2 .flip-front,.cnp-s2 .flip-back{position:absolute;width:100%;height:100%;backface-visibility:hidden;border-radius:var(--rs);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px;text-align:center}
.cnp-s2 .flip-front{background:linear-gradient(135deg,var(--navyM),var(--navyL));border:1.5px solid rgba(66,198,243,.25)}
.cnp-s2 .flip-back{background:var(--mintLL);border:1.5px solid var(--mintL);transform:rotateY(180deg)}
.cnp-s2 .flip-emoji{font-size:26px;margin-bottom:7px}
.cnp-s2 .flip-ft{font-size:13px;font-weight:700;color:#fff}
.cnp-s2 .flip-bt{font-size:12.5px;color:var(--navy);line-height:1.5}
.cnp-s2 .flip-hint{font-size:11px;color:var(--skyL);text-align:center;margin-top:6px}
.cnp-s2 .ig{display:flex;flex-direction:column;gap:10px}
.cnp-s2 .ig-item{display:flex;align-items:flex-start;gap:12px;background:#fff;border-radius:var(--rs);padding:14px;border:1px solid var(--skyL)}
.cnp-s2 .ig-num{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--sky),var(--mint));display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;color:var(--navy);flex-shrink:0}
.cnp-s2 .ig-lbl{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:3px}
.cnp-s2 .ig-txt{font-size:13px;color:var(--navyM);line-height:1.55}
.cnp-s2 .alert-b{border-radius:var(--rs);padding:14px 16px;display:flex;align-items:flex-start;gap:12px}
.cnp-s2 .alert-b.info{background:var(--skyXL);border-left:4px solid var(--sky)}
.cnp-s2 .alert-b.warn{background:var(--warnL);border-left:4px solid var(--warn)}
.cnp-s2 .alert-b.critical{background:var(--redL);border-left:4px solid var(--red)}
.cnp-s2 .alert-b.success{background:var(--mintLL);border-left:4px solid var(--mint)}
.cnp-s2 .alert-b svg{width:22px;height:22px;flex-shrink:0;margin-top:1px}
.cnp-s2 .alert-txt{font-size:13.5px;color:var(--navy);line-height:1.6}
.cnp-s2 .alert-txt strong{display:block;margin-bottom:3px}
.cnp-s2 .ta-list{display:flex;flex-direction:column;gap:10px}
.cnp-s2 .ta-item{display:flex;align-items:flex-start;gap:13px;background:#fff;border-radius:var(--rs);padding:13px 15px;border:1px solid var(--skyL)}
.cnp-s2 .ta-num{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,var(--sky),var(--mint));display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:900;color:var(--navy);flex-shrink:0}
.cnp-s2 .ta-txt{font-size:14px;color:var(--navyM);line-height:1.55;padding-top:4px}
.cnp-s2 .complete-sec{text-align:center;padding:12px 0 6px;opacity:.45;pointer-events:none;transition:all .45s}
.cnp-s2 .complete-sec.ready{opacity:1;pointer-events:all}
.cnp-s2 .complete-btn{background:linear-gradient(135deg,var(--sky),var(--mint));border:none;border-radius:var(--r);padding:15px 38px;font-size:16px;font-weight:900;color:var(--navy);cursor:pointer;font-family:var(--font);box-shadow:0 4px 20px rgba(66,198,243,.35);transition:transform .2s,box-shadow .2s;display:inline-flex;align-items:center;gap:10px}
.cnp-s2 .complete-btn:hover{transform:translateY(-3px);box-shadow:0 8px 30px rgba(66,198,243,.45)}
.cnp-s2 .complete-note{font-size:12px;color:var(--navyL);margin-top:8px;opacity:.65}
.cnp-s2 .complete-req{font-size:12px;color:var(--warn);margin-top:6px}
.cnp-s2 .lf{background:var(--navy);padding:14px 32px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px}
.cnp-s2 .lf-brand{font-size:11px;color:var(--mint);font-weight:800;letter-spacing:1.5px}
.cnp-s2 .lf-note{font-size:10px;color:rgba(168,228,250,.5)}
.cnp-s2 .confetti-piece{position:fixed;pointer-events:none;z-index:9999;animation:confettiFall 1.2s ease-in forwards}
@media(max-width:600px){.cnp-s2 .lh-inner{padding:18px 16px}.cnp-s2 .lb{padding:16px 12px 36px}.cnp-s2 .stats-row{grid-template-columns:1fr 1fr}.cnp-s2 .match-grid{grid-template-columns:1fr}}
