@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-vietnamese-500-normal-BmEvtly_.woff2) format("woff2"),url(/assets/space-grotesk-vietnamese-500-normal-BTqKIpxg.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2) format("woff2"),url(/assets/space-grotesk-latin-ext-500-normal-3dgZTiw9.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2) format("woff2"),url(/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-vietnamese-600-normal-DUi7WF5p.woff2) format("woff2"),url(/assets/space-grotesk-vietnamese-600-normal-D6zpsUhD.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-ext-600-normal-DxxdqCpr.woff2) format("woff2"),url(/assets/space-grotesk-latin-ext-600-normal-VcznFIpX.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-600-normal-DjKNqYRj.woff2) format("woff2"),url(/assets/space-grotesk-latin-600-normal-BflQw4A9.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-vietnamese-700-normal-DMty7AZE.woff2) format("woff2"),url(/assets/space-grotesk-vietnamese-700-normal-Duxec5Rn.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-ext-700-normal-BQnZhY3m.woff2) format("woff2"),url(/assets/space-grotesk-latin-ext-700-normal-HVCqSBdx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2) format("woff2"),url(/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--blue-50: #eef4ff;--blue-100: #dce8ff;--blue-500: #1556c0;--blue-600: #0b3f9f;--blue-700: #073486;--blue-800: #082f80;--blue-900: #061f54;--neutral-0: #ffffff;--neutral-50: #f8fafc;--neutral-100: #f4f7fc;--neutral-200: #e9edf4;--neutral-300: #d7e0ef;--neutral-500: #747e8f;--neutral-600: #5e6878;--neutral-800: #252a33;--neutral-900: #17191d;--neutral-950: #111318;--teal-600: #0a6873;--teal-700: #064951;--teal-800: #04363c;--copper-50: #fbf6f1;--copper-100: #f2e4d6;--copper-500: #c46b2d;--copper-600: #a85a24;--copper-700: #85471c;--copper-800: #6a3916;--green-600: #15803d;--amber-600: #c2410c;--red-600: #b91c1c;--color-brand: #0b3f9f;--color-brand-hover: #073486;--color-brand-active: #061f54;--color-brand-soft: #eef4ff;--color-accent: var(--copper-700);--color-accent-hover: var(--copper-800);--color-accent-soft: var(--copper-50);--color-heading: #082f80;--color-eyebrow: #1556c0;--color-text: #17191d;--color-text-secondary: #252a33;--color-text-muted: #3a4554;--color-text-meta: #3a4554;--color-text-inverse: #ffffff;--color-text-on-page: var(--teal-800);--color-page: #e9edf4;--color-surface: #ffffff;--color-surface-soft: #f4f7fc;--color-surface-dark: #111318;--color-surface-disabled: #f8fafc;--color-border: #d7e0ef;--color-border-strong: #5e6878;--color-border-focus: #1556c0;--color-focus-ring: rgba(21, 86, 192, .35);--color-selection: #dce8ff;--color-accent-border: color-mix(in srgb, var(--copper-600) 32%, var(--color-border));--color-success: var(--green-600);--color-warning: var(--amber-600);--color-danger: var(--red-600);--color-danger-hover: color-mix(in srgb, var(--color-danger) 88%, var(--neutral-950));--color-danger-active: color-mix(in srgb, var(--color-danger) 76%, var(--neutral-950));--color-info-soft: color-mix(in srgb, var(--color-brand) 8%, var(--color-surface));--color-info-border: color-mix(in srgb, var(--color-brand) 28%, var(--color-border));--color-success-soft: color-mix(in srgb, var(--color-success) 10%, var(--color-surface));--color-success-border: color-mix(in srgb, var(--color-success) 28%, var(--color-border));--color-warning-soft: color-mix(in srgb, var(--color-warning) 10%, var(--color-surface));--color-warning-border: color-mix(in srgb, var(--color-warning) 28%, var(--color-border));--color-danger-soft: color-mix(in srgb, var(--color-danger) 10%, var(--color-surface));--color-danger-border: color-mix(in srgb, var(--color-danger) 28%, var(--color-border))}:root{--font-display: "Space Grotesk", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-monospace: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 1.875rem;--font-size-3xl: 2.25rem;--font-size-4xl: 3rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.15;--line-height-heading: 1.25;--line-height-body: 1.6;--line-height-control: 1.25;--letter-spacing-tight: -.025em;--letter-spacing-normal: 0;--letter-spacing-wide: .08em}.text-display{font-family:var(--font-display);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--color-heading)}.text-page-heading{font-family:var(--font-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-tight);color:var(--color-heading)}.text-section-heading{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-tight);color:var(--color-heading)}.text-card-heading{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);color:var(--color-heading)}.text-body{font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);color:var(--color-text)}.text-body-small{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);color:var(--color-text-secondary)}.text-metadata{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-body);color:var(--color-text-on-page)}.text-eyebrow{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-control);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-eyebrow)}.text-control{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-control);color:var(--color-text)}.text-code{font-family:var(--font-monospace);font-size:.9em;font-weight:var(--font-weight-regular);line-height:var(--line-height-body)}:root{--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem}:root{--size-control-sm: 2.25rem;--size-control-md: 2.75rem;--size-control-lg: 3rem;--size-touch-target: 2.75rem;--content-reading-width: 47.5rem;--content-page-width: 75rem;--content-app-width: 90rem;--content-empty-state-width: 28rem;--header-height: 4.75rem;--sidebar-width: 17.5rem}:root{--border-width-thin: 1px;--border-width-emphasis: 2px;--border-width-active: 4px}:root{--radius-none: 0;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: .875rem;--radius-round: 9999px;--radius-button: .375rem;--radius-input: .5rem;--radius-card: .875rem;--radius-panel: .875rem}:root{--shadow-none: none;--shadow-xs: 0 1px 2px rgba(6, 31, 84, .06);--shadow-sm: 0 2px 8px rgba(6, 31, 84, .08);--shadow-md: 0 8px 24px rgba(6, 31, 84, .12);--shadow-focus: 0 0 0 3px var(--color-focus-ring)}:root{--duration-instant: 0ms;--duration-fast: .15s;--duration-normal: .22s;--duration-slow: .32s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-enter: cubic-bezier(0, 0, .2, 1);--ease-exit: cubic-bezier(.4, 0, 1, 1)}@media(prefers-reduced-motion:reduce){:root{--duration-instant: 0ms;--duration-fast: 0ms;--duration-normal: 0ms;--duration-slow: 0ms}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--breakpoint-sm: 35rem;--breakpoint-md: 50rem;--breakpoint-lg: 56.25rem;--breakpoint-xl: 68.75rem;--breakpoint-2xl: 90rem}:root{--z-base: 0;--z-sticky: 100;--z-dropdown: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body,h1,h2,h3,h4,h5,h6{margin:0}p,figure,blockquote,dl,dd{margin:0}ul,ol{margin:0;padding:0}img,picture,video,canvas,svg{display:block;max-width:100%}img,video{height:auto}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:none;padding:0;cursor:pointer}a{color:inherit;text-decoration:none}table{border-collapse:collapse}@media(prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}}html{font-family:var(--font-body);color:var(--color-text);background:var(--color-page)}body{min-width:320px;min-height:100vh;margin:0;background:var(--color-page);color:var(--color-text);line-height:var(--line-height-body);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--color-heading);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-tight);font-weight:var(--font-weight-bold)}a{color:var(--color-brand);text-decoration-thickness:from-font;text-underline-offset:.15em;transition:color var(--duration-fast) var(--ease-standard),text-decoration-color var(--duration-fast) var(--ease-standard)}a:hover{color:var(--color-brand-hover)}a:active{color:var(--color-brand-active)}::selection{background:var(--color-selection);color:var(--color-text)}:focus{outline:none}:focus-visible{outline:var(--border-width-emphasis) solid var(--color-border-focus);outline-offset:2px;box-shadow:var(--shadow-focus)}:disabled,[aria-disabled=true]{cursor:not-allowed;opacity:.6}code,kbd,samp,pre{font-family:var(--font-monospace)}.cp-spinner{display:inline-block;flex-shrink:0;width:1em;height:1em;border:var(--border-width-emphasis) solid currentColor;border-right-color:transparent;border-radius:var(--radius-round);animation:cp-spinner-rotate var(--duration-slow) linear infinite;vertical-align:middle}.cp-spinner--sm{font-size:var(--font-size-sm)}.cp-spinner--md{font-size:var(--font-size-base)}.cp-spinner--lg{font-size:var(--font-size-xl)}@keyframes cp-spinner-rotate{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.cp-spinner{animation:none;border-right-color:currentColor;opacity:.7}}.cp-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--size-control-md);padding:var(--space-2) var(--space-4);border:var(--border-width-thin) solid transparent;border-radius:var(--radius-button);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-control);text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.cp-button:focus{outline:none}.cp-button:focus-visible{outline:var(--border-width-emphasis) solid var(--color-border-focus);outline-offset:2px;box-shadow:var(--shadow-focus)}.cp-button:disabled,.cp-button[aria-disabled=true]{cursor:not-allowed;opacity:.6;pointer-events:none}.cp-button--full{width:100%}.cp-button--sm{min-height:var(--size-control-sm);padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs)}.cp-button--md{min-height:var(--size-control-md);padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.cp-button--lg{min-height:var(--size-control-lg);padding:var(--space-3) var(--space-5);font-size:var(--font-size-base)}.cp-button--primary{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-text-inverse)}.cp-button--primary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-brand-hover);border-color:var(--color-brand-hover)}.cp-button--primary:active:not(:disabled):not([aria-disabled=true]){background:var(--color-brand-active);border-color:var(--color-brand-active)}.cp-button--secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-brand)}.cp-button--secondary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-brand-soft);border-color:var(--color-border-strong)}.cp-button--secondary:active:not(:disabled):not([aria-disabled=true]){background:var(--color-selection)}.cp-button--tertiary{background:transparent;border-color:transparent;color:var(--color-brand)}.cp-button--tertiary:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-brand-soft)}.cp-button--tertiary:active:not(:disabled):not([aria-disabled=true]){background:var(--color-selection)}.cp-button--danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--color-text-inverse)}.cp-button--danger:hover:not(:disabled):not([aria-disabled=true]){background:var(--color-danger-hover);border-color:var(--color-danger-hover)}.cp-button--danger:active:not(:disabled):not([aria-disabled=true]){background:var(--color-danger-active);border-color:var(--color-danger-active)}.cp-button__icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;width:1em;height:1em}.cp-button__icon>svg{width:100%;height:100%}.cp-button__label{display:inline-flex;align-items:center}.cp-button--loading .cp-button__content{visibility:hidden}.cp-button__spinner{position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center}.cp-button-group{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.cp-icon-button{box-sizing:border-box;width:var(--size-touch-target);min-width:var(--size-touch-target);min-height:var(--size-touch-target);padding:var(--space-2);gap:0}.cp-icon-button.cp-button--sm,.cp-icon-button.cp-button--md,.cp-icon-button.cp-button--lg{width:var(--size-touch-target);min-width:var(--size-touch-target);min-height:var(--size-touch-target)}.cp-icon-button--sm .cp-button__icon{width:var(--font-size-sm);height:var(--font-size-sm)}.cp-icon-button--md .cp-button__icon{width:var(--font-size-base);height:var(--font-size-base)}.cp-icon-button--lg .cp-button__icon{width:var(--font-size-md);height:var(--font-size-md)}.cp-card{display:flex;flex-direction:column;background:var(--color-surface);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-card);box-shadow:var(--shadow-sm);color:var(--color-text);overflow:hidden}.cp-card__header{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5) 0}.cp-card__body{flex:1 1 auto;padding:var(--space-4) var(--space-5)}.cp-card__footer{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:0 var(--space-5) var(--space-4)}.cp-card__header+.cp-card__body{padding-top:var(--space-3)}.cp-card__body+.cp-card__footer{padding-top:0}.cp-badge{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);min-height:var(--space-6);padding:var(--space-1) var(--space-2);border:var(--border-width-thin) solid transparent;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);line-height:var(--line-height-control);letter-spacing:var(--letter-spacing-normal);white-space:nowrap}.cp-badge--neutral{background:var(--color-surface-soft);border-color:var(--color-border);color:var(--color-text-secondary)}.cp-badge--brand{background:var(--color-brand-soft);border-color:var(--color-info-border);color:var(--color-brand)}.cp-badge--success{background:var(--color-success-soft);border-color:var(--color-success-border);color:var(--color-success)}.cp-badge--warning{background:var(--color-warning-soft);border-color:var(--color-warning-border);color:var(--color-warning)}.cp-badge--danger{background:var(--color-danger-soft);border-color:var(--color-danger-border);color:var(--color-danger)}.cp-alert{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);border:var(--border-width-thin) solid var(--color-border);border-left-width:var(--border-width-active);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text)}.cp-alert--info{border-left-color:var(--color-brand);background:var(--color-info-soft)}.cp-alert--success{border-left-color:var(--color-success);background:var(--color-success-soft)}.cp-alert--warning{border-left-color:var(--color-warning);background:var(--color-warning-soft)}.cp-alert--danger{border-left-color:var(--color-danger);background:var(--color-danger-soft)}.cp-alert__title{margin:0;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-control);color:var(--color-text)}.cp-alert--info .cp-alert__title{color:var(--color-brand)}.cp-alert--success .cp-alert__title{color:var(--color-success)}.cp-alert--warning .cp-alert__title{color:var(--color-warning)}.cp-alert--danger .cp-alert__title{color:var(--color-danger)}.cp-alert__message{margin:0;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);color:var(--color-text-secondary)}.cp-alert__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.cp-skeleton{display:block;background:var(--color-surface-soft);border-radius:var(--radius-sm);animation:cp-skeleton-pulse var(--duration-slow) var(--ease-standard) infinite alternate}.cp-skeleton--text{width:100%;height:var(--font-size-base);border-radius:var(--radius-sm)}.cp-skeleton--title{width:60%;height:var(--font-size-xl);border-radius:var(--radius-sm)}.cp-skeleton--rectangle{width:100%;height:var(--space-24);border-radius:var(--radius-md)}.cp-skeleton--circle{width:var(--space-10);height:var(--space-10);border-radius:var(--radius-round)}@keyframes cp-skeleton-pulse{0%{opacity:1}to{opacity:.55}}@media(prefers-reduced-motion:reduce){.cp-skeleton{animation:none}}.cp-divider{display:block;width:100%;height:0;margin:0;border:0;border-top:var(--border-width-thin) solid var(--color-border)}.cp-empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-4);padding:var(--space-10) var(--space-6);text-align:center}.cp-empty-state__icon{display:inline-flex;align-items:center;justify-content:center;width:var(--space-12);height:var(--space-12);color:var(--color-text-on-page)}.cp-empty-state__icon>svg{width:var(--space-8);height:var(--space-8)}.cp-empty-state__title{margin:0;font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);color:var(--color-heading)}.cp-empty-state__description{margin:0;max-width:var(--content-empty-state-width);font-family:var(--font-body);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);line-height:var(--line-height-body);color:var(--color-text-secondary)}.cp-empty-state__action{display:inline-flex;margin-top:var(--space-2)}.cp-container{width:100%;margin-inline:auto;padding-inline:var(--space-4)}.cp-container--reading{max-width:var(--content-reading-width)}.cp-container--page{max-width:var(--content-page-width)}.cp-container--application{max-width:var(--content-app-width)}.cp-container--fluid{max-width:none}@media(min-width:35rem){.cp-container{padding-inline:var(--space-6)}}@media(min-width:56.25rem){.cp-container{padding-inline:var(--space-8)}}.cp-stack{display:flex;flex-direction:column;align-items:stretch}.cp-inline{display:flex;flex-direction:row;flex-wrap:wrap}.cp-inline--nowrap{flex-wrap:nowrap}.cp-inline--start{align-items:flex-start}.cp-inline--center{align-items:center}.cp-inline--end{align-items:flex-end}.cp-inline--baseline{align-items:baseline}.cp-inline--stretch{align-items:stretch}.cp-inline--justify-start{justify-content:flex-start}.cp-inline--justify-center{justify-content:center}.cp-inline--justify-end{justify-content:flex-end}.cp-inline--justify-between{justify-content:space-between}.cp-panel{display:flex;flex-direction:column;gap:var(--space-6);padding:var(--space-6);background:var(--color-surface);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-xs);color:var(--color-text)}@media(min-width:35rem){.cp-panel{padding:var(--space-8)}}.cp-surface{background:var(--color-surface);color:var(--color-text)}.cp-surface--page{background:var(--color-page)}.cp-surface--section{background:var(--color-surface-soft)}.cp-surface--container{background:var(--color-surface)}.cp-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.learning-player{width:100%;min-width:0}.learning-player__frame{position:relative;width:100%;aspect-ratio:16 / 9;overflow:hidden;border-radius:var(--radius-md, 8px);background:var(--color-surface-dark)}.learning-player__frame .video-js{position:absolute;inset:0;width:100%;height:100%;font-family:var(--font-body);background:var(--color-surface-dark);color:var(--color-text-inverse)}.learning-player__frame .video-js .vjs-tech{background:var(--color-surface-dark)}.learning-player__frame .vjs-big-play-button{border:none;background:color-mix(in srgb,var(--color-brand) 88%,transparent);border-radius:var(--radius-md, 8px);width:64px;height:64px;line-height:64px;margin-left:-32px;margin-top:-32px}.learning-player__frame .vjs-big-play-button:hover,.learning-player__frame .vjs-big-play-button:focus-visible{background:var(--color-brand)}.learning-player__frame .vjs-control-bar{background:color-mix(in srgb,var(--color-surface-dark) 88%,transparent);font-family:var(--font-body);font-size:var(--font-size-sm, .875rem)}.learning-player__frame .vjs-button>.vjs-icon-placeholder:before,.learning-player__frame .vjs-playback-rate .vjs-playback-rate-value{color:var(--color-text-inverse)}.learning-player__frame .vjs-play-progress{background:var(--color-brand)}.learning-player__frame .vjs-load-progress{background:color-mix(in srgb,var(--color-text-meta) 45%,transparent)}.learning-player__frame .vjs-load-progress div{background:color-mix(in srgb,var(--color-text-meta) 65%,transparent)}.learning-player__frame .vjs-slider{background:color-mix(in srgb,var(--neutral-900, #17191d) 55%,transparent)}.learning-player__frame .vjs-mouse-display,.learning-player__frame .vjs-volume-level,.learning-player__frame .vjs-seek-to-live-control.vjs-control.vjs-at-live-edge{background-color:var(--color-brand)}.learning-player__frame .vjs-volume-panel.vjs-volume-panel-vertical{position:relative}.learning-player__frame .vjs-volume-panel.vjs-volume-panel-vertical .vjs-volume-control.vjs-volume-vertical{position:absolute;bottom:3em;width:3em;height:8em;z-index:2;background-color:color-mix(in srgb,var(--color-surface-dark) 88%,transparent);border-radius:var(--radius-md, 8px)}.learning-player__frame .vjs-volume-panel.vjs-volume-panel-vertical.vjs-hover .vjs-volume-control.vjs-volume-vertical,.learning-player__frame .vjs-volume-panel.vjs-volume-panel-vertical:active .vjs-volume-control.vjs-volume-vertical,.learning-player__frame .vjs-volume-panel.vjs-volume-panel-vertical:focus .vjs-volume-control.vjs-volume-vertical,.learning-player__frame .vjs-volume-panel.vjs-volume-panel-vertical .vjs-volume-control.vjs-volume-vertical.vjs-slider-active{left:.5em}.learning-player__frame .vjs-volume-bar.vjs-slider-vertical{width:.3em;height:5em;margin:1.35em auto}.learning-player__frame .vjs-menu-button-popup .vjs-menu .vjs-menu-content,.learning-player__frame .vjs-menu li{background:var(--color-surface-dark);color:var(--color-text-inverse);font-family:var(--font-body)}.learning-player__frame .vjs-menu li.vjs-selected,.learning-player__frame .vjs-menu li.vjs-selected:focus,.learning-player__frame .vjs-menu li.vjs-selected:hover{background:var(--color-brand);color:var(--color-text-inverse)}.learning-player__frame .vjs-menu li.vjs-selected:before{content:"✓ "}.learning-player__frame .vjs-button:focus-visible,.learning-player__frame .vjs-control:focus-visible,.learning-player__frame .vjs-menu-button:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.learning-player__frame .vjs-loading-spinner{border-color:color-mix(in srgb,var(--color-brand) 45%,transparent)}.learning-player__frame .vjs-loading-spinner:before,.learning-player__frame .vjs-loading-spinner:after{border-color:var(--color-text-inverse) transparent transparent}.learning-player__error{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3, .75rem);padding:var(--space-4, 1rem);text-align:center;background:color-mix(in srgb,var(--color-surface-dark) 92%,transparent);color:var(--color-text-inverse)}.learning-player__error-title{margin:0;font-family:var(--font-display, var(--font-body));font-size:var(--font-size-lg, 1.125rem);font-weight:var(--font-weight-semibold, 600)}.learning-player__error-body{margin:0;max-width:28rem;color:color-mix(in srgb,var(--color-text-inverse) 82%,transparent);font-family:var(--font-body);font-size:var(--font-size-sm, .875rem)}.learning-player__error-retry{min-height:var(--size-touch-target, 44px);min-width:44px;padding:var(--space-2, .5rem) var(--space-4, 1rem);border:none;border-radius:var(--radius-button, 6px);background:var(--color-brand);color:var(--color-text-inverse);font-family:var(--font-body);font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600);cursor:pointer}.learning-player__error-retry:hover{background:var(--color-brand-hover)}.learning-player__error-retry:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.learning-player__shortcuts-help{margin:var(--space-2, .5rem) 0 0;color:var(--color-text-on-page);font-family:var(--font-body);font-size:var(--font-size-sm, .875rem)}.learning-player__frame .vjs-touch-overlay .vjs-seek-overlay{font-family:var(--font-body)}.learning-page{padding-block:var(--space-5, 1.25rem) var(--space-8, 2rem)}.learning-page__loading,.learning-page__authorizing,.learning-player-fallback{display:grid;place-items:center;min-height:12rem;width:100%;aspect-ratio:16 / 9;border-radius:var(--radius-md, 8px);background:var(--color-surface-dark, #111318);color:var(--color-text-inverse, #fff)}.learning-page__header{display:flex;flex-direction:column;gap:var(--space-4, 1rem);margin-bottom:var(--space-5, 1.25rem)}.learning-page__eyebrow,.learning-curriculum__eyebrow{margin:0;color:var(--color-eyebrow);font-family:var(--font-body);font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600);letter-spacing:.06em;text-transform:uppercase}.learning-page__course-title{margin:0;color:var(--color-heading, #082f80);font-family:var(--font-display, var(--font-body));font-size:var(--font-size-xl, 1.5rem);font-weight:var(--font-weight-semibold, 600);line-height:1.25}.learning-page__course-progress{display:grid;gap:var(--space-2, .5rem);min-width:0}.learning-page__progress-label,.learning-page__progress-percent,.learning-page__lecture-details{margin:0;color:var(--color-text-on-page);font-family:var(--font-body);font-size:var(--font-size-sm, .875rem)}.learning-page__progress-track{height:.375rem;overflow:hidden;border-radius:999px;background:var(--color-border, #d7e0ef)}.learning-page__progress-fill{height:100%;border-radius:inherit;background:var(--color-brand, #0b3f9f)}.learning-page__layout{display:flex;flex-direction:column;gap:var(--space-5, 1.25rem)}.learning-page__primary{display:flex;flex-direction:column;gap:var(--space-4, 1rem);min-width:0}.learning-page__player-region{display:flex;flex-direction:column;gap:var(--space-3, .75rem)}.learning-page__lecture-title{margin:0 0 var(--space-2, .5rem);color:var(--color-text, #17191d);font-family:var(--font-display, var(--font-body));font-size:var(--font-size-lg, 1.125rem);font-weight:var(--font-weight-semibold, 600)}.learning-page__lecture-title:focus{outline:none}.learning-page__lecture-title:focus-visible{outline:2px solid var(--color-border-focus, #0b3f9f);outline-offset:2px}.learning-nav{display:grid;grid-template-columns:1fr;gap:var(--space-3, .75rem)}.learning-nav__button{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-height:var(--size-touch-target, 44px);width:100%;text-align:left}.learning-nav__direction{font-size:var(--font-size-sm, .875rem);text-transform:uppercase;letter-spacing:.04em}.learning-nav__title{font-size:var(--font-size-sm, .875rem);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.learning-resume{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3, .75rem);padding:var(--space-3, .75rem) var(--space-4, 1rem);border:1px solid var(--color-border, #d7e0ef);border-radius:var(--radius-md, 8px);background:var(--color-surface-soft, #f4f7fc)}.learning-page__progress-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3, .75rem);min-height:1.25rem}.learning-save-status{margin:0 0 0 auto;color:var(--color-text-on-page);font-family:var(--font-body);font-size:var(--font-size-sm, .875rem)}.learning-save-status--saved{color:var(--color-text, #17191d)}.learning-save-status--error{color:var(--color-danger, #b42318)}.learning-save-status__retry{padding:0;border:none;background:none;color:var(--color-brand, #0b3f9f);font:inherit;font-weight:var(--font-weight-semibold, 600);text-decoration:underline;cursor:pointer}.learning-save-status__retry:focus-visible{outline:2px solid var(--color-border-focus, #0b3f9f);outline-offset:2px}.learning-resume__message{margin:0;color:var(--color-text, #17191d);font-family:var(--font-body);font-size:var(--font-size-sm, .875rem)}.learning-complete{padding:var(--space-4, 1rem);border-radius:var(--radius-md, 8px);background:var(--color-surface-soft, #f4f7fc);border:1px solid var(--color-border, #d7e0ef)}.learning-complete__title{margin:0 0 var(--space-2, .5rem);color:var(--color-heading, #082f80);font-family:var(--font-display, var(--font-body));font-size:var(--font-size-lg, 1.125rem)}.learning-complete__title:focus{outline:none}.learning-complete__title:focus-visible{outline:2px solid var(--color-border-focus, #0b3f9f);outline-offset:2px}.learning-complete__next{margin:0 0 var(--space-4, 1rem);color:var(--color-text-on-page);font-family:var(--font-body)}.learning-complete__actions{display:flex;flex-wrap:wrap;gap:var(--space-3, .75rem)}.learning-error{max-width:36rem}.learning-error:focus{outline:none}.learning-error:focus-visible{outline:2px solid var(--color-border-focus, #0b3f9f);outline-offset:2px}.learning-curriculum__toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:var(--size-touch-target, 44px);padding:var(--space-3, .75rem) var(--space-4, 1rem);border:1px solid var(--color-border, #d7e0ef);border-radius:var(--radius-md, 8px);background:var(--color-surface-soft, #f4f7fc);color:var(--color-text, #17191d);font-family:var(--font-body);font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600);cursor:pointer}.learning-curriculum__toggle:focus-visible{outline:2px solid var(--color-border-focus, #0b3f9f);outline-offset:2px}.learning-curriculum__panel{display:none;margin-top:var(--space-3, .75rem);padding:var(--space-4, 1rem);border:1px solid var(--color-border, #d7e0ef);border-radius:var(--radius-md, 8px);background:var(--color-surface, #fff)}.learning-curriculum__panel--open{display:block}.learning-curriculum__module+.learning-curriculum__module{margin-top:var(--space-4, 1rem)}.learning-curriculum__module-title{margin:0 0 var(--space-2, .5rem);color:var(--color-text, #17191d);font-family:var(--font-display, var(--font-body));font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600)}.learning-curriculum__list{margin:0;padding:0;list-style:none}.learning-curriculum__lecture{display:flex;gap:var(--space-3, .75rem);align-items:flex-start;width:100%;min-height:var(--size-touch-target, 44px);padding:var(--space-2, .5rem) var(--space-3, .75rem);border:none;border-left:4px solid transparent;border-radius:var(--radius-sm, 4px);background:transparent;color:var(--color-text, #17191d);font-family:var(--font-body);text-align:left;cursor:pointer}.learning-curriculum__lecture:hover:not(:disabled){background:var(--color-surface-soft, #f4f7fc)}.learning-curriculum__lecture:focus-visible{outline:2px solid var(--color-border-focus, #0b3f9f);outline-offset:2px}.learning-curriculum__lecture:disabled{color:var(--color-text-muted);cursor:not-allowed;opacity:.72}.learning-curriculum__item--current .learning-curriculum__lecture{border-left-color:var(--color-brand, #0b3f9f);background:var(--color-brand-soft, #eef4ff)}.learning-curriculum__indicator{flex:0 0 auto;width:1rem;color:var(--color-brand, #0b3f9f);font-size:var(--font-size-sm, .875rem);line-height:1.4}.learning-curriculum__item--unavailable .learning-curriculum__indicator,.learning-curriculum__item--not-started .learning-curriculum__indicator{color:var(--color-text-muted)}.learning-curriculum__lecture-body{display:flex;flex-direction:column;gap:.15rem;min-width:0}.learning-curriculum__lecture-title{font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-medium, 500)}.learning-curriculum__lecture-meta{color:var(--color-text-on-page);font-size:var(--font-size-sm, .875rem)}@media(min-width:768px){.learning-page__header{flex-direction:row;align-items:flex-end;justify-content:space-between}.learning-page__course-progress{min-width:14rem}.learning-nav{grid-template-columns:1fr 1fr}}@media(min-width:1280px){.learning-page__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,360px);align-items:start;gap:var(--space-6, 1.5rem)}.learning-page__sidebar{position:sticky;top:var(--space-4, 1rem)}.learning-curriculum__toggle{display:none}.learning-curriculum__panel,.learning-curriculum__panel--open{display:block;margin-top:0;max-height:min(70vh,28rem);overflow:hidden}.learning-curriculum__scroll{max-height:calc(min(70vh,28rem) - 3rem);overflow-y:auto;padding-right:var(--space-2, .5rem)}}@media(prefers-reduced-motion:reduce){.learning-page__progress-fill{transition:none}}button.social-login-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);width:auto;min-height:var(--size-touch-target, 44px);padding:.75rem var(--space-6, 1.5rem);border-style:solid;border-width:1px;border-radius:var(--radius-button, .5rem);font-family:var(--font-body);font-size:var(--font-size-sm, .875rem);font-weight:var(--font-weight-semibold, 600);line-height:1.2;white-space:nowrap;cursor:pointer;transition:filter var(--duration-fast, .15s) var(--ease-standard, ease),opacity var(--duration-fast, .15s) var(--ease-standard, ease)}button.social-login-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}button.social-login-button:disabled{opacity:.65;cursor:not-allowed}button.social-login-button:hover:not(:disabled){filter:brightness(.94)}.social-login-button__icon{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;color:inherit}.social-login-button__mark{display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;border-radius:.25rem;background:#fff}.social-login-button__label{min-width:0;color:inherit}.social-login-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-3);color:var(--color-text-on-page);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:.04em;text-transform:lowercase}.social-login-divider:before,.social-login-divider:after{content:"";height:1px;background:var(--color-border)}.social-login-stack{display:grid;justify-items:stretch;gap:var(--space-3);width:var(--auth-button-width, 15.5rem);max-width:100%;margin-inline:auto}.social-login-stack .social-login-button{width:100%}.skip-link{position:absolute;top:var(--space-3);left:var(--space-3);z-index:calc(var(--z-sticky) + 1);padding:var(--space-2) var(--space-4);border-radius:var(--radius-button);background:var(--color-brand);color:var(--color-text-inverse);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-decoration:none;transform:translateY(-200%);transition:transform var(--duration-fast) var(--ease-standard)}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0)}.app-shell{display:flex;flex-direction:column;min-height:100vh;background:var(--color-page)}.app-shell__main{flex:1 1 auto;outline:none}.app-header{position:sticky;top:0;z-index:var(--z-sticky);height:var(--header-height);background:var(--color-surface);border-bottom:var(--border-width-thin) solid var(--color-border)}.app-header__inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);height:100%;width:100%;max-width:var(--content-page-width);margin-inline:auto;padding-inline:var(--space-4)}.app-header__brand{display:inline-flex;align-items:center;gap:var(--space-3);min-height:var(--size-touch-target);color:var(--color-heading);text-decoration:none}.app-header__brand:hover{color:var(--color-brand-hover)}.app-header__mark{flex-shrink:0;color:var(--color-brand)}.app-header__titles{display:inline-flex;align-items:baseline;gap:var(--space-2);min-width:0}.app-header__name{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-tight)}.app-header__title{display:none;font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.app-header__actions{display:inline-flex;align-items:center;gap:var(--space-3);min-width:0}.app-header__nav-link{display:none;align-items:center;min-height:var(--size-touch-target);padding-inline:var(--space-2);color:var(--color-heading);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-decoration:none;border-radius:var(--radius-button)}.app-header__nav-link:hover{color:var(--color-brand-hover)}.app-header__nav-link:focus-visible{box-shadow:var(--shadow-focus)}.app-header__actions .cp-button{min-width:var(--size-touch-target);min-height:var(--size-touch-target)}.app-footer{margin-top:auto;padding-block:var(--space-4) var(--space-5);border-top:var(--border-width-thin) solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary)}.app-footer__inner{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}.app-footer__legal{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:var(--space-2);font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.app-footer__legal-item{display:inline-flex;align-items:center;gap:var(--space-2)}.app-footer__legal-link{color:var(--color-text-secondary);text-decoration:none}.app-footer__legal-link:hover{color:var(--color-brand)}.app-footer__copyright{margin:0;max-width:36rem;font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-body);text-align:center;color:var(--color-text-secondary)}.legal-page{padding-block:var(--space-8) var(--space-12)}.legal-page__toolbar{display:flex;justify-content:flex-end;margin-bottom:var(--space-4)}.legal-page__back{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-brand);text-decoration:none}.legal-page__back:hover{color:var(--color-brand-hover);text-decoration:underline;text-underline-offset:.15em}.legal-page__inner{box-sizing:border-box;width:min(100%,52.5rem);margin-inline:auto}.legal-page__eyebrow{margin:0 0 var(--space-2)}.legal-page__inner h1{margin:0}.legal-page__updated{margin:var(--space-3) 0 var(--space-6);color:var(--color-text-on-page);font-family:var(--font-body);font-size:var(--font-size-sm)}.legal-page__content{padding:var(--space-8);background:var(--color-surface);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-panel);box-shadow:var(--shadow-xs)}.legal-page__content section+section{margin-top:var(--space-6);padding-top:var(--space-6);border-top:var(--border-width-thin) solid var(--color-border)}.legal-page__content h2{margin:0 0 var(--space-3);color:var(--color-heading);font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading)}.legal-page__content p,.legal-page__content li{color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);line-height:var(--line-height-body)}.legal-page__content p{margin:0}.legal-page__content p+p{margin-top:var(--space-3)}.legal-page__content ul{margin:0;padding-left:1.25rem}.legal-page__content li+li{margin-top:var(--space-2)}.legal-page__content a{color:var(--color-brand)}@media(max-width:40rem){.legal-page__content{padding:var(--space-5)}}.home-page{padding-block:var(--space-8) var(--space-12)}.home-page__copy{max-width:36rem;color:var(--color-text-on-page);font-size:var(--font-size-base);line-height:var(--line-height-body)}.home-page__actions{margin-top:var(--space-2)}.continue-watching{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-2);padding:var(--space-4);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface)}.continue-watching--player{margin:0;padding:var(--space-2) 0;border:none;border-radius:0;background:transparent;gap:var(--space-3)}.continue-watching__copy{display:flex;flex-direction:column;gap:var(--space-1);min-width:0}.continue-watching__eyebrow{margin:0}.continue-watching__title{margin:0;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.continue-watching__meta{margin:0}.continue-watching__resume-line{margin:0;color:var(--color-text-on-page);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-body);font-variant-numeric:tabular-nums}.continue-watching__resume-remaining{color:var(--color-text-secondary)}.course-player{padding-block:var(--space-3) var(--space-8)}.course-player__layout{display:grid;grid-template-columns:1fr;gap:var(--space-4);align-items:start;min-height:calc(100vh - var(--header-height) - 6rem)}.course-player__main{min-width:0}.course-player__sidebar{min-width:0;max-height:none;padding:var(--space-3) var(--space-4);gap:0;border:var(--border-width-thin) solid var(--color-border);box-shadow:none}.cp-panel.course-player__sidebar{padding:var(--space-3) var(--space-4);box-shadow:none}.course-player__video-pane{display:flex;flex-direction:column;gap:var(--space-3)}.course-player__video-frame{position:relative;overflow:hidden;border-radius:var(--radius-sm);border:var(--border-width-thin) solid var(--color-border);background:var(--neutral-950);aspect-ratio:16 / 9}.course-player__video{display:block;width:100%;height:100%;object-fit:contain;background:var(--neutral-950)}.course-player__toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);min-height:2rem}.course-player__toolbar-btn{margin:0;padding:var(--space-1) var(--space-2);border:var(--border-width-thin) solid transparent;border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-brand);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-control);cursor:pointer}.course-player__toolbar-btn:hover:not(:disabled){color:var(--color-brand-hover);background:var(--color-brand-soft);border-color:var(--color-info-border)}.course-player__toolbar-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.course-player__toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.course-player__toolbar-btn--active{color:var(--color-brand-active);background:var(--color-brand-soft);border-color:var(--color-info-border)}.course-player__up-next{display:flex;align-items:center;margin-right:auto;margin-left:var(--space-1)}.course-player__up-next-btn{margin:0;padding:var(--space-1) var(--space-3);border:var(--border-width-thin) solid var(--color-accent-border);border-radius:var(--radius-sm);background:var(--color-accent-soft);color:var(--color-accent);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);line-height:var(--line-height-control);cursor:pointer;max-width:22rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.course-player__up-next-btn:hover{border-color:var(--color-accent);color:var(--color-accent-hover);background:color-mix(in srgb,var(--color-accent-soft) 70%,var(--copper-100))}.course-player__up-next-btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.course-player__video-meta{display:flex;flex-direction:column;gap:var(--space-1)}.course-player__lecture-title{margin:0;font-family:var(--font-body);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--color-heading)}.course-player__lecture-meta{margin:0;color:var(--color-text-on-page);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-body)}.course-player__lecture-meta-sep{margin-inline:.35em}.course-player__study{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-1);padding:var(--space-4);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface)}.course-player__study-tabs{display:flex;flex-wrap:wrap;gap:var(--space-4);border-bottom:var(--border-width-thin) solid var(--color-border)}.course-player__study-tab{margin:0 0 calc(-1 * var(--border-width-thin));padding:var(--space-2) 0;border:none;border-bottom:var(--border-width-emphasis) solid transparent;background:transparent;color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-control);cursor:pointer}.course-player__study-tab:hover{color:var(--color-brand)}.course-player__study-tab:focus-visible{box-shadow:var(--shadow-focus);outline:none}.course-player__study-tab--active{color:var(--color-brand);border-bottom-color:var(--color-brand);font-weight:var(--font-weight-semibold)}.course-player__study-panel{display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding:0;border:none;border-radius:0;background:transparent;box-shadow:none;color:var(--color-text);font-size:var(--font-size-sm);line-height:var(--line-height-body)}.course-player__study-panel p,.course-player__instructor-notes p{margin:0;color:var(--color-text-secondary)}.course-player__study-heading{margin:0;color:var(--color-heading);font-family:var(--font-body);font-size:1em;font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.course-player__study-empty{margin:0;color:var(--color-text-secondary);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);line-height:var(--line-height-body)}.course-player__learner-notes,.course-player__instructor-notes,.course-player__transcript{display:flex;flex-direction:column;gap:var(--space-3)}.course-player__note-form{display:flex;flex-direction:column;gap:var(--space-2)}.course-player__note-label{color:var(--color-text-on-page);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.course-player__note-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.course-player__note-input{flex:1 1 12rem;min-height:2.25rem;padding:var(--space-2) var(--space-3);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);line-height:1.25}.course-player__note-input:focus-visible{box-shadow:var(--shadow-focus);outline:none}.course-player__note-submit,.course-player__note-remove{min-height:2.25rem;padding:var(--space-2) var(--space-3);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer}.course-player__note-submit{border-color:var(--color-brand);background:var(--color-brand);color:var(--color-text-inverse)}.course-player__note-submit:hover{background:var(--color-brand-hover);border-color:var(--color-brand-hover)}.course-player__note-submit:focus-visible,.course-player__note-remove:focus-visible{box-shadow:var(--shadow-focus);outline:none}.course-player__note-remove{color:var(--color-text-secondary)}.course-player__note-list,.course-player__transcript-list{display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0;list-style:none}.course-player__transcript-list{gap:0}.course-player__transcript-list>li{border-bottom:var(--border-width-thin) solid var(--color-border)}.course-player__transcript-list>li:last-child{border-bottom:none}.course-player__note-item{display:flex;flex-wrap:wrap;align-items:flex-start;gap:var(--space-2)}.course-player__note-seek{display:grid;grid-template-columns:3.25rem minmax(0,1fr);gap:var(--space-3);flex:1 1 12rem;width:100%;margin:0;padding:var(--space-2) 0;border:none;border-radius:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.course-player__note-seek:hover .course-player__note-body{color:var(--color-text)}.course-player__note-seek:hover .course-player__note-time{color:var(--color-accent-hover)}.course-player__note-seek:focus-visible{box-shadow:var(--shadow-focus);outline:none}.course-player__transcript-line{display:grid;grid-template-columns:3.25rem minmax(0,1fr);gap:var(--space-3);width:100%;margin:0;padding:var(--space-2) 0;border:none;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.course-player__transcript-line:hover .course-player__transcript-text{color:var(--color-text)}.course-player__transcript-line:hover .course-player__transcript-time{color:var(--color-accent-hover)}.course-player__transcript-line:focus-visible{box-shadow:var(--shadow-focus);border-radius:var(--radius-sm);outline:none}.course-player__note-time,.course-player__transcript-time{color:var(--color-accent);font-variant-numeric:tabular-nums;font-weight:var(--font-weight-semibold)}.course-player__note-body,.course-player__transcript-text{color:var(--color-text-secondary)}.course-player__layout--focus{grid-template-columns:1fr}.course-outline{display:flex;flex-direction:column;gap:var(--space-3);min-height:0}.course-outline__header{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:var(--border-width-thin) solid var(--color-border)}.course-outline__header-top{display:flex;flex-direction:column;gap:var(--space-2)}.course-outline__title{margin:0;color:var(--color-heading);font-family:var(--font-body);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight)}.course-outline__progress{display:flex;align-items:center;gap:var(--space-2)}.course-outline__progress-percent{flex-shrink:0;color:var(--color-brand);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;min-width:2.25rem}.course-outline__progress-track{flex:1 1 auto;height:.25rem;overflow:hidden;border-radius:var(--radius-round);background:var(--color-brand-soft)}.course-outline__progress-fill{height:100%;border-radius:inherit;background:var(--color-accent);transition:width var(--duration-fast) var(--ease-standard)}.course-outline__controls{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-2)}.course-outline__toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}.course-outline__toolbar-btn{align-self:flex-start;padding:0;border:none;background:transparent;color:var(--color-brand);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer}.course-outline__toolbar-btn:hover:not(:disabled){color:var(--color-brand-hover)}.course-outline__toolbar-btn--danger{color:var(--color-danger)}.course-outline__toolbar-btn--danger:hover:not(:disabled){color:var(--color-danger-hover)}.course-outline__toolbar-btn:focus-visible{box-shadow:var(--shadow-focus);border-radius:var(--radius-sm);outline:none}.course-outline__toolbar-btn:disabled{opacity:.4;cursor:not-allowed}.course-outline__search{display:block;width:100%}.course-outline__search-input{width:100%;padding:var(--space-2) var(--space-3);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm)}.course-outline__search-input:focus-visible{box-shadow:var(--shadow-focus);outline:none;border-color:var(--color-border-focus)}.course-outline__empty{margin:0}.course-outline__modules{list-style:none;margin:0;padding:0;padding-inline-end:var(--space-5);display:flex;flex-direction:column;gap:0;max-height:min(36rem,70vh);overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable}.course-outline__module{margin:0;padding:0;border:none;border-bottom:var(--border-width-thin) solid var(--color-border);background:transparent}.course-outline__module:last-child{border-bottom:none}.course-outline__module-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-1) var(--space-2) 0;border:none;border-radius:0;background:transparent;color:var(--color-heading);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;text-align:left;cursor:pointer}.course-outline__module-toggle:hover{color:var(--color-text)}.course-outline__module-toggle:focus-visible{box-shadow:var(--shadow-focus);outline:none}.course-outline__module-title{min-width:0;line-height:var(--line-height-heading)}.course-outline__module-chevron{flex-shrink:0;margin-inline-end:var(--space-1);color:var(--color-text-secondary);font-weight:var(--font-weight-regular);line-height:1}.course-outline__lectures{list-style:none;margin:0;padding:0 0 var(--space-2);display:flex;flex-direction:column;gap:0}.course-outline__lecture-item{margin:0}.course-outline__lecture{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) 0;border:none;border-radius:0;background:transparent;color:var(--color-text)}.course-outline__lecture:hover{background:transparent}.course-outline__lecture--active .course-outline__lecture-select{color:var(--color-brand);font-weight:var(--font-weight-medium)}.course-outline__lecture--active .course-outline__lecture-title{box-shadow:inset 2px 0 0 var(--color-brand);padding-left:var(--space-2);margin-left:calc(-1 * var(--space-2))}.course-outline__completion{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.25rem;height:1.25rem;padding:0;border:none;border-radius:var(--radius-round);background:transparent;color:var(--color-success);cursor:pointer}.course-outline__completion:hover .course-outline__completion-ring{border-color:var(--color-brand)}.course-outline__completion:focus-visible{box-shadow:var(--shadow-focus);outline:none}.course-outline__completion-ring{display:block;width:.875rem;height:.875rem;border:var(--border-width-thin) solid var(--color-border-strong);border-radius:var(--radius-round);background:transparent}.course-outline__completion--done{color:var(--color-success)}.course-outline__lecture-select{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex:1 1 auto;min-width:0;padding:var(--space-1) var(--space-3) var(--space-1) 0;border:none;border-radius:0;background:transparent;color:inherit;font-family:var(--font-body);font-weight:var(--font-weight-regular);text-align:left;cursor:pointer}.course-outline__lecture-select:focus-visible{box-shadow:var(--shadow-focus);outline:none}.course-outline__lecture-title{min-width:0;font-size:var(--font-size-sm);line-height:var(--line-height-heading);font-variant-numeric:tabular-nums}.course-outline__lecture-duration{flex-shrink:0;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-variant-numeric:tabular-nums;white-space:nowrap}.course-outline__lecture--active .course-outline__lecture-duration{color:var(--color-accent)}@media(min-width:56.25rem){.course-player__layout{grid-template-columns:7fr 3fr;gap:var(--space-5)}.course-player__layout--focus{grid-template-columns:1fr}.course-player__sidebar{position:sticky;top:calc(var(--header-height) + var(--space-3));max-height:calc(100vh - var(--header-height) - var(--space-8));overflow:hidden}.cp-panel.course-player__sidebar{padding:var(--space-3) var(--space-4)}.course-outline{height:100%;max-height:calc(100vh - var(--header-height) - var(--space-16))}.course-outline__modules{flex:1 1 auto;max-height:none}}.state-panel{width:100%}.state-panel--centered{display:flex;justify-content:center;align-items:center;min-height:min(28rem,calc(100vh - var(--header-height) - 10rem))}.state-panel__content{align-items:center;text-align:center}.state-panel__message{margin:0;color:var(--color-text-on-page);font-size:var(--font-size-base)}.error-state{width:100%;max-width:28rem}.backend-status__connected{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.backend-status__summary{margin:0;color:var(--color-success);font-weight:var(--font-weight-medium)}.backend-status__meta{display:grid;gap:var(--space-3);margin:0}.backend-status__row{display:grid;gap:var(--space-1);padding-top:var(--space-3);border-top:var(--border-width-thin) solid var(--color-border)}.backend-status__row dt,.backend-status__row dd{margin:0}.backend-status__row dd{font-family:var(--font-monospace);color:var(--color-text)}.not-found-page{display:flex;justify-content:center;align-items:center;min-height:min(28rem,calc(100vh - var(--header-height) - 10rem));padding-block:var(--space-8);padding-inline:var(--space-4)}@media(min-width:48rem){.app-header__inner{padding-inline:var(--space-6)}.app-header__title{display:inline}.app-header__nav-link{display:inline-flex}.home-page{padding-block:var(--space-10) var(--space-16)}.backend-status__row{grid-template-columns:8rem 1fr;align-items:baseline;gap:var(--space-4)}}@media(min-width:80rem){.app-header__inner{padding-inline:var(--space-8)}.home-page{padding-block:var(--space-12) var(--space-20)}}.auth-layout{--auth-dialog-width: 33.4rem;--auth-error-width: 11rem;--auth-error-gap: .75rem;--auth-button-width: 15.5rem;min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,var(--auth-dialog-width)) minmax(0,1fr);align-items:start;justify-items:stretch;background:radial-gradient(circle at top center,color-mix(in srgb,var(--color-brand) 14%,transparent),transparent 48%),linear-gradient(180deg,var(--color-page) 0%,color-mix(in srgb,var(--color-brand-soft) 65%,var(--color-page)) 100%);padding-block:var(--space-8) var(--space-12);padding-inline:var(--space-4)}.auth-layout__shell{grid-column:2;width:100%;max-width:var(--auth-dialog-width);margin-inline:0;overflow:visible}.auth-layout__brand{margin-bottom:var(--space-6);text-align:center}.auth-layout__brand-link{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);color:var(--color-heading);text-decoration:none;min-height:var(--size-touch-target)}.auth-layout__mark{color:var(--color-brand);flex-shrink:0}.auth-layout__brand-text{display:inline-flex;align-items:baseline;gap:var(--space-2)}.auth-layout__brand-name{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-tight)}.auth-layout__brand-title{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.auth-layout__main{outline:none;width:100%}.auth-layout__card,.auth-layout__card.cp-card{width:100%;overflow:visible}.auth-layout__card .cp-card__body{overflow:visible}.auth-layout__intro{text-align:left}.auth-layout__title{margin:0;text-wrap:balance}.auth-layout__subtitle{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-body)}.auth-layout__footer{text-align:center;margin-top:var(--space-5)}.auth-layout__below{margin-top:var(--space-6);width:100%}.auth-layout__footer-text{margin:0;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.auth-layout__footer-link{font-weight:var(--font-weight-semibold)}.auth-form{width:100%;overflow:visible}.auth-actions{display:grid;justify-items:stretch;gap:var(--space-3);width:var(--auth-button-width, 15.5rem);max-width:100%;margin-inline:auto;align-self:center}.auth-actions--stack{width:min(100%,22rem)}.auth-actions .cp-button:not(.cp-icon-button),.auth-actions .cp-link-button,.auth-actions .social-login-button{width:100%;min-width:0;min-height:44px;padding-inline:var(--space-6)}.auth-field{display:grid;gap:var(--space-1)}.auth-field__label{font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.auth-field__required{margin-inline-start:.2em;color:var(--color-danger);font-weight:var(--font-weight-bold)}.auth-field__row{display:grid;grid-template-columns:minmax(0,1fr) var(--auth-error-width);gap:var(--auth-error-gap);align-items:center;width:calc(100% + var(--auth-error-width) + var(--auth-error-gap))}.auth-field__control{position:relative;min-width:0;overflow:visible}.auth-field__control--with-action{display:grid}.auth-field__control--with-action .auth-field__input{padding-inline-end:2.75rem}.auth-field__input{width:100%;min-height:2.25rem;padding:.4rem .75rem;border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-input);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);transition:border-color var(--duration-fast) var(--ease-standard),box-shadow var(--duration-fast) var(--ease-standard)}.auth-field__input:hover{border-color:var(--color-border-strong)}.auth-field__input:focus-visible{outline:var(--border-width-emphasis) solid var(--color-border-focus);outline-offset:2px;box-shadow:var(--shadow-focus)}.auth-field--error .auth-field__input{border-color:var(--color-danger)}.auth-field__reveal{position:absolute;top:50%;right:.15rem;transform:translateY(-50%)}.auth-field__hint{margin:0;font-size:var(--font-size-sm);color:var(--color-text-on-page);grid-column:1 / -1}.auth-field__error,.auth-field__error-slot{margin:0;min-height:1.25rem;font-size:var(--font-size-sm);line-height:1.35}.auth-field__error{align-self:center;width:fit-content;max-width:100%;padding:.4rem .7rem;color:var(--color-danger);background:var(--color-surface);border:var(--border-width-thin) solid var(--color-border);border-radius:999px;box-shadow:var(--shadow-sm, 0 2px 8px color-mix(in srgb, var(--color-text) 8%, transparent))}.auth-field__error-slot{visibility:hidden}.auth-field__select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-text-muted) 50%),linear-gradient(135deg,var(--color-text-muted) 50%,transparent 50%);background-position:calc(100% - 16px) calc(50% - 2px),calc(100% - 11px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-inline-end:var(--space-8)}.auth-checkbox{display:flex;gap:var(--space-3);align-items:flex-start;min-height:2.25rem;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.auth-checkbox input{width:1.1rem;height:1.1rem;margin-top:.15rem;flex-shrink:0}.auth-checkbox .auth-field__required{margin-inline-start:.15em}.password-requirements-popover{position:absolute;left:calc(100% + var(--auth-error-gap));top:50%;transform:translateY(-50%);z-index:5;width:var(--auth-error-width);max-width:var(--auth-error-width);pointer-events:none}.password-requirements{display:grid;gap:var(--space-1);padding:var(--space-2) var(--space-3);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--radius-input);background:var(--color-surface);box-shadow:var(--shadow-md, 0 8px 24px color-mix(in srgb, var(--color-text) 12%, transparent))}.password-requirements__list{margin:0;padding:0;list-style:none;display:grid;gap:.15rem}.password-requirements__item{display:flex;gap:var(--space-2);align-items:center;font-size:var(--font-size-sm);color:var(--color-text-on-page);white-space:nowrap}.password-requirements__item--met{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}@media(max-width:40rem){.auth-layout{grid-template-columns:minmax(0,1fr)}.auth-layout__shell{grid-column:1}.auth-field__row{width:100%;grid-template-columns:minmax(0,1fr);gap:var(--space-1);align-items:start}.auth-field__error-slot{display:none}.password-requirements-popover{left:0;right:0;top:calc(100% + .4rem);transform:none;max-width:none;width:100%}}.auth-live-region{margin:0;font-size:var(--font-size-sm);color:var(--color-text-on-page);outline:none}.auth-alert-actions{margin-top:var(--space-3)}.auth-loading{min-height:100vh;display:flex;align-items:center;background:radial-gradient(ellipse 80% 50% at 50% -20%,color-mix(in srgb,var(--color-brand) 12%,transparent),transparent),var(--color-page)}.auth-loading__brand{margin:0;font-family:var(--font-display, var(--font-body));font-size:var(--font-size-xl);font-weight:700;letter-spacing:-.02em;color:var(--color-brand)}.auth-loading__content{align-items:center;text-align:center;padding-block:var(--space-16)}.auth-loading__message{margin:0;color:var(--color-text-on-page);font-size:var(--font-size-base)}@media(prefers-reduced-motion:reduce){.auth-loading .cp-spinner{animation:none}}.app-header__user{display:none;max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--font-size-sm);color:var(--color-text-secondary)}@media(min-width:48rem){.auth-layout{align-items:center;padding-block:var(--space-12) var(--space-16);padding-inline:var(--space-6)}.auth-layout__brand{margin-bottom:var(--space-8)}.app-header__user{display:inline}}@media(min-width:64rem){.auth-layout{padding-block:var(--space-14) var(--space-20)}.auth-layout__title{font-size:var(--font-size-2xl)}}@media(prefers-reduced-motion:reduce){.auth-layout{transition:none}}
