.hp{--ink:#0f172a;--muted:#5b6472;--brand:#1d4ed8;--brand-2:#4f46e5;--accent:#7c3aed;--line:#e6e8ee;--bg:#f7f8fb;font-family:var(--font-geist-sans), -apple-system, "Segoe UI", Roboto, sans-serif;color:var(--ink);background:var(--bg)}.hp *{box-sizing:border-box}.hp-wrap{max-width:1140px;margin:0 auto;padding:0 20px}.hp-hero{color:#eaf0ff;background:radial-gradient(900px 500px at 82% -8%,#7c3aed61,#0000 60%),radial-gradient(760px 460px at 8% 110%,#2563eb66,#0000 55%),linear-gradient(135deg,#0a1024 0%,#131c3d 52%,#1a1150 100%);position:relative;overflow:hidden}.hp-hero:before{content:"";opacity:.6;pointer-events:none;background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 30%,#000 40%,#0000 78%);mask-image:radial-gradient(circle at 50% 30%,#000 40%,#0000 78%)}.hp-hero-grid{grid-template-columns:1.15fr .85fr;align-items:center;gap:40px;padding:64px 0 96px;display:grid;position:relative}.hp-eyebrow{letter-spacing:.3px;color:#c7d2fe;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;align-items:center;gap:8px;padding:6px 13px;font-size:12.5px;font-weight:700;display:inline-flex}.hp-eyebrow .dot{background:#34d399;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #34d39938}.hp-h1{letter-spacing:-.02em;margin:18px 0 16px;font-size:clamp(34px,5vw,54px);font-weight:800;line-height:1.06}.hp-h1 .grad{background:linear-gradient(90deg,#60a5fa,#a78bfa 60%,#f0abfc);color:#0000;-webkit-background-clip:text;background-clip:text}.hp-lead{color:#c3cbe0;max-width:560px;margin:0 0 26px;font-size:clamp(15px,1.6vw,18px);line-height:1.6}.hp-cta-row{flex-wrap:wrap;gap:12px;display:flex}.hp-btn{cursor:pointer;border:1px solid #0000;border-radius:11px;align-items:center;gap:8px;padding:13px 24px;font-size:15px;font-weight:700;text-decoration:none;transition:transform .14s,box-shadow .14s,background .14s;display:inline-flex}.hp-btn-primary{color:#fff;background:linear-gradient(135deg,#2563eb,#6d28d9);box-shadow:0 10px 26px -8px #4f46e5b3}.hp-btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 34px -10px #4f46e5d9}.hp-btn-ghost{color:#eaf0ff;background:#ffffff0f;border-color:#ffffff38}.hp-btn-ghost:hover{background:#ffffff24;transform:translateY(-2px)}.hp-trust{color:#9fb0d6;flex-wrap:wrap;align-items:center;gap:18px;margin-top:26px;font-size:13px;display:flex}.hp-trust b{color:#eaf0ff}.hp-visual{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#ffffff17,#ffffff08);border:1px solid #ffffff29;border-radius:20px;padding:18px;position:relative;box-shadow:0 30px 60px -30px #000000b3}.hp-visual-card{color:var(--ink);background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 16px 30px -18px #00000080}.hp-visual-thumb{color:#fff;letter-spacing:.3px;background:linear-gradient(135deg,#6366f1,#d946ef);align-items:flex-end;height:96px;padding:12px 14px;font-weight:800;display:flex}.hp-visual-body{padding:14px}.hp-visual-body h4{margin:0 0 6px;font-size:15px;font-weight:800}.hp-visual-body p{color:var(--muted);margin:0;font-size:12.5px;line-height:1.5}.hp-visual-row{justify-content:space-between;align-items:center;margin-top:14px;display:flex}.hp-visual-price{font-size:16px;font-weight:800}.hp-pill-float{color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-size:12px;font-weight:700;display:flex;position:absolute;box-shadow:0 12px 24px -12px #0009}.hp-pill-float .ic{color:#16a34a}.hp-pill-a{top:6px;left:-14px}.hp-pill-b{bottom:24px;right:-16px}.hp-stats{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:repeat(4,1fr);margin-top:-52px;display:grid;position:relative;overflow:hidden;box-shadow:0 20px 50px -30px #0f172a59}.hp-stat{border-right:1px solid var(--line);padding:20px 22px}.hp-stat:last-child{border-right:none}.hp-stat .n{color:var(--brand-2);font-size:26px;font-weight:800}.hp-stat .l{color:var(--muted);margin-top:2px;font-size:13px}.hp-section{padding:46px 0 8px}.hp-section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.hp-kicker{letter-spacing:.6px;text-transform:uppercase;color:var(--brand-2);font-size:12.5px;font-weight:800}.hp-h2{letter-spacing:-.01em;margin:6px 0 0;font-size:clamp(22px,3vw,30px);font-weight:800}.hp-h2-sub{color:var(--muted);max-width:640px;margin:8px 0 0;font-size:14.5px}.hp-viewall{color:var(--brand);white-space:nowrap;font-size:14px;font-weight:700;text-decoration:none}.hp-viewall:hover{text-decoration:underline}.hp-chips{flex-wrap:wrap;gap:10px;display:flex}.hp-chip{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:999px;align-items:center;gap:8px;padding:9px 15px;font-size:13.5px;font-weight:700;text-decoration:none;transition:all .14s;display:inline-flex}.hp-chip .c{color:var(--muted);font-weight:600}.hp-chip:hover{border-color:#bcd0ff;transform:translateY(-1px);box-shadow:0 8px 18px -12px #2563eb80}.hp-grid{grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:18px;display:grid}.hp-card{border:1px solid var(--line);color:inherit;background:#fff;border-radius:14px;flex-direction:column;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;display:flex;overflow:hidden}.hp-card:hover{border-color:#d3dbea;transform:translateY(-4px);box-shadow:0 22px 40px -24px #0f172a66}.hp-thumb{color:#fff;flex-direction:column;justify-content:space-between;height:118px;padding:14px;display:flex;position:relative}.hp-thumb:after{content:"";pointer-events:none;background-image:radial-gradient(circle at 85% 15%,#ffffff47,#0000 45%);position:absolute;inset:0}.hp-thumb .lvl{letter-spacing:.5px;text-transform:uppercase;opacity:.95;z-index:1;font-size:11px;font-weight:800}.hp-thumb .code{font-family:var(--font-geist-mono), monospace;opacity:.9;z-index:1;font-size:11px;font-weight:700}.hp-thumb .shield{opacity:.5;z-index:0;position:absolute;bottom:8px;right:10px}.thumb--beginner{background:linear-gradient(135deg,#0ea5e9,#22c55e)}.thumb--mid{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.thumb--senior{background:linear-gradient(135deg,#6366f1,#4338ca)}.thumb--expert{background:linear-gradient(135deg,#8b5cf6,#d946ef)}.thumb--pro{background:linear-gradient(135deg,#f59e0b,#ef4444)}.hp-card-body{flex-direction:column;flex:1;gap:8px;padding:14px;display:flex}.hp-card-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:15px;font-weight:800;line-height:1.3;display:-webkit-box;overflow:hidden}.hp-card-brief{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12.5px;line-height:1.5;display:-webkit-box;overflow:hidden}.hp-card-meta{color:#8a93a3;margin-top:2px;font-size:11.5px}.hp-card-foot{justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px;display:flex}.hp-card-price{font-size:16px;font-weight:800}.hp-badge{border-radius:999px;padding:3px 10px;font-size:11.5px;font-weight:800}.hp-badge--enrolled{color:#166534;background:#f0fdf4}.hp-card-cta{color:var(--brand);font-size:12.5px;font-weight:800}.hp-features{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;display:grid}.hp-feature{border:1px solid var(--line);background:#fff;border-radius:14px;padding:20px}.hp-feature .fic{width:42px;height:42px;color:var(--brand-2);background:linear-gradient(135deg,#eef2ff,#f5f3ff);border-radius:11px;justify-content:center;align-items:center;margin-bottom:12px;display:flex}.hp-feature h3{margin:0 0 6px;font-size:15.5px;font-weight:800}.hp-feature p{color:var(--muted);margin:0;font-size:13.5px;line-height:1.6}.hp-path{grid-template-columns:repeat(5,1fr);gap:12px;display:grid}.hp-step{border:1px solid var(--line);color:inherit;background:#fff;border-radius:14px;padding:18px 16px;text-decoration:none;transition:all .14s;position:relative}.hp-step:hover{transform:translateY(-3px);box-shadow:0 18px 34px -22px #0f172a66}.hp-step .num{color:#fff;border-radius:9px;justify-content:center;align-items:center;width:30px;height:30px;margin-bottom:12px;font-size:14px;font-weight:800;display:flex}.hp-step h4{margin:0 0 3px;font-size:14.5px;font-weight:800}.hp-step p{color:var(--muted);margin:0;font-size:12px}.hp-cta-band{text-align:center;color:#fff;background:radial-gradient(600px 300px at 20% 0,#7c3aed80,#0000 60%),linear-gradient(135deg,#1d4ed8,#4f46e5 55%,#7c3aed);border-radius:22px;margin:56px 0 0;padding:44px;box-shadow:0 30px 70px -34px #4f46e5b3}.hp-cta-band h2{letter-spacing:-.01em;margin:0 0 10px;font-size:clamp(24px,3.4vw,34px);font-weight:800}.hp-cta-band p{opacity:.92;max-width:520px;margin:0 auto 22px;font-size:15.5px;line-height:1.6}.hp-cta-band .hp-btn-primary{color:#3730a3;background:#fff;box-shadow:0 12px 28px -12px #0006}.hp-cta-band .hp-btn-primary:hover{background:#f5f3ff}.hp-footer{border-top:1px solid var(--line);background:#fff;margin-top:56px}.hp-footer-in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;display:flex}.hp-foot-brand{align-items:center;gap:10px;font-weight:800;display:flex}.hp-foot-note{color:var(--muted);font-size:12.5px}.hp-pay{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.hp-pay span{color:#475569;border:1px solid var(--line);background:#fbfcfe;border-radius:7px;padding:5px 9px;font-size:11px;font-weight:700}@media (width<=900px){.hp-hero-grid{grid-template-columns:1fr;padding:48px 0 84px}.hp-visual{display:none}.hp-stats{grid-template-columns:repeat(2,1fr)}.hp-stat:nth-child(2){border-right:none}.hp-stat:first-child,.hp-stat:nth-child(2){border-bottom:1px solid var(--line)}.hp-path{grid-template-columns:repeat(2,1fr)}}@media (width<=520px){.hp-stats{grid-template-columns:1fr 1fr}.hp-path{grid-template-columns:1fr}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-5{top:calc(var(--spacing) * 5)}.top-10{top:calc(var(--spacing) * 10)}.isolate{isolation:isolate}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-42{margin:calc(var(--spacing) * 42)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.h-2{height:calc(var(--spacing) * 2)}.h-4{height:calc(var(--spacing) * 4)}.h-12{height:calc(var(--spacing) * 12)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-18{height:calc(var(--spacing) * 18)}.h-28{height:calc(var(--spacing) * 28)}.h-34{height:calc(var(--spacing) * 34)}.h-114{height:calc(var(--spacing) * 114)}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow,.shadow\/degraded{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.\!filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)!important}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--lms-radius:12px;--lms-radius-sm:8px;--panel-shadow:0 12px 32px #17202614;--panel-shadow-sm:0 4px 14px #1720260f}.btn-primary,.btn-ghost,.btn-danger{border-radius:var(--lms-radius-sm);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.92rem;font-weight:600;text-decoration:none;transition:background .15s,border-color .15s,transform 80ms;display:inline-flex}.btn-primary{background:var(--teal);border-color:var(--teal-dark);color:#f4fffb}.btn-primary:hover:not(:disabled){background:var(--teal-dark)}.btn-ghost{border-color:var(--line-strong);color:var(--teal-dark);background:0 0}.btn-ghost:hover:not(:disabled){background:#08756814}.btn-danger{color:var(--rose);background:0 0;border-color:#b13d4b80}.btn-danger:hover:not(:disabled){background:#b13d4b1a}.btn-primary.lg,.btn-ghost.lg{padding:13px 26px;font-size:1rem}.btn-primary.sm,.btn-ghost.sm,.btn-danger.sm{padding:6px 12px;font-size:.8rem}.site-header{background:var(--panel);border-bottom:1px solid var(--line);z-index:40;align-items:center;gap:24px;padding:12px 24px;display:flex;position:sticky;top:0}.site-brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.site-mark{color:#e9fff7;background:#102820;border-radius:8px;place-items:center;width:36px;height:36px;display:grid}.site-brand-text{flex-direction:column;line-height:1.15;display:flex}.site-brand-text strong{font-size:.98rem}.site-brand-text em{color:var(--ink-muted);font-size:.72rem;font-style:normal}.site-nav{gap:6px;margin-left:auto;display:flex}.site-nav a{color:var(--ink-muted);border-radius:999px;padding:7px 14px;font-size:.88rem;font-weight:500;text-decoration:none}.site-nav a:hover{color:var(--teal-dark);background:#08756817}.site-user{position:relative}.user-chip{border:1px solid var(--line);background:0 0;border-radius:999px;align-items:center;gap:9px;padding:5px 14px 5px 5px;display:flex}.user-chip:hover{border-color:var(--line-strong)}.user-avatar{background:var(--teal);color:#f4fffb;border-radius:50%;place-items:center;width:30px;height:30px;font-size:.72rem;font-weight:700;display:grid}.user-meta{text-align:left;flex-direction:column;line-height:1.2;display:flex}.user-meta strong{font-size:.84rem}.user-meta em{color:var(--ink-muted);font-size:.7rem;font-style:normal}.user-menu{background:var(--panel);border:1px solid var(--line);border-radius:var(--lms-radius);box-shadow:var(--panel-shadow);z-index:50;flex-direction:column;gap:2px;min-width:240px;padding:12px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.user-menu .um-email,.user-menu .um-tiers{color:var(--ink-muted);margin:0 0 4px;font-size:.78rem}.user-menu a,.user-menu button{color:var(--foreground);text-align:left;background:0 0;border:0;border-radius:6px;padding:8px 10px;font-size:.88rem;text-decoration:none}.user-menu a:hover,.user-menu button:hover{background:#08756817}.page-shell{max-width:1240px;margin:0 auto;padding:34px 24px 80px}.page-head{margin-bottom:26px}.page-head h1{margin:6px 0 10px;font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.15}.page-lede{color:var(--ink-muted);max-width:78ch;margin:0;font-size:1rem;line-height:1.62}.pane-eyebrow{color:var(--teal-dark);letter-spacing:.09em;text-transform:uppercase;font-size:.74rem;font-weight:700}.page-section{margin-top:42px}.page-section h2{margin:0 0 12px;font-size:1.24rem}.course-loading,.gate-panel{text-align:center;max-width:640px;margin:0 auto;padding:80px 24px}.gate-panel h1{margin-bottom:12px;font-size:1.6rem}.gate-panel p{color:var(--ink-muted);max-width:56ch;margin:0 auto 18px;line-height:1.65}.gate-panel .btn-primary,.gate-panel .btn-ghost{margin:4px}.stat-strip{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin:22px 0;display:grid}.stat-strip>div{background:var(--panel);border:1px solid var(--line);border-radius:var(--lms-radius);flex-direction:column;gap:2px;padding:14px 16px;display:flex}.stat-strip strong{font-size:1.5rem;font-weight:700;line-height:1.1}.stat-strip span{color:var(--ink-muted);font-size:.78rem}.stat-strip.small strong{font-size:1.2rem}.course-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;display:grid}.course-grid.wide{grid-template-columns:repeat(auto-fit,minmax(420px,1fr))}.course-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--lms-radius);box-shadow:var(--panel-shadow-sm);flex-direction:column;gap:10px;padding:20px;display:flex}.course-card.locked{opacity:.72}.course-card header{justify-content:space-between;align-items:center;gap:8px;display:flex}.cc-code{color:var(--teal-dark);letter-spacing:.05em;background:#0875681a;border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:700}.cc-level{text-transform:uppercase;border-radius:999px;padding:4px 10px;font-size:.7rem;font-weight:700}.cc-level.lvl-beginner{color:#16603a;background:#1d7a491f}.cc-level.lvl-mid{color:#1c3f8f;background:#2457c51f}.cc-level.lvl-senior{color:#8a5000;background:#b66a0024}.cc-level.lvl-expert{color:#5f2a86;background:#7c3aad24}.cc-level.lvl-pro{color:#7d2530;background:#b13d4b21}.course-card h3{margin:0;font-size:1.16rem;line-height:1.28}.course-card>p{color:var(--ink-muted);margin:0;font-size:.9rem;line-height:1.6}.cc-meta{color:var(--ink-muted);flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;font-size:.78rem;list-style:none;display:flex}.cc-meta li:before{color:var(--line-strong);content:"▪ "}.cc-outcomes{background:var(--panel-strong);border-radius:var(--lms-radius-sm);padding:12px 14px}.cc-outcomes h4{letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:.76rem}.cc-outcomes ul{color:var(--ink-muted);margin:0;padding-left:18px;font-size:.84rem;line-height:1.55}.cc-progress{flex-direction:column;gap:5px;display:flex}.cc-progress span{color:var(--ink-muted);font-size:.78rem}.cc-lock{color:var(--amber);font-size:.82rem;font-weight:600}.pp-bar{background:#17202617;border-radius:999px;width:100%;height:7px;overflow:hidden}.pp-bar>span{background:var(--teal);border-radius:999px;height:100%;transition:width .3s;display:block}.player-shell{grid-template-columns:316px minmax(0,1fr);min-height:calc(100vh - 61px);display:grid}.player-nav{background:var(--panel);border-right:1px solid var(--line);flex-direction:column;max-height:calc(100vh - 61px);display:flex;position:sticky;top:61px;overflow-y:auto}.player-nav-head{border-bottom:1px solid var(--line);padding:18px 18px 16px}.player-back{color:var(--ink-muted);font-size:.8rem;text-decoration:none}.player-back:hover{color:var(--teal-dark)}.player-course-code{color:var(--teal-dark);letter-spacing:.08em;margin-top:10px;font-size:.72rem;font-weight:700}.player-nav-head h2{margin:4px 0 14px;font-size:1.02rem;line-height:1.3}.player-progress{flex-direction:column;gap:5px;display:flex}.pp-label{color:var(--ink-muted);font-size:.75rem}.player-toc{flex-direction:column;gap:2px;padding:12px;display:flex}.toc-top{border-radius:var(--lms-radius-sm);color:var(--foreground);text-align:left;background:0 0;border:0;padding:10px 12px;font-size:.88rem;font-weight:600}.toc-top:hover{background:#08756814}.toc-top.active,.toc-item.active{color:var(--teal-dark);background:#08756824}.toc-chapter{margin-top:2px}.toc-chapter-btn{border-radius:var(--lms-radius-sm);text-align:left;background:0 0;border:0;align-items:center;gap:9px;width:100%;padding:9px 12px;display:flex}.toc-chapter-btn:hover{background:#08756812}.toc-num{background:var(--panel-strong);border:1px solid var(--line);border-radius:6px;flex:0 0 22px;place-items:center;width:22px;height:22px;font-size:.72rem;font-weight:700;display:grid}.toc-chapter-btn.open .toc-num{background:var(--teal);border-color:var(--teal-dark);color:#f4fffb}.toc-title{flex:1;font-size:.86rem;font-weight:600;line-height:1.3}.toc-count{color:var(--ink-muted);font-size:.72rem}.toc-items{margin:2px 0 6px;padding:0 0 0 14px;list-style:none}.toc-item{border:0;border-left:2px solid var(--line);color:var(--ink-muted);text-align:left;background:0 0;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:.82rem;line-height:1.35;display:flex}.toc-item:hover{color:var(--foreground);background:#0875680f}.toc-item.active{border-left-color:var(--teal)}.toc-item>span:nth-child(2){flex:1}.toc-dot{border:1.5px solid var(--line-strong);background:0 0;border-radius:50%;flex:0 0 9px;width:9px;height:9px}.toc-item.done .toc-dot{background:var(--green);border-color:var(--green)}.toc-item.done{color:var(--foreground)}.toc-min{color:var(--line-strong);font-size:.7rem}.toc-item.quiz,.toc-item.lab{font-weight:600}.toc-item.intro{font-style:italic}.player-main{flex-direction:column;min-width:0;display:flex}.player-bar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);z-index:20;background:#fffdf7f0;align-items:center;gap:14px;padding:10px 26px;display:flex;position:sticky;top:61px}.nav-toggle{border:1px solid var(--line);border-radius:var(--lms-radius-sm);background:0 0;padding:7px 12px;font-size:.82rem;display:none}.player-crumb{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.82rem;overflow:hidden}.player-bar-actions{gap:6px;display:flex}.icon-btn{border:1px solid var(--line);border-radius:var(--lms-radius-sm);background:0 0;width:34px;height:32px;font-size:.88rem}.icon-btn.on{background:#b66a0024;border-color:#b66a0066}.note-drawer{background:var(--panel-strong);border-bottom:1px solid var(--line);flex-direction:column;gap:8px;padding:14px 26px;display:flex}.note-drawer label{font-size:.8rem;font-weight:600}.note-drawer textarea{border:1px solid var(--line-strong);border-radius:var(--lms-radius-sm);resize:vertical;width:100%;padding:10px}.note-drawer .btn-primary{align-self:flex-start}.player-canvas{width:100%;max-width:860px;margin:0 auto;padding:32px 26px 90px}.pane h1{margin:8px 0 12px;font-size:clamp(1.65rem,3vw,2.15rem);line-height:1.16}.pane-lede{color:var(--ink-muted);margin:0 0 8px;font-size:1.04rem;line-height:1.65}.pane-section{border-top:1px solid var(--line);margin-top:32px;padding-top:24px}.pane-section h2{margin:0 0 12px;font-size:1.16rem}.pane-section.two-col{grid-template-columns:1fr 1fr;gap:28px;display:grid}.mini-head{margin:18px 0 8px;font-size:.98rem}.overview-actions{flex-wrap:wrap;gap:10px;margin:18px 0 6px;display:flex}.chip-row{flex-wrap:wrap;gap:8px;display:flex}.chip{background:var(--panel-strong);border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:.8rem}.chapter-map{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.chapter-map button{background:var(--panel);border:1px solid var(--line);border-radius:var(--lms-radius);text-align:left;align-items:flex-start;gap:14px;width:100%;padding:14px 16px;display:flex}.chapter-map button:hover{border-color:var(--teal)}.cm-num{background:var(--panel-strong);border-radius:8px;flex:0 0 32px;place-items:center;width:32px;height:32px;font-weight:700;display:grid}.cm-body{flex-direction:column;flex:1;gap:3px;display:flex}.cm-body strong{font-size:.98rem}.cm-body em{color:var(--ink-muted);font-size:.85rem;font-style:normal;line-height:1.5}.cm-meta{color:var(--line-strong);font-size:.74rem}.cm-progress{color:var(--ink-muted);font-size:.78rem;font-weight:600}.glossary{grid-template-columns:1fr 1fr;gap:10px;margin:0;display:grid}.glossary>div{background:var(--panel-strong);border-radius:var(--lms-radius-sm);padding:10px 12px}.glossary dt{font-size:.88rem;font-weight:700}.glossary dd{color:var(--ink-muted);margin:3px 0 0;font-size:.83rem;line-height:1.5}.lesson-map{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.lesson-map li{border-left:3px solid var(--teal);flex-direction:column;gap:3px;padding:2px 0 2px 14px;display:flex}.lesson-map span{color:var(--ink-muted);font-size:.88rem;line-height:1.5}.lesson-map em{color:var(--line-strong);font-size:.75rem;font-style:normal}.objective-line{background:var(--panel-strong);border-left:3px solid var(--teal);border-radius:0 var(--lms-radius-sm) var(--lms-radius-sm) 0;margin:0 0 26px;padding:12px 16px;font-size:.92rem;line-height:1.6}.lesson-body{font-size:1.03rem}.lesson-p{margin:0 0 18px;line-height:1.78}.lesson-h2{margin:34px 0 14px;font-size:1.3rem;line-height:1.3}.lesson-h3{margin:26px 0 10px;font-size:1.08rem}.lesson-ul,.lesson-ol{margin:0 0 20px;padding-left:24px;line-height:1.72}.lesson-ul li,.lesson-ol li{margin-bottom:8px}.lesson-quote{border-left:3px solid var(--amber);margin:22px 0;padding:4px 0 4px 18px;font-size:1.04rem;font-style:italic}.lesson-quote cite{color:var(--ink-muted);margin-top:8px;font-size:.84rem;font-style:normal;display:block}.term-card{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius);margin:22px 0;padding:18px 20px}.term-card h5{letter-spacing:.08em;text-transform:uppercase;margin:0 0 12px;font-size:.76rem}.term-card dl{margin:0}.term-row+.term-row{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.term-row dt{font-size:.98rem;font-weight:700}.term-row dd{margin:4px 0 0;line-height:1.68}.term-row dd em{color:var(--ink-muted);margin-top:6px;font-size:.9rem;font-style:italic;display:block}.callout{border:1px solid var(--line);border-radius:var(--lms-radius-sm);border-left-width:4px;margin:24px 0;padding:16px 20px}.callout-head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.callout-icon{font-size:.9rem}.callout-kind{letter-spacing:.09em;text-transform:uppercase;font-size:.7rem;font-weight:700}.callout h5{margin:0 0 8px;font-size:1rem}.callout p{margin:0 0 10px;line-height:1.7}.callout p:last-child{margin-bottom:0}.callout.tone-info{border-left-color:var(--blue);background:#2457c50f}.callout.tone-info .callout-kind,.callout.tone-info .callout-icon{color:var(--blue)}.callout.tone-tip{border-left-color:var(--teal);background:#08756812}.callout.tone-tip .callout-kind,.callout.tone-tip .callout-icon{color:var(--teal-dark)}.callout.tone-warning{border-left-color:var(--amber);background:#b66a0014}.callout.tone-warning .callout-kind,.callout.tone-warning .callout-icon{color:var(--amber)}.callout.tone-danger{border-left-color:var(--rose);background:#b13d4b12}.callout.tone-danger .callout-kind,.callout.tone-danger .callout-icon{color:var(--rose)}.callout.tone-story{border-left-color:var(--line-strong);background:#1720260a}.callout.tone-story .callout-kind,.callout.tone-story .callout-icon{color:var(--ink-muted)}.callout.tone-standard{background:#7c3aad0f;border-left-color:#7c3aad}.callout.tone-standard .callout-kind,.callout.tone-standard .callout-icon{color:#5f2a86}.callout.tone-misconception{background:#b13d4b0d;border-left-color:#8a2f3c}.callout.tone-misconception .callout-kind,.callout.tone-misconception .callout-icon{color:#8a2f3c}.data-table{margin:24px 0}.table-title{letter-spacing:.04em;text-transform:uppercase;margin-bottom:8px;font-size:.82rem;font-weight:700}.table-scroll{border:1px solid var(--line);border-radius:var(--lms-radius-sm);overflow-x:auto}.data-table table{border-collapse:collapse;width:100%;min-width:100%;font-size:.88rem}.data-table th{background:var(--panel-strong);border-bottom:1px solid var(--line-strong);letter-spacing:.03em;text-align:left;text-transform:uppercase;white-space:nowrap;padding:10px 12px;font-size:.78rem}.data-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:10px 12px;line-height:1.55}.data-table tr:last-child td{border-bottom:0}.table-caption{color:var(--ink-muted);margin:8px 0 0;font-size:.82rem;line-height:1.55}.lesson-figure{background:var(--panel);border:1px solid var(--line);border-radius:var(--lms-radius);margin:26px 0;padding:18px}.figure-title{letter-spacing:.05em;text-transform:uppercase;margin-bottom:12px;font-size:.8rem;font-weight:700}.figure-canvas svg{width:100%;max-width:100%;height:auto}.lesson-figure figcaption{color:var(--ink-muted);margin-top:12px;font-size:.84rem;line-height:1.55}.code-figure{margin:24px 0}.code-head{border-radius:var(--lms-radius-sm) var(--lms-radius-sm) 0 0;color:#cfe9e0;background:#12241f;justify-content:space-between;align-items:center;padding:8px 14px;font-size:.76rem;display:flex}.code-lang{opacity:.65;text-transform:uppercase}.code-figure pre{border-radius:0 0 var(--lms-radius-sm) var(--lms-radius-sm);color:#e4f4ee;font-family:var(--font-geist-mono), monospace;background:#0f1f1b;margin:0;padding:14px 16px;font-size:.84rem;line-height:1.6;overflow-x:auto}.code-figure figcaption{color:var(--ink-muted);margin-top:8px;font-size:.84rem}.worked-example{border-radius:var(--lms-radius);background:#0875680d;border:1px solid #08756838;margin:26px 0;padding:20px 22px}.we-badge{background:var(--teal);color:#f4fffb;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:4px 10px;font-size:.68rem;font-weight:700}.worked-example h5{margin:10px 0 8px;font-size:1.06rem}.we-scenario{margin:0 0 14px;line-height:1.68}.we-steps{counter-reset:we;margin:0 0 14px;padding:0;list-style:none}.we-steps li{counter-increment:we;flex-direction:column;gap:2px;padding:10px 0 10px 34px;display:flex;position:relative}.we-steps li+li{border-top:1px solid #0875682e}.we-steps li:before{background:var(--teal);color:#f4fffb;content:counter(we);border-radius:50%;place-items:center;width:22px;height:22px;font-size:.72rem;font-weight:700;display:grid;position:absolute;top:10px;left:0}.we-step-label{font-size:.92rem;font-weight:700}.we-step-detail{line-height:1.68}.we-takeaway{background:var(--panel);border-radius:var(--lms-radius-sm);margin:0;padding:12px 14px;line-height:1.68}.compare-block{margin:26px 0}.compare-block h5{margin:0 0 12px;font-size:1.02rem}.compare-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.compare-col{border:1px solid var(--line);border-radius:var(--lms-radius);padding:14px 16px}.compare-col h6{margin:0 0 8px;font-size:.92rem}.compare-col ul{margin:0;padding-left:18px;line-height:1.62}.compare-col li{margin-bottom:7px}.compare-col.tone-bad{background:#b13d4b0d;border-color:#b13d4b4d}.compare-col.tone-good{background:#1d7a490d;border-color:#1d7a4952}.timeline-block,.steps-block{margin:26px 0}.timeline-block h5,.steps-block h5{margin:0 0 14px;font-size:1.02rem}.timeline-block ol{margin:0;padding:0;list-style:none}.timeline-block li{border-left:2px solid var(--line-strong);gap:14px;padding:0 0 18px 20px;display:flex;position:relative}.timeline-block li:last-child{border-left-color:#0000;padding-bottom:0}.tl-marker{background:var(--panel);border:2px solid var(--teal);color:var(--teal-dark);white-space:nowrap;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:700;position:absolute;left:-1px;transform:translate(-50%)}.timeline-block li>div{padding-left:46px}.timeline-block strong{font-size:.95rem;display:block}.timeline-block p{color:var(--ink-muted);margin:4px 0 0;line-height:1.65}.steps-block ol{counter-reset:sb;margin:0;padding:0;list-style:none}.steps-block li{background:var(--panel);border:1px solid var(--line);border-radius:var(--lms-radius-sm);margin-bottom:10px;padding:12px 16px}.steps-block strong{font-size:.95rem}.steps-block p{margin:5px 0 0;line-height:1.68}.takeaway-box{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius);margin-top:34px;padding:18px 22px}.takeaway-box h4{letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-size:.78rem}.takeaway-box ul{margin:0;padding-left:20px;line-height:1.7}.takeaway-box li{margin-bottom:7px}.activity-card{background:var(--panel);border:1px solid var(--line-strong);border-radius:var(--lms-radius);box-shadow:var(--panel-shadow-sm);margin:28px 0;padding:20px 22px}.activity-card.verdict-correct{border-color:#1d7a498c}.activity-card.verdict-partial{border-color:#b66a008c}.activity-card.verdict-incorrect{border-color:#b13d4b80}.activity-card.verdict-done{border-color:#08756880}.activity-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.activity-kind{color:#1c3f8f;letter-spacing:.08em;text-transform:uppercase;background:#2457c51a;border-radius:999px;padding:4px 10px;font-size:.68rem;font-weight:700}.activity-saved{color:var(--green);font-size:.74rem;font-weight:600}.activity-prompt{margin:0 0 6px;font-size:1.02rem;line-height:1.5}.activity-instructions{color:var(--ink-muted);margin:0 0 12px;font-size:.86rem;line-height:1.55}.activity-body{margin-top:12px}.activity-footer{margin-top:14px}.activity-actions{flex-wrap:wrap;gap:8px;display:flex}.activity-feedback{border-radius:var(--lms-radius-sm);margin-top:12px;padding:12px 14px}.activity-feedback strong{margin-bottom:4px;display:block}.activity-feedback p{margin:0;line-height:1.65}.fb-correct{color:#14522f;background:#1d7a4917}.fb-partial{color:#7a4600;background:#b66a001f}.fb-incorrect{color:#7d2530;background:#b13d4b17}.fb-done{color:var(--teal-dark);background:#0875681a}.answer-key{border-radius:var(--lms-radius-sm);background:#b66a001a;margin:10px 0 0;padding:8px 12px;font-size:.84rem}.sub-head{margin:16px 0 8px;font-size:.94rem}.plain-list{margin:0;padding-left:20px;line-height:1.68}.plain-list.small{font-size:.88rem}.plain-list li{margin-bottom:6px}.option-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.option-btn{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius-sm);text-align:left;align-items:flex-start;gap:12px;width:100%;padding:12px 14px;line-height:1.55;display:flex}.option-btn:hover:not(:disabled){border-color:var(--line-strong)}.option-mark{background:var(--panel);border:1px solid var(--line-strong);border-radius:6px;flex:0 0 24px;place-items:center;width:24px;height:24px;font-size:.74rem;font-weight:700;display:grid}.option-check{border:1.5px solid var(--line-strong);border-radius:5px;flex:0 0 20px;width:20px;height:20px;margin-top:1px}.option-check.on{background:var(--teal);border-color:var(--teal-dark);position:relative}.option-check.on:after{color:#f4fffb;content:"✓";font-size:.75rem;position:absolute;top:-1px;left:4px}.opt-picked{border-color:var(--blue);background:#2457c517}.opt-correct{background:#1d7a491a;border-color:#1d7a4999}.opt-wrong{background:#b13d4b17;border-color:#b13d4b8c}.opt-linked{background:#08756812;border-color:#08756866}.match-hint{color:var(--ink-muted);margin:0 0 12px;font-size:.86rem}.match-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.match-col{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.match-btn{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius-sm);text-align:left;flex-direction:column;gap:3px;width:100%;padding:11px 13px;font-size:.88rem;line-height:1.5;display:flex}.match-btn.def{justify-content:center}.match-term{font-weight:600}.match-linked{color:var(--teal-dark);font-size:.78rem}.order-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.order-row{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius-sm);align-items:center;gap:12px;padding:11px 13px;display:flex}.order-index{background:var(--panel);border:1px solid var(--line-strong);border-radius:6px;flex:0 0 24px;place-items:center;width:24px;height:24px;font-size:.76rem;font-weight:700;display:grid}.order-text{flex:1;font-size:.9rem;line-height:1.55}.order-controls{gap:4px;display:flex}.order-controls button{background:var(--panel);border:1px solid var(--line-strong);border-radius:6px;width:26px;height:26px}.order-answer{border-radius:var(--lms-radius-sm);background:#1d7a4912;margin:10px 0 0;padding:12px 12px 12px 32px;font-size:.86rem;line-height:1.6}.cat-pool{background:var(--panel-strong);border:1px dashed var(--line-strong);border-radius:var(--lms-radius-sm);margin-bottom:14px;padding:12px 14px}.cat-pool-label{color:var(--ink-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;font-weight:600}.cat-chips{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.cat-chip{background:var(--panel);border:1px solid var(--line-strong);border-radius:999px;padding:7px 14px;font-size:.84rem}.cat-chip.held{background:var(--blue);border-color:var(--blue);color:#fff}.cat-buckets{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.cat-bucket{background:var(--panel);border:1px solid var(--line);border-radius:var(--lms-radius-sm);min-height:110px;padding:12px}.cat-bucket.droppable{border-color:var(--blue);cursor:copy;border-style:dashed}.cat-bucket h5{margin:0 0 3px;font-size:.88rem}.cat-hint{color:var(--ink-muted);margin:0 0 8px;font-size:.74rem}.cat-bucket ul{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.cat-bucket li{background:var(--panel-strong);border:1px solid var(--line);border-radius:6px;justify-content:space-between;align-items:center;gap:6px;padding:7px 9px;font-size:.82rem;line-height:1.4;display:flex}.cat-bucket li button{color:var(--ink-muted);background:0 0;border:0;padding:0 2px;font-size:1rem;line-height:1}.cloze{margin:0;font-size:1rem;line-height:2.3}.cloze-input{background:var(--panel-strong);border:0;border-bottom:2px solid var(--teal);border-radius:4px 4px 0 0;margin:0 3px;padding:3px 8px;font-size:.95rem}.cloze-input.opt-correct{border-bottom-color:var(--green);background:#1d7a491f}.cloze-input.opt-wrong{border-bottom-color:var(--rose);background:#b13d4b1a}.flashcard-meta{color:var(--ink-muted);text-align:center;margin-bottom:10px;font-size:.8rem}.flashcard{border-radius:var(--lms-radius);color:#eafff8;text-align:center;background:linear-gradient(135deg,#0f4d45,#12241f);border:0;flex-direction:column;justify-content:center;align-items:center;gap:14px;width:100%;min-height:168px;padding:26px;display:flex}.flashcard.flipped{background:linear-gradient(135deg,#1b4f8a,#12243b)}.flashcard-face{font-size:1.06rem;line-height:1.6}.flashcard-hint{opacity:.65;font-size:.74rem}.scenario-intro{background:var(--panel-strong);border-radius:var(--lms-radius-sm);margin:0 0 14px;padding:12px 14px;line-height:1.68}.scenario-progress{color:var(--ink-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:8px;font-size:.76rem;font-weight:700}.scenario-situation{border-left:3px solid var(--amber);margin-bottom:12px;padding-left:14px;line-height:1.7}.scenario-question{margin:0 0 12px;font-weight:600}.hotspot-wrap{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius-sm);padding:12px}.hotspot-svg{width:100%;height:auto}.hotspot-svg .spot rect{fill:var(--panel);stroke:var(--line-strong);stroke-width:1.5px;cursor:pointer;transition:fill .15s}.hotspot-svg .spot text{fill:var(--foreground);pointer-events:none;text-anchor:middle;font-size:13px}.hotspot-svg .spot:hover rect{stroke:var(--teal)}.hotspot-svg .spot.picked rect{fill:#2457c529;stroke:var(--blue)}.hotspot-svg .spot.correct rect{fill:#1d7a492e;stroke:var(--green)}.hotspot-svg .spot.wrong rect{fill:#b13d4b26;stroke:var(--rose)}.terminal{border-radius:var(--lms-radius-sm);background:#0d1a17;overflow:hidden}.terminal-bar{background:#16302a;align-items:center;gap:6px;padding:8px 12px;display:flex}.terminal-bar .dot{border-radius:50%;width:10px;height:10px}.dot.r{background:#e05c5c}.dot.y{background:#e0b45c}.dot.g{background:#5ec98a}.terminal-name{color:#9fc4ba;margin-left:8px;font-size:.74rem}.terminal-body{color:#d9f0e7;font-family:var(--font-geist-mono), monospace;max-height:340px;padding:14px;font-size:.82rem;line-height:1.6;overflow-y:auto}.term-prompt{color:#5ec98a;margin-right:6px}.term-cmd{color:#eafff8}.term-out{color:#a8c8bf;white-space:pre-wrap;margin:2px 0 12px}.term-out.err{color:#e59a9a}.term-input-row{align-items:center;gap:6px;display:flex}.term-input-row input{color:#eafff8;font-family:inherit;font-size:inherit;background:0 0;border:0;outline:none;flex:1}.term-run,.term-hint{color:#d9f0e7;background:#1d4b41;border:0;border-radius:5px;padding:4px 10px;font-size:.74rem}.term-hint{background:0 0;border:1px solid #2d5c51}.terminal-goal{background:var(--panel-strong);border-radius:var(--lms-radius-sm);margin:12px 0 0;padding:10px 12px;font-size:.88rem;line-height:1.6}.terminal-goal em{color:var(--ink-muted)}.reflection-input{border:1px solid var(--line-strong);border-radius:var(--lms-radius-sm);resize:vertical;width:100%;padding:12px;font-size:.95rem;line-height:1.65}.reflection-meta{color:var(--ink-muted);text-align:right;margin:6px 0 12px;font-size:.78rem}.rubric{background:var(--panel-strong);border-radius:var(--lms-radius-sm);padding:12px 14px}.rubric strong{letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;font-size:.8rem;display:block}.rubric ul{margin:0;padding-left:18px;font-size:.88rem;line-height:1.6}.model-answer{border-radius:var(--lms-radius-sm);background:#08756812;margin-top:12px;padding:12px 14px}.model-answer strong{letter-spacing:.05em;text-transform:uppercase;margin-bottom:6px;font-size:.8rem;display:block}.model-answer p{margin:0;line-height:1.7}.checklist{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.check-row{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius-sm);text-align:left;align-items:flex-start;gap:11px;width:100%;padding:11px 13px;display:flex}.check-row.on{background:#1d7a4914;border-color:#1d7a4966}.check-box{background:var(--panel);border:1.5px solid var(--line-strong);color:var(--green);border-radius:5px;flex:0 0 21px;place-items:center;width:21px;height:21px;font-size:.8rem;display:grid}.check-row span strong{font-size:.9rem;font-weight:600;display:block}.check-row span em{color:var(--ink-muted);margin-top:2px;font-size:.82rem;font-style:normal;display:block}.rating-scale{color:var(--ink-muted);margin:0 0 14px;font-size:.84rem;line-height:1.55}.rating-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.rating-list li{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius-sm);grid-template-columns:1fr 170px 110px;gap:4px 14px;padding:12px 14px;display:grid}.rating-label{font-size:.88rem;line-height:1.5}.rating-list input[type=range]{width:100%}.rating-value{text-align:right;font-size:.86rem;font-weight:700}.rating-value em{color:var(--ink-muted);font-size:.74rem;font-style:normal;font-weight:500;display:block}.rating-rationale{color:var(--ink-muted);grid-column:1/-1;margin:4px 0 0;font-size:.82rem;line-height:1.6}.lab-scenario{border-left:3px solid var(--amber);border-radius:0 var(--lms-radius-sm) var(--lms-radius-sm) 0;background:#b66a0012;margin:20px 0;padding:14px 18px}.lab-scenario h4{letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:.78rem}.lab-scenario p{margin:0;line-height:1.7}.lab-stage{border-top:1px solid var(--line);margin-top:26px;padding-top:20px}.lab-stage header{align-items:center;gap:10px;margin-bottom:10px;display:flex}.stage-num{background:var(--teal);color:#f4fffb;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:4px 10px;font-size:.68rem;font-weight:700}.lab-stage h3{margin:0;font-size:1.06rem}.lab-deliverable{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius);margin-top:30px;padding:18px 22px}.lab-deliverable h4{letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.78rem}.lab-deliverable h4+p,.lab-deliverable ul{margin:0 0 16px;line-height:1.7}.lab-deliverable ul{padding-left:20px}.lab-deliverable>:last-child{margin-bottom:0}.quiz-status{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:20px 0 26px;padding:16px 18px;display:grid}.quiz-status.passed{background:#1d7a4914;border-color:#1d7a4966}.quiz-status>div{flex-direction:column;display:flex}.quiz-status strong{font-size:1.35rem}.quiz-status span{color:var(--ink-muted);font-size:.76rem}.quiz-verdict{align-self:center;font-weight:700}.quiz-item{gap:12px;display:flex}.quiz-num{background:var(--panel-strong);border:1px solid var(--line-strong);border-radius:6px;flex:0 0 34px;place-items:center;width:34px;height:34px;margin-top:28px;font-size:.78rem;font-weight:700;display:grid}.quiz-item .activity-card{flex:1;min-width:0}.certificate{margin:24px 0;position:relative}.cert-sheet{--cert-gold:#c8a24a;--cert-gold-soft:#e4cd8c;--cert-ink:#24303a;border:2px solid var(--cert-gold);box-shadow:0 1px 0 var(--cert-gold-soft) inset, 0 22px 50px #17202629;color:var(--cert-ink);background:radial-gradient(120% 90% at 50% 0,#fff 0%,#fdfaf1 45%,#f7f0e0 100%);border-radius:10px;position:relative;overflow:hidden}.cert-guilloche{opacity:.5;pointer-events:none;background-image:repeating-radial-gradient(circle at 12% 18%,#c8a24a17 0 1px,#0000 1px 9px),repeating-radial-gradient(circle at 88% 82%,#0f4d450f 0 1px,#0000 1px 11px);position:absolute;inset:0}.cert-inner{border:1px solid var(--cert-gold-soft);text-align:center;margin:12px;padding:30px 44px 24px;position:relative}.cert-header{justify-content:center;align-items:center;gap:12px;margin-bottom:20px;display:flex}.cert-crest{filter:drop-shadow(0 2px 3px #1720262e);display:inline-flex}.cert-issuer{text-align:left;flex-direction:column;display:flex}.cert-mark{color:#0f4d45;letter-spacing:.12em;text-transform:uppercase;font-size:1.02rem;font-weight:700}.cert-issuer-sub{color:#8a6d24;letter-spacing:.16em;text-transform:uppercase;font-size:.68rem}.cert-title-block{margin:6px 0 18px}.cert-kicker{color:var(--ink-muted);letter-spacing:.22em;text-transform:uppercase;font-size:.72rem;display:block}.cert-name{color:#142c28;letter-spacing:.01em;margin:10px 0 6px;font-family:Georgia,Times New Roman,serif;font-size:2.5rem;font-weight:700;line-height:1.1}.cert-rule{background:linear-gradient(90deg, transparent, var(--cert-gold) 20%, var(--cert-gold) 80%, transparent);width:260px;height:2px;margin:0 auto;display:block}.cert-body{color:#3a464e;max-width:60ch;margin:0 auto;font-size:.98rem;line-height:1.85}.cert-body strong{color:#142c28;font-weight:700}.cert-signoff{grid-template-columns:1fr auto 1fr;align-items:start;gap:24px;max-width:640px;margin:36px auto 8px;display:grid}.cert-sign,.cert-issue{flex-direction:column;align-items:center;width:100%;min-width:0;display:flex}.cert-signature,.cert-issue-date{justify-content:center;align-items:flex-end;width:100%;height:62px;display:flex}.cert-signature-img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:58px;margin-bottom:-2px;display:block}.cert-signature-ink{color:#1b2a52;font-family:var(--font-signature), "Segoe Script", "Snell Roundhand", cursive;white-space:nowrap;padding-bottom:2px;font-size:2.4rem;line-height:1;transform:rotate(-3deg)}.cert-issue-date{color:#2b3a44;font-family:Georgia,Times New Roman,serif;font-size:1.15rem}.cert-sign-line{background:#2b3a44;width:100%;max-width:210px;height:1px;margin:8px 0 7px;display:block}.cert-sign-name{color:#142c28;text-align:center;font-size:.92rem;font-weight:700}.cert-sign-role{color:var(--ink-muted);text-align:center;min-height:2.7em;margin-top:2px;font-size:.72rem;line-height:1.35}.cert-seal{filter:drop-shadow(0 3px 5px #17202638);align-self:start;margin-top:6px;transform:rotate(-8deg)}.cert-verify{border-top:1px solid var(--cert-gold-soft);color:#8a6d24;letter-spacing:.05em;flex-wrap:wrap;justify-content:space-between;gap:8px;margin-top:24px;padding-top:12px;font-size:.72rem;display:flex}.certificate.locked .cert-sheet{filter:grayscale(.9);opacity:.4}.cert-lock{background:var(--panel);border:1px solid var(--line-strong);box-shadow:var(--panel-shadow);border-radius:999px;padding:11px 24px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.complete-row{border-top:1px solid var(--line);margin-top:34px;padding-top:18px}.complete-toggle{cursor:pointer;align-items:center;gap:10px;font-size:.92rem;font-weight:600;display:flex}.complete-toggle input{width:18px;height:18px}.player-pager{border-top:1px solid var(--line);justify-content:space-between;gap:12px;margin-top:22px;padding-top:20px;display:flex}.player-pager button{text-overflow:ellipsis;white-space:nowrap;max-width:48%;overflow:hidden}.auth-shell{grid-template-columns:minmax(0,1fr) 380px;gap:26px;max-width:1080px;margin:0 auto;padding:44px 24px 80px;display:grid}.auth-panel,.auth-side{background:var(--panel);border:1px solid var(--line);border-radius:var(--lms-radius);box-shadow:var(--panel-shadow-sm);padding:28px 30px}.auth-panel h1{margin:8px 0 10px;font-size:1.6rem}.auth-lede{color:var(--ink-muted);margin:0 0 20px;line-height:1.65}.auth-tabs{background:var(--panel-strong);border-radius:var(--lms-radius-sm);gap:4px;margin-bottom:20px;padding:4px;display:flex}.auth-tabs button{background:0 0;border:0;border-radius:6px;flex:1;padding:9px;font-size:.88rem;font-weight:600}.auth-tabs button.active{background:var(--panel);box-shadow:var(--panel-shadow-sm)}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-form label{flex-direction:column;gap:6px;font-size:.84rem;font-weight:600;display:flex}.auth-form .opt{color:var(--ink-muted);font-weight:400}.auth-form input{border:1px solid var(--line-strong);border-radius:var(--lms-radius-sm);padding:11px 13px;font-size:.95rem;font-weight:400}.auth-form input:focus{border-color:var(--teal);outline:2px solid #08756829}.auth-error{border-radius:var(--lms-radius-sm);color:#7d2530;background:#b13d4b17;margin:0;padding:10px 12px;font-size:.88rem}.auth-foot{color:var(--ink-muted);margin:18px 0 12px;font-size:.84rem;line-height:1.6}.auth-side h2{margin:0 0 8px;font-size:1.1rem}.auth-side p{color:var(--ink-muted);margin:0 0 16px;font-size:.88rem;line-height:1.6}.demo-list{flex-direction:column;gap:12px;margin:0 0 16px;padding:0;list-style:none;display:flex}.demo-list li{background:var(--panel-strong);border:1px solid var(--line);border-radius:var(--lms-radius-sm);padding:12px 14px}.demo-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.demo-list code{background:var(--panel);border:1px solid var(--line);border-radius:5px;margin-bottom:4px;padding:5px 8px;font-size:.78rem;display:block}.demo-caps{color:var(--ink-muted);margin:8px 0 0;padding-left:16px;font-size:.78rem;line-height:1.5}.auth-note{border-top:1px solid var(--line);color:var(--ink-muted);margin:0;padding-top:14px;font-size:.8rem;line-height:1.6}.admin-console-grid{grid-template-columns:minmax(0,1fr) 300px;gap:20px;margin-top:8px;display:grid}.admin-list,.admin-detail{background:var(--panel);border:1px solid var(--line);border-radius:var(--lms-radius);padding:16px}.admin-toolbar{margin-bottom:12px}.admin-toolbar input{border:1px solid var(--line-strong);border-radius:var(--lms-radius-sm);width:100%;padding:9px 12px}.admin-table{border-collapse:collapse;width:100%;font-size:.86rem}.admin-table th{border-bottom:1px solid var(--line-strong);color:var(--ink-muted);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:8px 10px;font-size:.72rem}.admin-table td{border-bottom:1px solid var(--line);vertical-align:top;padding:12px 10px}.admin-table tr.selected{background:#0875680f}.admin-table td strong{display:block}.admin-table td em{color:var(--ink-muted);font-size:.78rem;font-style:normal;display:block}.admin-table select{border:1px solid var(--line-strong);border-radius:6px;padding:5px 8px}.tier-toggles{flex-wrap:wrap;gap:4px;display:flex}.tier-pill{background:var(--panel-strong);border:1px solid var(--line);color:var(--ink-muted);border-radius:999px;padding:4px 9px;font-size:.7rem}.tier-pill.on{border-color:var(--teal);color:var(--teal-dark);background:#08756824;font-weight:600}.status-pill{border:1px solid var(--line);text-transform:capitalize;border-radius:999px;padding:4px 10px;font-size:.72rem;font-weight:600}.status-pill.active{color:#14522f;background:#1d7a491f;border-color:#1d7a4966}.status-pill.suspended{color:#7d2530;background:#b13d4b1c;border-color:#b13d4b66}.admin-row-actions{flex-direction:column;gap:5px;display:flex}.admin-detail h3{margin:0 0 4px;font-size:1.02rem}.admin-detail-sub{color:var(--ink-muted);margin:0 0 16px;font-size:.8rem}.admin-detail p{color:var(--ink-muted);font-size:.86rem;line-height:1.6}.admin-course{border-top:1px solid var(--line);flex-direction:column;gap:6px;padding:12px 0;display:flex}.admin-course-meta{color:var(--ink-muted);font-size:.78rem}.full-taught-banner{border-radius:var(--lms-radius);color:inherit;background:linear-gradient(135deg,#0875681f,#2457c51a);border:1px solid #08756859;align-items:center;gap:16px;margin:14px 0 4px;padding:16px 18px;text-decoration:none;transition:border-color .15s,transform 80ms;display:flex}.full-taught-banner:hover{border-color:var(--teal);transform:translateY(-1px)}.ftb-badge{background:var(--teal);color:#f4fffb;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;border-radius:999px;flex:none;align-self:flex-start;align-items:center;gap:6px;padding:5px 12px;font-size:.72rem;font-weight:700;display:inline-flex}.ftb-body{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.ftb-body strong{font-size:1rem}.ftb-body span{color:var(--ink-muted);font-size:.85rem;line-height:1.5}.ftb-cta{background:var(--teal);border-radius:var(--lms-radius-sm);color:#f4fffb;white-space:nowrap;flex:none;align-items:center;gap:6px;padding:10px 16px;font-size:.85rem;font-weight:600;display:inline-flex}@media (width<=720px){.full-taught-banner{flex-direction:column;align-items:stretch}}@media (width<=1080px){.player-shell{grid-template-columns:1fr}.player-nav{display:none}.player-shell.nav-open .player-nav{z-index:60;max-height:none;display:flex;position:fixed;inset:61px 0 0}.nav-toggle{display:block}.auth-shell,.admin-console-grid,.pane-section.two-col,.compare-grid,.match-grid,.glossary{grid-template-columns:1fr}}@media (width<=720px){.site-nav{display:none}.rating-list li{grid-template-columns:1fr}.player-canvas{padding:24px 16px 70px}.player-pager{flex-direction:column}.player-pager button{max-width:100%}.cert-inner{padding:22px 18px 18px}.cert-name{font-size:1.9rem}.cert-signoff{grid-template-columns:1fr;gap:14px}.cert-seal{order:-1;justify-self:center}.cert-sign-line,.cert-issue-date{width:100%;max-width:220px}}@media print{.site-header,.player-nav,.player-bar,.player-pager,.complete-row,.btn-primary,.btn-ghost{display:none!important}.certificate.locked{display:none}.cert-sheet{box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--background:#f7f5ef;--foreground:#172026;--panel:#fffdf7;--panel-strong:#f1f7f3;--ink-muted:#5d696a;--line:#d8dddf;--line-strong:#b8c5c5;--teal:#087568;--teal-dark:#064f47;--blue:#2457c5;--amber:#b66a00;--rose:#b13d4b;--green:#1d7a49;--shadow:0 18px 45px #1720261c}*{box-sizing:border-box;letter-spacing:0}html{background:var(--background);min-width:320px}body{background:var(--background);color:var(--foreground);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;margin:0}button,input,select{font:inherit}button{cursor:pointer}button:disabled,select:disabled,input:disabled{cursor:not-allowed;opacity:.62}.academy-shell{background:linear-gradient(180deg, #f7f5eff5, #e9f3eed1 42%, #f7f2e8f0), var(--background);min-height:100vh;padding:18px}.academy-topbar,.overview-band,.workspace-grid,.lower-grid{max-width:1560px;margin:0 auto}.academy-topbar{justify-content:space-between;align-items:center;gap:16px;padding:10px 0 18px;display:flex}.brand-lockup,.user-strip,.status-row,.panel-heading,.module-topline,.tag-row,.activity-tabs,.detail-actions,.lab-title,.match-score,.permission-list span{align-items:center;display:flex}.brand-lockup{gap:12px;min-width:0}.brand-mark{color:#e9fff7;background:#102820;border:1px solid #ffffff3d;border-radius:8px;flex:0 0 46px;place-items:center;width:46px;height:46px;display:grid}.eyebrow{color:var(--teal-dark);text-transform:uppercase;margin:0 0 4px;font-size:.76rem;font-weight:800}h1,h2,h3,h4,p{margin-top:0}h1{margin-bottom:0;font-size:1.35rem;line-height:1.1}h2{margin-bottom:0;font-size:1.18rem;line-height:1.22}h3{margin-bottom:10px;font-size:1rem;line-height:1.25}h4{margin-bottom:8px;font-size:.96rem;line-height:1.3}.user-strip{flex-wrap:wrap;justify-content:flex-end;gap:8px}.user-pill,.lock-chip,.result-note{border:1px solid var(--line);color:var(--foreground);background:#fffdf7db;border-radius:8px;align-items:center;gap:8px;min-height:38px;padding:8px 10px;text-decoration:none;display:inline-flex}.overview-band{grid-template-columns:minmax(290px,1.3fr) minmax(260px,.8fr) minmax(260px,.9fr);align-items:stretch;gap:14px;margin-bottom:14px;display:grid}.overview-copy,.signal-board,.tool-panel,.module-browser,.module-detail,.workbench-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffdf7eb;border-radius:8px}.overview-copy{padding:22px}.overview-copy h2{max-width:900px;margin:8px 0 10px;font-size:1.55rem}.overview-copy p,.module-summary p,.muted-text,.lesson-panel p,.restricted-state p,.deliverable-box p,.feedback p,.study-room-callout p,.course-study-room p,.empty-catalog p,.full-course-panel p{color:var(--ink-muted);margin-bottom:0;line-height:1.55}.status-row{color:var(--teal-dark);gap:8px;font-size:.88rem;font-weight:750}.status-dot{background:var(--green);border-radius:50%;width:9px;height:9px}.signal-board{flex-direction:column;gap:14px;padding:16px;display:flex}.signal-header{justify-content:space-between;gap:12px;display:flex}.signal-header span{color:var(--ink-muted)}.signal-grid{grid-template-columns:repeat(8,minmax(0,1fr));gap:5px;display:grid}.signal-cell{aspect-ratio:1;border:1px solid #17202614;border-radius:4px}.signal-0{background:#0b6f62}.signal-1{background:#2457c5}.signal-2{background:#b66a00}.signal-3{background:#7a4aa6}.signal-4{background:#1d7a49}.signal-5{background:#b13d4b}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.metric-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:5px;min-height:105px;padding:14px;display:grid}.metric-card svg{color:var(--teal)}.metric-card span{color:var(--ink-muted);font-size:.84rem}.metric-card strong{font-size:1.55rem}.workspace-grid{grid-template-columns:280px minmax(420px,1fr) minmax(360px,.9fr);align-items:start;gap:14px;display:grid}.control-rail{gap:14px;display:grid}.tool-panel,.module-browser,.module-detail,.workbench-panel{padding:16px}.panel-heading{gap:8px;margin-bottom:14px}.panel-heading svg{color:var(--teal)}.field-label{color:var(--ink-muted);margin:12px 0 7px;font-size:.8rem;font-weight:760;display:block}.field-control,.search-box{border:1px solid var(--line-strong);color:var(--foreground);background:#fff;border-radius:8px;width:100%;min-height:42px}.field-control{padding:9px 10px}.search-box{align-items:center;gap:8px;padding:0 10px;display:flex}.search-box input{color:var(--foreground);background:0 0;border:0;outline:0;width:100%;min-height:40px}.permission-list{flex-wrap:wrap;gap:7px;margin-top:14px;display:flex}.permission-list span,.tag-row span,.module-badge{color:#184f43;background:#eef6f2;border:1px solid #cbe2d8;border-radius:8px;gap:5px;padding:6px 8px;font-size:.78rem;font-weight:700}.access-meter{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:16px;padding-top:13px;display:flex}.access-meter span{color:var(--ink-muted)}.secondary-action,.primary-action,.load-more{border:1px solid var(--line-strong);border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:9px 12px;font-weight:760;display:inline-flex}.secondary-action{color:var(--foreground);background:#fff;width:100%;margin-top:14px}.primary-action{color:#fff;background:#102820;border-color:#102820}.load-more{background:var(--panel-strong);color:var(--foreground);width:100%;margin-top:14px}.level-strip{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:14px;display:grid}.level-tab{border:1px solid var(--line);color:var(--foreground);text-align:left;background:#fff;border-radius:8px;align-items:center;gap:4px;min-height:88px;padding:10px;display:grid}.level-tab.active{border-color:var(--teal);box-shadow:inset 0 0 0 2px #08756829}.level-tab span{font-size:.84rem;font-weight:760}.level-tab strong{font-size:1.05rem}.distribution-panel{background:var(--panel-strong);border:1px solid var(--line);border-radius:8px;gap:9px;margin-bottom:16px;padding:12px;display:grid}.distribution-row{grid-template-columns:92px minmax(80px,1fr) 42px;align-items:center;gap:10px;display:grid}.distribution-row span,.distribution-row strong{font-size:.82rem}.bar-track{background:#dfe7e2;border-radius:8px;height:9px;overflow:hidden}.bar-fill{height:100%;display:block}.level-beginner{background:var(--green)}.level-mid{background:var(--blue)}.level-senior{background:var(--amber)}.level-expert{background:#7a4aa6}.level-pro{background:var(--rose)}.browser-header,.detail-heading,.selected-course-heading{justify-content:space-between;align-items:start;gap:12px;margin-bottom:14px;display:flex}.selected-course-panel{border:1px solid var(--line);background:#fff;border-radius:8px;margin-bottom:14px;padding:14px}.selected-course-panel:target,.selected-course-panel:focus-within{border-color:var(--teal)}.selected-course-summary{color:var(--ink-muted);margin-bottom:12px;line-height:1.55}.course-content-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.study-room-callout{color:#fff;background:#102820;border:1px solid #102820;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:12px;padding:15px;display:grid}.study-room-callout .eyebrow{color:#9eeee1}.study-room-callout h3{margin-bottom:6px}.study-room-callout p{color:#ffffffc7}.study-room-callout .inline-primary-action{color:#102820;background:#fff;border-color:#ffffffd1;width:auto;margin-top:0}.course-content-item{background:var(--panel-strong);border:1px solid var(--line);border-radius:8px;align-items:flex-start;gap:9px;min-height:112px;padding:11px;display:flex}.course-content-item svg{color:var(--teal);flex:none;margin-top:2px}.course-content-item strong{margin-bottom:5px;font-size:.9rem;display:block}.course-content-item p{color:var(--ink-muted);margin:0;font-size:.84rem;line-height:1.45}.inline-primary-action{color:#fff;background:#102820;border:1px solid #102820;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:42px;margin-top:12px;padding:9px 12px;font-weight:760;display:inline-flex}.course-study-room{border-top:1px solid var(--line);gap:14px;margin-top:14px;padding-top:14px;display:grid}.study-room-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.study-room-heading h3{margin-bottom:0}.study-room-heading>span{color:#184f43;background:#eef6f2;border:1px solid #cbe2d8;border-radius:8px;flex:none;padding:7px 9px;font-size:.78rem;font-weight:800}.study-route{gap:10px;display:grid}.study-route-step{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:12px;display:grid}.step-number{color:#fff;background:#102820;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;font-weight:820;display:inline-flex}.study-route-title{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.study-route-title span,.compact-resource span{color:#6b4c0f;background:#f5f0e4;border:1px solid #e6d8b7;border-radius:8px;flex:none;padding:5px 7px;font-size:.76rem;font-weight:780}.study-material-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.study-material-grid>section{background:var(--panel-strong);border:1px solid var(--line);border-radius:8px;padding:12px}.full-course-panel{background:#f8fbf8;border:1px solid #cbe2d8;border-radius:8px;gap:14px;padding:14px;display:grid}.full-course-banner{color:#fff;background:#102820;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px;display:grid}.full-course-banner .eyebrow{color:#9eeee1}.full-course-banner h3{margin-bottom:8px}.full-course-banner p{color:#ffffffc7}.full-course-banner>span,.full-lesson-heading span,.lab-workbook-heading span,.assessment-question>span,.schedule-item span{color:#6b4c0f;background:#f5f0e4;border:1px solid #e6d8b7;border-radius:8px;padding:5px 7px;font-size:.76rem;font-weight:820;display:inline-flex}.full-course-banner>span{color:#fff;background:#ffffff1f;border-color:#ffffff38;padding:8px 10px;font-size:.86rem}.full-course-section,.full-course-grid>section,.full-lesson,.lab-workbook,.assessment-question{border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px}.full-course-section{gap:12px;display:grid}.full-course-section>p+p,.teaching-notes p+p{margin-top:10px}.full-course-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.full-course-grid.compact{margin-top:12px}.schedule-list,.full-lesson-list,.lab-workbook-list,.assessment-question-list,.concept-list{gap:10px;display:grid}.schedule-item,.concept-item,.expected-output,.answer-box{background:var(--panel-strong);border:1px solid var(--line);border-radius:8px;gap:6px;padding:10px;display:grid}.full-lesson,.lab-workbook,.assessment-question{gap:12px;display:grid}.full-lesson-heading,.lab-workbook-heading{grid-template-columns:minmax(220px,.7fr) minmax(0,1fr);align-items:start;gap:10px;display:grid}.full-lesson-heading h4,.lab-workbook-heading h4{margin:8px 0 0}.teaching-notes{border-left:4px solid #cbe2d8;padding-left:12px;display:grid}.compact-resource-list{gap:8px;display:grid}.compact-resource{gap:6px;display:grid}.compact-resource span{justify-self:start}.empty-catalog{background:var(--panel-strong);border:1px dashed var(--line-strong);border-radius:8px;align-items:start;gap:8px;padding:18px;display:grid}.empty-catalog svg{color:var(--teal)}.course-page-shell{background:linear-gradient(180deg, #f7f5eff5, #e9f3eed6), var(--background);min-height:100vh;padding:18px}.course-page-topbar,.course-hero-panel,.course-learning-grid{max-width:1560px;margin:0 auto}.course-page-topbar{justify-content:space-between;align-items:center;gap:12px;padding:8px 0 16px;display:flex}.back-link,.course-page-status,.chapter-complete-button{border-radius:8px;align-items:center;gap:8px;min-height:40px;padding:9px 11px;font-weight:780;text-decoration:none;display:inline-flex}.back-link{border:1px solid var(--line-strong);color:var(--foreground);background:#fff}.course-page-status{color:#184f43;background:#eef6f2;border:1px solid #cbe2d8}.course-hero-panel{color:#fff;background:#102820;border:1px solid #ffffff2e;border-radius:8px;grid-template-columns:minmax(0,1fr) 260px;align-items:stretch;gap:18px;margin-bottom:14px;padding:22px;display:grid}.course-hero-panel .eyebrow{color:#9eeee1}.course-hero-panel h1{margin-bottom:10px;font-size:1.75rem;line-height:1.12}.course-hero-panel p{color:#ffffffc7;margin-bottom:0;line-height:1.58}.course-hero-tags{flex-wrap:wrap;gap:8px;margin-top:16px;display:flex}.course-hero-tags span,.quiz-score-card{color:#fff;background:#ffffff1f;border:1px solid #fff3;border-radius:8px;padding:7px 9px;font-size:.82rem;font-weight:800}.course-progress-card{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;gap:8px;min-height:170px;padding:14px;display:grid}.course-progress-card span,.course-progress-card small{color:#ffffffc2}.course-progress-card strong{font-size:2.3rem}.progress-track{background:#ffffff2e;border-radius:8px;height:10px;overflow:hidden}.progress-track span{background:#9eeee1;height:100%;transition:width .18s;display:block}.course-learning-grid{grid-template-columns:350px minmax(0,1fr);align-items:start;gap:14px;padding-bottom:32px;display:grid}.chapter-rail,.chapter-stage{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffdf7f0;border-radius:8px;padding:16px}.chapter-rail{position:sticky;top:14px}.chapter-rail-heading{margin-bottom:12px}.chapter-list,.chapter-content-stack,.assessment-question-list,.matching-practice-list{gap:10px;display:grid}.chapter-button{border:1px solid var(--line);color:var(--foreground);text-align:left;background:#fff;border-radius:8px;grid-template-columns:28px 18px minmax(0,1fr) 18px;align-items:center;gap:9px;width:100%;min-height:70px;padding:10px;display:grid}.chapter-button.active{border-color:var(--teal);box-shadow:inset 0 0 0 2px #08756824}.chapter-number{color:#184f43;background:#eef6f2;border:1px solid #cbe2d8;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.78rem;font-weight:820;display:inline-flex}.chapter-button strong{font-size:.88rem;line-height:1.25;display:block}.chapter-button small{color:var(--ink-muted);margin-top:3px;font-size:.76rem;display:block}.chapter-stage-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:start;gap:14px;margin-bottom:14px;padding-bottom:14px;display:flex}.chapter-stage-heading h2{margin-bottom:6px;font-size:1.35rem}.chapter-stage-heading span{color:var(--ink-muted);font-size:.86rem;font-weight:760}.chapter-complete-button{color:#fff;background:#102820;border:1px solid #102820;flex:none}.chapter-content-panel{border:1px solid var(--line);background:#fff;border-radius:8px;gap:10px;padding:14px;display:grid}.chapter-content-panel p,.checkpoint-box p,.scenario-box p,.matching-practice-item p{color:var(--ink-muted);margin-bottom:0;line-height:1.58}.chapter-content-panel p+p{margin-top:4px}.chapter-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.checkpoint-box,.scenario-box,.matching-practice-item{background:var(--panel-strong);border:1px solid var(--line);border-radius:8px;gap:6px;padding:12px;display:grid}.assessment-summary{grid-template-columns:minmax(0,1fr) 150px;align-items:start}.quiz-score-card{background:#102820;border-color:#102820;align-items:center;gap:5px;min-height:110px;display:grid}.quiz-score-card span{color:#ffffffbd}.quiz-score-card strong{font-size:1.45rem}.assessment-question.interactive{background:#fff}.module-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.module-card{border:1px solid var(--line);color:var(--foreground);text-align:left;background:#fff;border-radius:8px;gap:8px;min-height:190px;padding:13px;text-decoration:none;display:grid}.module-card.active{border-color:var(--teal);box-shadow:inset 0 0 0 2px #08756821}.module-card strong{line-height:1.26}.module-topline{color:var(--ink-muted);justify-content:space-between}.module-meta{color:var(--ink-muted);font-size:.82rem;line-height:1.4}.module-badge{justify-self:start}.lock-chip{flex:none;font-size:.82rem;font-weight:800}.lock-chip.locked{color:#8c2f39;background:#fff1ef;border-color:#f0c9c2}.module-summary{background:var(--panel-strong);border:1px solid var(--line);border-radius:8px;padding:12px}.tag-row{flex-wrap:wrap;gap:7px;margin-top:12px}.activity-tabs{border:1px solid var(--line);background:#fff;border-radius:8px;gap:6px;margin:14px 0;padding:6px}.activity-tab{color:var(--ink-muted);background:0 0;border:0;border-radius:8px;flex:1 1 0;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:8px;display:inline-flex}.activity-tab.active{color:#fff;background:#102820}.activity-stage{border:1px solid var(--line);border-radius:8px;min-height:365px;padding:14px}.study-plan-panel,.lesson-panel,.lab-panel,.quiz-panel,.matching-panel{gap:16px;display:grid}.study-plan-hero{color:#fff;background:#102820;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.study-plan-hero .eyebrow{color:#9eeee1}.study-plan-hero h3{margin-bottom:0}.study-plan-hero span{background:#ffffff1f;border:1px solid #fff3;border-radius:8px;flex:none;padding:8px 10px;font-weight:820}.study-block-list,.resource-list{gap:10px;display:grid}.study-block,.resource-item,.rubric-box{border:1px solid var(--line);background:#fff;border-radius:8px;padding:12px}.study-block-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.study-block-heading span,.resource-item span{color:#184f43;background:#eef6f2;border:1px solid #cbe2d8;border-radius:8px;flex:none;padding:5px 7px;font-size:.76rem;font-weight:780}.study-block p,.resource-item p,.rubric-box p{color:var(--ink-muted);margin:8px 0 0;line-height:1.5}.resource-item{gap:7px;display:grid}.resource-item span{justify-self:start}.clean-list,.runbook-list{margin:0;padding-left:20px}.clean-list li,.runbook-list li{margin-bottom:8px;line-height:1.52}.lab-title{gap:10px}.lab-title span{color:var(--ink-muted);font-size:.84rem}.deliverable-box,.feedback{border-radius:8px;padding:12px}.deliverable-box{background:#f5f0e4;border:1px solid #e6d8b7}.choice-list{gap:9px;display:grid}.choice{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:flex-start;gap:9px;padding:10px;line-height:1.45;display:flex}.choice.selected{border-color:var(--blue);box-shadow:inset 0 0 0 2px #2457c51f}.feedback{align-items:flex-start;gap:10px;display:flex}.feedback.correct{color:#145c38;background:#eaf7ef;border:1px solid #b9dfc7}.feedback.review{color:#8c2f39;background:#fff1ef;border:1px solid #f0c9c2}.match-score{background:var(--panel-strong);border:1px solid var(--line);border-radius:8px;gap:8px;padding:10px}.match-row{grid-template-columns:minmax(120px,.6fr) minmax(180px,1fr);gap:8px;display:grid}.match-row>span{color:var(--ink-muted);padding-top:10px;font-weight:760}.detail-actions{gap:10px;margin-top:14px}.detail-actions .secondary-action{width:auto;margin-top:0}.lower-grid{grid-template-columns:minmax(280px,.9fr) minmax(420px,1.3fr) minmax(280px,.8fr);gap:14px;margin-top:14px;padding-bottom:30px;display:grid}.scenario-controls{display:grid}input[type=range]{accent-color:var(--teal);width:100%}.domain-matrix{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-height:360px;padding-right:4px;display:grid;overflow:auto}.domain-chip{border:1px solid var(--line);color:var(--foreground);text-align:left;background:#fff;border-radius:8px;gap:4px;min-height:72px;padding:10px;display:grid}.domain-chip.active{border-color:var(--teal);box-shadow:inset 0 0 0 2px #08756824}.domain-chip span{font-size:.86rem;font-weight:780;line-height:1.25}.domain-chip small{color:var(--ink-muted)}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.program-signal{border-radius:8px;gap:8px;min-height:100px;padding:12px;display:grid}.program-signal span{color:#172026b8;font-size:.82rem}.program-signal strong{font-size:1.55rem}.program-signal.amber{background:#fff3d9;border:1px solid #e8c777}.program-signal.blue{background:#eaf0ff;border:1px solid #bbc9ef}.program-signal.green{background:#eaf7ef;border:1px solid #b9dfc7}.program-signal.rose{background:#fff0f2;border:1px solid #edc1c8}.restricted-state{background:var(--panel-strong);border:1px dashed var(--line-strong);border-radius:8px;gap:9px;padding:18px;display:grid}@media (width<=1220px){.overview-band,.workspace-grid,.lower-grid,.course-hero-panel,.course-learning-grid{grid-template-columns:1fr}.control-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.chapter-rail{position:static}}@media (width<=760px){.academy-shell{padding:12px}.academy-topbar,.course-page-topbar,.browser-header,.detail-heading,.selected-course-heading,.study-room-heading,.study-route-title,.chapter-stage-heading{flex-direction:column;align-items:stretch}.user-strip{justify-content:flex-start}.overview-copy h2{font-size:1.28rem}.metric-grid,.control-rail,.module-list,.level-strip,.course-content-grid,.study-room-callout,.study-material-grid,.full-course-banner,.full-course-grid,.full-lesson-heading,.lab-workbook-heading,.chapter-two-column,.assessment-summary,.domain-matrix,.admin-grid,.match-row{grid-template-columns:1fr}.activity-tabs{flex-wrap:wrap}.study-plan-hero,.study-block-heading{flex-direction:column;align-items:stretch}.activity-tab{flex-basis:calc(50% - 6px)}.study-room-callout .inline-primary-action{width:100%}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
