:root{--navy:#0B2545;--navy2:#13315C;--green:#15803D;--mint:#86EFAC;--amber:#FBBF24;--ink:#1B2433;--muted:#5B6576;--paper:#F7F5EF;--card:#FFFFFF;--line:#D9E1EA}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%;background:#0b1626;font-family:"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;color:var(--ink)}
#deck{position:fixed;inset:0;display:flex;align-items:center;justify-content:center}
.s{display:none;width:min(100vw,177.78vh);height:min(56.25vw,100vh);background:var(--paper);padding:5% 6% 7%;position:relative;overflow:hidden;flex-direction:column;gap:2.2vmin;font-size:min(1.55vw,2.75vh)}
.s.on{display:flex}
.kick{font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--green);font-size:.8em}
h1{font-size:3.4em;line-height:1.05;font-weight:800;color:var(--navy)}
h2{font-size:2.3em;line-height:1.1;font-weight:800;color:var(--navy)}
h3{font-size:1.2em;color:var(--navy)} h4{font-size:1.1em;color:var(--navy);margin-bottom:.6em}
.sub{font-size:1.3em;color:#3B4A63;max-width:80%}
.cover,.divider{background:linear-gradient(150deg,var(--navy),var(--navy2) 60%,#1E4174);justify-content:center}
.cover h1,.divider h1{color:#fff} .cover h1 span{color:var(--mint)} .cover .sub,.divider .sub{color:#D7E3F1} .cover .kick,.divider .kick{color:var(--mint)}
.cover .meta{margin-top:1.5em;display:inline-block;background:var(--amber);color:var(--navy);font-weight:800;padding:.5em 1.1em;border-radius:99px;align-self:flex-start}
.agenda{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2em;flex:1;align-items:stretch}
.ag{background:var(--card);border:2px solid var(--line);border-radius:1em;padding:1.3em}.ag b{color:var(--green);font-size:.85em;text-transform:uppercase;letter-spacing:.08em}.ag h3{margin:.4em 0}.ag p{color:var(--muted);font-size:.95em}
.ltitle{background:#E7EEF8}
.box{background:var(--card);border-radius:1em;padding:1.4em 1.6em;max-width:75%}
ul.chk{list-style:none} ul.chk li{padding-left:1.7em;position:relative;margin:.45em 0;font-size:1.15em}
ul.chk li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}
.tbl{flex:1;overflow:auto}
.tbl table{width:100%;border-collapse:collapse;background:var(--card);font-size:1.02em;border-radius:.6em;overflow:hidden}
.tbl th{background:var(--navy);color:#fff;text-align:left;padding:.55em .8em}
.tbl td{padding:.5em .8em;border-bottom:1px solid var(--line);vertical-align:top}
.tbl tr:nth-child(even) td{background:#F3F6FA}
.lst{background:var(--card);border-radius:1em;padding:1.2em 1.6em;font-size:1.1em}.lst li{margin:.45em 0 .45em 1.2em}
.prompts{display:grid;gap:1em}
pre.prompt{white-space:pre-wrap;font-family:Consolas,"Courier New",monospace;font-size:.92em;background:#0F1E33;color:#E6EEF8;border-left:.45em solid var(--mint);border-radius:.7em;padding:1em 1.2em;line-height:1.45}
.hint{color:var(--muted);font-size:.85em}
.demo{background:var(--card);border-radius:1em;padding:1.2em 1.6em;font-size:1.05em}.demo li{margin-left:1.3em}
.kps{display:grid;grid-template-columns:repeat(auto-fit,minmax(30%,1fr));gap:.9em}
.kp{background:var(--card);border:2px solid var(--line);border-radius:1em;padding:.9em 1.1em;display:flex;gap:.8em;align-items:flex-start;font-size:1.05em}
.kp b{background:var(--green);color:#fff;border-radius:50%;min-width:1.8em;height:1.8em;display:flex;align-items:center;justify-content:center}
.practice{margin-top:auto;background:var(--amber);color:var(--navy);border-radius:1em;padding:.9em 1.2em;font-size:1.05em}
.quiz{gap:1.4vmin}
.q{background:var(--card);border:2px solid var(--line);border-radius:.9em;padding:.7em 1em}
.q p{font-size:1.05em}.q.sm p{font-size:.95em}
.opts{display:flex;flex-wrap:wrap;gap:.5em;margin-top:.45em}
.opt{font:inherit;font-size:.9em;border:2px solid var(--line);background:#F7F9FC;border-radius:99px;padding:.35em .9em;cursor:pointer}
.opt.right{background:var(--green);color:#fff;border-color:var(--green)} .opt.wrong{background:#FDE2E2;border-color:#E57373;text-decoration:line-through}
.exp{display:none;color:var(--green);font-size:.85em;margin-top:.4em}.q.done .exp{display:block}
#bar{position:fixed;left:0;right:0;bottom:0;height:5px;background:rgba(255,255,255,.15)}#prog{height:100%;background:var(--mint);width:0}
#ui{position:fixed;right:14px;bottom:14px;display:flex;gap:6px;align-items:center;background:rgba(11,37,69,.92);padding:5px 6px;border-radius:12px;box-shadow:0 2px 10px rgba(0,0,0,.25);opacity:.9;transition:opacity .2s;z-index:3}#ui:hover{opacity:1}
#ui a,#ui button{text-decoration:none;background:#13315C;color:#fff;border:0;border-radius:8px;padding:6px 12px;font-size:15px;cursor:pointer}
#count{color:#fff;font-size:14px;font-weight:700;min-width:74px;text-align:center}
#menu{position:fixed;top:0;left:0;bottom:0;width:340px;max-width:85vw;background:#0F1E33;overflow:auto;transform:translateX(-100%);transition:.25s;padding:16px;z-index:5}
#menu.open{transform:none}#menu a{display:block;color:#D7E3F1;padding:7px 10px;border-radius:6px;cursor:pointer;font-size:14px}#menu a:hover{background:#1E4174}
#notes{position:fixed;left:50%;transform:translateX(-50%);bottom:24px;width:min(900px,92vw);max-height:40vh;overflow:auto;background:rgba(15,30,51,.96);color:#E6EEF8;padding:14px 18px;border-radius:12px;font-size:15px;line-height:1.5;display:none;z-index:4}#notes.open{display:block}
@media print{@page{size:13.333in 7.5in;margin:0}html,body{background:#fff}#deck{position:static;display:block}.s{display:flex!important;width:13.333in;height:7.5in;page-break-after:always;font-size:15pt}#ui,#bar,#menu,#notes{display:none!important}.exp{display:block}}

.mgrid{display:grid;grid-template-columns:1fr 1fr;gap:.8em}.mgrid .q{padding:.6em .9em}
