:root{--navy:#073b5c;--deep:#052f49;--blue:#0b7eb5;--aqua:#44c7c9;--ice:#eaf8fb;--cream:#fffaf0;--coral:#f36f56;--yellow:#f3c64e;--ink:#132f3d;--muted:#58717c;--white:#fff;--line:#cfe4ea;--shadow:0 18px 55px rgba(4,55,82,.13);--radius:26px;--base:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px;font-size:var(--base)}body{margin:0;color:var(--ink);background:#f8fcfd;font-family:Inter,ui-rounded,"Aptos",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}body.high-contrast{--navy:#001e30;--deep:#00131f;--blue:#005d8d;--aqua:#00aeb3;--ice:#fff;--cream:#fff;--ink:#000;--muted:#263238;--line:#444}a{color:inherit}.skip-link{position:fixed;left:1rem;top:-4rem;background:#fff;color:#000;padding:.7rem 1rem;z-index:1001;border:3px solid #000;border-radius:8px}.skip-link:focus{top:1rem}.topbar{position:sticky;top:0;z-index:1000;display:flex;align-items:center;gap:1.4rem;min-height:78px;padding:10px clamp(16px,4vw,64px);background:rgba(255,255,255,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(7,59,92,.08);box-shadow:0 4px 22px rgba(7,59,92,.06)}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;white-space:nowrap}.brand>span:last-child{display:flex;flex-direction:column;line-height:1.1}.brand strong{font-size:1.18rem;color:var(--navy);letter-spacing:-.02em}.brand small{font-size:.63rem;margin-top:.2rem;color:var(--muted);letter-spacing:.02em}.brand-mark{width:43px;height:43px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;gap:3px;background:var(--navy);padding:11px 7px;overflow:hidden}.brand-mark span{height:3px;border-radius:50%;background:var(--aqua);transform:rotate(-5deg)}.brand-mark span:nth-child(2){transform:translateX(6px) rotate(-5deg);background:white}.nav{display:flex;align-items:center;justify-content:center;gap:.15rem;margin-left:auto}.nav a{font-size:.82rem;font-weight:800;text-decoration:none;padding:.6rem .72rem;border-radius:999px;color:#496672;transition:.2s}.nav a:hover,.nav a.active{background:var(--ice);color:var(--navy)}.access-tools{display:flex;border:1px solid var(--line);border-radius:999px;padding:2px;background:#fff}.access-tools button,.nav-toggle{border:0;background:transparent;font:inherit;font-weight:800;color:var(--navy);padding:.44rem .48rem;cursor:pointer;border-radius:999px}.access-tools button:hover{background:var(--ice)}.nav-toggle{display:none;margin-left:auto;border:1px solid var(--line);padding:.55rem .8rem}.section{padding:clamp(72px,8vw,120px) clamp(20px,6vw,96px)}.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:minmax(0,1.06fr) minmax(400px,.94fr);align-items:center;gap:clamp(36px,6vw,90px);padding-top:66px;background:radial-gradient(circle at 12% 10%,#fff 0,#fff0 35%),linear-gradient(135deg,#f8feff,#e5f7f7 72%,#d9f1f3);overflow:hidden}.eyebrow{display:inline-block;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.2em;color:var(--blue);margin-bottom:.85rem}.eyebrow.light{color:#8ce6e2}.hero h1{font-size:clamp(3rem,6.4vw,6.4rem);line-height:.94;letter-spacing:-.065em;margin:0;max-width:950px;color:var(--navy)}.hero h1 em{font-style:normal;color:var(--coral)}.lead{max-width:780px;font-size:clamp(1.04rem,1.5vw,1.28rem);color:#385866;margin:1.7rem 0}.hero-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin:2rem 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;border-radius:999px;padding:.88rem 1.35rem;border:2px solid transparent;text-decoration:none;font:inherit;font-weight:900;cursor:pointer;transition:.2s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(7,59,92,.15)}.button.primary{background:var(--navy);color:#fff}.button.secondary{background:#fff;color:var(--navy);border-color:#b8d5dd}.button.full{width:100%}.hero-facts{display:flex;gap:clamp(18px,4vw,50px);margin-top:2.2rem}.hero-facts div{display:flex;flex-direction:column}.hero-facts b{font-size:1.7rem;line-height:1;color:var(--navy)}.hero-facts span{font-size:.72rem;font-weight:700;color:var(--muted);margin-top:.35rem;max-width:115px}.hero-art{position:relative;min-height:600px;border-radius:48% 52% 45% 55% / 52% 43% 57% 48%;overflow:hidden;background:linear-gradient(#a7e0ed 0 48%,#1c91b5 49%,#046386 100%);box-shadow:var(--shadow)}.sun{position:absolute;width:84px;height:84px;border-radius:50%;background:#ffd86a;right:15%;top:12%;box-shadow:0 0 0 18px rgba(255,216,106,.18)}.cloud{position:absolute;width:80px;height:22px;background:#fff;border-radius:30px;opacity:.82}.cloud:before,.cloud:after{content:"";position:absolute;background:#fff;border-radius:50%;width:36px;height:36px;top:-16px}.cloud:before{left:13px}.cloud:after{right:8px;width:29px;height:29px;top:-9px}.c1{left:9%;top:17%}.c2{right:9%;top:28%;transform:scale(.7)}.mountain{position:absolute;bottom:46%;width:0;height:0;border-left:130px solid transparent;border-right:130px solid transparent;border-bottom:190px solid #4c8b8f}.m1{left:-4%}.m2{left:27%;transform:scale(.72);transform-origin:bottom}.mountain:after{content:"";position:absolute;left:-45px;top:43px;width:90px;height:75px;background:#f8ffff;clip-path:polygon(50% 0,100% 100%,68% 80%,48% 100%,27% 75%,0 100%)}.island{position:absolute;bottom:43%;left:2%;right:2%;height:54px;border-radius:50%;background:#3e7771;box-shadow:0 18px 0 #2b655f}.island span{position:absolute;left:20%;top:8px;font-size:.58rem;font-weight:900;letter-spacing:.35em;color:#d8f3e9}.wave{position:absolute;left:-15%;width:130%;height:90px;border-radius:45%;border-top:6px solid rgba(255,255,255,.85)}.w1{bottom:27%;transform:rotate(-4deg)}.w2{bottom:15%;transform:rotate(4deg);opacity:.55}.w3{bottom:3%;transform:rotate(-2deg);opacity:.38}.swimmer{position:absolute;right:18%;bottom:24%;width:165px;height:110px;transform:rotate(-7deg);z-index:3}.swimmer i{position:absolute;right:0;top:12px;width:43px;height:43px;background:#f4a37f;border-radius:50%}.swimmer b{position:absolute;right:35px;top:37px;width:98px;height:27px;background:var(--coral);border-radius:50px;transform:rotate(8deg)}.swimmer span:before,.swimmer span:after{content:"";position:absolute;width:90px;height:14px;background:#f4a37f;border-radius:20px;right:60px;top:30px;transform-origin:right}.swimmer span:before{transform:rotate(-28deg)}.swimmer span:after{transform:rotate(38deg)}.art-note{position:absolute;left:8%;bottom:8%;background:#fff;padding:.7rem 1rem;border-radius:16px;box-shadow:var(--shadow);display:flex;flex-direction:column;line-height:1.2}.art-note strong{color:var(--navy)}.art-note span{font-size:.72rem;color:var(--muted)}.statement-strip{background:var(--navy);color:#fff;padding:1.15rem 5vw;text-align:center}.statement-strip p{margin:0;font-size:clamp(.9rem,1.4vw,1.12rem);letter-spacing:.01em}.statement-strip strong{color:#91e3df}.section-heading{max-width:780px;margin-bottom:2.8rem}.section-heading.split{max-width:none;display:flex;align-items:end;justify-content:space-between;gap:2rem}.section-heading h2{font-size:clamp(2.25rem,4.5vw,4.7rem);letter-spacing:-.055em;line-height:1;margin:.15rem 0 1rem;color:var(--navy)}.section-heading p{font-size:1.05rem;color:var(--muted);margin:0}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.feature-card{position:relative;min-height:330px;border-radius:var(--radius);padding:2rem;border:1px solid rgba(7,59,92,.07);overflow:hidden;box-shadow:0 12px 35px rgba(5,55,75,.07)}.feature-card:after{content:"";position:absolute;width:170px;height:170px;border:28px solid rgba(255,255,255,.28);border-radius:50%;right:-65px;bottom:-70px}.feature-card.coral{background:#fff1ec}.feature-card.blue{background:#e8f8fb}.feature-card.yellow{background:#fff8dc}.feature-no{position:absolute;right:1.5rem;top:1.4rem;font-size:.8rem;font-weight:900;color:rgba(7,59,92,.36)}.feature-icon{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:#fff;color:var(--navy);font-size:1.7rem;box-shadow:0 8px 20px rgba(7,59,92,.09)}.feature-card h3{font-size:1.6rem;margin:1.4rem 0 .5rem;color:var(--navy)}.feature-card p{color:#42616c}.feature-card small{position:absolute;bottom:1.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;color:var(--navy)}.technique{background:var(--navy);color:#fff}.technique .section-heading h2,.safety .section-heading h2{color:#fff}.technique .section-heading p,.safety .section-heading p{color:#b7d4df}.filter-pills{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:flex-end}.filter-pills button{border:1px solid rgba(255,255,255,.22);background:transparent;color:#d5edf2;border-radius:999px;padding:.6rem .85rem;font:inherit;font-size:.78rem;font-weight:900;cursor:pointer}.filter-pills button:hover,.filter-pills button.active{background:#fff;color:var(--navy)}.video-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.video-card{position:relative;min-height:300px;border-radius:22px;overflow:hidden;background:#0f5271;border:1px solid rgba(255,255,255,.13);cursor:pointer;transition:.25s;color:#fff}.video-card:hover{transform:translateY(-7px);box-shadow:0 24px 45px rgba(0,0,0,.25)}.video-card .visual{height:155px;position:relative;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#0e90ad,#44c7c9)}.video-card:nth-child(2n) .visual{background:linear-gradient(135deg,#f07b63,#f1b75d)}.video-card:nth-child(3n) .visual{background:linear-gradient(135deg,#5369b6,#45bfc5)}.visual .lane{position:absolute;width:150%;height:11px;border-top:3px dashed rgba(255,255,255,.8);border-bottom:3px dashed rgba(255,255,255,.7);transform:rotate(-7deg)}.stroke-figure{position:relative;width:130px;height:75px}.stroke-figure i{position:absolute;right:5px;top:15px;width:28px;height:28px;border-radius:50%;background:#ffd0aa}.stroke-figure b{position:absolute;right:28px;top:34px;width:75px;height:16px;border-radius:20px;background:#ffe5c2;transform:rotate(7deg)}.stroke-figure:before,.stroke-figure:after{content:"";position:absolute;width:70px;height:9px;background:#ffe5c2;border-radius:10px;right:45px;top:29px;transform-origin:right}.stroke-figure:before{transform:rotate(-28deg)}.stroke-figure:after{transform:rotate(34deg)}.play{position:absolute;right:1rem;bottom:.8rem;width:48px;height:48px;border-radius:50%;background:#fff;color:var(--navy);display:grid;place-items:center;font-size:1.2rem;padding-left:3px;box-shadow:0 8px 20px rgba(0,0,0,.2)}.video-card .copy{padding:1.15rem}.video-card small{font-size:.62rem;text-transform:uppercase;letter-spacing:.16em;color:#88e4df;font-weight:900}.video-card h3{font-size:1.18rem;margin:.35rem 0}.video-card p{margin:0;color:#bcd8e2;font-size:.78rem}.video-note{text-align:center;color:#a9cbd5;font-size:.78rem;margin:1.4rem auto 0;max-width:900px}.pathway{background:var(--cream)}.grade-tabs{display:grid;grid-template-columns:repeat(10,1fr);gap:.35rem;margin-bottom:1rem}.grade-tabs button{border:1px solid var(--line);background:#fff;color:var(--navy);border-radius:14px;padding:.78rem .25rem;font:inherit;font-weight:900;cursor:pointer}.grade-tabs button.active{background:var(--coral);border-color:var(--coral);color:#fff;box-shadow:0 8px 20px rgba(243,111,86,.25)}.pathway-panel{background:#fff;border:1px solid #e2e7e3;border-radius:var(--radius);padding:clamp(20px,4vw,42px);box-shadow:var(--shadow)}.pathway-head{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--line)}.pathway-head h3{font-size:2rem;margin:.2rem 0;color:var(--navy)}.pathway-head p{margin:0;color:var(--muted)}.stage-label{font-size:.7rem;color:var(--coral);text-transform:uppercase;font-weight:900;letter-spacing:.17em}.progress-ring{--progress:0%;width:104px;height:104px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:none;background:radial-gradient(circle,#fff 58%,transparent 60%),conic-gradient(var(--aqua) var(--progress),#e5eff1 0)}.progress-ring span{font-size:1.35rem;font-weight:900;color:var(--navy);line-height:1}.progress-ring small{font-size:.55rem;color:var(--muted);margin-top:.3rem}.goal-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;margin-top:1.25rem}.goal{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:.75rem;border:1px solid var(--line);border-radius:16px;padding:.8rem;background:#fbfefe}.goal-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--ice);color:var(--blue);font-weight:900}.goal strong{display:block;font-size:.9rem;color:var(--ink);line-height:1.25}.goal small{display:block;color:var(--muted);font-size:.67rem;margin-top:.18rem}.status-control{display:flex;background:#eef3f4;border-radius:999px;padding:3px}.status-control button{width:27px;height:27px;border-radius:50%;border:0;background:transparent;cursor:pointer;color:#698088;font-weight:900;font-size:.7rem}.status-control button.training.active{background:#ef8b75;color:#fff}.status-control button.going.active{background:#f1c454;color:#4b3b00}.status-control button.reached.active{background:#3bbda8;color:#fff}.legend{display:flex;justify-content:flex-end;gap:1rem;flex-wrap:wrap;margin-top:1rem;font-size:.68rem;color:var(--muted)}.dot{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:.25rem}.dot.training{background:#ef8b75}.dot.going{background:#f1c454}.dot.reached{background:#3bbda8}.safety{background:var(--deep);color:#fff}.safety-badge{width:150px;height:150px;border-radius:50%;border:2px solid var(--aqua);display:grid;place-content:center;text-align:center;color:#bfe9e8;transform:rotate(5deg)}.safety-badge b{color:#fff}.scenario-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.scenario{padding:1.4rem;border:1px solid rgba(255,255,255,.13);border-radius:20px;background:rgba(255,255,255,.055);transition:.2s}.scenario:hover{background:rgba(255,255,255,.09);transform:translateY(-3px)}.scenario>span{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--aqua);color:var(--deep);font-size:1.5rem;font-weight:900}.scenario h3{font-size:1.3rem;margin:1rem 0 .35rem}.scenario p{color:#b8d5dc;font-size:.84rem;min-height:70px}.scenario button{border:0;background:transparent;color:#8ce6e2;padding:0;font:inherit;font-size:.76rem;font-weight:900;cursor:pointer}.rescue-rule{margin-top:2rem;border-radius:var(--radius);padding:clamp(20px,3vw,38px);background:var(--coral);display:grid;grid-template-columns:.9fr 1.4fr;gap:2rem}.rule-title{display:flex;gap:1rem;align-items:center}.rule-title>span{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:#fff;color:var(--coral);font-size:2rem;font-weight:900;flex:none}.rule-title small{text-transform:uppercase;letter-spacing:.12em;font-weight:900}.rule-title h3{font-size:1.5rem;line-height:1.15;margin:.3rem 0}.rescue-rule ol{list-style:none;padding:0;margin:0;display:grid;gap:.55rem}.rescue-rule li{display:grid;grid-template-columns:34px 1fr;gap:.7rem;align-items:center;background:rgba(255,255,255,.14);padding:.65rem;border-radius:13px}.rescue-rule li>b{display:grid;place-items:center;width:32px;height:32px;background:#fff;color:var(--coral);border-radius:50%}.rescue-rule strong,.rescue-rule li span{display:block}.rescue-rule li span{font-size:.72rem;color:#fff6f3}.firstaid{background:#f8fcfd}.aid-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:1.4rem}.aid-steps{display:grid;gap:.8rem}.aid-step{display:grid;grid-template-columns:58px 1fr;align-items:center;gap:1rem;padding:1rem 1.2rem;border:1px solid var(--line);border-radius:18px;background:#fff}.aid-step>span{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--ice);color:var(--blue);font-weight:900;font-size:1.2rem}.aid-step.emergency{border-color:#f6b0a4;background:#fff8f6}.aid-step.emergency>span{background:var(--coral);color:#fff}.aid-step h3{margin:0;color:var(--navy)}.aid-step p{margin:.2rem 0 0;color:var(--muted);font-size:.82rem}.release-card{background:var(--navy);color:#fff;padding:1.6rem;border-radius:22px;box-shadow:var(--shadow)}.release-card .eyebrow{color:#8ce6e2}.release-card h3{font-size:1.65rem;margin:0 0 .8rem}.warning{padding:.8rem;background:rgba(243,198,78,.15);border-left:4px solid var(--yellow);border-radius:8px;color:#fff3c5;font-size:.78rem}.release-card ul{padding-left:1.1rem}.release-card li{margin:.7rem 0;color:#c3dde5;font-size:.8rem}.release-card li b{color:#fff}.release-card .button{background:#fff;color:var(--navy);font-size:.78rem;margin-top:.6rem}.aid-callout{margin-top:1.3rem;border-radius:20px;background:#e9f8f7;padding:1rem 1.4rem;display:flex;align-items:center;gap:1.2rem}.aid-callout>b{font-size:2.3rem;color:var(--coral);line-height:1}.aid-callout span{display:flex;flex-direction:column}.aid-callout small{color:var(--muted)}.teacher{background:#e7f5f5}.local-note{background:#fff;border:1px solid var(--line);border-radius:16px;padding:.7rem 1rem;font-weight:900;color:var(--navy);font-size:.78rem}.local-note small{font-weight:600;color:var(--muted)}.planner{display:grid;grid-template-columns:320px 1fr;background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.planner-controls{padding:1.5rem;background:var(--navy);display:grid;align-content:start;gap:1rem}.planner-controls label{display:grid;gap:.35rem;color:#bfe1e8;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900}.planner-controls select{width:100%;border:1px solid rgba(255,255,255,.2);border-radius:11px;background:#fff;color:var(--ink);padding:.72rem;font:inherit;font-size:.82rem;text-transform:none;letter-spacing:0}.planner-controls .button{background:var(--coral);margin-top:.4rem}.lesson-output{min-height:350px;padding:1.7rem}.empty-state{text-align:center;display:grid;place-items:center;align-content:center;height:100%;min-height:300px;color:var(--muted)}.empty-state>span{font-size:3rem;color:var(--aqua)}.empty-state h3{color:var(--navy);margin:.4rem}.lesson-plan h3{font-size:1.55rem;color:var(--navy);margin:0}.lesson-plan>p{color:var(--muted);margin:.25rem 0 1rem}.timeline{display:grid;gap:.5rem}.timeline-row{display:grid;grid-template-columns:75px 1fr;gap:.8rem;padding:.6rem 0;border-top:1px solid var(--line)}.timeline-row b{color:var(--coral);font-size:.78rem}.timeline-row strong{display:block;color:var(--navy);font-size:.9rem}.timeline-row span{display:block;color:var(--muted);font-size:.75rem}.lesson-actions{display:flex;gap:.5rem;margin-top:1rem}.lesson-actions button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.55rem .8rem;font:inherit;font-weight:900;color:var(--navy);cursor:pointer}.mini-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}.mini-tools article{display:flex;gap:.8rem;background:#fff;padding:1rem;border-radius:16px}.mini-tools article>span{display:grid;place-items:center;width:38px;height:38px;background:var(--ice);border-radius:11px;color:var(--blue);font-weight:900;flex:none}.mini-tools h3{font-size:.92rem;margin:0;color:var(--navy)}.mini-tools p{font-size:.7rem;color:var(--muted);margin:.25rem 0}.quiz-section{background:var(--navy)}.quiz-card{display:grid;grid-template-columns:.75fr 1.25fr;gap:2rem;align-items:center;color:#fff}.quiz-card h2{font-size:3rem;letter-spacing:-.04em;margin:0}.quiz-card>div:first-child p{color:#b9d9e2}.quiz-box{background:#fff;color:var(--ink);border-radius:var(--radius);padding:1.5rem;min-height:290px}.quiz-progress{font-size:.65rem;text-transform:uppercase;letter-spacing:.12em;color:var(--blue);font-weight:900}.quiz-box h3{font-size:1.3rem;color:var(--navy)}.quiz-options{display:grid;gap:.55rem}.quiz-options button{border:1px solid var(--line);background:#f9fcfd;border-radius:12px;padding:.75rem 1rem;text-align:left;font:inherit;font-weight:800;color:var(--ink);cursor:pointer}.quiz-options button:hover{border-color:var(--aqua);background:var(--ice)}.quiz-result{text-align:center}.quiz-result b{font-size:4rem;color:var(--coral)}footer{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:2rem;background:#031f31;color:#b7cdd5;padding:3.2rem clamp(20px,6vw,96px) 1.4rem}footer .brand strong{color:#fff}footer .brand small{color:#9db7c1}footer p{max-width:430px;font-size:.75rem}footer h3{color:#fff;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}footer>div:not(:first-child):not(.footer-bottom){display:flex;flex-direction:column;gap:.45rem}footer>div a{font-size:.75rem;text-decoration:none}footer>div a:hover{color:#fff}.footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:1rem;font-size:.68rem;display:flex;gap:.7rem;align-items:center}.footer-bottom button{margin-left:auto;border:0;background:transparent;color:#89a6b1;text-decoration:underline;cursor:pointer}.video-dialog,.scenario-dialog{width:min(1050px,92vw);max-height:90vh;padding:0;border:0;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.4);overflow:auto}.video-dialog::backdrop,.scenario-dialog::backdrop{background:rgba(2,25,39,.78);backdrop-filter:blur(5px)}.video-dialog{grid-template-columns:1.2fr .8fr;background:#fff}.video-dialog[open]{display:grid}.dialog-video{background:#001c2b;min-height:430px;display:grid;place-items:center}.dialog-video iframe{width:100%;height:100%;min-height:430px;border:0}.dialog-copy{padding:2rem}.dialog-copy h2{color:var(--navy);font-size:2rem;line-height:1;margin:.2rem 0 .8rem}.dialog-copy p{color:var(--muted)}.dialog-close{position:sticky;float:right;top:12px;margin:12px 12px -58px auto;z-index:4;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:var(--navy);font-size:1.5rem;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.2)}.cue-list{display:grid;gap:.55rem;margin:1rem 0}.cue-list span{display:block;background:var(--ice);border-radius:10px;padding:.55rem .7rem;color:var(--navy);font-size:.78rem;font-weight:800}.youtube-link{font-size:.75rem;font-weight:900;color:var(--coral)}.scenario-dialog{max-width:650px;padding:2rem}.scenario-dialog h2{font-size:2rem;color:var(--navy);margin:.2rem 0}.scenario-dialog ul{padding-left:1.1rem}.scenario-dialog li{margin:.7rem 0}.scenario-dialog .remember{background:#fff1ec;border-left:4px solid var(--coral);padding:.8rem;border-radius:9px}.toast{position:fixed;left:50%;bottom:-80px;transform:translateX(-50%);background:var(--navy);color:#fff;border-radius:999px;padding:.75rem 1.2rem;z-index:2000;transition:.3s;font-size:.78rem;font-weight:800;box-shadow:var(--shadow)}.toast.show{bottom:24px}.reveal{animation:fadeUp .65s ease both}@keyframes fadeUp{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media(max-width:1100px){.nav a{font-size:.7rem;padding:.55rem .5rem}.brand small{display:none}.hero{grid-template-columns:1fr 420px}.video-grid{grid-template-columns:repeat(3,1fr)}.scenario-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:860px){.nav-toggle{display:block}.nav{display:none;position:absolute;top:77px;left:0;right:0;background:#fff;box-shadow:var(--shadow);padding:1rem;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{text-align:center;font-size:.85rem}.access-tools{margin-left:0}.hero{grid-template-columns:1fr;min-height:auto}.hero-art{min-height:420px}.hero-copy{padding-top:1rem}.feature-grid,.mini-tools{grid-template-columns:1fr}.feature-card{min-height:270px}.video-grid{grid-template-columns:repeat(2,1fr)}.section-heading.split{align-items:start;flex-direction:column}.grade-tabs{grid-template-columns:repeat(5,1fr)}.goal-list{grid-template-columns:1fr}.rescue-rule{grid-template-columns:1fr}.aid-layout{grid-template-columns:1fr}.planner{grid-template-columns:1fr}.quiz-card{grid-template-columns:1fr}.video-dialog[open]{display:block}.dialog-video,.dialog-video iframe{min-height:48vw}.scenario-grid{grid-template-columns:repeat(2,1fr)}footer{grid-template-columns:1fr 1fr}.footer-bottom{grid-column:1/-1}}@media(max-width:560px){.topbar{padding:9px 12px;gap:.5rem}.brand-mark{width:38px;height:38px}.brand strong{font-size:1rem}.access-tools button{font-size:.72rem;padding:.35rem}.nav-toggle{font-size:.72rem;padding:.48rem}.section{padding:62px 18px}.hero h1{font-size:3.05rem}.hero-art{min-height:340px;border-radius:28px}.hero-facts{gap:1.3rem}.hero-actions{display:grid}.feature-grid,.video-grid,.scenario-grid{grid-template-columns:1fr}.video-card{min-height:280px}.grade-tabs{grid-template-columns:repeat(5,1fr)}.pathway-head{align-items:start}.progress-ring{width:82px;height:82px}.goal{grid-template-columns:36px 1fr}.goal-icon{width:36px;height:36px}.status-control{grid-column:2;justify-self:start}.rescue-rule{padding:1.2rem}.rule-title{align-items:start}.aid-callout{align-items:start}.planner-controls,.lesson-output{padding:1rem}.quiz-card h2{font-size:2.2rem}footer{grid-template-columns:1fr}.footer-bottom{flex-wrap:wrap}.footer-bottom button{margin-left:0}.safety-badge{display:none}}
@media print{.topbar,.hero-art,.filter-pills,.video-grid,.video-note,.scenario-grid,.quiz-section,footer,.access-tools,.nav-toggle,.lesson-actions{display:none!important}.section{padding:18px}.planner{display:block;box-shadow:none}.planner-controls{display:none}.lesson-output{padding:0}.teacher{background:#fff}.section:not(.teacher){display:none}.section-heading{margin-bottom:1rem}}

/* Lifandi forsíða – róleg hreyfing sem virðir reduced-motion stillingu */
.hero-art{isolation:isolate}
.hero-art:after{content:"";position:absolute;inset:48% -25% auto;height:34%;z-index:1;background:linear-gradient(105deg,transparent 20%,rgba(255,255,255,.11) 42%,transparent 64%);transform:translateX(-40%);animation:waterShimmer 7s ease-in-out infinite;pointer-events:none}
.sun{animation:sunBreathe 5.5s ease-in-out infinite}
.c1{animation:cloudDriftOne 11s ease-in-out infinite}
.c2{animation:cloudDriftTwo 14s ease-in-out infinite reverse}
.w1{--wave-rotate:-4deg;animation:waveDrift 5.2s ease-in-out infinite}
.w2{--wave-rotate:4deg;animation:waveDrift 6.4s ease-in-out infinite reverse}
.w3{--wave-rotate:-2deg;animation:waveDrift 7.2s ease-in-out infinite}
.swimmer{animation:swimmerGlide 4.8s ease-in-out infinite;transform-origin:center}
.swimmer span:before{animation:frontArm 2.15s ease-in-out infinite}
.swimmer span:after{animation:backArm 2.15s ease-in-out infinite}
.swim-trail{position:absolute;right:36%;bottom:27%;width:150px;height:72px;z-index:2;animation:trailFloat 4.8s ease-in-out infinite}
.swim-trail span{position:absolute;right:0;width:100%;height:26px;border-top:4px solid rgba(255,255,255,.72);border-radius:50%;animation:trailFade 2.2s ease-in-out infinite}
.swim-trail span:nth-child(2){right:20px;top:19px;width:78%;animation-delay:.35s;opacity:.55}.swim-trail span:nth-child(3){right:43px;top:38px;width:52%;animation-delay:.7s;opacity:.32}
.bubbles{position:absolute;right:12%;bottom:21%;width:120px;height:170px;z-index:4;pointer-events:none}
.bubbles i{position:absolute;bottom:0;width:12px;height:12px;border:2px solid rgba(255,255,255,.74);border-radius:50%;animation:bubbleRise 4s ease-in infinite;opacity:0}.bubbles i:nth-child(1){left:5%;animation-delay:.1s}.bubbles i:nth-child(2){left:28%;width:8px;height:8px;animation-delay:1.1s}.bubbles i:nth-child(3){left:48%;width:16px;height:16px;animation-delay:2.2s}.bubbles i:nth-child(4){left:68%;width:7px;height:7px;animation-delay:3.1s}.bubbles i:nth-child(5){left:87%;width:10px;height:10px;animation-delay:1.8s}
.animation-toggle{position:absolute;right:7%;bottom:7%;z-index:8;display:flex;align-items:center;gap:.45rem;border:1px solid rgba(255,255,255,.6);background:rgba(3,48,70,.62);color:#fff;border-radius:999px;padding:.45rem .72rem;font:inherit;font-size:.64rem;font-weight:900;cursor:pointer;backdrop-filter:blur(7px)}.animation-toggle b{font-size:.58rem;letter-spacing:-.08em}.animation-toggle:hover{background:rgba(3,48,70,.84)}
.hero-art.paused *,.hero-art.paused:after{animation-play-state:paused!important}
@keyframes sunBreathe{0%,100%{box-shadow:0 0 0 18px rgba(255,216,106,.18);transform:scale(1)}50%{box-shadow:0 0 0 31px rgba(255,216,106,.08);transform:scale(1.04)}}
@keyframes cloudDriftOne{0%,100%{transform:translateX(-8px)}50%{transform:translateX(25px)}}
@keyframes cloudDriftTwo{0%,100%{transform:scale(.7) translateX(-12px)}50%{transform:scale(.7) translateX(25px)}}
@keyframes waveDrift{0%,100%{transform:translateX(-1.5%) rotate(var(--wave-rotate)) translateY(0)}50%{transform:translateX(1.5%) rotate(var(--wave-rotate)) translateY(-7px)}}
@keyframes swimmerGlide{0%,100%{transform:translate(-9px,5px) rotate(-8deg)}50%{transform:translate(12px,-8px) rotate(-4deg)}}
@keyframes frontArm{0%,100%{transform:rotate(-28deg)}50%{transform:rotate(32deg)}}
@keyframes backArm{0%,100%{transform:rotate(38deg)}50%{transform:rotate(-22deg)}}
@keyframes trailFloat{0%,100%{transform:translate(-8px,5px)}50%{transform:translate(10px,-7px)}}
@keyframes trailFade{0%,100%{opacity:.18;transform:scaleX(.72)}50%{opacity:.72;transform:scaleX(1)}}
@keyframes bubbleRise{0%{opacity:0;transform:translate(0,0) scale(.65)}20%{opacity:.75}100%{opacity:0;transform:translate(22px,-150px) scale(1.3)}}
@keyframes waterShimmer{0%,100%{transform:translateX(-50%) skewX(-12deg);opacity:.15}50%{transform:translateX(55%) skewX(-12deg);opacity:.75}}

/* Myndbandskennarinn – myndband og kennsluspjald nýta allt gluggasvæðið */
.video-dialog,.scenario-dialog{position:relative}
.video-dialog{width:min(1220px,94vw);height:min(690px,90vh);max-height:90vh;grid-template-columns:minmax(0,1.45fr) minmax(340px,.72fr);background:#fff;overflow:hidden}
.video-dialog[open]{display:grid}
.dialog-main{min-width:0;background:#001c2b;display:flex;flex-direction:column;justify-content:center}
.dialog-video{min-height:0;aspect-ratio:16/9;background:#00151f;width:100%;flex:none}
.dialog-video iframe{width:100%;height:100%;min-height:0;border:0;display:block}
.video-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.72rem 1rem;background:#052f49;color:#d2edf2;border-top:1px solid rgba(255,255,255,.1)}.video-toolbar>span{font-size:.67rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900}.video-toolbar>span i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--aqua);box-shadow:0 0 0 5px rgba(68,199,201,.13);margin-right:.45rem}.video-toolbar div{display:flex;gap:.4rem}.video-toolbar button{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;border-radius:999px;padding:.42rem .66rem;font:inherit;font-size:.66rem;font-weight:900;cursor:pointer}.video-toolbar button:hover{background:#fff;color:var(--navy)}
.watch-cycle{display:flex;align-items:center;justify-content:center;gap:.65rem;padding:.72rem 1rem;background:#031f31;color:#b9d9e2;border-top:1px solid rgba(255,255,255,.07);font-size:.62rem;font-weight:800}.watch-cycle span{display:flex;align-items:center;gap:.35rem}.watch-cycle b{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(68,199,201,.16);color:#8ce6e2}.watch-cycle>i{font-style:normal;color:#507c8d}
.dialog-copy{min-width:0;padding:clamp(1.25rem,2.3vw,2rem);overflow-y:auto;background:linear-gradient(160deg,#fff,#f5fbfc)}
.dialog-copy h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:.1rem 0 .6rem}.dialog-copy>p{font-size:.86rem;line-height:1.55;margin:.3rem 0 1rem}.micro-title{font-size:.66rem;text-transform:uppercase;letter-spacing:.13em;color:var(--navy);margin:1rem 0 .45rem}.cue-list{counter-reset:cues;margin:.4rem 0 1rem}.cue-list span{position:relative;padding:.65rem .75rem .65rem 2.65rem;background:#e9f7f8}.cue-list span:before{counter-increment:cues;content:counter(cues);position:absolute;left:.62rem;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:1.45rem;height:1.45rem;border-radius:50%;background:var(--aqua);color:var(--navy);font-size:.66rem;font-weight:900}
.practice-card{border-radius:15px;padding:.9rem 1rem;background:var(--navy);color:#fff;margin-top:.8rem}.practice-card>span{display:block;color:#84deda;text-transform:uppercase;letter-spacing:.13em;font-size:.58rem;font-weight:900}.practice-card strong{display:block;font-size:.9rem;line-height:1.3;margin:.3rem 0}.practice-card p{font-size:.68rem;color:#bddbe3;margin:0}
.goal-check{width:100%;display:flex;align-items:center;gap:.75rem;text-align:left;border:1px solid var(--line);background:#fff;border-radius:14px;padding:.7rem .8rem;margin:.75rem 0;cursor:pointer;color:var(--ink)}.goal-check>i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;border:2px solid var(--line);color:transparent;font-style:normal;font-weight:900;flex:none}.goal-check>span{display:flex;flex-direction:column}.goal-check b{font-size:.78rem;color:var(--navy)}.goal-check small{font-size:.59rem;color:var(--muted)}.goal-check.active{border-color:#3bbda8;background:#eefaf7}.goal-check.active>i{background:#3bbda8;border-color:#3bbda8;color:#fff}
.dialog-links{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap;margin-top:.7rem}.dialog-links>span{font-size:.55rem;color:var(--muted)}
.dialog-close{position:absolute;float:none;top:12px;right:12px;margin:0;z-index:20;width:42px;height:42px}
@media(max-width:900px){.video-dialog{height:min(920px,94vh);grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);overflow:auto}.video-dialog[open]{display:grid}.dialog-main{min-height:0}.dialog-video{aspect-ratio:16/9;min-height:0}.dialog-video iframe{min-height:0}.dialog-copy{overflow:visible}.video-toolbar{position:sticky;top:0;z-index:2}}
@media(max-width:560px){.animation-toggle span{display:none}.animation-toggle{right:6%;bottom:5%;width:36px;height:36px;justify-content:center;padding:0}.swim-trail{right:31%;transform:scale(.8)}.video-dialog{width:96vw;border-radius:18px}.video-toolbar>span{display:none}.video-toolbar{justify-content:flex-start}.watch-cycle{gap:.35rem;padding:.55rem .35rem}.watch-cycle>i{display:none}.watch-cycle span{font-size:.54rem}.dialog-copy{padding:1rem}.dialog-copy h2{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){.hero-art *,.hero-art:after{animation:none!important}.animation-toggle{display:none}}

/* v1.2 – QR-stöðvar, Sundpassi og kennaraskjár */
.operations{background:radial-gradient(circle at 8% 12%,rgba(68,199,201,.16),transparent 28%),linear-gradient(145deg,#073b5c,#041f31);color:#fff}
.operations .section-heading h2{color:#fff}.operations .section-heading p{color:#bad7df}.ops-status{display:flex;align-items:center;gap:.7rem;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.07);border-radius:16px;padding:.7rem 1rem}.ops-status>i{width:10px;height:10px;border-radius:50%;background:#62d5ae;box-shadow:0 0 0 6px rgba(98,213,174,.13)}.ops-status>span{display:flex;flex-direction:column}.ops-status b{font-size:.76rem}.ops-status small{font-size:.6rem;color:#a9cbd5}
.ops-shell{background:#f7fbfc;color:var(--ink);border-radius:28px;overflow:hidden;box-shadow:0 28px 80px rgba(0,0,0,.28)}
.ops-tabs{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;border-bottom:1px solid var(--line);padding:.65rem}.ops-tabs button{display:grid;grid-template-columns:46px 1fr;grid-template-rows:auto auto;column-gap:.75rem;text-align:left;align-items:center;border:0;background:transparent;border-radius:16px;padding:.75rem 1rem;color:var(--ink);font:inherit;cursor:pointer}.ops-tabs button>span{grid-row:1/3;display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--ice);color:var(--blue);font-size:1.35rem}.ops-tabs button>b{font-size:.84rem;color:var(--navy)}.ops-tabs button>small{font-size:.62rem;color:var(--muted)}.ops-tabs button:hover{background:#f4fafb}.ops-tabs button.active{background:var(--navy)}.ops-tabs button.active>span{background:var(--aqua);color:var(--navy)}.ops-tabs button.active>b{color:#fff}.ops-tabs button.active>small{color:#b9d6df}
.ops-panel{padding:clamp(1rem,2.5vw,2rem)}.ops-panel[hidden]{display:none!important}
.station-builder{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(420px,1.25fr);gap:1.5rem;align-items:stretch}.station-controls{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.2rem;display:grid;gap:1rem}.control-heading{display:flex;align-items:flex-start;gap:.8rem}.control-heading>span{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;background:#fff0ec;color:var(--coral);font-size:.72rem;font-weight:900;flex:none}.control-heading h3{margin:0;color:var(--navy);font-size:1.15rem}.control-heading p{margin:.15rem 0 0;color:var(--muted);font-size:.68rem}.station-fields{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}.station-controls label,.screen-controls label{display:grid;gap:.3rem;color:var(--navy);font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.station-controls select,.station-controls input,.screen-controls select{width:100%;border:1px solid var(--line);border-radius:10px;background:#fafdfe;color:var(--ink);padding:.65rem .7rem;font:inherit;font-size:.76rem;text-transform:none;letter-spacing:0}.url-field small{font-size:.57rem;color:var(--muted);font-weight:600;text-transform:none;letter-spacing:0}.coral-button{background:var(--coral)!important;color:#fff!important}.station-preview-head{position:relative;display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:20px;padding:1.5rem;background:linear-gradient(135deg,#0b7eb5,#44c7c9);color:#fff;overflow:hidden}.station-preview-head:after{content:"";position:absolute;width:230px;height:230px;border:42px solid rgba(255,255,255,.1);border-radius:50%;right:-80px;top:-115px}.station-preview-head>*{position:relative;z-index:1}.station-preview-head .stage-label{color:#dffbfa}.station-preview-head h3{font-size:clamp(1.6rem,3vw,2.6rem);line-height:1;margin:.3rem 0}.station-preview-head p{margin:0;color:#dff4f6}.station-actions{display:flex;gap:.45rem;align-self:flex-end;flex-wrap:wrap;justify-content:flex-end}.station-actions button{border:1px solid rgba(255,255,255,.45);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:.58rem .8rem;font:inherit;font-size:.68rem;font-weight:900;cursor:pointer}.station-actions button.strong{background:#fff;color:var(--navy)}
.station-deck{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem;margin-top:1.1rem}.station-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 9px 26px rgba(5,55,75,.07);display:flex;flex-direction:column}.station-card-top{display:flex;align-items:center;justify-content:space-between;padding:.8rem 1rem;background:var(--station-soft,#eaf8fb);border-bottom:1px solid var(--line)}.station-number{display:flex;align-items:center;gap:.55rem}.station-number>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:var(--station-color,var(--blue));color:#fff;font-weight:900}.station-number div{display:flex;flex-direction:column;line-height:1.2}.station-number b{font-size:.76rem;color:var(--navy)}.station-number small{font-size:.56rem;color:var(--muted)}.station-icon{font-size:1.45rem;color:var(--station-color,var(--blue))}.station-card-body{padding:1rem;display:flex;flex-direction:column;flex:1}.station-card h3{font-size:1.1rem;color:var(--navy);line-height:1.15;margin:0 0 .4rem}.station-task{font-size:.72rem;color:var(--muted);margin:0 0 .7rem}.station-cue{background:#f3fafb;border-left:3px solid var(--station-color,var(--aqua));border-radius:7px;padding:.5rem .6rem;font-size:.64rem;font-weight:800;color:var(--navy)}.station-levels{display:grid;gap:.35rem;margin:.7rem 0}.station-levels span{font-size:.59rem;color:var(--muted)}.station-levels b{display:inline-block;width:60px;color:var(--navy)}.station-bottom{display:grid;grid-template-columns:1fr 90px;align-items:end;gap:.7rem;margin-top:auto;padding-top:.5rem;border-top:1px dashed var(--line)}.station-equipment{font-size:.57rem;color:var(--muted)}.station-equipment b{display:block;color:var(--navy);margin-bottom:.15rem}.qr-box{background:#fff;border:1px solid var(--line);border-radius:9px;padding:5px;min-height:82px;display:grid;place-items:center}.qr-box svg{width:100%;height:auto;display:block}.qr-missing{font-size:.52rem;text-align:center;color:var(--coral);line-height:1.2}.station-open{margin-top:.45rem;border:0;background:transparent;color:var(--blue);font:inherit;font-size:.6rem;font-weight:900;cursor:pointer;padding:0;text-align:left}
.passport-layout{display:grid;grid-template-columns:300px 1fr;gap:1rem}.passport-profile{background:var(--navy);color:#fff;border-radius:20px;padding:1.3rem}.passport-profile .stage-label{color:#8ce6e2}.passport-profile h3{font-size:1.6rem;margin:.25rem 0}.passport-profile>p{font-size:.7rem;color:#bbd7df}.creature-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:.45rem;margin:1rem 0}.creature-picker button{border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.06);border-radius:13px;color:#fff;padding:.55rem .25rem;font:inherit;cursor:pointer}.creature-picker button span{display:block;font-size:1.45rem}.creature-picker button small{display:block;font-size:.54rem}.creature-picker button.active{background:#fff;color:var(--navy);border-color:#fff}.passport-progress{display:flex;align-items:center;gap:.8rem;border-top:1px solid rgba(255,255,255,.12);padding-top:1rem}.passport-progress>div:last-child{display:flex;flex-direction:column}.passport-progress b{font-size:.9rem}.passport-progress small{font-size:.62rem;color:#b9d6df}.passport-ring{--passport-progress:0%;width:74px;height:74px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,var(--navy) 56%,transparent 58%),conic-gradient(var(--aqua) var(--passport-progress),rgba(255,255,255,.12) 0)}.passport-ring span{font-size:.85rem;font-weight:900}.passport-print{width:100%;margin-top:1rem;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:transparent;color:#fff;padding:.6rem;font:inherit;font-size:.67rem;font-weight:900;cursor:pointer}.passport-main{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.2rem}.passport-intro{display:flex;justify-content:space-between;gap:1.5rem;align-items:end}.passport-intro h3{font-size:1.6rem;color:var(--navy);margin:0}.passport-intro>p{max-width:420px;font-size:.67rem;color:var(--muted);margin:0}.badge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem;margin-top:1rem}.skill-badge{position:relative;border:1px solid var(--line);background:#fbfefe;border-radius:16px;padding:.8rem .5rem;text-align:center;color:var(--ink);font:inherit;cursor:pointer;transition:.2s}.skill-badge:hover{transform:translateY(-2px);box-shadow:0 7px 18px rgba(5,55,75,.08)}.skill-badge>span{display:grid;place-items:center;width:54px;height:54px;margin:auto;border-radius:50%;background:var(--badge-soft,#eaf8fb);font-size:1.55rem;filter:grayscale(1);opacity:.55}.skill-badge>b{display:block;font-size:.67rem;color:var(--navy);margin-top:.4rem}.skill-badge>small{display:block;font-size:.51rem;color:var(--muted);line-height:1.2}.skill-badge i{position:absolute;right:8px;top:8px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#edf3f4;color:#a7b6bb;font-size:.58rem;font-style:normal}.skill-badge.earned{border-color:#73cfb6;background:#effbf7}.skill-badge.earned>span{filter:none;opacity:1;box-shadow:0 0 0 5px rgba(68,199,201,.1)}.skill-badge.earned i{background:#3bbda8;color:#fff}
.screen-setup{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem}.screen-demo{border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#073b5c,#031f31);color:#fff;min-height:430px;display:grid;grid-template-rows:auto 1fr auto}.demo-top{display:flex;justify-content:space-between;padding:.75rem 1rem;background:rgba(255,255,255,.06);font-size:.61rem;font-weight:900;letter-spacing:.1em}.demo-top b{color:#8ce6e2}.demo-body{text-align:center;display:grid;place-items:center;align-content:center;padding:1rem}.demo-body small{color:#8ce6e2;font-weight:900;letter-spacing:.2em}.demo-body h3{font-size:clamp(1.8rem,4vw,3.4rem);line-height:1;margin:.5rem}.demo-body strong{font-size:clamp(4rem,9vw,7.5rem);line-height:1;color:#fff;font-variant-numeric:tabular-nums}.demo-body p{font-size:.75rem;color:#bbdce4}.demo-dots{display:flex;justify-content:center;gap:.45rem;padding:1rem}.demo-dots i{width:33px;height:6px;border-radius:999px;background:rgba(255,255,255,.16)}.demo-dots i.active{background:var(--coral)}.screen-controls{background:#fff;border:1px solid var(--line);border-radius:20px;padding:1.3rem;display:grid;align-content:center;gap:.8rem}.screen-controls h3{font-size:1.5rem;color:var(--navy);margin:.1rem 0}.screen-controls>p{font-size:.69rem;color:var(--muted);margin:0 0 .4rem}.switch-row{grid-template-columns:auto 1fr!important;align-items:center!important;text-transform:none!important;letter-spacing:0!important}.switch-row input{width:40px;height:22px;accent-color:var(--aqua)}.switch-row span{display:flex;flex-direction:column}.switch-row b{font-size:.68rem}.switch-row small{font-size:.55rem;color:var(--muted);font-weight:600}
.station-dialog{position:relative;width:min(720px,94vw);padding:0;border:0;border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.42);overflow:hidden}.station-dialog::backdrop{background:rgba(2,25,39,.84);backdrop-filter:blur(5px)}.station-view{--view-color:var(--aqua);background:#fff}.station-view-head{padding:1.3rem 1.5rem;background:linear-gradient(135deg,var(--navy),#0b7eb5);color:#fff}.station-view-head span{font-size:.65rem;text-transform:uppercase;letter-spacing:.14em;color:#9ce7e3;font-weight:900}.station-view-head h2{font-size:2.5rem;line-height:1;margin:.4rem 0}.station-view-body{padding:1.4rem}.station-view-task{font-size:1.05rem;color:var(--ink)}.station-view-cue{background:#eaf8fb;border-left:5px solid var(--view-color);padding:1rem;border-radius:12px;font-weight:900;color:var(--navy)}.station-view-levels{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-top:1rem}.station-view-levels div{border:1px solid var(--line);border-radius:12px;padding:.7rem}.station-view-levels b{display:block;font-size:.64rem;text-transform:uppercase;color:var(--coral)}.station-view-levels span{font-size:.7rem;color:var(--muted)}.station-view-safety{margin-top:1rem;padding:.7rem;border-radius:10px;background:#fff1ec;color:#873c2d;font-size:.72rem;font-weight:800}
.teacher-screen-overlay{position:fixed;inset:0;z-index:5000;background:radial-gradient(circle at 50% 48%,#0d5e78,#031c2b 72%);color:#fff;display:grid;grid-template-rows:auto 1fr auto}.teacher-screen-overlay[hidden]{display:none}.screen-bar{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:.7rem 1.2rem;background:rgba(0,0,0,.2);border-bottom:1px solid rgba(255,255,255,.12)}.screen-brand{display:flex;align-items:center;gap:.6rem}.screen-brand .brand-mark{width:37px;height:37px}.screen-safety{justify-self:center;display:flex;align-items:center;gap:.55rem;font-size:.7rem;font-weight:900;letter-spacing:.12em;color:#b9e8e5}.screen-safety i{width:10px;height:10px;border-radius:50%;background:#62d5ae;box-shadow:0 0 0 6px rgba(98,213,174,.13)}.screen-bar>button{width:40px;height:40px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;border-radius:50%;font-size:1.4rem;cursor:pointer}.screen-stage{text-align:center;display:grid;place-items:center;align-content:center;padding:1rem}.screen-station-kicker{font-size:clamp(.7rem,1.4vw,1rem);letter-spacing:.2em;color:#8ce6e2;font-weight:900}.screen-station-icon{display:grid;place-items:center;width:clamp(70px,9vw,110px);height:clamp(70px,9vw,110px);border-radius:28px;background:rgba(68,199,201,.14);font-size:clamp(2.5rem,5vw,4.5rem);margin:1rem}.screen-stage h2{font-size:clamp(2.6rem,7vw,6rem);line-height:.95;letter-spacing:-.05em;margin:.2rem 0}.screen-stage>p{font-size:clamp(.9rem,2vw,1.5rem);color:#c5e2e8;margin:.4rem}.screen-timer{font-size:clamp(6rem,17vw,14rem);line-height:.82;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:-.07em;margin:.7rem;color:#fff;text-shadow:0 12px 40px rgba(0,0,0,.22)}.screen-timer.warning{color:#ffd768;animation:timerPulse 1s ease-in-out infinite}.screen-timer.finished{color:#ff816c}.screen-next{font-size:clamp(.7rem,1.5vw,1rem);color:#93c5d1}.screen-progress{display:flex;gap:.5rem;margin-top:1rem}.screen-progress i{width:clamp(24px,4vw,62px);height:8px;border-radius:999px;background:rgba(255,255,255,.14)}.screen-progress i.active{background:var(--coral)}.screen-bottom{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.8rem 1rem;background:rgba(0,0,0,.2);border-top:1px solid rgba(255,255,255,.12)}.screen-bottom button{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);color:#fff;border-radius:999px;padding:.7rem 1rem;font:inherit;font-size:.72rem;font-weight:900;cursor:pointer}.screen-bottom button:hover{background:#fff;color:var(--navy)}.screen-bottom .screen-play{background:var(--coral);border-color:var(--coral);min-width:130px}@keyframes timerPulse{50%{transform:scale(1.035)}}
@media(max-width:1050px){.station-builder{grid-template-columns:1fr}.station-deck{grid-template-columns:repeat(2,1fr)}.passport-layout{grid-template-columns:1fr}.passport-profile{display:grid;grid-template-columns:1fr 1fr;column-gap:1rem}.passport-profile>p,.creature-picker{grid-column:1}.passport-progress,.passport-print{grid-column:2}.passport-progress{grid-row:2/4}.badge-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.ops-tabs button{display:flex;justify-content:center;padding:.55rem}.ops-tabs button>span{width:40px;height:40px}.ops-tabs button>b,.ops-tabs button>small{display:none}.station-fields{grid-template-columns:1fr}.station-deck{grid-template-columns:1fr}.passport-profile{display:block}.passport-intro{align-items:start;flex-direction:column}.badge-grid{grid-template-columns:repeat(2,1fr)}.screen-setup{grid-template-columns:1fr}.screen-demo{min-height:360px}.station-view-levels{grid-template-columns:1fr}.screen-bottom{flex-wrap:wrap}.screen-bottom button{padding:.55rem .7rem}.screen-bottom button:first-child,.screen-bottom button:last-child{display:none}.screen-timer{font-size:22vw}.screen-safety{font-size:.54rem}.screen-brand>b{display:none}}
@media print{body.print-stations .section,body.print-stations .topbar,body.print-stations footer,body.print-stations dialog,body.print-stations .teacher-screen-overlay{display:none!important}body.print-stations #sundstodvar{display:block!important;padding:0;background:#fff}body.print-stations .section-heading,body.print-stations .ops-tabs,body.print-stations .station-builder,body.print-stations #ops-passport,body.print-stations #ops-screen{display:none!important}body.print-stations .ops-shell{box-shadow:none}body.print-stations #ops-stations{display:block!important;padding:0}body.print-stations .station-deck{display:grid;grid-template-columns:repeat(2,1fr);gap:8mm}.station-card{break-inside:avoid}body.print-passport .section,body.print-passport .topbar,body.print-passport footer,body.print-passport dialog,body.print-passport .teacher-screen-overlay{display:none!important}body.print-passport #sundstodvar{display:block!important;padding:0;background:#fff}body.print-passport .section-heading,body.print-passport .ops-tabs,body.print-passport #ops-stations,body.print-passport #ops-screen{display:none!important}body.print-passport #ops-passport{display:block!important}.passport-layout{grid-template-columns:250px 1fr}.skill-badge{break-inside:avoid}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
