@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/lexend-vietnamese-400-normal.97499c1f.woff2) format("woff2"),url(/_next/static/media/lexend-vietnamese-400-normal.9e1ef9e8.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/lexend-latin-ext-400-normal.a9be3e67.woff2) format("woff2"),url(/_next/static/media/lexend-latin-ext-400-normal.134af61b.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/lexend-latin-400-normal.603038b7.woff2) format("woff2"),url(/_next/static/media/lexend-latin-400-normal.5ef9748f.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/lexend-vietnamese-600-normal.7800a448.woff2) format("woff2"),url(/_next/static/media/lexend-vietnamese-600-normal.9212a0df.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/lexend-latin-ext-600-normal.3a952f96.woff2) format("woff2"),url(/_next/static/media/lexend-latin-ext-600-normal.c6875818.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:600;src:url(/_next/static/media/lexend-latin-600-normal.22219584.woff2) format("woff2"),url(/_next/static/media/lexend-latin-600-normal.1e142f1f.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/lexend-vietnamese-700-normal.69a562a5.woff2) format("woff2"),url(/_next/static/media/lexend-vietnamese-700-normal.659ede68.woff) format("woff");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/lexend-latin-ext-700-normal.2559814a.woff2) format("woff2"),url(/_next/static/media/lexend-latin-ext-700-normal.6670a7bf.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Lexend;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/lexend-latin-700-normal.264e90a5.woff2) format("woff2"),url(/_next/static/media/lexend-latin-700-normal.ef771d1d.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/atkinson-hyperlegible-latin-ext-400-normal.21ab7a48.woff2) format("woff2"),url(/_next/static/media/atkinson-hyperlegible-latin-ext-400-normal.c170345e.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:400;src:url(/_next/static/media/atkinson-hyperlegible-latin-400-normal.651dd038.woff2) format("woff2"),url(/_next/static/media/atkinson-hyperlegible-latin-400-normal.02a9b850.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/atkinson-hyperlegible-latin-ext-700-normal.1020617f.woff2) format("woff2"),url(/_next/static/media/atkinson-hyperlegible-latin-ext-700-normal.91bdd02d.woff) format("woff");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Atkinson Hyperlegible;font-style:normal;font-display:swap;font-weight:700;src:url(/_next/static/media/atkinson-hyperlegible-latin-700-normal.9126b48c.woff2) format("woff2"),url(/_next/static/media/atkinson-hyperlegible-latin-700-normal.29248c00.woff) format("woff");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--bg:#f4f6f9;--surface:#ffffff;--sunk:#eef2f7;--ink:#14223a;--muted:#56667e;--line:#d9e1eb;--accent:#1d5bb8;--accent-soft:#e5eefb;--on-accent:#ffffff;--crayon:#f2b01e;--crayon-soft:#fdf3da;--ok:#1b7a4b;--ok-soft:#e3f4ea;--warn:#a35f00;--warn-soft:#fbefdc;--bad:#b3261e;--bad-soft:#fbe6e4;--font-display:"Lexend","Trebuchet MS",system-ui,sans-serif;--font-body:"Atkinson Hyperlegible","Segoe UI",system-ui,sans-serif;--radius:10px;--wide:1040px;--read:68ch}@media (prefers-color-scheme:dark){:root{--bg:#0e1626;--surface:#152036;--sunk:#1a2740;--ink:#e7edf6;--muted:#9cabc0;--line:#2b3a56;--accent:#7aa8f2;--accent-soft:#1d2e4d;--on-accent:#0e1626;--crayon:#f5c451;--crayon-soft:#3a3120;--ok:#5cc994;--ok-soft:#173a2b;--warn:#f0aa55;--warn-soft:#3d2c16;--bad:#f2928a;--bad-soft:#42201e;color-scheme:dark}}*{box-sizing:border-box}body,html{margin:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.2;margin:0;text-wrap:balance;font-weight:600}h1{font-size:clamp(1.6rem,1.2rem + 1.6vw,2.2rem);letter-spacing:-.01em}h2{font-size:1.35rem}h3{font-size:1.1rem}p{margin:0}a{color:var(--accent)}img{max-width:100%}:focus-visible{outline:3px solid var(--crayon);outline-offset:2px;border-radius:4px}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.small{font-size:.875rem}.eyebrow{font-family:var(--font-display);font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.topbar{background:var(--surface);border-bottom:1px solid var(--line)}.page,.topbar-inner{max-width:var(--wide);margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.topbar-inner{justify-content:space-between;gap:12px;padding-block:12px;flex-wrap:wrap}.brand,.topbar-inner{display:flex;align-items:center}.brand{gap:10px;text-decoration:none;color:var(--ink)}.brand-mark{width:34px;height:34px;border-radius:9px;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;font-weight:700;font-size:.95rem}.brand-mark,.brand-name{font-family:var(--font-display)}.brand-name{font-weight:600;line-height:1.15}.brand-name small{display:block;font-weight:400;color:var(--muted);font-size:.8rem}.page{padding-block:28px 64px;display:grid;grid-gap:28px;gap:28px}.page.narrow{max-width:calc(var(--read) + 32px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 1rem var(--font-display);padding:11px 18px;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;text-decoration:none;background:var(--accent);color:var(--on-accent)}.btn:hover{filter:brightness(1.06)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.secondary{background:var(--surface);color:var(--ink);border-color:var(--line)}.btn.ghost{background:transparent;color:var(--accent);padding-inline:6px}.btn.danger{background:var(--surface);color:var(--bad);border-color:var(--line)}.btn.small{font-size:.875rem;padding:7px 12px}.field{display:grid;grid-gap:6px;gap:6px}.field label,.label{font-weight:700;font-size:.95rem}.input,select,textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;width:100%}textarea{min-height:140px;resize:vertical}.check{display:flex;gap:10px;align-items:flex-start}.check input{width:20px;height:20px;margin-top:3px;accent-color:var(--accent)}.form-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.error{color:var(--bad);background:var(--bad-soft)}.error,.success{padding:10px 12px;border-radius:var(--radius)}.success{color:var(--ok);background:var(--ok-soft)}.panel{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:22px;display:grid;grid-gap:16px;gap:16px;min-width:0}.row,.spread{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.spread{justify-content:space-between}.stack{display:grid;grid-gap:12px;gap:12px}.chip{display:inline-flex;align-items:center;gap:6px;font:600 .78rem var(--font-display);padding:3px 10px;border-radius:999px;white-space:nowrap;background:var(--sunk);color:var(--muted)}.chip.ok{background:var(--ok-soft);color:var(--ok)}.chip.warn{background:var(--warn-soft);color:var(--warn)}.chip.bad{background:var(--bad-soft);color:var(--bad)}.chip.info{background:var(--accent-soft);color:var(--accent)}.meter{height:10px;border-radius:99px;background:var(--sunk);overflow:hidden}.meter>span{display:block;height:100%;background:var(--crayon);border-radius:99px}.meter.done>span{background:var(--ok)}.stats{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.stat{display:grid;grid-gap:8px;gap:8px}.stat-value{font:600 1.7rem var(--font-display)}.stat-value small{font-size:1rem;color:var(--muted);font-weight:400}.module-list{list-style:none;margin:0;padding:0;display:grid}.module-list li+li{border-top:1px solid var(--line)}.module-item{display:grid;grid-template-columns:34px minmax(0,1fr) auto;grid-gap:14px;gap:14px;align-items:center;padding:14px 4px;text-decoration:none;color:var(--ink)}.module-item:hover .module-title{color:var(--accent)}.module-num{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--line);font:600 .85rem var(--font-display);color:var(--muted)}.module-num.done{background:var(--ok);border-color:var(--ok);color:var(--surface)}.module-title{font-weight:700}.module-meta{font-size:.875rem;color:var(--muted)}.lesson{display:grid;grid-gap:34px;gap:34px}.lesson-section{display:grid;grid-gap:14px;gap:14px}.lesson-section h2{padding-top:6px}.lesson li,.lesson p{max-width:var(--read)}.lesson ol,.lesson ul{margin:0;padding-left:1.3em;display:grid;grid-gap:6px;gap:6px}.objectives{background:var(--accent-soft);border-radius:14px;padding:18px 20px;display:grid;grid-gap:10px;gap:10px}.objectives ul{margin:0;padding-left:1.2em;display:grid;grid-gap:4px;gap:4px}.callout{border-radius:12px;padding:14px 16px;display:grid;grid-gap:6px;gap:6px;background:var(--sunk)}.callout-tag{font:700 .72rem var(--font-display);letter-spacing:.08em;text-transform:uppercase}.callout-title{font-weight:700}.callout.rule{background:var(--accent-soft)}.callout.rule .callout-tag{color:var(--accent)}.callout.tip{background:var(--ok-soft)}.callout.tip .callout-tag{color:var(--ok)}.callout.warning{background:var(--bad-soft)}.callout.warning .callout-tag{color:var(--bad)}.callout.center{background:var(--crayon-soft)}.callout.center .callout-tag{color:var(--warn)}.scenario{border:1px dashed var(--line);border-radius:12px;padding:16px;display:grid;grid-gap:10px;gap:10px;background:var(--surface)}.scenario summary{cursor:pointer;font-weight:700;color:var(--accent)}.scenario details>div{margin-top:8px}.timer-bar{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:5;background:var(--surface);border-bottom:1px solid var(--line)}.timer-bar .page{padding-block:10px;gap:6px}.quiz{display:grid;grid-gap:22px;gap:22px}.question{display:grid;grid-gap:10px;gap:10px;border:0;padding:0;margin:0}.question legend{font-weight:700;margin-bottom:4px}.option{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:var(--radius);padding:10px 12px;cursor:pointer;background:var(--surface)}.option input{margin-top:5px;accent-color:var(--accent)}.option:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.feedback{font-size:.95rem;padding:8px 12px;border-radius:8px}.feedback.right{background:var(--ok-soft);color:var(--ok)}.feedback.wrong{background:var(--bad-soft);color:var(--bad)}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.95rem}td,th{text-align:left;padding:10px;border-bottom:1px solid var(--line);vertical-align:top}th{font:600 .78rem var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}td.num,th.num{text-align:right}.record{background:#fff;color:#111;font-family:var(--font-body)}.record-sheet{border:1.5px solid #111;padding:0;display:grid}.record-title{text-align:center;font:700 1.1rem var(--font-display);letter-spacing:.02em;padding:10px}.record-head{display:grid;grid-template-columns:2fr 1.4fr 1fr;border-top:1.5px solid #111}.record-head>div{padding:6px 10px;border-right:1.5px solid #111;min-width:0}.record-head>div:last-child{border-right:0}.record .k,.record-head .k{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:#444}.record-head .v{font-size:1.05rem;font-weight:700}.record-note{border-top:1.5px solid #111;padding:6px 10px;text-align:center;font-size:.85rem}.record table{font-size:.85rem;color:#111}.record td,.record th{border:1px solid #111;padding:6px 8px;color:#111}.record th{background:#f1f1f1;text-transform:uppercase;font-size:.7rem}.record-sheet>table{border-top:1.5px solid #111}.record-sheet>table td:first-child,.record-sheet>table th:first-child{border-left:0}.record-sheet>table td:last-child,.record-sheet>table th:last-child{border-right:0}.certificate{background:#fff;color:#14223a;border:2px solid #14223a;border-radius:6px;padding:clamp(24px,6vw,56px);display:grid;grid-gap:18px;gap:18px;text-align:center}.certificate h1{font-size:clamp(1.5rem,1rem + 2vw,2.2rem)}.certificate .who{font:600 clamp(1.4rem,1rem + 2vw,2rem) var(--font-display);border-bottom:2px solid #f2b01e;display:inline-block;padding:0 12px 4px}.certificate dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px;margin:0;text-align:left}.certificate dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:#56667e}.certificate dd{margin:0;font-weight:700}@media print{.no-print,.timer-bar,.topbar{display:none!important}body{background:#fff;font-size:12px}.page{padding:0;max-width:none}.panel{border:0;padding:0}.record-sheet{page-break-inside:avoid;break-inside:avoid}}@media (max-width:560px){.record-head{grid-template-columns:1fr}.record-head>div{border-right:0;border-bottom:1.5px solid #111}.module-item{grid-template-columns:30px minmax(0,1fr)}.module-item>:last-child{grid-column:2}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}