:root{color-scheme:light dark;--navy: #1b365d;--navy-dark: #142845;--red: #d93829;--red-dark: #b32e21;--green: #2e9e5b;--green-dark: #1d7a43;--bg: #f9fbfd;--bg-2: #eaf3f6;--card: #ffffff;--border: #e2e9f0;--text: #1c2b3f;--muted: #64748b;--radius: 16px;--shadow: 0 1px 2px rgba(16, 36, 61, .04), 0 10px 24px rgba(16, 36, 61, .06);--shadow-hover: 0 2px 6px rgba(16, 36, 61, .06), 0 16px 32px rgba(16, 36, 61, .09);--red-tint: #fdedeb;--navy-tint: #eaf1f8;--green-tint: #eaf7f0;--warn-bg: #fdf1de;--warn-text: #b07d1a;--heading: var(--navy);--font-display: ui-serif, Georgia, "Iowan Old Style", "Palatino Linotype", "Times New Roman", serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Mono", Menlo, Consolas, monospace}@media (prefers-color-scheme: dark){:root:not([data-theme]){--navy: #4c82ba;--navy-dark: #17293f;--red: #f17b6e;--red-dark: #ff9a8f;--green: #4cc290;--green-dark: #6fe3b0;--bg: #101d30;--bg-2: #22385a;--card: #182a44;--border: #2e4468;--text: #eaf1f9;--muted: #9fb0c8;--shadow: 0 1px 2px rgba(0, 0, 0, .25), 0 12px 26px rgba(0, 0, 0, .3);--shadow-hover: 0 2px 6px rgba(0, 0, 0, .3), 0 18px 36px rgba(0, 0, 0, .36);--red-tint: rgba(241, 123, 110, .16);--navy-tint: rgba(92, 135, 190, .18);--green-tint: rgba(76, 194, 144, .16);--warn-bg: rgba(230, 170, 60, .18);--warn-text: #e8b85c;--heading: var(--text)}}:root[data-theme=dark]{--navy: #4c82ba;--navy-dark: #17293f;--red: #f17b6e;--red-dark: #ff9a8f;--green: #4cc290;--green-dark: #6fe3b0;--bg: #101d30;--bg-2: #22385a;--card: #182a44;--border: #2e4468;--text: #eaf1f9;--muted: #9fb0c8;--shadow: 0 1px 2px rgba(0, 0, 0, .25), 0 12px 26px rgba(0, 0, 0, .3);--shadow-hover: 0 2px 6px rgba(0, 0, 0, .3), 0 18px 36px rgba(0, 0, 0, .36);--red-tint: rgba(241, 123, 110, .16);--navy-tint: rgba(92, 135, 190, .18);--green-tint: rgba(76, 194, 144, .16);--warn-bg: rgba(230, 170, 60, .18);--warn-text: #e8b85c;--heading: var(--text)}:root[data-theme=light]{--navy: #1b365d;--navy-dark: #142845;--red: #d93829;--red-dark: #b32e21;--green: #2e9e5b;--green-dark: #1d7a43;--bg: #f9fbfd;--bg-2: #eaf3f6;--card: #ffffff;--border: #e2e9f0;--text: #1c2b3f;--muted: #64748b;--shadow: 0 1px 2px rgba(16, 36, 61, .04), 0 10px 24px rgba(16, 36, 61, .06);--shadow-hover: 0 2px 6px rgba(16, 36, 61, .06), 0 16px 32px rgba(16, 36, 61, .09);--red-tint: #fdedeb;--navy-tint: #eaf1f8;--green-tint: #eaf7f0;--warn-bg: #fdf1de;--warn-text: #b07d1a;--heading: var(--navy)}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:linear-gradient(160deg,var(--bg) 0%,var(--bg-2) 100%);color:var(--text);line-height:1.6;position:relative}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900'><path d='M0 190 L520 190 L555 120 L590 260 L625 60 L660 190 L1600 190' fill='none' stroke='%231b365d' stroke-width='3'/><path d='M0 760 Q400 700 800 760 T1600 760' fill='none' stroke='%23d93829' stroke-width='2'/></svg>") center / 1400px auto no-repeat;opacity:.035;pointer-events:none;z-index:0}@media (prefers-color-scheme: dark){:root:not([data-theme]) body:before,:root[data-theme=dark] body:before{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900'><path d='M0 190 L520 190 L555 120 L590 260 L625 60 L660 190 L1600 190' fill='none' stroke='%23ffffff' stroke-width='3'/><path d='M0 760 Q400 700 800 760 T1600 760' fill='none' stroke='%23f17b6e' stroke-width='2'/></svg>")}}:root[data-theme=dark] body:before{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1600 900'><path d='M0 190 L520 190 L555 120 L590 260 L625 60 L660 190 L1600 190' fill='none' stroke='%23ffffff' stroke-width='3'/><path d='M0 760 Q400 700 800 760 T1600 760' fill='none' stroke='%23f17b6e' stroke-width='2'/></svg>")}#root{position:relative;z-index:1}h1,h2,h3{color:var(--heading);line-height:1.25}a{color:var(--navy)}.greeting-heading{font-family:var(--font-display);font-weight:600}.header{background:linear-gradient(180deg,var(--navy) 0%,var(--navy-dark) 100%);color:#fff;padding:10px 24px;display:flex;align-items:center;justify-content:space-between;min-height:64px;flex-wrap:wrap;gap:10px;box-shadow:var(--shadow);position:sticky;top:0;z-index:10}.header .brand{display:flex;align-items:center;gap:12px;font-weight:700;font-size:17px;color:#fff;text-decoration:none}.header .brand .tagline{font-weight:400;font-size:12px;color:#f0b9b3;display:block;margin-top:-3px}.header .actions{display:flex;align-items:center;gap:12px}.header .user-name{font-size:14px;opacity:.85}.logo-mark{width:40px;height:40px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.lang-switch{display:flex;border:1px solid rgba(255,255,255,.35);border-radius:10px;overflow:hidden}.lang-switch button{background:transparent;color:#fff;border:none;padding:5px 12px;cursor:pointer;font-size:13px;font-weight:600}.lang-switch button.active{background:var(--red)}.container{max-width:1080px;margin:0 auto;padding:32px 24px 64px}.container.narrow{max-width:780px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:24px}.btn{display:inline-block;border:none;border-radius:12px;padding:10px 20px;font-size:15px;font-weight:600;cursor:pointer;text-decoration:none;text-align:center;transition:background .15s,transform .15s}.btn-primary{background:var(--red);color:#fff}.btn-primary:hover{background:var(--red-dark);transform:translateY(-1px)}.btn-secondary{background:var(--navy);color:#fff}.btn-secondary:hover{background:var(--navy-dark);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--navy);border:1.5px solid var(--navy)}.btn-outline:hover{background:var(--bg-2)}.btn:disabled{background:var(--border);color:var(--muted);cursor:not-allowed;transform:none}.login-page{min-height:calc(100vh - 64px);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px;font-weight:700;font-size:22px;color:var(--heading)}.login-brand .logo-mark{box-shadow:var(--shadow)}.login-brand .tagline{display:block;font-weight:400;font-size:13px;color:var(--red);margin-top:-2px}.login-card{width:100%;max-width:420px}.login-card h1{margin:0 0 4px;font-size:26px}.login-card .subtitle{color:var(--muted);margin:0 0 24px;font-size:15px}.field{margin-bottom:16px}.field label{display:block;font-weight:600;font-size:14px;margin-bottom:6px;color:var(--navy)}.field input,.field textarea,.field select{width:100%;padding:10px 12px;border:1.5px solid var(--border);border-radius:10px;font-size:15px;font-family:inherit;background:var(--card);color:var(--text)}.field input:focus,.field textarea:focus{outline:none;border-color:var(--navy)}.error-msg{color:var(--red);font-size:14px;margin:8px 0}.demo-box{margin-top:20px;padding:12px 16px;background:var(--bg-2);border-radius:10px;font-size:13px;color:var(--muted)}.demo-box code{background:var(--card);padding:1px 6px;border-radius:4px;border:1px solid var(--border)}.course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-top:20px}.course-card{position:relative;display:flex;flex-direction:column;padding-left:27px;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}.course-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--accent, var(--red))}.course-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-hover)}.course-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.course-icon{width:44px;height:44px;border-radius:12px;background:var(--accent-tint, var(--bg-2));color:var(--accent, var(--navy));display:flex;align-items:center;justify-content:center;flex-shrink:0}.course-icon svg{width:24px;height:24px}.course-card h3{margin:0 0 8px;font-size:19px}.course-card p{color:var(--muted);font-size:14px;flex:1;margin:0 0 16px}.course-card .badge{display:inline-flex;align-items:center;gap:6px}.course-card .badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.85}.vitals-row{display:flex;gap:18px;flex-wrap:wrap;padding-top:14px;margin-bottom:16px;border-top:1px solid var(--border)}.vitals-row .vital{display:flex;flex-direction:column;gap:2px}.vitals-row .vital-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.vitals-row .vital-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:14.5px;font-weight:600;color:var(--text)}.progress-ring{--pct: 0;width:48px;height:48px;border-radius:50%;background:conic-gradient(var(--red) calc(var(--pct) * 1%),var(--border) 0);display:flex;align-items:center;justify-content:center;flex-shrink:0}.progress-ring-inner{width:36px;height:36px;border-radius:50%;background:var(--card);display:flex;align-items:center;justify-content:center;font-size:11.5px;font-weight:700;color:var(--navy)}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12.5px;font-weight:600}.badge-green{background:var(--green-tint);color:var(--green-dark)}.badge-red{background:var(--red-tint);color:var(--red-dark)}.badge-blue{background:var(--navy-tint);color:var(--navy)}.badge-gray{background:var(--bg-2);color:var(--muted)}.progress-bar{height:8px;background:var(--border);border-radius:999px;overflow:hidden;margin:6px 0 14px}.progress-bar .fill{height:100%;background:var(--green);border-radius:999px;transition:width .3s}.course-layout{display:grid;grid-template-columns:260px 1fr;gap:24px;align-items:start}@media (max-width: 800px){.course-layout{grid-template-columns:1fr}}.chapter-nav{position:sticky;top:88px}.chapter-nav ol{list-style:none;margin:12px 0 0;padding:0}.chapter-nav li{margin-bottom:4px}.chapter-nav button{width:100%;text-align:left;background:transparent;border:none;padding:9px 12px;border-radius:10px;cursor:pointer;font-size:14px;color:var(--text);display:flex;align-items:center;gap:8px;font-family:inherit}.chapter-nav button.active{background:var(--navy);color:#fff}.chapter-nav button .tick{color:var(--green);font-weight:700}.chapter-nav button.active .tick{color:#8fe3b0}.block-text{white-space:pre-line;font-size:15.5px}.block-video{margin:20px 0}.block-video iframe{width:100%;aspect-ratio:16/9;border:none;border-radius:10px}.check-box{border:1.5px solid var(--border);border-left:4px solid var(--navy);border-radius:10px;padding:16px 20px;margin:20px 0}.check-box .check-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--navy);margin-bottom:6px}.check-box .options button{display:block;width:100%;text-align:left;margin:6px 0;padding:9px 14px;border:1.5px solid var(--border);border-radius:10px;background:var(--card);cursor:pointer;font-size:14.5px;font-family:inherit;color:var(--text)}.check-box .options button:hover{border-color:var(--navy)}.check-box .options button.correct{border-color:var(--green);background:var(--green-tint)}.check-box .options button.wrong{border-color:var(--red);background:var(--red-tint)}.check-feedback{margin-top:10px;font-size:14px;font-weight:600}.check-feedback.good{color:var(--green-dark)}.check-feedback.bad{color:var(--red-dark)}.feedback-row{display:flex;gap:8px;margin:10px 0;flex-wrap:wrap}.feedback-row button{padding:8px 16px;border:1.5px solid var(--border);border-radius:999px;background:var(--card);cursor:pointer;font-size:14px;font-family:inherit;color:var(--text)}.feedback-row button.selected{border-color:var(--navy);background:var(--navy);color:#fff}.exam-question{margin-bottom:28px}.exam-question .q-number{font-size:13px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.exam-question h3{margin:4px 0 12px;font-size:17px}.exam-question .options label{display:flex;align-items:center;gap:10px;padding:10px 14px;margin:6px 0;border:1.5px solid var(--border);border-radius:10px;cursor:pointer;font-size:15px;background:var(--card)}.exam-question .options label:hover{border-color:var(--navy)}.exam-question .options label.chosen{border-color:var(--navy);background:var(--navy-tint)}.result-banner{text-align:center;padding:36px 24px}.result-banner .score{font-size:56px;font-weight:800;margin:8px 0}.result-banner .score.pass{color:var(--green)}.result-banner .score.fail{color:var(--red)}.certificate{border:3px solid var(--navy);border-radius:4px;padding:48px 40px;text-align:center;background:#fff;position:relative}.certificate:before{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;border:1.5px solid var(--red);border-radius:2px;pointer-events:none}.certificate .cert-brand{font-size:24px;font-weight:800;color:var(--navy)}.certificate .cert-tagline{color:var(--red);font-weight:600;margin-bottom:24px}.certificate .cert-name{font-size:32px;font-weight:700;color:var(--navy);margin:12px 0}.certificate .cert-course{font-size:20px;font-weight:600;margin:12px 0}.certificate .cert-meta{color:var(--muted);font-size:14px;margin-top:24px}.certificate .cert-code{font-family:monospace;font-size:13px;margin-top:12px;color:var(--muted)}.stat-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:20px 0}.stat-tile{text-align:center;padding:20px 12px}.stat-tile .stat-value{font-size:32px;font-weight:800;color:var(--navy)}.stat-tile .stat-label{font-size:13px;color:var(--muted)}table.data{width:100%;border-collapse:collapse;font-size:14.5px}table.data th{text-align:left;padding:10px 12px;border-bottom:2px solid var(--navy);color:var(--navy);font-size:13px;text-transform:uppercase;letter-spacing:.04em}table.data td{padding:10px 12px;border-bottom:1px solid var(--border)}table.data tr:hover td{background:var(--bg-2)}.bar-line{display:flex;align-items:center;gap:10px}.bar-line .bar-track{flex:1;height:10px;background:var(--border);border-radius:999px;overflow:hidden}.bar-line .bar-fill{height:100%;border-radius:999px}.section-title{margin-top:40px}.tabs{display:flex;gap:4px;border-bottom:2px solid var(--border);margin:24px 0}.tabs button{background:transparent;border:none;padding:10px 18px;font-size:15px;font-weight:600;color:var(--muted);cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;font-family:inherit}.tabs button.active{color:var(--navy);border-bottom-color:var(--red)}.header-nav{display:flex;flex-wrap:wrap;gap:2px;margin-right:8px}.header-nav a{color:#ffffffd9;text-decoration:none;font-size:13.5px;font-weight:600;padding:6px 10px;border-radius:10px;white-space:nowrap}.header-nav a:hover{background:#ffffff1f}.header-nav a.active{background:#ffffff2e;color:#fff}.btn-danger{color:var(--red);border-color:var(--red)}.btn-danger:hover{background:var(--red-tint)}.editor-topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:8px}.nl-en-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 700px){.nl-en-grid{grid-template-columns:1fr}}.chapter-card{margin-bottom:14px;padding:0;overflow:hidden}.chapter-card-head{display:flex;align-items:center;gap:10px;padding:14px 18px;cursor:pointer;background:var(--bg-2);border-bottom:1px solid var(--border)}.chapter-card-head:hover{filter:brightness(.97)}.chapter-card-head .ch-title{flex:1;font-weight:700;color:var(--navy)}.chapter-card-body{padding:18px}.icon-btn{background:var(--card);border:1.5px solid var(--border);border-radius:10px;width:32px;height:32px;cursor:pointer;font-size:14px;line-height:1;color:var(--navy);flex-shrink:0}.icon-btn:hover{border-color:var(--navy)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.icon-btn.danger{color:var(--red)}.icon-btn.danger:hover{border-color:var(--red);background:var(--red-tint)}.block-card{border:1.5px solid var(--border);border-radius:10px;padding:14px 16px;margin-bottom:12px;background:var(--card)}.block-card-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.block-card-head .block-type{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--navy);flex:1}.add-block-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.add-block-row button{border:1.5px dashed var(--border);background:var(--bg-2);border-radius:10px;padding:8px 14px;font-size:13.5px;cursor:pointer;color:var(--navy);font-weight:600;font-family:inherit}.add-block-row button:hover{border-color:var(--navy);filter:brightness(.97)}.option-row{display:flex;gap:10px;align-items:center;margin-bottom:8px}.option-row input[type=text]{flex:1;padding:8px 10px;border:1.5px solid var(--border);border-radius:10px;font-size:14px;font-family:inherit;background:var(--card);color:var(--text)}.option-row input[type=radio]{width:18px;height:18px;accent-color:var(--green)}.save-indicator{font-size:13.5px;font-weight:600}.save-indicator.saved{color:var(--green)}.save-indicator.dirty{color:var(--warn-text)}.editor-preview-img{max-width:220px;max-height:140px;border-radius:10px;border:1px solid var(--border);display:block;margin-top:8px}.scenario-node-card{border:1.5px solid var(--border);border-radius:10px;padding:14px 16px;margin:12px 0;background:var(--bg)}.scenario-box{border:1.5px solid var(--border);border-left:4px solid var(--navy);border-radius:10px;padding:20px;margin:16px 0}.scenario-box .options button{display:block;width:100%;text-align:left;margin:6px 0;padding:10px 14px;border:1.5px solid var(--border);border-radius:10px;background:var(--card);cursor:pointer;font-size:14.5px;font-family:inherit;color:var(--text)}.scenario-box .options button:hover:not(:disabled){border-color:var(--navy)}.scenario-box .options button.chosen{border-color:var(--navy);background:var(--navy-tint)}.scenario-box .options button:disabled:not(.chosen){opacity:.6;cursor:default}.scenario-timer{display:inline-block;font-size:13px;font-weight:700;padding:4px 12px;border-radius:999px;background:var(--warn-bg);color:var(--warn-text);margin-bottom:14px}.scenario-timer.urgent{background:var(--red-tint);color:var(--red-dark)}.scenario-feedback{margin-top:12px;font-size:14px}.scenario-outcome{font-size:16px;font-weight:700;margin:14px 0}.scenario-outcome.success{color:var(--green-dark)}.scenario-outcome.failure{color:var(--red-dark)}.cmdk-trigger{display:flex;align-items:center;gap:6px;background:#ffffff14;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:10px;padding:6px 12px;font-size:13px;cursor:pointer}.cmdk-trigger:hover{background:#ffffff29}.cmdk-trigger-hint{opacity:.7;font-size:11.5px}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#14293f8c;z-index:100;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh}.cmdk-box{width:100%;max-width:560px;background:var(--card);border-radius:12px;box-shadow:0 10px 40px #00000040;overflow:hidden;margin:0 16px}.cmdk-input{width:100%;border:none;border-bottom:1px solid var(--border);padding:16px 20px;font-size:17px;font-family:inherit;outline:none;box-sizing:border-box;background:var(--card);color:var(--text)}.cmdk-results{max-height:360px;overflow-y:auto;padding:6px}.cmdk-hint{padding:20px;color:var(--muted);font-size:14px;text-align:center}.cmdk-result{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:none;border:none;border-radius:10px;padding:10px 12px;cursor:pointer;font-family:inherit;color:var(--text)}.cmdk-result.active{background:var(--bg-2)}.cmdk-icon{font-size:18px}.cmdk-text{display:flex;flex-direction:column}.cmdk-text strong{font-size:14.5px;color:var(--navy)}.cmdk-text small{color:var(--muted);font-size:12.5px}@media print{.header,.no-print{display:none!important}body{background:#fff}.container{padding:0;max-width:none}}
