@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-BmRLXWpJ.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-700-normal-DCQwxkRk.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-cyrillic-700-normal-D_uavGvn.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-700-normal-RFb1v-CK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-greek-700-normal-wyJ6jzdA.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-700-normal-CkZN0sRy.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-vietnamese-700-normal-CkEo6LDy.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-700-normal-BV5B8Are.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-ext-700-normal-aMgXseD4.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-700-normal-DZH6Xh-4.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-sans-latin-700-normal-Bxkt5Cjx.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-700-normal-Bth3BMcD.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-V-xxqcpd.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-600-normal-9HEixskS.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-cyrillic-600-normal-CTOM6hUh.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-600-normal-fLZuRloM.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-vietnamese-600-normal-D2EvbN8M.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-600-normal-iLQfcSjf.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-ext-600-normal-D38SheWl.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-600-normal-DmB0ttJJ.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-600-normal-DWFSQ4vo.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-cyrillic-ext-700-normal-BDQ-w_bc.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-700-normal-CtgKGIh5.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-cyrillic-700-normal-Bp80XfeI.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-700-normal-O_YjL27c.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-vietnamese-700-normal-apsD3J7v.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-700-normal-Bs14ezHR.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-latin-ext-700-normal-Dhimjc7-.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-700-normal-Cwsjk1Jb.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/ibm-plex-mono-latin-700-normal-7sUh57Bg.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-700-normal-CNHXzs6v.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}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}input,textarea,[contenteditable]{cursor:text!important}:root{--fn-navy: #1F3864;--fn-blue: #2E75B6;--fn-blue-dark: var(--fn-blue-dark);--fn-blue-light: rgba(46, 117, 182, .15);--fn-accent: #00B8D4;--fn-accent-dim: rgba(0,184,212,.12);--fn-green: #22c55e;--fn-green-light: rgba(34, 197, 94, .12);--fn-amber: #f59e0b;--fn-amber-light: rgba(245, 158, 11, .12);--fn-red: #ef4444;--fn-red-light: rgba(239, 68, 68, .12);--sev-critical: #ef4444;--sev-critical-bg:rgba(239, 68, 68, .15);--sev-high: #f97316;--sev-high-bg: rgba(249, 115, 22, .15);--sev-medium: #f59e0b;--sev-medium-bg: rgba(245, 158, 11, .15);--sev-low: #60a5fa;--sev-low-bg: rgba(96, 165, 250, .15);--sev-info: #94a3b8;--sev-info-bg: rgba(148, 163, 184, .12);--c-text: #f0f4ff;--c-muted: #64748b;--c-border: rgba(255, 255, 255, .08);--c-surface: #111827;--c-bg: #0d1321;--c-bg2: #1a2336;--xp-gold: #F59E0B;--xp-gold-light: #FFFBEB;--font-body: "IBM Plex Sans", "Segoe UI", Arial, sans-serif;--font-mono: "IBM Plex Mono", monospace;--font-display: "IBM Plex Sans", Arial, sans-serif;--fs-body: 18px;--fs-label: 13px;--fs-heading: 1.55rem;--fs-control: 16px;--sp-xs: 4px;--sp-sm: 8px;--sp-md: 16px;--sp-lg: 24px;--sp-xl: 40px;--sp-2xl: 64px;--r-sm: 4px;--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--r-full: 999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .6);--trans-fast: .15s ease;--trans-med: .25s ease;--nav-width: 256px;--header-h: 56px;--content-max: 1320px;--fn-blue-dark: #1A5490;--c-surface-2: #1a2336;--c-surface-3: #1f2d45;--c-text-2: #94a3b8;--c-border-2: rgba(255, 255, 255, .13);--fn-green-dim: rgba(34, 197, 94, .12);--fn-amber-dim: rgba(245, 158, 11, .12);--fn-red-dim: rgba(239, 68, 68, .12);--r-2xl: 20px;--trans: .15s ease}@keyframes btn-spin{to{transform:rotate(360deg)}}@keyframes stm-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes stm-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes stm-card-in{0%{opacity:0;transform:scale(.94) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes stm-card-out{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.94) translateY(6px)}}.stm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a6b;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:300;padding:var(--sp-lg);animation:stm-backdrop-in .22s ease both}.stm-backdrop--out{animation:stm-backdrop-out .22s ease both}.stm-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);box-shadow:0 20px 60px #0f172a2e,0 4px 12px #0f172a14;width:100%;max-width:460px;overflow:hidden;animation:stm-card-in .26s cubic-bezier(.34,1.2,.64,1) both;animation-delay:.04s}.stm-card--out{animation:stm-card-out .2s ease both;animation-delay:0s}.stm-accent-bar{height:4px;width:100%}.stm-body{padding:28px 28px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px}.stm-icon-circle{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:4px;flex-shrink:0}.stm-stage-label{display:inline-flex;align-items:center;padding:3px 10px;border-radius:var(--r-full);font-size:11px;font-weight:700;font-family:var(--font-mono);letter-spacing:.07em;text-transform:uppercase}.stm-heading{font-size:1.65rem;font-weight:700;color:var(--c-text);letter-spacing:-.02em;line-height:1.2;margin:0}.stm-goal{font-size:14px;line-height:1.65;color:var(--c-muted);margin:0;max-width:360px}.stm-pipeline{display:flex;align-items:flex-start;gap:0;margin-top:8px;padding:10px 0 0;border-top:1px solid var(--c-border);width:100%;justify-content:center}.stm-pipeline-step{display:flex;flex-direction:column;align-items:center;gap:5px;position:relative;flex:1}.stm-pipeline-step+.stm-pipeline-step:before{content:"";position:absolute;top:7px;left:calc(-50% + 8px);right:calc(50% + 8px);height:2px;background:var(--c-border)}.stm-dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--c-border);background:var(--c-surface);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1}.stm-dot--done{background:var(--fn-green);border-color:var(--fn-green)}.stm-dot--current{border-width:2px}.stm-dot--upcoming{background:var(--c-bg2);border-color:var(--c-border)}.stm-dot-label{font-size:9px;font-family:var(--font-mono);font-weight:600;color:var(--c-muted);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.stm-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 28px 20px;border-top:1px solid var(--c-border);gap:var(--sp-md)}.stm-skip-label{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--c-muted);cursor:pointer;-webkit-user-select:none;user-select:none;line-height:1.3}.stm-skip-check{width:14px;height:14px;accent-color:var(--fn-blue);cursor:pointer;flex-shrink:0}.stm-start-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 18px;border:none;border-radius:var(--r-md);color:#fff;font-size:13px;font-weight:700;font-family:var(--font-body);cursor:pointer;white-space:nowrap;transition:filter var(--trans-fast),transform var(--trans-fast);flex-shrink:0}.stm-start-btn:hover{filter:brightness(1.12);transform:translateY(-1px)}.stm-start-btn:active{filter:brightness(.92);transform:translateY(0)}body{font-family:var(--font-body);font-size:var(--fs-body);line-height:1.65;color:var(--c-text);background:var(--c-bg);-webkit-font-smoothing:antialiased}h1{font-size:2rem;font-weight:600;line-height:1.2}h2{font-size:1.5rem;font-weight:600;line-height:1.3}h3{font-size:1.2rem;font-weight:600;line-height:1.4}p{margin-bottom:var(--sp-md)}p:last-child{margin-bottom:0}strong{font-weight:600}a{color:var(--fn-blue);text-decoration:underline}.fn-header{position:fixed;top:0;left:0;right:0;height:var(--header-h);background:#111827;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 1px #ffffff0a;display:flex;align-items:center;gap:var(--sp-md);padding:0 var(--sp-lg);z-index:100}.fn-logo-mark{width:32px;height:32px;object-fit:contain;flex-shrink:0}.fn-logo-name{font-size:14px;font-weight:600;color:#fff}.fn-logo-sub{font-size:10px;color:#ffffff8c;text-transform:uppercase;letter-spacing:.08em}.fn-header-sep{width:1px;height:28px;background:#fff3}.fn-course-label{font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#ffffff80}.fn-course-name{font-size:13px;font-weight:500;color:#fff}.fn-header-end{margin-left:auto;display:flex;align-items:center;gap:var(--sp-md)}.fn-xp-display{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--xp-gold);font-family:var(--font-mono)}.fn-avatar{width:32px;height:32px;border-radius:50%;background:var(--fn-accent-dim);border:2px solid var(--fn-accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;color:var(--fn-accent)}.fn-nav{position:fixed;top:var(--header-h);left:0;bottom:0;width:var(--nav-width);background:#111827;border-right:1px solid rgba(255,255,255,.08);padding:0 0 var(--sp-md);overflow-y:auto;overflow-x:hidden;z-index:90;display:flex;flex-direction:column;transition:width .22s ease,border-color .22s ease}.fn-nav.nav-closed{width:0;padding:0;border-color:transparent}.nav-toggle-btn{width:32px;height:32px;flex-shrink:0;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;cursor:pointer;color:#fff;transition:background var(--trans-fast);margin-right:4px}.nav-toggle-btn:hover{background:#ffffff1f}.nav-toggle-icon{display:flex;flex-direction:column;gap:4px;pointer-events:none}.nav-toggle-icon span{display:block;width:16px;height:2px;background:#94a3b8;border-radius:1px}.fn-nav-section{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#64748b;padding:12px var(--sp-md) 4px;font-weight:700}.fn-nav-item{display:flex;align-items:center;gap:10px;padding:7px var(--sp-md);font-size:13px;color:#94a3b8;cursor:pointer;border-left:2px solid transparent;transition:all var(--trans-fast);text-decoration:none}.fn-nav-item:hover{color:#f0f4ff;background:#ffffff0d}.fn-nav-item.active{color:#f0f4ff;background:#00b8d412;border-left-color:#00b8d4}.fn-nav-item.locked{cursor:not-allowed;background:#0000001f}.fn-nav-status{margin-left:auto;font-size:11px;font-family:var(--font-mono)}.fn-nav-status.done{color:#22c55e}.fn-nav-status.lock{color:#c49a1e;font-size:11px}.fn-nav-status.pct{color:#00b8d4}.nav-identity{display:flex;align-items:center;gap:10px;padding:14px var(--sp-md) 10px;border-bottom:1px solid rgba(255,255,255,.08)}.nav-avatar{width:34px;height:34px;border-radius:50%;flex-shrink:0;background:#00b8d426;border:2px solid #00B8D4;color:#00b8d4;font-size:11px;font-weight:700;letter-spacing:.04em;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono)}.nav-identity-name{font-size:13px;font-weight:600;color:#f0f4ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-identity-role{font-size:11px;color:#00b8d4;text-transform:capitalize;font-family:var(--font-mono);letter-spacing:.04em}.nav-mission{padding:12px var(--sp-md);border-bottom:1px solid rgba(255,255,255,.08)}.nav-mission-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.nav-mission-count{font-size:12px;font-family:var(--font-mono);color:#00b8d4;font-weight:700}.nav-mission-bar{height:3px;background:#ffffff0f;border-radius:var(--r-full);overflow:hidden;margin-bottom:5px}.nav-mission-fill{height:100%;background:#00b8d4;border-radius:var(--r-full);transition:width .4s ease}.nav-mission-label{font-size:11px;color:#22c55e;font-family:var(--font-mono)}.nav-mod-item{align-items:center;padding:7px var(--sp-md)}.nav-mod-icon{font-size:13px;flex-shrink:0;width:20px;text-align:center}.nav-mod-text{flex:1;min-width:0}.nav-mod-code{font-size:10px;font-family:var(--font-mono);color:#64748b;font-weight:700;letter-spacing:.04em;line-height:1.2}.fn-nav-item.locked .nav-mod-code{color:#243040}.nav-mod-label{font-size:13px;color:#94a3b8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.fn-nav-item.locked .nav-mod-label{color:#2d3e52}.fn-nav-item.locked .nav-mod-icon{opacity:.2;filter:grayscale(1)}.fn-nav-item.active .nav-mod-code{color:#00b8d4}.fn-nav-item.active .nav-mod-label{color:#f0f4ff;font-weight:500}.fn-nav-item:hover .nav-mod-label{color:#f0f4ff}.fn-nav-item:hover .nav-mod-code{color:#94a3b8}.nav-stage-badge{margin-left:auto;font-size:9px;color:#00b8d4;flex-shrink:0}.nav-pending-badge{font-size:10px;font-weight:700;background:#ef4444;color:#fff;border-radius:var(--r-full);padding:1px 6px;font-family:var(--font-mono)}.nav-reviews{margin:var(--sp-sm) 0 0;padding:var(--sp-sm) var(--sp-md);border-top:1px solid rgba(255,255,255,.08)}.nav-reviews-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.nav-reviews-badge{min-width:18px;height:18px;border-radius:9px;background:#ffffff12;color:#64748b;font-size:10px;font-family:var(--font-mono);font-weight:700;display:flex;align-items:center;justify-content:center;padding:0 4px}.nav-reviews-badge.has-due{background:#f59e0b;color:#fff}.nav-reviews-body{font-size:11px;color:#64748b;line-height:1.5}.nav-reviews-link{display:block;text-decoration:none;border-radius:var(--r-md);transition:var(--trans-fast)}.nav-reviews-link:hover{background:#ffffff0a}.nav-status-footer{margin-top:auto;padding:10px var(--sp-md);border-top:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:6px}.nav-status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.nav-status-dot.online{background:#22c55e}.nav-status-dot.offline{background:#ef4444}.nav-status-label{font-size:11px;color:#64748b;font-family:var(--font-mono);flex:1}.nav-status-version{font-size:10px;color:#fff3;font-family:var(--font-mono)}.fn-main{margin-left:var(--nav-width);margin-top:var(--header-h);min-height:calc(100vh - var(--header-h));padding:var(--sp-xl) clamp(var(--sp-lg),4vw,var(--sp-xl));transition:margin-left .22s ease;display:flex;flex-direction:column}.fn-main.nav-closed{margin-left:0}.fn-content-max{width:100%;max-width:min(var(--content-max),100%);margin:0 auto;box-sizing:border-box;flex:1;min-height:0;display:flex;flex-direction:column}.topic-page-layout{display:flex;flex-direction:column;flex:1;min-height:0;width:100%}.topic-stage-shell{flex:1;min-height:0;display:flex;flex-direction:column}.topic-stage-shell>*{flex:1;min-height:0;display:flex;flex-direction:column}.fn-main-noscroll{height:calc(100vh - var(--header-h));overflow:hidden;display:flex;flex-direction:column;padding:14px var(--sp-lg) 14px;gap:var(--sp-md);min-height:unset}.fn-main-admin{height:calc(100vh - var(--header-h));overflow:hidden;display:flex;flex-direction:column;padding:0;min-height:unset;background:#0d1321}.topic-chrome{flex-shrink:0;display:flex;flex-direction:column;gap:8px}.topic-breadcrumb-btn{background:none;border:none;cursor:pointer;font-size:13px;color:var(--c-muted);padding:0;display:flex;align-items:center;gap:6px;font-family:var(--font-mono);letter-spacing:.02em}.topic-breadcrumb-btn:hover{color:var(--fn-blue)}.topic-stage-area{flex:1;min-height:0;overflow:hidden}.db-hero{background:linear-gradient(135deg,var(--fn-navy) 0%,#2a4a8a 100%);border-radius:var(--r-lg);padding:var(--sp-xl);color:#fff;margin-bottom:var(--sp-lg);position:relative;overflow:hidden;border-top:2px solid var(--fn-accent)}.db-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(0,184,212,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(0,184,212,.07) 1px,transparent 1px);background-size:28px 28px;pointer-events:none}.db-hero>*{position:relative;z-index:1}.db-hero-title{font-size:1.8rem;font-weight:600;margin-bottom:var(--sp-sm)}.db-hero-sub{font-size:14px;color:#ffffffb3;margin-bottom:var(--sp-lg)}.db-hero-stats{display:flex;gap:var(--sp-lg);flex-wrap:wrap}.db-stat-val{font-size:1.9rem;font-weight:700;font-family:var(--font-mono);line-height:1;letter-spacing:-.02em}.db-stat-lbl{font-size:10px;color:#ffffff8c;text-transform:uppercase;letter-spacing:.12em;margin-top:4px}.db-modules{display:flex;flex-direction:column;gap:var(--sp-md)}.db-module-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:var(--sp-lg);display:flex;align-items:center;gap:var(--sp-md);transition:all var(--trans-fast);text-decoration:none;color:inherit;position:relative}.db-module-card:hover:not(.locked){box-shadow:var(--shadow-md);border-color:var(--fn-blue)}.db-module-card.locked{opacity:.72;cursor:not-allowed;background:var(--c-bg);border-style:dashed}.db-module-card.complete{border-color:var(--fn-green)}.db-module-num{width:44px;height:44px;border-radius:var(--r-md);background:var(--fn-blue-light);color:var(--fn-blue);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0;font-family:var(--font-mono)}.db-module-card.complete .db-module-num{background:var(--fn-green-light);color:var(--fn-green)}.db-module-info{flex:1}.db-module-title{font-size:15px;font-weight:600;margin-bottom:3px;color:#4b5563}.db-module-meta{font-size:12px;color:var(--c-muted)}.db-module-progress{width:120px}.db-mod-prog-bar{height:8px;background:var(--c-bg2);border-radius:var(--r-full);overflow:hidden;margin-bottom:4px}.db-mod-prog-fill{height:100%;border-radius:var(--r-full);background:var(--fn-blue);transition:width var(--trans-med)}.db-module-card.complete .db-mod-prog-fill{background:var(--fn-green)}.db-mod-prog-label{font-size:11px;color:var(--c-muted);text-align:right;font-family:var(--font-mono)}.db-module-cta{padding:8px 16px;border-radius:var(--r-md);font-size:13px;font-weight:500;background:var(--fn-blue);color:#fff;border:none;cursor:pointer;transition:background var(--trans-fast);flex-shrink:0}.db-module-cta:hover{background:var(--fn-blue-dark)}.db-module-card.complete .db-module-cta{background:var(--fn-green)}.db-lock-icon{position:absolute;top:12px;right:12px;font-size:14px;color:var(--c-muted)}@keyframes db-fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes db-blink{0%,to{opacity:1}50%{opacity:.35}}.db-a0{animation:db-fadeUp .32s ease both}.db-a1{animation:db-fadeUp .32s .06s ease both}.db-a2{animation:db-fadeUp .32s .12s ease both}.db-a3{animation:db-fadeUp .32s .18s ease both}.db-a4{animation:db-fadeUp .32s .24s ease both}.db-briefing{background:radial-gradient(ellipse 95% 130% at -5% -10%,rgba(0,184,212,.32) 0%,rgba(0,184,212,.08) 45%,transparent 68%),radial-gradient(ellipse 55% 75% at 105% 110%,rgba(100,120,220,.15) 0%,transparent 60%),linear-gradient(160deg,#1a3048,#0f1a2e,#0d1220);border:1px solid rgba(0,184,212,.32);border-top:3px solid var(--fn-accent);border-radius:var(--r-xl);overflow:hidden;position:relative;box-shadow:0 24px 64px #0009,0 4px 32px #00b8d41f,inset 0 1px #00b8d42e;margin-bottom:var(--sp-lg)}.db-briefing-inner{padding:32px 36px 28px}.db-eyebrow{display:flex;align-items:center;gap:8px;font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:var(--fn-accent);font-weight:700;font-family:var(--font-mono);margin-bottom:16px}.db-eyebrow-dot{width:7px;height:7px;border-radius:50%;background:var(--fn-accent);flex-shrink:0;animation:db-blink 2s ease infinite;box-shadow:0 0 8px var(--fn-accent)}.db-briefing-title{font-size:2.75rem;font-weight:700;color:var(--c-text);line-height:1.1;letter-spacing:-.03em;margin-bottom:8px;text-shadow:0 0 48px rgba(0,184,212,.18),0 2px 12px rgba(0,0,0,.5)}.db-briefing-sub{font-size:11.5px;color:var(--c-muted);line-height:1.6;margin-bottom:28px;font-family:var(--font-mono);letter-spacing:.03em}.db-bstat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#ffffff12;border:1px solid rgba(0,184,212,.12);border-radius:var(--r-lg);overflow:hidden}.db-bstat{padding:18px 22px;background:var(--c-surface);transition:background var(--trans-fast)}.db-bstat:hover{background:var(--c-surface-2)}.db-bstat-val{font-size:1.7rem;font-weight:700;line-height:1;font-family:var(--font-mono);letter-spacing:-.02em;color:var(--c-text);margin-bottom:5px}.db-bstat-val.accent{color:var(--fn-accent)}.db-bstat-val.muted{color:var(--c-muted);font-size:1.35rem}.db-bstat-lbl{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--c-muted);font-weight:600}.db-briefing-badge{position:absolute;top:28px;right:32px;display:flex;align-items:center;gap:10px;background:#ffffff08;border:1px solid var(--c-border);border-radius:var(--r-lg);padding:10px 14px}.db-badge-icon{width:34px;height:34px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--fn-amber),#f97316);display:flex;align-items:center;justify-content:center}.db-badge-lbl{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--c-muted);margin-bottom:2px}.db-badge-name{font-size:11px;font-weight:600;color:var(--c-text-2)}.db-intake{display:flex;align-items:flex-start;gap:10px;background:var(--fn-accent-dim);border:1px solid rgba(0,184,212,.28);border-radius:var(--r-lg);padding:12px 16px;margin-bottom:var(--sp-lg)}.db-intake-dot{width:6px;height:6px;border-radius:50%;background:var(--fn-accent);flex-shrink:0;margin-top:5px;animation:db-blink 2.5s ease infinite}.db-intake-text{font-size:13px;color:var(--c-text-2);line-height:1.5}.db-intake-text strong{color:var(--c-text);font-weight:600}.db-pending-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-md);background:var(--fn-amber-dim);border:1px solid var(--fn-amber);border-left:4px solid var(--fn-amber);border-radius:var(--r-md);padding:var(--sp-sm) var(--sp-lg);margin-bottom:var(--sp-lg)}.db-pending-banner-left{display:flex;align-items:center;gap:var(--sp-sm)}.db-pending-banner-title{font-size:13px;font-weight:600;color:var(--fn-amber)}.db-pending-banner-sub{font-size:12px;color:var(--c-text);margin-left:8px}.db-pending-banner-link{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--r-sm);border:1px solid var(--fn-amber);color:var(--fn-amber);background:transparent;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}.db-sec-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.db-sec-hd-title{font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--c-muted)}.db-sec-hd-meta{font-size:10px;color:var(--c-muted);font-family:var(--font-mono);opacity:.6}.db-dossier{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);overflow:hidden;margin-bottom:var(--sp-lg)}.db-doss-row{display:flex;align-items:center;gap:14px;padding:15px 20px;border-bottom:1px solid var(--c-border);border-left:3px solid transparent;cursor:pointer;transition:all var(--trans-fast)}.db-doss-row:last-child{border-bottom:none}.db-doss-row.d-open{border-left-color:var(--fn-accent)}.db-doss-row.d-open:hover{background:var(--c-surface-2)}.db-doss-row.d-locked{cursor:not-allowed}.db-doss-row.d-done{border-left-color:var(--fn-green)}.db-doss-num{width:34px;height:34px;border-radius:var(--r-md);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;font-family:var(--font-mono);flex-shrink:0}.db-dn-open{background:var(--fn-accent-dim);color:var(--fn-accent);border:1px solid rgba(0,184,212,.28)}.db-dn-lock{background:var(--c-border);color:var(--c-muted);border:1px solid transparent}.db-dn-done{background:var(--fn-green-dim);color:var(--fn-green);border:1px solid rgba(34,197,94,.3)}.db-doss-info{flex:1;min-width:0}.db-doss-code{font-size:10px;font-family:var(--font-mono);font-weight:700;letter-spacing:.08em;line-height:1.2;margin-bottom:2px}.d-open .db-doss-code{color:var(--fn-accent)}.d-locked .db-doss-code{color:var(--c-muted)}.d-done .db-doss-code{color:var(--fn-green)}.db-doss-title{font-size:13.5px;font-weight:500;color:var(--c-text-2);margin-bottom:3px}.d-open .db-doss-title{color:var(--c-text);font-weight:600}.d-locked .db-doss-title{color:var(--c-muted)}.db-doss-meta{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--c-muted);font-family:var(--font-mono)}.db-doss-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.db-scla-pips{display:flex;align-items:center;gap:3px}.db-scla-pip{width:22px;height:4px;border-radius:2px;background:var(--c-border);transition:background var(--trans-fast)}.db-scla-pip.sp-done{background:var(--fn-green)}.db-scla-pip.sp-open{background:var(--fn-accent)}.db-btn-open{padding:6px 16px;border-radius:var(--r-md);background:var(--fn-accent);border:none;font-size:11px;font-weight:700;color:#000;cursor:pointer;font-family:var(--font-body);letter-spacing:.04em;transition:filter var(--trans-fast);flex-shrink:0}.db-btn-open:hover{filter:brightness(1.15)}.db-status-tag{display:inline-flex;align-items:center;gap:5px;border-radius:var(--r-full);padding:4px 10px;font-size:10px;font-weight:700;font-family:var(--font-mono);letter-spacing:.06em;white-space:nowrap}.db-st-lock{background:var(--c-border);color:var(--c-muted)}.db-st-done{background:var(--fn-green-dim);color:var(--fn-green);border:1px solid rgba(34,197,94,.3)}.db-capstone{background:var(--c-surface);border:1px solid var(--c-border);border-left:3px solid var(--fn-amber);border-radius:var(--r-lg);padding:15px 20px;display:flex;align-items:center;gap:14px;opacity:.55;margin-bottom:var(--sp-lg)}.db-cap-icon{width:34px;height:34px;border-radius:var(--r-md);flex-shrink:0;background:var(--fn-amber-dim);border:1px solid rgba(245,158,11,.22);display:flex;align-items:center;justify-content:center;color:var(--fn-amber)}.db-cap-info{flex:1;min-width:0}.db-cap-tag{font-size:9.5px;font-family:var(--font-mono);font-weight:700;letter-spacing:.08em;color:var(--fn-amber);margin-bottom:2px;text-transform:uppercase}.db-cap-title{font-size:13.5px;font-weight:600;color:var(--c-text-2);margin-bottom:2px}.db-cap-meta{font-size:10px;color:var(--c-muted);font-family:var(--font-mono)}.db-cap-lock{font-size:11px;color:var(--fn-amber);display:flex;align-items:center;gap:5px;font-family:var(--font-mono);white-space:nowrap}.db-review-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:13px 20px;display:flex;align-items:center;gap:12px}.db-review-card.due{border-color:#f59e0b47;background:var(--fn-amber-dim)}.db-rev-icon{width:30px;height:30px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center}.db-rev-icon-idle{background:var(--c-border);color:var(--c-muted)}.db-rev-icon-due{background:var(--fn-amber);color:#fff}.db-rev-body{flex:1}.db-rev-title{font-size:12px;font-weight:600;color:var(--c-muted);margin-bottom:1px}.db-rev-title.due{color:var(--fn-amber)}.db-rev-sub{font-size:11px;color:var(--c-muted);font-family:var(--font-mono)}.db-rev-btn{padding:6px 14px;border-radius:var(--r-md);background:var(--fn-amber);border:none;font-size:11px;font-weight:700;color:#fff;cursor:pointer;font-family:var(--font-body);transition:filter var(--trans-fast)}.db-rev-btn:hover{filter:brightness(1.1)}.db-page-end{height:32px}@media (max-width: 768px){.db-briefing-title{font-size:1.9rem}.db-bstat-grid{grid-template-columns:repeat(2,1fr)}.db-briefing-badge{display:none}}.panel-wrapper{display:flex;flex-direction:column;flex:1;min-height:0;max-width:100%;cursor:default}.panel-body{flex:1;overflow-y:auto;min-height:0;display:flex;flex-direction:column;gap:var(--sp-lg)}.panel-footer{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:var(--sp-md);padding-top:var(--sp-sm);margin-top:var(--sp-sm);border-top:1px solid var(--c-border);background:var(--c-bg)}.panel-footer-meta{font-size:13px;font-family:var(--font-mono);color:var(--c-muted);white-space:nowrap}.panel-footer-actions{display:flex;align-items:center;gap:var(--sp-sm);flex-shrink:0}.panel-back-btn{background:none;border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-sm) var(--sp-md);font-size:13px;font-family:var(--font-body);color:var(--c-muted);cursor:pointer}.panel-back-btn:hover{background:var(--c-bg2)}.sp-wrapper{display:flex;flex-direction:column;flex:1;min-height:0}.sp-topbar{display:flex;align-items:center;gap:var(--sp-md);padding:var(--sp-sm) var(--sp-lg);background:var(--c-surface);border-bottom:1px solid var(--c-border);flex-shrink:0;margin-top:15px}.sp-module-title{font-size:12px;font-weight:500;color:var(--c-muted);flex-shrink:0}.sp-progress-wrap{flex:1;display:flex;align-items:center;gap:var(--sp-sm)}.sp-progress-bar{flex:1;height:6px;background:var(--c-bg2);border-radius:var(--r-full);overflow:hidden}.sp-progress-fill{height:100%;background:var(--fn-blue);border-radius:var(--r-full);transition:width var(--trans-med)}.sp-progress-label{font-size:11px;color:var(--c-muted);font-family:var(--font-mono);white-space:nowrap}.sp-xp-badge{font-size:12px;font-weight:600;color:var(--xp-gold);font-family:var(--font-mono);flex-shrink:0}.sp-slide{flex:1;overflow-y:auto;padding:var(--sp-lg) clamp(var(--sp-lg),3vw,var(--sp-xl))}.sp-objective-bar{display:flex;align-items:flex-start;gap:var(--sp-sm);background:var(--fn-accent-dim);border-top:1px solid rgba(0,184,212,.3);padding:var(--sp-sm) var(--sp-lg);font-size:12px;color:var(--c-text);flex-shrink:0}.sp-obj-icon{flex-shrink:0}.sp-controls{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-md) var(--sp-lg);background:var(--c-surface);border-top:1px solid var(--c-border);gap:var(--sp-md);flex-shrink:0;margin-top:auto}.sp-btn{padding:13px 28px;border-radius:var(--r-md);font-size:var(--fs-control);font-weight:600;cursor:pointer;border:1px solid;transition:all var(--trans-fast);font-family:var(--font-body)}.sp-btn:disabled{opacity:1;cursor:not-allowed}.sp-btn-back{background:var(--c-surface-2);border-color:var(--c-border);color:var(--c-muted)}.sp-btn-back:hover:not(:disabled){border-color:var(--fn-blue);color:var(--fn-blue)}.sp-btn-next{background:var(--fn-blue);border-color:var(--fn-blue);color:#fff}.sp-btn-next:hover:not(:disabled){background:var(--fn-blue-dark)}.sp-audio-wrap{display:flex;align-items:center;gap:var(--sp-sm);flex:1;justify-content:center}.sp-audio-btn{padding:8px 16px;border-radius:var(--r-full);font-size:14px;background:var(--fn-accent-dim);border:1px solid var(--fn-accent);color:var(--fn-blue);cursor:pointer;white-space:nowrap;font-family:var(--font-body)}.sp-audio-btn:hover{background:var(--fn-accent);color:#fff}.sp-audio-bar{width:100px;height:4px;background:var(--c-bg2);border-radius:var(--r-full);overflow:hidden}.sp-audio-progress{height:100%;background:var(--fn-accent);border-radius:var(--r-full);width:0%;transition:width .5s linear}.sp-title-slide{text-align:center;padding:var(--sp-xl) 0;max-width:680px;margin:0 auto}.sp-title-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:var(--fn-blue);margin-bottom:var(--sp-md)}.sp-title-h1{font-size:2.5rem;font-weight:700;color:var(--c-text);margin-bottom:var(--sp-md)}.sp-title-sub{font-size:18px;color:var(--c-muted);margin-bottom:var(--sp-xl)}.sp-title-objs{background:var(--c-bg);border-radius:var(--r-lg);padding:var(--sp-lg);text-align:left}.sp-title-objs-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--fn-blue);margin-bottom:var(--sp-sm)}.sp-title-objs ul{padding-left:var(--sp-lg)}.sp-title-objs li{margin-bottom:var(--sp-sm);font-size:14px}.sp-content-slide{max-width:100%;height:100%}.sp-slide-title{color:var(--c-text);margin-bottom:var(--sp-md);font-size:var(--fs-heading);font-weight:700;font-family:var(--font-display);line-height:1.25}.sp-body{font-size:var(--fs-body);line-height:1.7;color:var(--c-text)}.sp-slide-eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);margin-bottom:var(--sp-sm)}.sp-key-point{display:flex;align-items:flex-start;gap:var(--sp-sm);background:var(--fn-blue-light);border-left:4px solid var(--fn-blue);border-radius:0 var(--r-md) var(--r-md) 0;padding:var(--sp-md);margin-top:var(--sp-lg);font-size:15px}.sp-warning{display:flex;align-items:flex-start;gap:var(--sp-sm);background:var(--fn-amber-light);border-left:4px solid var(--fn-amber);border-radius:0 var(--r-md) var(--r-md) 0;padding:var(--sp-md);margin-top:var(--sp-lg);font-size:14px}.sp-image-wrap{margin-top:var(--sp-lg)}.sp-image-wrap img{max-width:100%;border-radius:var(--r-md);border:1px solid var(--c-border)}.sp-diagram-wrap{background:var(--c-bg);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:var(--sp-lg);margin:var(--sp-md) 0;min-height:300px}.sp-diagram-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:280px;color:var(--c-muted);gap:var(--sp-sm)}.sp-diagram-caption{font-size:12px;color:var(--c-muted);font-style:italic;text-align:center}.sp-callouts{display:flex;flex-direction:column;gap:var(--sp-sm);margin-top:var(--sp-md)}.sp-callout{background:var(--c-bg2);border-radius:var(--r-md);padding:var(--sp-sm) var(--sp-md);font-size:13px}.sp-video-wrap video{width:100%;border-radius:var(--r-md);background:#000}.sp-transcript{margin-top:var(--sp-md);border:1px solid var(--c-border);border-radius:var(--r-md)}.sp-transcript summary{padding:var(--sp-sm) var(--sp-md);cursor:pointer;font-size:13px;color:var(--fn-blue)}.sp-transcript-body{padding:var(--sp-md);font-size:13px;line-height:1.7;border-top:1px solid var(--c-border)}.sp-activity-instructions{background:var(--fn-accent-dim);border-radius:var(--r-md);padding:var(--sp-md);font-size:14px;margin-bottom:var(--sp-md)}.sp-activity-frame{border:1px solid var(--c-border);border-radius:var(--r-lg);padding:var(--sp-lg);min-height:300px}.sp-activity-loading{display:flex;align-items:center;justify-content:center;min-height:280px;color:var(--c-muted)}.sp-activity-done{color:var(--fn-green);font-size:14px;font-weight:500}.sp-checklist{display:flex;flex-direction:column;gap:var(--sp-sm)}.sp-check-item{display:flex;align-items:flex-start;gap:var(--sp-md);padding:var(--sp-md);background:var(--c-bg);border-radius:var(--r-md);border:1px solid var(--c-border);transition:all var(--trans-fast)}.sp-check-item.checked{background:var(--fn-green-light);border-color:var(--fn-green)}.sp-check-btn{background:none;border:none;cursor:pointer;padding:0;flex-shrink:0}.sp-check-box{display:flex;width:22px;height:22px;border-radius:var(--r-sm);border:2px solid var(--c-border);align-items:center;justify-content:center;transition:all var(--trans-fast)}.sp-check-item.checked .sp-check-box{background:var(--fn-green);border-color:var(--fn-green)}.sp-check-item.checked .sp-check-box:after{content:"✓";color:#fff;font-size:13px}.sp-check-label{font-weight:500;font-size:14px}.sp-check-detail{font-size:13px;color:var(--c-muted);margin-top:3px}.sp-pause-panel{display:flex;gap:var(--sp-md);align-items:flex-start;margin-top:var(--sp-lg);padding:var(--sp-md) var(--sp-lg);border-radius:var(--r-lg);border:1px solid var(--fn-accent);background:var(--fn-accent-dim)}.sp-pause-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--fn-accent);color:#fff;font-size:18px;flex-shrink:0}.sp-pause-body{font-size:15px;color:var(--c-text)}.sp-pause-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:600;color:var(--fn-blue);margin-bottom:2px}.sp-pause-text{font-size:13px;margin-bottom:4px}.sp-pause-hint{font-size:12px;color:var(--c-muted);font-style:italic}.sp-split-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-lg);margin-top:var(--sp-md)}.sp-split-item{display:flex;align-items:flex-start;gap:var(--sp-sm);padding:var(--sp-md);background:var(--c-bg);border-radius:var(--r-md);margin-bottom:var(--sp-sm);font-size:14px}.sp-split-icon{font-size:20px;flex-shrink:0}@keyframes sp-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.sp-block-entering{animation:sp-reveal .28s ease forwards}.sp-block-stagger{will-change:opacity,transform}.sp-section-counter{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--fn-blue);margin-bottom:var(--sp-md)}@keyframes sp-boundary-enter{0%{opacity:0;transform:translateY(18px)}60%{opacity:1;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@keyframes sp-eyebrow-flash{0%{color:var(--fn-accent);letter-spacing:.18em}60%{color:var(--fn-accent);letter-spacing:.18em}to{color:var(--c-muted);letter-spacing:.08em}}.sp-slide-boundary-enter{animation:sp-boundary-enter .42s cubic-bezier(.16,1,.3,1) forwards}.sp-eyebrow-flash{animation:sp-eyebrow-flash .6s ease forwards}.ae-wrapper{max-width:900px;margin:0 auto}.assessment-panel{max-width:1200px;margin:var(--sp-md) auto 0;min-height:auto;padding:0 var(--sp-lg)}.assessment-panel .ae-wrapper{max-width:100%}.assessment-panel .ae-question-wrap{padding:var(--sp-xl);margin-bottom:var(--sp-md)}.ae-stage-context{display:flex;align-items:center;gap:var(--sp-md);margin-bottom:var(--sp-md);padding:var(--sp-md) var(--sp-lg);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg)}.ae-stage-icon{width:44px;height:44px;border-radius:50%;border:2px solid var(--fn-blue);background:var(--fn-blue-light);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.ae-stage-label{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--fn-blue);font-weight:600;margin-bottom:3px}.ae-stage-sub{font-size:15px;color:var(--c-muted);line-height:1.4}.ae-header{display:flex;align-items:center;gap:var(--sp-sm);margin-bottom:var(--sp-md);flex-wrap:wrap}.ae-progress-wrap{flex:1}.ae-progress-eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--fn-blue);font-family:var(--font-mono);margin-bottom:5px}.ae-progress-label{font-size:15px;color:var(--c-muted);margin-bottom:6px}.ae-progress-bar{height:10px;background:var(--c-bg2);border-radius:var(--r-full);overflow:hidden}.ae-progress-fill{height:100%;background:var(--fn-blue);border-radius:var(--r-full);transition:width var(--trans-med)}.ae-timer{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:16px;font-weight:600;color:var(--fn-blue)}.ae-timer.ae-timer-warning{color:var(--sev-critical);animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.ae-xp-hint{font-size:13px;color:var(--xp-gold);font-weight:600;font-family:var(--font-mono)}.ae-question-wrap{background:var(--c-surface);border:1px solid var(--c-border-2);border-radius:var(--r-xl);padding:var(--sp-xl);margin-bottom:var(--sp-md)}.ae-context{background:var(--c-surface-2);border-left:4px solid var(--fn-accent);border-radius:0 var(--r-md) var(--r-md) 0;padding:var(--sp-md) var(--sp-lg);margin-bottom:var(--sp-lg);font-size:14px;line-height:1.6;color:var(--c-text-2)}.ae-stem{font-size:16px;font-weight:500;line-height:1.6;color:var(--c-text);margin-bottom:20px}.ae-options{display:flex;flex-direction:column;gap:var(--sp-md)}.ae-multi-hint{font-size:14px;color:var(--c-muted);font-style:italic;margin-bottom:var(--sp-md)}.ae-option{display:flex;align-items:flex-start;gap:var(--sp-md);padding:var(--sp-md) var(--sp-lg);border:1px solid var(--c-border);border-radius:var(--r-lg);cursor:pointer;transition:all var(--trans-fast);background:var(--c-bg)}.ae-option:hover{border-color:var(--fn-accent);background:var(--fn-accent-dim)}.ae-option:focus-within{border-color:var(--fn-accent);background:var(--fn-accent-dim);box-shadow:0 0 0 2px #00b8d424 inset}.ae-option.selected{border-color:var(--fn-accent);background:var(--fn-accent-dim)}.ae-option.ae-correct{border-color:var(--fn-green);background:var(--fn-green-light)!important}.ae-option.ae-incorrect{border-color:var(--sev-critical);background:var(--sev-critical-bg)!important}.ae-option input{position:absolute;opacity:0;width:0}.ae-option-marker{width:24px;height:24px;border-radius:50%;border:2px solid var(--c-border);flex-shrink:0;margin-top:2px;transition:all var(--trans-fast)}.ae-check-marker{border-radius:var(--r-sm)}.ae-option.selected .ae-option-marker{border-color:var(--fn-accent);background:var(--fn-accent)}.ae-option.ae-correct .ae-option-marker{border-color:var(--fn-green);background:var(--fn-green)}.ae-option.ae-correct .ae-option-marker:after,.ae-option.selected .ae-option-marker:after{content:"✓";color:#fff;font-size:13px;display:flex;align-items:center;justify-content:center;height:100%}.ae-option-text{font-size:16px;line-height:1.55}.ae-scenario-opt{display:flex;align-items:flex-start;gap:var(--sp-md);padding:var(--sp-md) var(--sp-lg);border:1px solid var(--c-border);border-radius:var(--r-lg);cursor:pointer;background:var(--c-bg);transition:all var(--trans-fast);text-align:left;width:100%;font-family:var(--font-body)}.ae-scenario-opt:hover,.ae-scenario-opt.selected{border-color:var(--fn-blue);background:var(--fn-blue-light)}.ae-scenario-label{width:32px;height:32px;border-radius:var(--r-sm);background:var(--fn-blue);color:#fff;display:flex;align-items:center;justify-content:center;font-size:15px;font-weight:700;flex-shrink:0}.ae-scenario-text{font-size:16px;line-height:1.55}.ae-match-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-lg)}.ae-match-term{display:flex;align-items:center;gap:var(--sp-md);padding:var(--sp-sm) 0;border-bottom:1px solid var(--c-border)}.ae-match-drop{border:2px dashed var(--c-border);border-radius:var(--r-md);padding:var(--sp-sm) var(--sp-md);font-size:15px;color:var(--c-muted);min-width:120px;transition:all var(--trans-fast)}.ae-match-drop.filled{border-style:solid;border-color:var(--fn-green);background:var(--fn-green-light);color:var(--fn-green)}.ae-match-def{padding:var(--sp-sm) var(--sp-md);background:var(--fn-blue-light);border:1px solid var(--fn-blue);border-radius:var(--r-md);cursor:grab;font-size:15px;margin-bottom:var(--sp-sm)}.ae-match-def.dragging{opacity:.5}.ae-order-hint{font-size:14px;color:var(--c-muted);font-style:italic;margin-bottom:var(--sp-sm)}.ae-order-list{display:flex;flex-direction:column;gap:var(--sp-sm)}.ae-order-item{display:flex;align-items:center;gap:var(--sp-md);padding:var(--sp-md) var(--sp-lg);background:var(--c-bg);border:1px solid var(--c-border);border-radius:var(--r-md);cursor:grab;transition:all var(--trans-fast);font-size:16px}.ae-order-item:hover{border-color:var(--fn-blue)}.ae-order-item.dragging{opacity:.4}.ae-order-handle{color:var(--c-muted);font-size:18px;flex-shrink:0}.ae-footer{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-md);margin-bottom:var(--sp-sm);padding-top:var(--sp-sm);flex-wrap:wrap}.ae-footer-note{font-size:14px;color:var(--c-muted)}.ae-btn{padding:14px 36px;border-radius:var(--r-md);font-size:16px;font-weight:600;cursor:pointer;border:1px solid;transition:all var(--trans-fast);font-family:var(--font-body)}.ae-btn:disabled{opacity:.4;cursor:not-allowed}.ae-btn-submit{background:var(--fn-blue);border-color:var(--fn-blue);color:#fff}.ae-btn-submit:hover:not(:disabled){background:var(--fn-blue-dark)}.ae-feedback-wrap{margin-top:var(--sp-md)}.ae-feedback{display:flex;align-items:flex-start;gap:var(--sp-md);padding:var(--sp-lg);border-radius:var(--r-lg);border:1px solid}.ae-feedback-correct{background:var(--fn-green-light);border-color:var(--fn-green)}.ae-feedback-incorrect{background:var(--sev-critical-bg);border-color:var(--sev-critical)}.ae-feedback-pending{background:var(--fn-amber-light);border-color:var(--fn-amber)}.ae-feedback-instructor{background:var(--fn-blue-light);border-color:var(--fn-blue)}.ae-feedback-icon{font-size:28px;flex-shrink:0}.ae-feedback-verdict{font-size:18px;font-weight:600;margin-bottom:4px}.ae-feedback-correct .ae-feedback-verdict{color:var(--fn-green)}.ae-feedback-incorrect .ae-feedback-verdict{color:var(--sev-critical)}.ae-feedback-explanation{font-size:16px;color:var(--c-text);line-height:1.65}.ae-feedback-correct-ans{margin-top:var(--sp-sm);font-size:15px;color:var(--c-text)}.ae-feedback-xp{margin-top:var(--sp-sm);font-size:14px;font-weight:600;color:var(--xp-gold);font-family:var(--font-mono)}.ae-results-header{text-align:center;padding:var(--sp-xl);border-radius:var(--r-xl);margin-bottom:var(--sp-lg)}.ae-results-pass{background:var(--fn-green-light);border:2px solid var(--fn-green)}.ae-results-fail{background:var(--sev-critical-bg);border:2px solid var(--sev-critical)}.ae-results-neutral{background:var(--fn-blue-light);border:2px solid var(--fn-blue)}.ae-results-icon{font-size:56px;margin-bottom:var(--sp-md)}.ae-results-verdict{font-size:28px;font-weight:700;margin-bottom:var(--sp-sm)}.ae-results-pass .ae-results-verdict{color:var(--fn-green)}.ae-results-fail .ae-results-verdict{color:var(--sev-critical)}.ae-results-neutral .ae-results-verdict{color:var(--fn-blue)}.ae-results-score{font-size:72px;font-weight:700;font-family:var(--font-mono);line-height:1}.ae-results-sub{font-size:16px;color:var(--c-muted);margin-top:var(--sp-sm)}.ae-results-stats{display:flex;justify-content:center;gap:var(--sp-xl);padding:var(--sp-lg) 0;border-bottom:1px solid var(--c-border);margin-bottom:var(--sp-lg)}.ae-stat{text-align:center}.ae-stat-val{display:block;font-size:2.25rem;font-weight:700;font-family:var(--font-mono);color:var(--c-text)}.ae-stat-lbl{font-size:13px;color:var(--c-muted);text-transform:uppercase;letter-spacing:.08em}.ae-results-diagnostic-list{display:flex;flex-direction:column;gap:var(--sp-md);margin-bottom:var(--sp-lg)}.ae-results-actions{display:flex;gap:var(--sp-md);justify-content:center;margin-bottom:var(--sp-lg);flex-wrap:wrap}.ae-btn-primary{background:var(--fn-blue);border-color:var(--fn-blue);color:#fff}.ae-btn-primary:hover{background:var(--fn-blue-dark)}.ae-btn-secondary{background:var(--c-surface-3);border-color:var(--c-border-2);color:var(--c-text-2)}.ae-btn-secondary:hover{border-color:var(--fn-accent);color:var(--fn-accent)}.ae-feedback-warning{background:var(--fn-amber-light);border-color:var(--fn-amber);margin-bottom:var(--sp-lg)}.ae-facilitator-flag{background:var(--fn-amber-light);border:1px solid var(--fn-amber);border-radius:var(--r-md);padding:var(--sp-md);font-size:15px;color:var(--fn-amber);text-align:center}.ae-error{max-width:900px;margin:var(--sp-2xl) auto;padding:var(--sp-lg);background:var(--fn-red-light);border:1px solid var(--fn-red);border-radius:var(--r-lg);color:var(--fn-red);font-size:16px;text-align:center}.ae-tf-options{display:flex;gap:var(--sp-md);margin-bottom:var(--sp-md)}.ae-tf-options .ae-option{flex:1;justify-content:center}.ae-justify-textarea{width:100%;min-height:120px;padding:14px 16px;border:1px solid var(--c-border);border-radius:var(--r-md);font-family:var(--font-body);font-size:16px;color:var(--c-text);background:var(--c-bg);resize:vertical;box-sizing:border-box;transition:border-color var(--trans-fast)}.ae-justify-textarea:focus{outline:none;border-color:var(--fn-blue)}.ae-short-textarea{width:100%;min-height:140px;padding:14px 16px;border:1px solid var(--c-border);border-radius:var(--r-md);font-family:var(--font-body);font-size:16px;color:var(--c-text);background:var(--c-bg);resize:vertical;box-sizing:border-box;transition:border-color var(--trans-fast)}.ae-short-textarea:focus{outline:none;border-color:var(--fn-blue)}.ae-feedback-empty{margin-bottom:var(--sp-lg)}.ae-options-fieldset{margin:0;padding:0;border:0;min-width:0}.ae-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}.ae-confidence-wrap{margin-top:var(--sp-lg);padding-top:var(--sp-md);border-top:1px solid var(--c-border)}.ae-confidence-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--c-muted);margin-bottom:var(--sp-xs);font-family:var(--font-mono)}.ae-confidence-group{display:flex;gap:var(--sp-xs);flex-wrap:wrap}.ae-confidence-chip{border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text);border-radius:var(--r-full);padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer}.ae-confidence-chip:hover{border-color:var(--fn-blue);color:var(--fn-blue)}.ae-confidence-chip:focus-visible{outline:2px solid var(--fn-blue);outline-offset:1px}.ae-confidence-chip.selected{background:var(--fn-blue-light);border-color:var(--fn-blue);color:var(--fn-blue)}.ae-submit-inline-error{margin-top:var(--sp-sm);font-size:13px;color:var(--sev-critical)}.ae-fullscreen{--c-bg: #0d1321;--c-surface: #111827;--c-text: #f0f4ff;--c-muted: #64748b;--c-border: rgba(255, 255, 255, .08);--fn-green: #22c55e;--fn-amber: #f59e0b;--fn-red: #ef4444;--fn-blue-light: rgba(46, 117, 182, .15);position:fixed;top:0;right:0;bottom:0;left:0;background:var(--c-bg);color:var(--c-text);font-family:var(--font-body);display:flex;flex-direction:column;z-index:10}.ae-accent-bar{height:4px;flex-shrink:0;background:linear-gradient(90deg,var(--fn-accent) 0%,var(--fn-blue) 100%)}.ae-topnav{height:52px;flex-shrink:0;display:flex;align-items:center;padding:0 16px;background:var(--c-bg);border-bottom:1px solid var(--c-border);gap:12px}.ae-topnav-left{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.ae-topnav-back{background:transparent;border:1px solid var(--c-border);border-radius:var(--r-md);color:var(--c-text-2);font-size:12px;font-weight:600;padding:5px 10px;cursor:pointer;transition:all var(--trans);white-space:nowrap;font-family:var(--font-body)}.ae-topnav-back:hover{border-color:var(--c-text-2);color:var(--c-text)}.ae-topnav-module{font-size:12px;font-weight:700;color:var(--fn-accent);font-family:var(--font-mono)}.ae-topnav-title{font-size:13px;font-weight:600;color:var(--c-text-2)}.ae-topnav-badge{font-size:11px;font-weight:600;padding:4px 10px;border-radius:var(--r-full);white-space:nowrap;flex-shrink:0}.ae-topnav-badge--admin{background:var(--fn-amber-dim);color:var(--fn-amber);border:1px solid rgba(245,158,11,.25)}.ae-topnav-timer{display:flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--c-text-2);padding:5px 10px;border-radius:var(--r-md);background:var(--c-surface);border:1px solid var(--c-border);flex-shrink:0}.ae-topnav-timer.ae-timer-warn{color:var(--fn-red);border-color:#ef44444d;background:var(--fn-red-dim);animation:pulse 1s infinite}.ae-shell{flex:1;display:flex;overflow:hidden}.ae-sidenav{width:214px;flex-shrink:0;background:var(--c-bg);border-right:1px solid var(--c-border);display:flex;flex-direction:column;overflow:hidden}.ae-sidenav-head{padding:12px 10px 8px;border-bottom:1px solid var(--c-border);flex-shrink:0}.ae-sidenav-title{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--c-muted);margin-bottom:8px}.ae-sidenav-progress-bar{height:3px;background:var(--c-surface-3);border-radius:var(--r-full);margin-bottom:6px}.ae-sidenav-progress-fill{height:100%;background:var(--fn-green);border-radius:var(--r-full);transition:width .3s ease}.ae-sidenav-count{font-size:11px;color:var(--c-muted);font-family:var(--font-mono)}.ae-q-list{flex:1;overflow-y:auto;padding:6px;list-style:none;margin:0;display:flex;flex-direction:column;gap:2px}.ae-q-item{display:flex;align-items:center;gap:7px;padding:6px 7px;border-radius:var(--r-md);border:1px solid transparent;cursor:pointer;background:transparent;width:100%;text-align:left;transition:all var(--trans);min-width:0;font-family:var(--font-body)}.ae-q-item:hover{background:var(--c-surface)}.ae-q-item.ae-q-current{background:var(--fn-accent-dim);border-color:#00b8d433}.ae-q-badge{width:26px;height:18px;border-radius:4px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;font-family:var(--font-mono)}.ae-q-badge--current{background:var(--fn-accent-dim);color:var(--fn-accent)}.ae-q-badge--answered{background:var(--fn-green-dim);color:var(--fn-green)}.ae-q-badge--flagged{background:var(--fn-amber-dim);color:var(--fn-amber)}.ae-q-badge--unanswered{background:var(--c-surface-3);color:var(--c-muted)}.ae-q-preview{font-size:11px;color:var(--c-text-2);line-height:1.3;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ae-q-flag-icon{font-size:10px;color:var(--fn-amber);flex-shrink:0}.ae-sidenav-footer{padding:8px 8px 10px;border-top:1px solid var(--c-border);flex-shrink:0}.ae-sidenav-submit-btn{width:100%;padding:9px;border-radius:var(--r-md);background:var(--fn-green);color:#000;font-weight:700;font-size:12px;border:none;cursor:pointer;transition:background var(--trans);font-family:var(--font-body)}.ae-sidenav-submit-btn:hover:not(:disabled){background:#16a34a}.ae-sidenav-submit-btn:disabled{opacity:.5;cursor:not-allowed}.ae-main{flex:1;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;align-items:center}.ae-card{background:var(--c-surface);border:1px solid var(--c-border-2);border-radius:var(--r-lg);overflow:hidden;width:100%;max-width:720px}.ae-card-topbar{background:var(--c-bg);border-bottom:1px solid var(--c-border);padding:10px 18px;display:flex;align-items:center;gap:10px}.ae-card-q-label{font-size:13px;font-weight:600;color:var(--c-text-2);font-family:var(--font-mono)}.ae-card-module-badge{font-size:11px;font-weight:600;color:var(--fn-blue);background:var(--fn-blue-light);padding:3px 8px;border-radius:var(--r-full);letter-spacing:.04em}.ae-card-type-badge{font-size:11px;font-weight:500;color:var(--c-muted)}.ae-card-body{padding:24px 20px 20px}.ae-card-footer{background:var(--c-bg);border-top:1px solid var(--c-border);padding:12px 18px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ae-nav-btn{padding:7px 14px;border-radius:var(--r-md);background:var(--c-surface-3);border:1px solid var(--c-border-2);color:var(--c-text-2);font-size:13px;font-weight:600;cursor:pointer;transition:all var(--trans);font-family:var(--font-body)}.ae-nav-btn:hover:not(:disabled){border-color:var(--c-text-2);color:var(--c-text)}.ae-nav-btn:disabled{opacity:.35;cursor:not-allowed}.ae-nav-next-btn{padding:7px 18px;border-radius:var(--r-md);background:var(--fn-accent);color:#000;border:none;font-size:13px;font-weight:700;cursor:pointer;transition:all var(--trans);font-family:var(--font-body);margin-left:auto}.ae-nav-next-btn:hover:not(:disabled){background:#00d4ef}.ae-nav-next-btn:disabled{opacity:.4;cursor:not-allowed}.ae-flag-btn{padding:7px 12px;border-radius:var(--r-md);background:transparent;border:1px solid var(--c-border);color:var(--c-text-2);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--trans);display:flex;align-items:center;gap:5px;font-family:var(--font-body)}.ae-flag-btn:hover,.ae-flag-btn.flagged{border-color:var(--fn-amber);color:var(--fn-amber);background:var(--fn-amber-dim)}.ae-footer-hint{font-size:12px;color:var(--fn-amber);flex:1;text-align:center}.ae-submit-error{margin-top:10px;font-size:12px;color:var(--fn-red)}.ae-conf-section{margin-top:20px;padding-top:16px;border-top:1px solid var(--c-border)}.ae-conf-label{font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted);margin-bottom:8px}.ae-conf-group{display:flex;gap:8px}.ae-conf-card{flex:1;padding:10px 12px;border-radius:var(--r-md);border:1px solid var(--c-border);background:var(--c-surface-2);cursor:pointer;transition:all var(--trans);text-align:left;font-family:var(--font-body)}.ae-conf-card:hover{border-color:var(--c-border-2);background:var(--c-surface-3)}.ae-conf-card.ae-conf-low.selected{border-color:#f59e0b66;background:var(--fn-amber-dim)}.ae-conf-card.ae-conf-medium.selected{border-color:#2e75b666;background:var(--fn-blue-light)}.ae-conf-card.ae-conf-high.selected{border-color:#22c55e66;background:var(--fn-green-dim)}.ae-conf-dot{width:8px;height:8px;border-radius:50%;margin-bottom:5px}.ae-conf-dot--low{background:var(--fn-amber)}.ae-conf-dot--medium{background:var(--fn-blue)}.ae-conf-dot--high{background:var(--fn-green)}.ae-conf-name{font-size:13px;font-weight:600;color:var(--c-text);line-height:1.2;margin-bottom:2px}.ae-conf-desc{font-size:11px;color:var(--c-text-2)}.ae-correct-panel{margin-top:16px;padding:12px 14px;background:var(--fn-green-dim);border:1px solid rgba(34,197,94,.25);border-radius:var(--r-md)}.ae-correct-panel-label{font-size:10px;font-weight:700;color:var(--fn-green);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.ae-correct-panel-item{font-size:13px;color:var(--c-text);margin-bottom:4px}.ae-correct-panel-rationale{margin-top:8px;font-size:12px;color:var(--c-text-2);font-style:italic}.ae-locked-card{--c-surface: #111827;--c-text: #f0f4ff;--c-text-2: #94a3b8;--c-border: rgba(255, 255, 255, .08);--fn-amber: #f59e0b;max-width:560px;margin:var(--sp-2xl) auto;background:var(--c-surface);border:1px solid var(--c-border);border-left:4px solid var(--fn-amber);border-radius:var(--r-lg);padding:var(--sp-xl);text-align:center}.ae-locked-icon{font-size:40px;margin-bottom:12px}.ae-locked-title{font-size:18px;font-weight:700;color:var(--c-text);margin-bottom:8px}.ae-locked-body{font-size:14px;color:var(--c-text-2);line-height:1.6;margin-bottom:20px}.ae-locked-back{background:var(--fn-accent);color:#000;border:none;border-radius:var(--r-md);padding:10px 24px;font-size:13px;font-weight:700;cursor:pointer;transition:background var(--trans);font-family:var(--font-body)}.ae-locked-back:hover{background:#00d4ef}.ae-results{--c-bg: #0d1321;--c-surface: #111827;--c-text: #f0f4ff;--c-muted: #64748b;--c-border: rgba(255, 255, 255, .08);--fn-green: #22c55e;--fn-amber: #f59e0b;--fn-red: #ef4444;max-width:760px;margin:24px auto;padding:0 16px;color:var(--c-text)}.ar-verdict-header{text-align:center;padding:28px 24px;border-radius:var(--r-xl);margin-bottom:20px;border:1px solid}.ar-verdict-pass{background:var(--fn-green-dim);border-color:#22c55e4d}.ar-verdict-fail{background:var(--fn-red-dim);border-color:#ef44444d}.ar-verdict-icon{font-size:36px;margin-bottom:8px}.ar-verdict-score{font-size:2.5rem;font-weight:800;font-family:var(--font-mono);line-height:1;margin-bottom:4px;letter-spacing:.02em}.ar-band-mastery{color:var(--fn-accent)}.ar-band-competent{color:var(--fn-green)}.ar-band-developing{color:var(--fn-amber)}.ar-band-beginning{color:var(--fn-red)}.ar-verdict-label{font-size:14px;font-weight:600;color:var(--c-text);margin-bottom:4px}.ar-verdict-sub{font-size:13px;color:var(--c-text-2)}.ar-confidence-band{margin-top:12px;font-size:12px;color:var(--c-text-2)}.ar-cards{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.ar-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);overflow:hidden}.ar-card--correct{border-color:#22c55e4d}.ar-card--incorrect{border-color:#ef444440}.ar-card--pending{border-color:#f59e0b40}.ar-card-header{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--c-surface-2);flex-wrap:wrap}.ar-card-num{font-size:11px;font-weight:700;font-family:var(--font-mono);color:var(--c-muted);background:var(--c-surface-3);padding:2px 7px;border-radius:var(--r-sm);flex-shrink:0}.ar-card-question{font-size:13px;color:var(--c-text);flex:1;line-height:1.4;min-width:0}.ar-card-type{font-size:10px;font-weight:600;color:var(--c-muted);letter-spacing:.06em;text-transform:uppercase;flex-shrink:0}.ar-card-toggle{background:transparent;border:1px solid var(--c-border);border-radius:var(--r-sm);color:var(--c-text-2);font-size:11px;padding:3px 8px;cursor:pointer;transition:all var(--trans);white-space:nowrap;flex-shrink:0}.ar-card-toggle:hover{border-color:var(--fn-accent);color:var(--fn-accent)}.ar-card-verdict{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:600;border-top:1px solid var(--c-border)}.ar-card-confidence{color:var(--c-muted);font-weight:400;font-size:12px}.ar-card-detail{padding:8px 14px 12px;font-size:13px;color:var(--c-text-2);line-height:1.55}.ae-btn-retry{background:var(--fn-amber-dim);border-color:#f59e0b4d;color:var(--fn-amber)}.ae-btn-retry:hover{background:#f59e0b33}.ai-loader{text-align:center;padding:48px 20px}.ai-loader-ring{width:48px;height:48px;border:3px solid var(--c-border);border-top-color:var(--fn-accent);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.ai-loader-label{font-size:15px;font-weight:600;color:var(--c-text);margin-bottom:12px}.ai-loader-bar{height:3px;background:var(--c-surface-3);border-radius:var(--r-full);overflow:hidden;max-width:240px;margin:0 auto 12px}.ai-loader-bar:after{content:"";display:block;height:100%;background:var(--fn-accent);border-radius:var(--r-full);animation:shimmer 1.5s ease-in-out infinite}@keyframes shimmer{0%{width:0%;margin-left:0}50%{width:60%;margin-left:20%}to{width:0%;margin-left:100%}}.ai-loader-sub{font-size:13px;color:var(--c-text-2);line-height:1.5;max-width:320px;margin:0 auto}.ai-card-loader{display:flex;align-items:center;gap:8px;padding:10px 14px;font-size:13px;color:var(--c-text-2);border-top:1px solid var(--c-border)}.dd-container{display:flex;flex-direction:column;gap:var(--sp-sm);font-family:var(--font-body)}.dd-header{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-sm);margin-bottom:2px}.dd-eyebrow{font-size:12px;font-weight:700;color:var(--c-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}.dd-pool-hint{font-size:13px;color:var(--c-text);font-weight:600;margin:0}.dd-progress{font-size:12px;font-weight:600;color:var(--c-muted);background:var(--c-bg2);border-radius:var(--r-full);padding:3px 10px;flex-shrink:0}.dd-pool{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--sp-xs);margin-bottom:var(--sp-sm)}.dd-pool--assessment-inline{grid-template-columns:repeat(var(--dd-cols, 6),minmax(0,1fr))}.dd-pool:empty:after{content:"All items assigned";font-size:12px;color:var(--c-muted);font-style:italic;grid-column:1 / -1;text-align:center;padding:var(--sp-sm) 0}.dd-item{display:flex;flex-direction:column;gap:4px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:10px;cursor:grab;transition:opacity var(--trans-fast),box-shadow var(--trans-fast),background var(--trans-fast);-webkit-user-select:none;user-select:none;font-family:var(--font-body);box-shadow:var(--shadow-sm)}.dd-item:hover{background:var(--fn-blue-light);border-color:var(--fn-blue)}.dd-item-label{font-size:12px;font-weight:700;color:var(--fn-blue);text-transform:uppercase;letter-spacing:.06em}.dd-item-text{font-size:12px;color:var(--c-text);line-height:1.5}.dd-item--selected{background:var(--fn-blue-light);border-color:var(--fn-blue)}.dd-item--selected .dd-item-label,.dd-item--selected .dd-item-text{color:var(--c-text)}.dd-item--dragging{opacity:.35;cursor:grabbing;box-shadow:none}.dd-buckets{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--sp-xs)}.dd-buckets--inline-six{grid-template-columns:repeat(6,minmax(0,1fr))}.dd-buckets--five{grid-template-columns:repeat(6,1fr)}.dd-buckets--five .dd-bucket:nth-child(1){grid-column:span 2}.dd-buckets--five .dd-bucket:nth-child(2){grid-column:span 2}.dd-buckets--five .dd-bucket:nth-child(3){grid-column:span 2}.dd-buckets--five .dd-bucket:nth-child(4){grid-column:2 / span 2}.dd-buckets--five .dd-bucket:nth-child(5){grid-column:4 / span 2}.dd-bucket{border:2px dashed var(--c-border);border-radius:var(--r-lg);padding:var(--sp-sm);min-height:128px;cursor:pointer;transition:background var(--trans-fast),border-style .1s ease,border-color var(--trans-fast);background:var(--c-surface)}.dd-bucket:hover{border-color:var(--fn-blue);background:var(--fn-blue-light)}.dd-bucket--over{border-color:var(--fn-blue);background:var(--fn-blue-light);border-style:solid}.dd-bucket-label{font-size:12px;font-weight:700;color:var(--c-text);margin-bottom:var(--sp-xs);padding-bottom:var(--sp-xs);border-bottom:1px solid var(--c-border);line-height:1.2}.dd-bucket-items{display:flex;flex-direction:column;gap:6px}.dd-bucket-empty{text-align:center;font-size:12px;color:var(--c-muted);font-style:italic;padding:var(--sp-xs) 0}.dd-placed-item{display:block}.dd-placed-item .dd-item{position:relative;padding-right:28px}.dd-remove-btn{position:absolute;top:6px;right:6px;background:none;border:none;color:var(--c-muted);cursor:pointer;font-size:12px;padding:1px 4px;border-radius:var(--r-sm);line-height:1;transition:all var(--trans-fast)}.dd-remove-btn:hover{color:var(--sev-critical);background:var(--sev-critical-bg)}.deepen-steps{display:flex;gap:8px;margin-bottom:22px}.deepen-step-pill{padding:6px 16px;border-radius:var(--r-full);font-size:12px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;border:1.5px solid var(--c-border);color:var(--c-muted);background:transparent}.deepen-step-pill.cur{border-color:var(--fn-blue);color:var(--fn-blue);background:var(--fn-blue-light)}.deepen-step-pill.done{border-color:var(--fn-green);color:var(--fn-green);background:var(--fn-green-light)}.deepen-quiz-card{border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-lg);margin-bottom:var(--sp-lg);background:var(--c-surface)}.deepen-quiz-title{font-size:13px;font-weight:600;color:var(--c-text);margin-bottom:var(--sp-sm)}.deepen-quiz-subtitle{font-size:13px;color:var(--c-muted);margin-bottom:var(--sp-md)}.deepen-quiz-question-card{margin-bottom:var(--sp-md);padding:12px;border:1px solid var(--c-border);border-radius:var(--r-md);background:var(--c-bg)}.deepen-muted{font-size:13px;color:var(--c-muted)}.quiz-progress-bar{height:3px;background:var(--c-border);border-radius:var(--r-full);overflow:hidden;margin-bottom:20px}.quiz-progress-fill{height:100%;background:var(--fn-blue);border-radius:var(--r-full);transition:width .4s}.quiz-q-num{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--c-muted);font-family:var(--font-mono);margin-bottom:8px}.quiz-q-text{font-size:17px;font-weight:600;color:var(--c-text);margin-bottom:14px;line-height:1.55}.quiz-opts{display:flex;flex-direction:column;gap:8px}.quiz-opt{width:100%;text-align:left;padding:12px 16px;border-radius:var(--r-md);border:1.5px solid var(--c-border);background:var(--c-surface);color:var(--c-text);font-size:13.5px;cursor:pointer;font-family:var(--font-body);transition:all .12s}.quiz-opt:hover{border-color:var(--fn-blue);background:var(--fn-blue-light)}.quiz-fb{margin-top:12px;padding:10px 14px;border-radius:var(--r-md);font-size:13px;line-height:1.6;display:none;border:1px solid var(--fn-blue);background:var(--fn-blue-light);color:var(--c-text)}.quiz-fb.show{display:block}.scenario-card{background:var(--c-surface);border:1px solid var(--c-border);border-left:4px solid var(--fn-amber);border-radius:var(--r-lg);padding:var(--sp-md) var(--sp-lg);flex-shrink:0}.scenario-lbl{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--fn-amber);font-weight:700;margin-bottom:10px;font-family:var(--font-mono)}.scenario-txt{font-size:16px;line-height:1.75;color:var(--c-text)}.scenario-q{margin-top:14px;padding-top:14px;border-top:1px solid var(--c-border);font-size:13.5px;font-weight:600;color:var(--c-text)}.stage-header{display:flex;align-items:center;gap:16px;flex-shrink:0}.stage-icon-circle{width:48px;height:48px;border-radius:50%;flex-shrink:0;background:var(--fn-blue-light);border:1.5px solid var(--fn-blue);display:flex;align-items:center;justify-content:center;font-size:20px}.stage-header-text{flex:1;min-width:0}.stage-header-label{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--fn-blue);font-weight:700;margin-bottom:2px;font-family:var(--font-mono)}.stage-header-title{font-size:1.45rem;font-weight:700;font-family:var(--font-display);color:var(--c-text);line-height:1.2;margin-bottom:4px}.stage-header-desc{font-size:15px;color:var(--c-muted);line-height:1.5}.quiz-opt.selected{border-color:var(--fn-blue);background:var(--fn-blue-light)}.quiz-opt--correct{border-color:var(--fn-green)!important;background:var(--fn-green-light)!important;color:var(--fn-green)!important;font-weight:600}.quiz-opt--wrong{border-color:var(--fn-red)!important;background:var(--fn-red-light)!important;color:var(--fn-red)!important}.quiz-opt--dim{opacity:.45;cursor:default}.quiz-opt:disabled{cursor:default}.quiz-confidence{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}.quiz-confidence-label{font-size:12px;color:var(--c-muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0}.quiz-confidence-btn{padding:5px 13px;border-radius:var(--r-sm);border:1.5px solid var(--c-border);background:var(--c-surface);color:var(--c-text);font-size:12px;cursor:pointer;transition:all .12s}.quiz-confidence-btn.selected{border-color:var(--fn-blue);background:var(--fn-blue-light);color:var(--fn-blue);font-weight:600}.quiz-confidence-btn.locked{opacity:.5;cursor:default}.quiz-feedback-card{margin-top:14px;border-radius:var(--r-md);padding:12px 16px;font-size:13px;line-height:1.6;border-left:4px solid}.quiz-feedback-correct{background:var(--fn-green-light);border-color:var(--fn-green);border:1px solid var(--fn-green);border-left:4px solid var(--fn-green)}.quiz-feedback-incorrect{background:var(--fn-red-light);border-color:var(--fn-red);border:1px solid var(--fn-red);border-left:4px solid var(--fn-red)}.quiz-feedback-verdict{font-size:14px;font-weight:700;margin-bottom:6px}.quiz-feedback-correct .quiz-feedback-verdict{color:var(--fn-green)}.quiz-feedback-incorrect .quiz-feedback-verdict{color:var(--fn-red)}.quiz-feedback-explain{color:var(--c-text);margin-bottom:4px}.quiz-feedback-correct-ans{color:var(--fn-green);font-size:12.5px;margin-top:6px;padding-top:6px;border-top:1px solid rgba(0,0,0,.06)}.quiz-review-card{border-radius:var(--r-md);border:1px solid var(--c-border);overflow:hidden}.quiz-review-card--correct{border-left:3px solid var(--fn-green)}.quiz-review-card--incorrect{border-left:3px solid var(--fn-red)}.quiz-review-toggle{width:100%;display:flex;align-items:center;gap:8px;background:var(--c-surface);border:none;padding:10px 12px;cursor:pointer;font-family:var(--font-body);text-align:left}.quiz-review-toggle:hover{background:var(--c-bg2)}.quiz-review-verdict{font-size:13px;font-weight:700;flex-shrink:0}.quiz-review-verdict--correct{color:var(--fn-green)}.quiz-review-verdict--incorrect{color:var(--fn-red)}.quiz-review-q-preview{font-size:12.5px;color:var(--c-text);flex:1;min-width:0}.quiz-review-chevron{font-size:12px;color:var(--c-muted);flex-shrink:0;margin-left:auto}.quiz-review-body{padding:12px 14px;background:var(--c-bg);border-top:1px solid var(--c-border);display:grid;gap:8px}.quiz-review-full-q{font-size:13px;font-weight:600;color:var(--c-text);line-height:1.55}.quiz-review-ans-row{display:flex;gap:6px;align-items:baseline;font-size:12.5px;flex-wrap:wrap}.quiz-review-ans-label{font-weight:700;color:var(--c-text-2);flex-shrink:0}.quiz-review-ans-correct .quiz-review-ans-text{color:var(--fn-green)}.quiz-review-ans-wrong .quiz-review-ans-text{color:var(--fn-red)}.quiz-review-explain{font-size:12px;color:var(--c-muted);line-height:1.6;padding:8px 10px;border-radius:var(--r-sm)}.quiz-review-explain--wrong{background:var(--fn-red-light)}.quiz-review-explain--correct{background:var(--fn-green-light)}.diag-summary{background:var(--c-bg2);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:18px 20px;margin:0 auto 20px;width:100%}.diag-summary-title{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--c-muted);font-family:var(--font-mono);margin-bottom:12px}.diag-row{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-bottom:1px solid var(--c-border)}.diag-row:last-child{border-bottom:none}.diag-icon{font-size:14px;flex-shrink:0;margin-top:1px}.diag-text{font-size:12.5px;color:var(--c-text);line-height:1.6}.ai-pending{background:var(--fn-amber-light);border:1.5px solid var(--fn-amber);border-radius:var(--r-lg);padding:20px 22px;margin-bottom:20px}.ai-pending-title{font-size:13px;font-weight:700;color:var(--fn-amber);margin-bottom:6px}.ai-pending-body{font-size:12.5px;color:var(--c-muted);line-height:1.6}@keyframes ai-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes ai-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes ai-spin{to{transform:rotate(360deg)}}.ai-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:36px 24px;text-align:center}.ai-loader-ring{width:48px;height:48px;border-radius:50%;border:3px solid var(--fn-blue-light);border-top-color:var(--fn-blue);animation:ai-spin .85s linear infinite}.ai-loader-label{font-size:13px;font-weight:600;color:var(--c-text);animation:ai-pulse 1.8s ease-in-out infinite}.ai-loader-sub{font-size:13px;color:var(--c-muted);line-height:1.5;max-width:300px}.ai-loader-bar{width:200px;height:3px;background:var(--fn-blue-light);border-radius:var(--r-full);overflow:hidden;position:relative}.ai-loader-bar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;width:60%;background:var(--fn-blue);border-radius:var(--r-full);animation:ai-shimmer 1.4s ease-in-out infinite}.ai-card-loader{display:flex;align-items:center;gap:8px;padding:10px 0;color:var(--c-muted);font-size:12px}.ai-card-loader-ring{width:16px;height:16px;border-radius:50%;border:2px solid var(--fn-blue-light);border-top-color:var(--fn-blue);flex-shrink:0;animation:ai-spin .85s linear infinite}.deepen-attempt-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;font-family:var(--font-mono);color:var(--fn-amber);background:var(--fn-amber-light);border:1px solid var(--fn-amber);border-radius:var(--r-full);padding:3px 10px;margin-bottom:12px}.deepen-reset-warning{background:var(--fn-red-light);border:1.5px solid var(--fn-red);border-radius:var(--r-lg);padding:16px 18px;margin-bottom:16px}.deepen-reset-warning-title{font-size:13px;font-weight:700;color:var(--fn-red);margin-bottom:6px}.deepen-reset-warning-body{font-size:12px;color:var(--c-text);line-height:1.6}.quiz-result-center{display:flex;flex-direction:column;gap:16px;max-width:860px;margin:0 auto;width:100%}.quiz-result-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:4px}.deepen-section-label{font-size:12px;font-weight:700;color:var(--c-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.06em}.deepen-form-label{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--c-muted);font-weight:700;font-family:var(--font-mono)}.quiz-score-card{text-align:center;padding:28px 24px;border-radius:var(--r-lg);border:2px solid}.quiz-score-card--pass{background:var(--fn-green-light);border-color:var(--fn-green)}.quiz-score-card--fail{background:var(--fn-red-light);border-color:var(--fn-red)}.quiz-score-num{font-size:56px;font-weight:800;font-family:var(--font-display);line-height:1;margin-bottom:4px}.quiz-score-card--pass .quiz-score-num{color:var(--fn-green)}.quiz-score-card--fail .quiz-score-num{color:var(--fn-red)}.quiz-score-verdict{font-size:18px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}.quiz-score-card--pass .quiz-score-verdict{color:var(--fn-green)}.quiz-score-card--fail .quiz-score-verdict{color:var(--fn-red)}.quiz-score-detail{font-size:12px;color:var(--c-muted);margin-bottom:8px}.quiz-score-msg{font-size:13.5px;color:var(--c-text);line-height:1.5}.ar-verdict-header{text-align:center;padding:30px 26px;border-radius:var(--r-lg);border:2px solid;margin-bottom:14px}.ar-verdict-pass{background:var(--fn-green-light);border-color:var(--fn-green)}.ar-verdict-fail{background:var(--fn-red-light);border-color:var(--fn-red)}.ar-verdict-icon{font-size:28px;font-weight:800;line-height:1;margin-bottom:4px}.ar-verdict-pass .ar-verdict-icon{color:var(--fn-green)}.ar-verdict-fail .ar-verdict-icon{color:var(--fn-red)}.ar-verdict-score{font-size:62px;font-weight:800;font-family:var(--font-display);line-height:1;margin-bottom:5px}.ar-verdict-pass .ar-verdict-score{color:var(--fn-green)}.ar-verdict-fail .ar-verdict-score{color:var(--fn-red)}.ar-verdict-label{font-size:20px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-bottom:7px}.ar-verdict-pass .ar-verdict-label{color:var(--fn-green)}.ar-verdict-fail .ar-verdict-label{color:var(--fn-red)}.ar-verdict-sub{font-size:15px;color:var(--c-muted)}.ar-confidence-band{margin-top:10px;font-size:14px;color:var(--c-text-2)}.ar-confidence-band--pending{color:var(--c-muted)}.ae-btn-retry{background:var(--fn-red)!important;color:#fff!important;border-color:var(--fn-red)!important;font-weight:700!important}.ar-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px}.ar-card{border-radius:var(--r-md);padding:14px 16px;border:1px solid var(--c-border);background:var(--c-surface);font-size:14px;box-shadow:var(--shadow-sm)}.ar-card--correct{border-left:3px solid var(--fn-green)}.ar-card--incorrect{border-left:3px solid var(--fn-red)}.ar-card--pending{border-left:3px solid var(--fn-blue)}.ar-card--instructor{border-left:3px solid var(--fn-amber)}.ar-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.ar-card-num{font-family:var(--font-mono);font-size:12px;color:var(--c-muted);font-weight:700;flex-shrink:0}.ar-card-type{font-size:11px;color:var(--c-muted);font-family:var(--font-mono);background:var(--c-bg);padding:3px 7px;border-radius:var(--r-sm);border:1px solid var(--c-border)}.ar-card-question{font-size:14px;color:var(--c-text);line-height:1.5;flex:1}.ar-card-toggle{border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-muted);border-radius:var(--r-sm);font-size:11px;font-family:var(--font-mono);padding:3px 8px;cursor:pointer;white-space:nowrap}.ar-card-toggle:hover{border-color:var(--fn-blue);color:var(--fn-blue)}.ar-card-verdict{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700}.ar-card-verdict--correct{color:var(--fn-green)}.ar-card-verdict--incorrect{color:var(--fn-red)}.ar-card-confidence{font-weight:500;font-size:11px;color:var(--c-muted);margin-left:4px}.ar-card-detail{font-size:13px;color:var(--c-muted);line-height:1.6;margin-top:6px}.ar-card-detail strong{color:var(--c-text)}.btn-submit{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;background:var(--fn-blue);color:#fff;border:none;border-radius:var(--r-md);font-size:13px;font-weight:700;cursor:pointer;font-family:var(--font-body);letter-spacing:.04em;transition:all .15s}.btn-submit:hover:not(:disabled){background:var(--fn-navy)}.btn-submit:disabled{background:var(--c-muted);cursor:not-allowed}.resp-form{display:flex;flex-direction:column;gap:10px}.panel-wrapper .resp-form{flex:1;min-height:0}.panel-wrapper .resp-ta{flex:1 0 0;min-height:160px}.resp-ta{width:100%;min-height:120px;background:var(--c-bg);border:1.5px solid var(--c-border);border-radius:var(--r-md);padding:16px 18px;font-family:var(--font-body);font-size:16px;color:var(--c-text);resize:vertical;line-height:1.65;outline:none;transition:border-color .15s,box-shadow .15s;box-sizing:border-box}.resp-ta:focus{border-color:var(--fn-blue);box-shadow:0 0 0 3px var(--fn-blue-light)}.resp-ta::placeholder{color:var(--c-muted);opacity:.5}.resp-meta{display:flex;justify-content:space-between;font-size:12px;color:var(--c-muted);font-family:var(--font-mono)}.char-ok{color:var(--fn-green)}.char-progress-wrap{height:3px;background:var(--c-border);border-radius:var(--r-full);overflow:hidden}.char-progress-fill{height:100%;border-radius:var(--r-full);background:var(--fn-blue);transition:width .15s ease,background .2s;width:0%}.char-progress-fill.complete{background:var(--fn-green)}.deepen-wrapper{max-width:100%;flex:1;min-height:0}.deepen-panel-body{overflow-y:auto;padding-right:var(--sp-xs)}.sev-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--r-sm);font-size:11px;font-weight:700;text-transform:uppercase;font-family:var(--font-mono);letter-spacing:.04em;border:1px solid}.sev-critical{background:var(--sev-critical-bg);color:var(--sev-critical);border-color:var(--sev-critical)}.sev-high{background:var(--sev-high-bg);color:var(--sev-high);border-color:var(--sev-high)}.sev-medium{background:var(--sev-medium-bg);color:var(--sev-medium);border-color:var(--sev-medium)}.sev-low{background:var(--sev-low-bg);color:var(--sev-low);border-color:var(--sev-low)}.sev-info{background:var(--sev-info-bg);color:var(--sev-info);border-color:var(--sev-info)}.u-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.u-text-center{text-align:center}.u-text-muted{color:var(--c-muted)}.u-font-mono{font-family:var(--font-mono)}.u-mt-sm{margin-top:var(--sp-sm)}.u-mt-md{margin-top:var(--sp-md)}.u-mt-lg{margin-top:var(--sp-lg)}.label-xs{font:600 11px/1 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--c-muted)}.label-sm{font:700 11px/1 var(--font-mono);color:var(--c-muted)}.hint-text{font:400 12px/1.4 var(--font-mono);color:var(--c-muted)}.meta-row{display:flex;justify-content:space-between;font:400 12px/1 var(--font-mono);color:var(--c-muted)}.retrieve-lock-badge{display:flex;align-items:center;gap:5px;flex-shrink:0;background:var(--fn-amber-light);border:1px solid var(--fn-amber);border-radius:var(--r-md);padding:4px 10px;font:600 11px/1 var(--font-mono);color:var(--fn-amber)}.diag-summary{max-width:min(720px,100%)}.panel-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-sm);padding:var(--sp-xl);color:var(--c-muted);text-align:center;min-height:200px;font-size:14px}.inst-dashboard{width:100%;max-width:1300px;margin:0 auto;padding:var(--sp-lg) var(--sp-lg) var(--sp-xl);display:flex;flex-direction:column;gap:var(--sp-md)}.inst-dashboard-header{display:flex;flex-direction:column;gap:var(--sp-sm)}.inst-dashboard-title-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-md);flex-wrap:wrap}.inst-dashboard-title{font-size:1.55rem;font-weight:700;color:var(--c-text);letter-spacing:-.02em;margin:0}.inst-cohort-selector-row{display:flex;align-items:center;gap:var(--sp-sm);flex-wrap:wrap;padding-top:var(--sp-xs)}.inst-cohort-label{font-size:12px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;color:var(--c-muted);white-space:nowrap}.inst-cohort-select{padding:6px 28px 6px 10px;border:1.5px solid var(--c-border);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-text);font-size:13.5px;font-family:var(--font-body);cursor:pointer;min-width:220px;max-width:400px;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236B7280' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.inst-cohort-select:focus{border-color:var(--fn-blue);box-shadow:0 0 0 3px var(--fn-blue-light)}.inst-cohort-loading,.inst-cohort-error,.inst-cohort-empty,.inst-table-placeholder,.inst-table-empty{font-size:13px;color:var(--c-muted);padding:var(--sp-md)}.inst-cohort-error,.inst-table-error{font-size:13px;color:var(--fn-red);background:var(--fn-red-light);border:1px solid var(--fn-red);border-radius:var(--r-md);padding:var(--sp-sm) var(--sp-md)}.inst-tab-bar{display:flex;gap:4px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);padding:5px}.inst-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 8px;font-size:12px;font-weight:500;font-family:var(--font-body);color:var(--c-muted);background:transparent;border:none;border-radius:var(--r-lg);cursor:pointer;transition:all var(--trans);white-space:nowrap}.inst-tab:hover{color:var(--fn-accent);background:var(--fn-accent-dim)}.inst-tab.active{font-weight:700;color:var(--fn-accent);background:var(--fn-accent-dim)}.inst-tab.active.reviews-overdue{color:var(--fn-red);background:#ef444426}.inst-tab-panel{width:100%}.inst-tab-panel>*{width:100%}.inst-table-wrap{width:100%;overflow-x:auto;border:1px solid var(--c-border);border-radius:var(--r-lg)}.inst-table{width:100%;border-collapse:collapse;font-size:13px;background:var(--c-surface)}.inst-table thead{background:var(--c-bg2);border-bottom:2px solid var(--c-border);position:sticky;top:0;z-index:2}.inst-table th{padding:10px 14px;text-align:left;font-size:11px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;color:var(--c-muted);white-space:nowrap}.inst-table td{padding:9px 14px;border-bottom:1px solid var(--c-border);vertical-align:middle;color:var(--c-text)}.inst-table tbody tr:last-child td{border-bottom:none}.inst-table tbody tr:hover td{background:#00b8d40a}.inst-row-first td{border-top:1px solid var(--c-border-2)!important}.inst-table tbody tr:first-child.inst-row-first td{border-top:none!important}.inst-learner-name{font-weight:600;color:var(--c-text)}.inst-learner-email{color:var(--c-muted);font-size:12px;font-family:var(--font-mono)}.inst-topic-id{font-family:var(--font-mono);font-size:11px;color:var(--c-muted);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inst-module-code{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--fn-accent)}.inst-no-progress{color:var(--c-muted);font-size:12px;font-style:italic}.inst-stage-col{width:52px;text-align:center!important}.inst-stage-cell{text-align:center;vertical-align:middle}.inst-stage-sq{display:inline-block;width:10px;height:10px;border-radius:2px;vertical-align:middle}.inst-stage-cell.done .inst-stage-sq{background:var(--fn-accent)}.inst-stage-cell.pending .inst-stage-sq{background:#ffffff26}.inst-progress-cell{display:flex;align-items:center;gap:8px;min-width:130px;padding:0 4px}.inst-progress-bar-track{flex:1;height:5px;background:#ffffff14;border-radius:var(--r-full);overflow:hidden}.inst-progress-bar-fill{height:100%;border-radius:var(--r-full);transition:width .4s ease}.inst-progress-pct{font-family:var(--font-mono);font-size:12px;font-weight:700;min-width:32px;text-align:right}.inst-health-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:var(--r-full);font-size:11px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.inst-health-dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.inst-health-badge.low{background:var(--fn-green-dim);color:var(--fn-green)}.inst-health-badge.medium{background:var(--fn-amber-dim);color:var(--fn-amber)}.inst-health-badge.high{background:var(--fn-red-dim);color:var(--fn-red)}.inst-health-cell{display:flex;flex-direction:column;align-items:center;gap:6px}.inst-score-cell{font-family:var(--font-mono);font-weight:700;font-size:14px;color:var(--c-text);text-align:right}.inst-score-cell.no-score{color:var(--c-muted);font-weight:400;text-align:center}.inst-bloom-col{width:96px}.inst-bloom-cell{font-size:12px;font-family:var(--font-mono);color:var(--fn-blue);text-align:center}.csv-export-group{display:flex;align-items:center;gap:var(--sp-sm);flex-wrap:wrap}.btn-export{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;background:var(--fn-blue);color:#fff;border:none;border-radius:var(--r-md);font-size:12px;font-weight:700;font-family:var(--font-body);letter-spacing:.04em;cursor:pointer;transition:background var(--trans-fast);white-space:nowrap}.btn-export:hover:not(:disabled){background:var(--fn-navy)}.btn-export:disabled{background:var(--c-muted);cursor:not-allowed;opacity:.7}.btn-export-platform{background:var(--c-surface);color:var(--fn-blue);border:1.5px solid var(--fn-blue)}.btn-export-platform:hover:not(:disabled){background:var(--fn-blue-light)}.csv-export-error{font-size:12px;color:var(--fn-red);font-family:var(--font-mono)}.inst-loading-center{display:flex;align-items:center;justify-content:center;padding:var(--sp-xl) var(--sp-lg)}.inst-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-md);padding:var(--sp-xl) var(--sp-lg);text-align:center}.inst-empty-icon{font-size:36px;opacity:.55;line-height:1}.inst-empty-heading{font-size:14px;font-weight:700;color:var(--c-text);margin:0}.inst-empty-body{font-size:13px;color:var(--c-muted);margin:0;max-width:360px;line-height:1.55}.inst-cohort-meta{display:flex;align-items:center;gap:var(--sp-md);flex-wrap:wrap;padding:var(--sp-sm) var(--sp-md);background:var(--c-bg2);border:1px solid var(--c-border);border-radius:var(--r-md);font-size:12px}.inst-meta-chip{display:inline-flex;align-items:center;gap:var(--sp-xs);font-family:var(--font-mono);font-size:11px;color:var(--c-muted)}.inst-meta-chip strong{color:var(--c-text);font-weight:700}.inst-meta-divider{width:1px;height:14px;background:var(--c-border);flex-shrink:0}.inst-status-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:var(--r-full);font-size:11px;font-weight:700;font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase}.inst-status-pill.active{background:var(--fn-green-light);color:var(--fn-green)}.inst-status-pill.inactive{background:var(--c-bg2);color:var(--c-muted)}.inst-cohort-aggregate{display:flex;align-items:stretch;border-bottom:1px solid var(--c-border)}.inst-cohort-aggregate>div{flex:1;display:flex;flex-direction:column;justify-content:center;padding:14px 20px}.inst-cohort-aggregate>.inst-agg-cell{padding:18px 20px}.inst-cohort-aggregate .inst-meta-divider{height:auto;align-self:stretch}.inst-cohort-aggregate--warn .inst-agg-value{color:var(--fn-red)}.inst-agg-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 20px;gap:5px;border-right:1px solid var(--c-border);text-align:center}.inst-agg-cell:last-child{border-right:none}.inst-agg-value{font-size:28px;font-weight:700;font-family:var(--font-mono);line-height:1}.inst-agg-label{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--c-muted)}.inst-aggregate-stat{font-size:22px;font-weight:700;font-family:var(--font-mono);color:var(--c-text);line-height:1}.inst-aggregate-sub{font-size:11px;color:var(--c-muted);margin-top:2px}.inst-aggregate-label{font-size:12px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--c-muted);margin-bottom:var(--sp-xs)}.inst-aggregate-bar-wrap{flex:1;min-width:160px}.inst-bloom-badge{display:inline-flex;flex-direction:column;align-items:center;gap:1px;padding:3px 8px;border-radius:var(--r-sm);font-family:var(--font-mono);font-size:11px;font-weight:700;line-height:1.2;white-space:nowrap}.inst-bloom-badge.l1-l2{background:var(--sev-info-bg);color:var(--sev-info)}.inst-bloom-badge.l3-l4{background:var(--sev-medium-bg);color:var(--sev-medium)}.inst-bloom-badge.l5-l6{background:var(--sev-low-bg);color:var(--sev-low)}.inst-bloom-source{font-size:9px;font-weight:600;opacity:.75;letter-spacing:.05em;text-transform:uppercase}.inst-score-display{display:inline-flex;align-items:baseline;gap:2px;font-family:var(--font-mono)}.inst-score-value{font-size:14px;font-weight:700;color:var(--c-text)}.inst-score-denom{font-size:11px;color:var(--c-muted);font-weight:400}.inst-lesson-status{display:inline-block;padding:2px 7px;border-radius:var(--r-full);font-size:10px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em}.inst-lesson-status.passed,.inst-lesson-status.completed{background:var(--fn-green-light);color:var(--fn-green)}.inst-lesson-status.failed,.inst-lesson-status.incomplete{background:var(--fn-amber-light);color:var(--fn-amber)}.inst-lesson-status.not-attempted{background:var(--c-bg2);color:var(--c-muted)}.btn-export-spinner{display:inline-block;width:12px;height:12px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:btn-spin .6s linear infinite;flex-shrink:0;vertical-align:middle;margin-right:var(--sp-xs);opacity:.7}.btn-export-platform .btn-export-spinner{border-color:currentColor;border-top-color:transparent}.btn-export:focus-visible{outline:3px solid var(--fn-blue);outline-offset:2px}.inst-tab:focus-visible{outline:3px solid var(--fn-accent);outline-offset:-2px;border-radius:var(--r-lg)}.inst-cohort-select:focus-visible{border-color:var(--fn-blue);box-shadow:0 0 0 3px var(--fn-blue-light)}.inst-cohort-summary{display:flex;align-items:center;gap:var(--sp-md);flex-wrap:wrap;padding:var(--sp-sm) var(--sp-md);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);margin-bottom:var(--sp-sm)}.inst-summary-stat{display:flex;flex-direction:column;align-items:flex-start;gap:1px}.inst-summary-value{font-family:var(--font-mono);font-size:18px;font-weight:700;color:var(--c-text);line-height:1}.inst-summary-label{font-size:11px;color:var(--c-muted);white-space:nowrap}.inst-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:var(--r-full);background:var(--fn-red);color:#fff;font-size:10px;font-family:var(--font-mono);font-weight:700;line-height:1}.inst-tab-badge--amber{background:#f59e0b40;color:var(--fn-amber)}.inst-remove-btn{background:none;border:none;cursor:pointer;color:var(--fn-red);font-size:11px;font-weight:600;padding:2px 6px;font-family:var(--font-body);border-radius:var(--r-sm);white-space:nowrap;transition:background var(--trans-fast)}.inst-remove-btn:hover{background:var(--fn-red-light)}.inst-remove-btn:disabled{opacity:.5;cursor:not-allowed}.inst-sr-announce{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.inst-quiz-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--r-full);font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.04em;white-space:nowrap}.inst-quiz-badge.mastery{background:var(--fn-green-light);color:var(--fn-green)}.inst-quiz-badge.competent{background:var(--fn-blue-light);color:var(--fn-blue)}.inst-quiz-badge.uncertain,.inst-quiz-badge.tentative{background:var(--fn-amber-light);color:var(--fn-amber)}.inst-quiz-badge.misinformed,.inst-quiz-badge.guessing{background:var(--fn-red-light);color:var(--fn-red)}.inst-pending-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--r-full);font-family:var(--font-mono);font-size:12px;font-weight:700;background:var(--fn-amber-light);color:var(--fn-amber);border:1px solid var(--fn-amber)}.inst-pending-badge--urgent{background:var(--fn-red-light);color:var(--fn-red);border-color:var(--fn-red)}.inst-reviews-context-banner{display:flex;align-items:flex-start;gap:var(--sp-sm);padding:var(--sp-sm) var(--sp-md);background:var(--fn-blue-light);border:1px solid var(--fn-blue);border-radius:var(--r-md);font-size:13px;color:var(--c-text-2);line-height:1.5}.inst-reviews-filter-bar{display:flex;align-items:center;gap:var(--sp-md);flex-wrap:wrap;padding:var(--sp-sm) var(--sp-md);background:var(--c-bg2);border:1px solid var(--c-border);border-radius:var(--r-md)}.inst-filter-label{font-size:11px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.07em;color:var(--c-muted);white-space:nowrap}.inst-filter-pill{padding:4px 12px;border-radius:var(--r-full);border:1px solid var(--c-border);background:var(--c-surface);font-size:12px;font-weight:500;color:var(--c-muted);cursor:pointer;transition:border-color var(--trans-fast),background var(--trans-fast),color var(--trans-fast)}.inst-filter-pill:hover{border-color:var(--fn-blue);color:var(--fn-blue)}.inst-filter-pill.active{border-color:var(--fn-blue);background:var(--fn-blue-light);color:var(--fn-blue);font-weight:700}.inst-filter-pill:focus-visible{outline:2px solid var(--fn-blue);outline-offset:2px}.inst-filter-select{padding:4px var(--sp-md);border-radius:var(--r-md);border:1px solid var(--c-border);background:var(--c-surface);font-family:var(--font-body);font-size:13px;color:var(--c-text);cursor:pointer}.inst-filter-select:focus{outline:2px solid var(--fn-blue);outline-offset:2px}.inst-review-list{display:flex;flex-direction:column;gap:var(--sp-md)}.inst-review-card{background:var(--c-surface);border:1px solid var(--c-border);border-left:4px solid var(--c-border);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.inst-review-card--deepen{border-left-color:var(--fn-amber)}.inst-review-card--assessment{border-left-color:var(--fn-blue)}.inst-review-card-header{padding:var(--sp-sm) var(--sp-md) var(--sp-sm) var(--sp-lg);border-bottom:1px solid var(--c-border);display:flex;flex-direction:column;gap:var(--sp-xs)}.inst-review-card-header-row{display:flex;align-items:center;gap:var(--sp-sm);flex-wrap:wrap}.inst-review-card-header-meta{display:flex;align-items:center;gap:var(--sp-xs);flex-wrap:wrap}.inst-review-type-badge{display:inline-flex;align-items:center;padding:2px 10px;border-radius:var(--r-full);font-family:var(--font-mono);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;flex-shrink:0}.inst-review-type-badge.deepen{background:var(--fn-amber-light);color:var(--fn-amber)}.inst-review-type-badge.assessment{background:var(--fn-blue-light);color:var(--fn-blue)}.inst-review-cohort-badge{font-family:var(--font-mono);font-size:11px;font-weight:600;padding:1px 8px;border-radius:var(--r-full);background:var(--fn-blue-light);color:var(--fn-blue);border:1px solid var(--fn-blue);white-space:nowrap}.inst-review-context-id{font-family:var(--font-mono);font-size:11px;font-weight:600;color:var(--c-muted);background:var(--c-bg2);padding:1px 8px;border-radius:var(--r-full);white-space:nowrap;cursor:help}.inst-review-age{display:flex;align-items:center;gap:5px;margin-left:auto}.inst-review-age-dot{width:7px;height:7px;border-radius:50%;background:var(--c-border);flex-shrink:0}.inst-review-age-dot.aging{background:var(--fn-amber)}.inst-review-age-dot.urgent{background:var(--fn-red)}.inst-review-age-label{font-family:var(--font-mono);font-size:11px;color:var(--c-muted);white-space:nowrap;cursor:help}.inst-learner-name{font-size:13px;font-weight:600;color:var(--c-text)}.inst-learner-email{font-size:12px;color:var(--c-muted);font-family:var(--font-mono)}.inst-review-body{padding:var(--sp-md) var(--sp-lg);display:flex;flex-direction:column;gap:var(--sp-sm)}.inst-review-response{font-size:13px;color:var(--c-text);line-height:1.65;background:var(--c-bg);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-md);max-height:120px;overflow:hidden;position:relative;transition:max-height var(--trans-med);font-family:var(--font-body);white-space:pre-wrap}.inst-review-response.expanded{max-height:none}.inst-review-expand-btn{align-self:flex-start;background:none;border:1px solid var(--fn-blue);color:var(--fn-blue);border-radius:var(--r-md);padding:4px 14px;font-size:12px;font-weight:600;font-family:var(--font-mono);cursor:pointer;transition:background var(--trans-fast),color var(--trans-fast)}.inst-review-expand-btn:hover{background:var(--fn-blue);color:#fff}.inst-review-expand-btn:focus-visible{outline:2px solid var(--fn-blue);outline-offset:2px}.inst-review-actions{padding:var(--sp-sm) var(--sp-lg) var(--sp-md);border-top:1px solid var(--c-border);background:var(--c-bg)}.inst-review-form{display:flex;flex-direction:column;gap:0}.inst-review-form-progress{height:3px;background:var(--c-border);border-radius:0;overflow:hidden}.inst-review-form-progress-bar{height:100%;background:var(--fn-blue);transition:width .3s ease}.inst-review-form-progress-label{font-size:11px;font-family:var(--font-mono);color:var(--c-muted);padding:var(--sp-xs) var(--sp-lg);background:var(--c-bg);border-bottom:1px solid var(--c-border);margin:0}.inst-review-form-error{margin:var(--sp-md) var(--sp-lg) 0;padding:var(--sp-sm) var(--sp-md);background:var(--fn-red-light);border:1px solid var(--fn-red);border-radius:var(--r-md);color:var(--fn-red);font-size:13px}.inst-review-form-section{padding:var(--sp-md) var(--sp-lg);border-bottom:1px solid var(--c-border);display:flex;flex-direction:column;gap:var(--sp-md);background:var(--c-bg)}.inst-review-form-section:last-of-type{border-bottom:none}.inst-review-section-heading{font-size:12px;font-weight:700;color:var(--c-muted);margin:0;text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-mono)}.inst-review-section-note{font-size:11px;font-weight:400;color:var(--c-muted);text-transform:none;letter-spacing:0;font-family:var(--font-body)}.inst-review-field{display:flex;flex-direction:column;gap:var(--sp-xs)}.inst-review-label{font-size:11px;font-weight:700;color:var(--c-muted);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em}.inst-review-textarea{width:100%;min-height:80px;background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:var(--r-md);padding:var(--sp-sm) var(--sp-md);font-family:var(--font-body);font-size:14px;color:var(--c-text);resize:vertical;transition:border-color var(--trans-fast);box-sizing:border-box}.inst-review-textarea:focus{outline:none;border-color:var(--fn-blue);box-shadow:0 0 0 3px var(--fn-blue-light)}.inst-review-select{background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:var(--r-md);padding:8px var(--sp-md);font-family:var(--font-mono);font-size:13px;color:var(--c-text);transition:border-color var(--trans-fast);max-width:260px}.inst-review-select:focus{outline:2px solid var(--fn-blue);outline-offset:2px;border-color:var(--fn-blue)}.inst-review-form-actions{display:flex;gap:var(--sp-sm);padding:var(--sp-md) var(--sp-lg);border-top:1px solid var(--c-border);background:var(--c-bg2)}.inst-gap-learner{margin-bottom:var(--sp-md)}.inst-gap-learner-header{display:flex;align-items:center;gap:var(--sp-sm);margin-bottom:var(--sp-sm)}.inst-gap-learner-name{font-size:14px;font-weight:600;color:var(--c-text)}.inst-gap-count-badge{font-size:11px;font-family:var(--font-mono);font-weight:700;padding:2px 8px;border-radius:var(--r-full);background:var(--fn-red-light);color:var(--fn-red)}.inst-gap-item{display:flex;flex-direction:column;gap:0;background:var(--c-surface);border:1px solid var(--c-border);border-left:3px solid var(--fn-amber);border-radius:0 var(--r-md) var(--r-md) 0;margin-bottom:var(--sp-sm);overflow:hidden}.inst-gap-card-header{display:flex;align-items:center;gap:var(--sp-sm);padding:8px var(--sp-md);border-bottom:1px solid var(--c-border);background:var(--c-bg)}.inst-gap-meta{font-size:11px;color:var(--c-muted);font-family:var(--font-mono);flex:1}.inst-gap-date{font-size:11px;color:var(--c-muted);font-family:var(--font-mono);white-space:nowrap}.inst-gap-score-badge{font-size:11px;font-family:var(--font-mono);font-weight:700;padding:2px 8px;border-radius:var(--r-full);white-space:nowrap;background:var(--c-surface-raised);color:var(--c-muted)}.inst-gap-score-badge--red{background:var(--fn-red-light);color:var(--fn-red)}.inst-gap-score-badge--amber{background:var(--fn-amber-light);color:var(--fn-amber)}.inst-gap-demonstrated{display:flex;gap:var(--sp-sm);align-items:flex-start;padding:8px var(--sp-md);background:#00b8d40f;border-bottom:1px solid rgba(0,184,212,.15);font-size:12px;color:var(--c-text);line-height:1.5}.inst-gap-demonstrated-label{font-size:10px;font-weight:700;font-family:var(--font-mono);color:var(--fn-accent);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding-top:2px}.inst-gap-description{padding:8px var(--sp-md);display:flex;gap:var(--sp-sm);align-items:flex-start}.inst-gap-description-label{font-size:10px;font-weight:700;font-family:var(--font-mono);color:var(--fn-amber);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;padding-top:2px}.inst-gap-desc{flex:1;font-size:13px;color:var(--c-text);line-height:1.5;font-weight:500}.inst-gap-card-footer{display:flex;align-items:center;justify-content:flex-end;padding:6px var(--sp-md);border-top:1px solid var(--c-border);background:var(--c-bg)}.inst-gap-resolve-btn{background:none;border:1px solid var(--fn-green);color:var(--fn-green);border-radius:var(--r-sm);padding:3px 10px;font-size:11px;font-weight:700;font-family:var(--font-mono);cursor:pointer;white-space:nowrap;transition:all var(--trans-fast)}.inst-gap-resolve-btn:hover{background:var(--fn-green);color:#fff}.inst-gap-resolve-btn:disabled{opacity:.5;cursor:not-allowed}.inst-pending-review-item{background:var(--c-surface-raised);border:1px solid var(--fn-amber);border-radius:var(--r-sm);margin-bottom:var(--sp-sm);overflow:hidden}.inst-pending-review-header{display:flex;align-items:center;gap:var(--sp-sm);padding:8px var(--sp-md);background:#7b4f000a;border-bottom:1px solid rgba(123,79,0,.15)}.inst-pending-review-body{padding:var(--sp-sm) var(--sp-md);display:flex;flex-direction:column;gap:var(--sp-sm)}.inst-pending-section-label{font-size:10px;font-weight:700;font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;color:var(--c-muted);margin-bottom:3px}.inst-pending-response{font-family:var(--font-mono);font-size:12px;background:var(--c-surface);border-radius:var(--r-sm);padding:8px 10px;line-height:1.5;color:var(--c-text);max-height:100px;overflow-y:auto;border:1px solid var(--c-border)}.inst-pending-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-sm);padding:6px var(--sp-md);border-top:1px solid var(--c-border)}.inst-pending-dismiss-btn{background:none;border:1px solid var(--c-border);color:var(--c-muted);border-radius:var(--r-sm);padding:3px 10px;font-size:11px;font-weight:600;font-family:var(--font-mono);cursor:pointer;transition:all var(--trans-fast)}.inst-pending-dismiss-btn:hover:not(:disabled){border-color:var(--c-text);color:var(--c-text)}.inst-pending-dismiss-btn:disabled{opacity:.5;cursor:not-allowed}.inst-pending-log-btn{background:var(--fn-amber);border:1px solid var(--fn-amber);color:#fff;border-radius:var(--r-sm);padding:3px 12px;font-size:11px;font-weight:700;font-family:var(--font-mono);cursor:pointer;transition:all var(--trans-fast)}.inst-pending-log-btn:hover:not(:disabled){opacity:.85}.inst-pending-log-btn:disabled{opacity:.35;cursor:not-allowed}.retrieve-grade-card{border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden;background:var(--c-surface)}.retrieve-grade-card--passed{border-left:4px solid var(--fn-green)}.retrieve-grade-card--failed{border-left:4px solid var(--fn-amber)}.retrieve-grade-card--critical{border-left:4px solid var(--fn-red)}.retrieve-grade-card--pending{border-left:4px solid var(--c-border);opacity:.7}.retrieve-grade-card-header{display:flex;align-items:center;justify-content:space-between;padding:8px var(--sp-md);background:var(--c-bg);border-bottom:1px solid var(--c-border)}.retrieve-grade-card-qnum{font-size:11px;font-family:var(--font-mono);color:var(--c-muted)}.retrieve-grade-badge{font-family:var(--font-mono);font-size:12px;font-weight:700;padding:3px 10px;border-radius:var(--r-full);background:var(--c-surface-raised);color:var(--c-muted)}.retrieve-grade-badge--passed{background:var(--fn-green-light);color:var(--fn-green)}.retrieve-grade-badge--failed{background:var(--fn-amber-light);color:var(--fn-amber)}.retrieve-grade-badge--critical{background:var(--fn-red-light);color:var(--fn-red)}.retrieve-grade-demonstrated{padding:8px var(--sp-md);background:#00b8d40d;border-bottom:1px solid rgba(0,184,212,.12)}.retrieve-grade-gap{padding:8px var(--sp-md)}.retrieve-grade-section-label{display:block;font-size:10px;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--c-muted);margin-bottom:3px}.retrieve-grade-demonstrated .retrieve-grade-section-label{color:var(--fn-accent)}.retrieve-grade-gap .retrieve-grade-section-label{color:var(--fn-amber)}.retrieve-grade-card-body{font-size:13px;color:var(--c-text);line-height:1.55;margin:0}.inst-score-input-wrap{display:flex;align-items:center;gap:var(--sp-sm)}.inst-score-input{width:64px;font-family:var(--font-mono);font-size:14px;font-weight:700;text-align:center;padding:4px 8px;border-radius:var(--r-sm);border:1px solid var(--c-border);background:var(--c-surface);color:var(--c-text)}.inst-score-input:focus{outline:2px solid var(--fn-blue);outline-offset:1px}.inst-spaced-learner{margin-bottom:var(--sp-md)}.inst-spaced-learner-header{display:flex;align-items:center;gap:var(--sp-md);padding:var(--sp-sm) 0;border-bottom:1px solid var(--c-border);margin-bottom:var(--sp-sm)}.inst-spaced-overdue-badge{font-size:11px;font-family:var(--font-mono);font-weight:700;padding:2px 8px;border-radius:var(--r-full);background:var(--fn-red-light);color:var(--fn-red)}.inst-spaced-reviews-row{display:flex;flex-wrap:wrap;gap:var(--sp-xs)}.inst-spaced-review-item{display:flex;flex-direction:column;align-items:center;gap:2px}.inst-spaced-pill{display:inline-flex;align-items:center;gap:3px;padding:3px 10px;border-radius:var(--r-full);font-family:var(--font-mono);font-size:11px;font-weight:700;white-space:nowrap}.inst-spaced-pill.scheduled{background:var(--fn-blue-light);color:var(--fn-blue)}.inst-spaced-pill.completed{background:var(--fn-green-light);color:var(--fn-green)}.inst-spaced-pill.skipped{background:var(--c-bg2);color:var(--c-muted)}.inst-spaced-pill.overdue{background:var(--fn-red-light);color:var(--fn-red)}.inst-spaced-date{font-size:10px;color:var(--c-muted);font-family:var(--font-mono)}.nav-pending-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-full);background:var(--fn-red);color:#fff;font-size:10px;font-weight:700;font-family:var(--font-mono);margin-left:auto;flex-shrink:0}.inst-verdict-btn{padding:6px 16px;border:1.5px solid var(--c-border);border-radius:var(--r-md);background:var(--c-bg);color:var(--c-text);font-size:13px;font-weight:500;cursor:pointer;transition:border-color .15s,background .15s}.inst-verdict-btn:hover{border-color:var(--fn-blue)}.inst-verdict-btn.selected{border-color:var(--fn-green);background:var(--fn-green-light);color:var(--fn-green)}.inst-verdict-btn.selected.incorrect{border-color:var(--fn-red);background:var(--fn-red-light);color:var(--fn-red)}.btn-primary{padding:8px 20px;background:var(--fn-blue);color:#fff;border:none;border-radius:var(--r-md);font-size:13px;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:background .15s}.btn-primary:hover:not(:disabled){background:var(--fn-navy)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-primary:focus-visible{outline:2px solid var(--fn-blue);outline-offset:2px}.btn-secondary{padding:8px 16px;background:var(--c-bg2);color:var(--c-text);border:1.5px solid var(--c-border);border-radius:var(--r-md);font-size:13px;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:border-color .15s}.btn-secondary:hover:not(:disabled){border-color:var(--fn-blue)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary:focus-visible{outline:2px solid var(--fn-blue);outline-offset:2px}.inst-audit-list{display:flex;flex-direction:column;gap:2px}.inst-audit-row{display:flex;align-items:center;gap:var(--sp-sm);padding:8px var(--sp-md);background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-md);font-size:13px}.inst-audit-verdict{font-family:var(--font-mono);font-weight:700;font-size:13px;width:18px;flex-shrink:0}.inst-audit-verdict.pass{color:var(--fn-green)}.inst-audit-verdict.needs{color:var(--fn-amber)}.inst-audit-learner{font-weight:600;color:var(--c-text);min-width:120px}.inst-audit-reviewer{color:var(--c-muted);font-size:12px;margin-left:auto}.inst-audit-time{font-family:var(--font-mono);font-size:11px;color:var(--c-muted);white-space:nowrap;flex-shrink:0}.inst-portal-label{font-size:10px;font-weight:700;color:var(--fn-accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}.inst-panel-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);overflow:hidden}.inst-cohort-card{background:var(--c-surface);border:1px solid var(--c-border-2);border-radius:var(--r-xl);padding:18px 22px}.inst-cohort-card-inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.inst-cohort-card-selector{flex:1 1 280px;display:flex;align-items:center;gap:10px;min-width:0}.inst-cohort-card-icon{width:40px;height:40px;border-radius:var(--r-lg);background:var(--fn-accent-dim);color:var(--fn-accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.inst-cohort-select-label{font-size:10px;font-weight:700;color:var(--c-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:3px}.inst-cohort-select-transparent{font-size:15px;font-weight:700;color:var(--c-text);background:transparent;border:none;outline:none;width:100%;cursor:pointer;font-family:var(--font-body);padding:0}.inst-cohort-select-transparent option{background:var(--c-surface)}.inst-cohort-meta-chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.inst-meta-chip-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--r-full);font-size:11px;font-weight:600;background:#ffffff0f;color:var(--c-text-2);font-family:var(--font-mono)}.inst-meta-chip-pill strong{color:var(--c-text)}.inst-overdue-banner{background:#ef444414;border:1px solid rgba(239,68,68,.35);border-left:4px solid var(--fn-red);border-radius:var(--r-lg);padding:12px 18px;display:flex;align-items:center;gap:12px}.inst-overdue-banner-icon{width:36px;height:36px;border-radius:50%;background:#ef444426;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--fn-red)}.inst-overdue-banner-title{font-size:13px;font-weight:700;color:var(--fn-red);margin-bottom:2px}.inst-overdue-banner-sub{font-size:12px;color:var(--c-text-2)}.inst-overdue-banner-btn{padding:7px 14px;font-size:12px;font-weight:700;background:var(--fn-red);border:none;border-radius:var(--r-md);color:#fff;cursor:pointer;white-space:nowrap;font-family:var(--font-body);flex-shrink:0}.inst-stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.inst-stat-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);padding:16px;text-align:center}.inst-stat-value{font-size:28px;font-weight:700;font-family:var(--font-mono);line-height:1;letter-spacing:-.02em}.inst-stat-label{font-size:12px;font-weight:600;color:var(--c-text);margin-top:5px}.inst-stat-sub{font-size:10px;color:var(--c-muted);margin-top:2px;font-family:var(--font-mono)}.inst-reviews-master{display:grid;grid-template-columns:280px 1fr;gap:18px;align-items:start}.inst-reviews-list-panel{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);overflow:hidden;position:sticky;top:calc(var(--header-h) + 24px);max-height:calc(100vh - var(--header-h) - 48px);overflow-y:auto}.inst-reviews-list-header{padding:11px 16px;border-bottom:1px solid var(--c-border);font-size:10px;font-weight:700;color:var(--c-muted);text-transform:uppercase;letter-spacing:.08em;position:sticky;top:0;background:var(--c-surface);z-index:1}.inst-review-list-item{padding:12px 16px;border-bottom:1px solid var(--c-border);cursor:pointer;border-left:3px solid transparent;transition:all var(--trans)}.inst-review-list-item:last-child{border-bottom:none}.inst-review-list-item:hover{background:#00b8d40a}.inst-review-list-item.active{background:#00b8d41a;border-left-color:var(--fn-accent)}.inst-review-list-item.active.urgent-item{border-left-color:var(--fn-red)}.inst-review-list-tags{display:flex;align-items:center;gap:6px;margin-bottom:4px;flex-wrap:wrap}.inst-review-list-learner{font-size:13px;font-weight:600;color:var(--c-text);margin-bottom:2px}.inst-review-list-meta{font-size:11px;color:var(--c-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:3px;font-family:var(--font-mono)}.inst-review-list-age{font-size:10px;color:var(--c-muted);font-family:var(--font-mono);display:flex;align-items:center;gap:4px}.inst-review-list-age.is-urgent{color:var(--fn-red)}.inst-urgent-dot{width:5px;height:5px;border-radius:50%;background:var(--fn-red);display:inline-block;flex-shrink:0}.inst-urgent-badge{display:inline-flex;align-items:center;padding:1px 6px;border-radius:var(--r-full);font-size:10px;font-weight:700;background:#ef444426;color:var(--fn-red);font-family:var(--font-mono)}.inst-review-detail{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-xl);overflow:hidden}.inst-review-detail-header{padding:14px 20px;border-bottom:1px solid var(--c-border);background:#ffffff04}.inst-review-detail-tags{display:flex;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap}.inst-review-detail-name{font-size:14px;font-weight:700;color:var(--c-text)}.inst-review-detail-email{font-size:12px;color:var(--c-muted);margin-top:2px;font-family:var(--font-mono)}.inst-review-detail-age{margin-left:auto;font-size:11px;color:var(--c-muted);font-family:var(--font-mono);display:flex;align-items:center;gap:5px}.inst-review-detail-age.is-urgent{color:var(--fn-red)}.inst-review-detail-response{padding:16px 20px;border-bottom:1px solid var(--c-border)}.inst-review-response-label{font-size:10px;font-weight:700;color:var(--c-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.inst-review-response-text{font-size:13px;color:var(--c-text);line-height:1.75;padding:12px 14px;background:#ffffff08;border:1px solid var(--c-border);border-radius:var(--r-lg);overflow:hidden;position:relative}.inst-review-response-text.collapsed{max-height:80px}.inst-review-response-fade{position:absolute;bottom:0;left:0;right:0;height:32px;background:linear-gradient(to bottom,transparent,var(--c-surface));border-radius:0 0 var(--r-lg) var(--r-lg);pointer-events:none}.inst-review-expand-btn2{display:inline-flex;align-items:center;gap:5px;margin-top:8px;padding:4px 10px;font-size:12px;font-weight:600;background:#ffffff0a;border:1px solid var(--c-border-2);border-radius:var(--r-md);color:var(--c-text-2);cursor:pointer;font-family:var(--font-body)}.inst-context-tag{display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--r-full);font-size:11px;font-weight:600;background:#ffffff0f;color:var(--c-muted);font-family:var(--font-mono)}.inst-cohort-tag{display:inline-flex;align-items:center;padding:2px 9px;border-radius:var(--r-full);font-size:11px;font-weight:600;background:#2e75b626;color:var(--fn-blue);border:1px solid rgba(46,117,182,.25)}.inst-review-empty-detail{padding:56px 24px;text-align:center;font-size:13px;color:var(--c-muted)}@media (max-width: 1024px){.admin-stat-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.admin-learners-table{font-size:12px}.admin-learners-table th,.admin-learners-table td{padding:6px 8px}:root{--nav-width: 180px}}@media (max-width: 768px){:root{--nav-width: 0px}.fn-nav{display:none}.fn-main{margin-left:0;padding-top:var(--sp-md);padding-bottom:var(--sp-md);padding-left:max(10px,env(safe-area-inset-left,0px));padding-right:max(10px,env(safe-area-inset-right,0px))}.sp-split-grid,.ae-match-grid,.ar-cards{grid-template-columns:1fr}.ae-results-stats{gap:var(--sp-lg)}.db-module-card{flex-wrap:wrap}.db-module-progress{width:100%}}.eval-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172aa6;z-index:900;display:flex;align-items:center;justify-content:center;padding:var(--sp-lg)}.eval-modal{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);box-shadow:0 24px 64px #0f172a4d;max-width:600px;width:100%;max-height:85vh;overflow-y:auto;padding:var(--sp-xl);display:flex;flex-direction:column;gap:var(--sp-md)}.eval-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-md)}.eval-modal-verdict{font-size:1.2rem;font-weight:700;font-family:var(--font-display);line-height:1.3}.eval-modal-close-btn{background:none;border:1px solid var(--c-border);border-radius:var(--r-sm);padding:4px 10px;font-size:13px;color:var(--c-muted);cursor:pointer;flex-shrink:0;line-height:1.4}.eval-modal-close-btn:hover{border-color:var(--c-text);color:var(--c-text)}.eval-modal-close-text{padding:6px 18px;font-size:13px;font-weight:600}.eval-modal-reason{background:var(--fn-red-light);border:1.5px solid var(--fn-red);border-radius:var(--r-md);padding:var(--sp-md);font-size:14px;color:var(--c-text);line-height:1.65}.eval-modal-reason strong{color:var(--fn-red);display:block;margin-bottom:6px;font-size:13px;text-transform:uppercase;letter-spacing:.06em}.eval-modal-actions{display:flex;justify-content:flex-end;gap:var(--sp-sm);padding-top:var(--sp-sm);border-top:1px solid var(--c-border);flex-wrap:wrap}@media print{.fn-header,.fn-nav,.sp-controls,.ae-footer{display:none}.fn-main{margin:0}}#root{min-height:100vh;display:flex;flex-direction:column}a{text-decoration:none;color:inherit}button,a,input,textarea,select,.fn-nav-item,.db-module-card,.fn-avatar{transition:color var(--trans-fast),background-color var(--trans-fast),border-color var(--trans-fast)}.nav-active{background:var(--fn-accent-dim)!important;color:var(--fn-accent)!important;font-weight:500}.gate-blocked{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--sp-2xl);text-align:center;color:var(--c-muted)}.gate-blocked-icon{font-size:48px;margin-bottom:var(--sp-lg)}.gate-blocked-title{font-size:1.2rem;font-weight:600;color:var(--c-text);margin-bottom:var(--sp-sm)}.gate-blocked-message{font-size:14px;max-width:400px;line-height:1.6}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{--c-bg: #06101e;--c-surface: #0d1825;--c-surface-2: #0f1e2e;--c-surface-3: #162436;--c-text: rgba(255, 255, 255, .92);--c-text-2: rgba(255, 255, 255, .46);--c-muted: rgba(255, 255, 255, .26);--c-border: rgba(255, 255, 255, .07);--c-border-2: rgba(255, 255, 255, .12);--fn-accent: #00B8D4;--fn-accent-dim: rgba(0, 184, 212, .12);--fn-green: #22c55e;--fn-red: #ef4444;--fn-red-dim: rgba(239, 68, 68, .12);--r-xl: 16px;--r-2xl: 20px;--trans: .15s ease;--shadow-md: 0 4px 20px rgba(0, 0, 0, .6);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .7)}@keyframes auth-grid-drift{0%{background-position:0 0}to{background-position:28px 28px}}@keyframes auth-card-rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-logo-pulse{0%,to{filter:drop-shadow(0 0 8px rgba(0,184,212,.4))}50%{filter:drop-shadow(0 0 22px rgba(0,184,212,.7))}}@keyframes auth-fadeup-1{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-fadeup-2{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-fadeup-3{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-fadeup-4{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-fadeup-5{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes auth-fadein{0%{opacity:0}to{opacity:1}}.auth-page{min-height:100vh;background:var(--c-bg);font-family:var(--font-body);color:var(--c-text)}.auth-hg{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(0,184,212,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(0,184,212,.055) 1px,transparent 1px);background-size:28px 28px;animation:auth-grid-drift 10s linear infinite;pointer-events:none;z-index:0}.auth-welcome{position:fixed;top:0;right:0;bottom:0;left:0;background:#06101e;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;overflow:hidden}.auth-ring{position:absolute;border-radius:50%;pointer-events:none}.auth-welcome-body{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center}.auth-logo-hex{width:70px;height:70px;object-fit:contain;animation:auth-logo-pulse 3s ease-in-out infinite}.auth-anim-1{animation:auth-fadeup-1 .55s ease both;animation-delay:0ms}.auth-anim-2{animation:auth-fadeup-2 .55s ease both;animation-delay:80ms}.auth-anim-3{animation:auth-fadeup-3 .55s ease both;animation-delay:.16s}.auth-anim-4{animation:auth-fadeup-4 .55s ease both;animation-delay:.24s}.auth-anim-5{animation:auth-fadeup-5 .55s ease both;animation-delay:.32s}.auth-anim-f{animation:auth-fadein .7s ease both;animation-delay:.4s}.auth-welcome-name{font-size:54px;font-weight:700;letter-spacing:-.035em;line-height:1;color:#ffffffed}.auth-welcome-sub{font-size:12px;font-family:var(--font-mono);color:var(--fn-accent);letter-spacing:.22em;text-transform:uppercase;margin-top:8px}.auth-welcome-tagline{font-size:15px;color:#fff6;line-height:1.7;max-width:340px;margin-top:0;margin-bottom:44px}.auth-welcome-btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-bottom:52px}.auth-welcome-features{display:flex;gap:36px;flex-wrap:wrap;justify-content:center}.auth-feature-item{text-align:center}.auth-feature-label{font-size:11px;font-family:var(--font-mono);color:var(--fn-accent);letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:3px}.auth-feature-desc{font-size:11px;color:#ffffff47;display:block}.auth-welcome-footer{position:absolute;bottom:24px;left:0;right:0;text-align:center;font-size:10.5px;font-family:var(--font-mono);color:#ffffff29;letter-spacing:.05em;z-index:1;pointer-events:none}.auth-form-layout{display:flex;min-height:100vh}.auth-left-panel{width:400px;flex-shrink:0;background:#06101e;position:relative;display:flex;flex-direction:column;padding:44px 44px 36px;overflow:hidden;border-right:1px solid rgba(255,255,255,.06)}.auth-panel-watermark{position:absolute;bottom:-28px;right:-14px;font-size:130px;font-weight:800;color:#00b8d40a;letter-spacing:-.04em;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap;font-family:IBM Plex Sans,sans-serif;line-height:1;z-index:0}.auth-panel-ring{position:absolute;border-radius:50%;pointer-events:none;z-index:0}.auth-panel-inner{position:relative;z-index:1;flex:1;display:flex;flex-direction:column}.auth-panel-logo{display:flex;align-items:center;gap:11px;margin-bottom:52px}.auth-panel-logo-hex{width:30px;height:30px;flex-shrink:0;object-fit:contain}.auth-panel-logo-text{display:flex;flex-direction:column}.auth-panel-logo-name{font-size:14.5px;font-weight:700;letter-spacing:-.01em;color:#ffffffeb;line-height:1}.auth-panel-logo-sub{font-size:9px;font-family:var(--font-mono);color:var(--fn-accent);letter-spacing:.17em;text-transform:uppercase;margin-top:3px}.auth-panel-content{margin-top:auto;margin-bottom:auto}.auth-panel-badge{font-size:10.5px;font-family:var(--font-mono);color:var(--fn-accent);letter-spacing:.12em;text-transform:uppercase;margin-bottom:15px}.auth-panel-headline{font-size:30px;font-weight:700;line-height:1.2;letter-spacing:-.025em;color:#ffffffeb;margin-bottom:16px}.auth-panel-desc{font-size:13.5px;color:#ffffff61;line-height:1.75;max-width:270px}.auth-panel-features{display:flex;flex-direction:column;gap:10px;margin-bottom:34px}.auth-panel-feature{display:flex;align-items:center;gap:10px}.auth-panel-feature-icon{color:var(--fn-accent);font-size:12.5px;font-family:var(--font-mono);flex-shrink:0;line-height:1}.auth-panel-feature-label{font-size:12px;font-family:var(--font-mono);color:#ffffff5c;letter-spacing:.03em}.auth-panel-footer{border-top:1px solid rgba(255,255,255,.07);padding-top:16px}.auth-panel-footer-line{font-size:11px;color:#ffffff42;margin-bottom:3px;line-height:1}.auth-panel-footer-line--mono{font-size:10px;font-family:var(--font-mono);color:#ffffff29;letter-spacing:.04em;margin-bottom:0}.auth-form-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;background:#06101e;gap:14px}.auth-form-card{width:100%;max-width:420px;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-top:3px solid var(--fn-accent);border-radius:var(--r-xl);padding:28px 32px;box-shadow:var(--shadow-md);animation:auth-card-rise .4s ease both}.auth-card-title{font-size:22px;font-weight:700;color:#ffffffeb;margin-bottom:4px;letter-spacing:-.01em}.auth-card-subtitle{font-size:13px;color:#ffffff61;margin-bottom:20px}.auth-tabs{display:flex;margin-bottom:24px;border-bottom:1px solid rgba(255,255,255,.08)}.auth-tab{background:none;border:none;padding:8px 16px 10px;font-size:13px;font-weight:500;font-family:var(--font-body);color:#ffffff5c;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color var(--trans),border-color var(--trans)}.auth-tab:hover{color:#fff9}.auth-tab.auth-tab--active{color:#ffffffeb;font-weight:600;border-bottom-color:var(--fn-accent)}.auth-field{margin-bottom:14px}.auth-label{display:block;font-size:11px;font-weight:600;color:#ffffff75;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}.auth-input-wrap{position:relative}.auth-input{width:100%;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--r-md);padding:10px 12px;font-size:13.5px;color:#ffffffe0;font-family:var(--font-body);outline:none;transition:border-color var(--trans),box-shadow var(--trans)}.auth-input::placeholder{color:#ffffff38}.auth-input:-webkit-autofill,.auth-input:-webkit-autofill:hover,.auth-input:-webkit-autofill:focus{-webkit-text-fill-color:rgba(255,255,255,.88);-webkit-box-shadow:0 0 0 1000px #0d1825 inset;box-shadow:0 0 0 1000px #0d1825 inset;transition:background-color 5000s ease-in-out 0s;border-color:#ffffff1a;caret-color:#ffffffe0}.auth-input:focus{border-color:var(--fn-accent);box-shadow:0 0 0 3px #00b8d426}.auth-input--has-action{padding-right:54px}.auth-input-action{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:2px 4px;color:#ffffff4d;font-size:10px;font-weight:600;letter-spacing:.06em;font-family:var(--font-body);transition:color var(--trans)}.auth-input-action:hover{color:#fff9}.auth-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.auth-remember{display:flex;align-items:center;gap:7px;font-size:13px;color:#ffffff75;cursor:pointer;-webkit-user-select:none;user-select:none}.auth-remember input[type=checkbox]{accent-color:var(--fn-accent);width:14px;height:14px;cursor:pointer}.auth-link{font-size:13px;color:var(--fn-accent);text-decoration:none;font-weight:500;background:none;border:none;cursor:pointer;font-family:var(--font-body);transition:opacity var(--trans)}.auth-link:hover{opacity:.75}.auth-btn-submit{width:100%;background:var(--fn-accent);color:#000;font-weight:600;font-size:14px;font-family:var(--font-body);padding:12px 24px;border-radius:var(--r-md);border:none;cursor:pointer;transition:opacity var(--trans);display:flex;align-items:center;justify-content:center;gap:8px;margin-top:6px;letter-spacing:.01em}.auth-btn-submit:hover:not(:disabled){opacity:.88}.auth-btn-submit:disabled{opacity:.5;cursor:not-allowed}.auth-btn-spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:btn-spin .6s linear infinite;flex-shrink:0}.auth-terms{text-align:center;font-size:11.5px;color:#ffffff38;margin-top:14px;line-height:1.55}.auth-error{background:var(--fn-red-dim);border:1px solid rgba(239,68,68,.25);border-radius:var(--r-md);padding:10px 14px;font-size:13px;color:var(--fn-red);margin-bottom:16px}.auth-back-link{font-size:12px;color:#ffffff42;text-decoration:none;background:none;border:none;cursor:pointer;font-family:var(--font-body);transition:color var(--trans)}.auth-back-link:hover{color:#ffffff80}.auth-pw-reqs{margin-top:8px;padding:10px 12px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:var(--r-md);display:flex;flex-direction:column;gap:6px}.auth-pw-req-title{font-size:10px;font-weight:700;color:#ffffff47;text-transform:uppercase;letter-spacing:.07em;margin-bottom:2px}.auth-pw-req-row{display:flex;align-items:center;gap:8px}.auth-pw-req-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:background var(--trans)}.auth-pw-req-dot--met{background:#22c55e}.auth-pw-req-dot--unmet{background:#ef4444}.auth-pw-req-dot--idle{background:#ffffff1a}.auth-pw-req-label{font-size:12px;font-family:var(--font-body);transition:color var(--trans)}.auth-pw-req-label--met{color:#22c55e;font-weight:600}.auth-pw-req-label--unmet{color:#ef4444}.auth-pw-req-label--idle{color:#ffffff47}.auth-btn-primary{background:var(--fn-accent);color:#000;font-weight:600;font-size:14px;font-family:var(--font-body);padding:0 36px;border-radius:var(--r-md);border:none;cursor:pointer;height:44px;transition:opacity var(--trans);letter-spacing:.01em}.auth-btn-primary:hover{opacity:.88}.auth-btn-outline{background:transparent;color:#ffffffd1;font-weight:500;font-size:14px;font-family:var(--font-body);padding:0 26px;border-radius:var(--r-md);border:1px solid rgba(255,255,255,.18);cursor:pointer;height:44px;transition:border-color var(--trans),background var(--trans)}.auth-btn-outline:hover{border-color:#ffffff5c;background:#ffffff0a}@media (max-width: 860px){.auth-left-panel{display:none}.auth-form-card{padding:24px 20px}}.enroll-page{--c-bg: #0d1321;--c-surface: #111827;--c-surface-2: #1a2336;--c-surface-3: #1f2d45;--c-text: #f0f4ff;--c-text-2: #94a3b8;--c-muted: #64748b;--c-border: rgba(255, 255, 255, .08);--c-border-2: rgba(255, 255, 255, .13);--fn-accent: #00B8D4;--fn-accent-dim: rgba(0, 184, 212, .12);--fn-blue: #2E75B6;--fn-blue-dim: rgba(46, 117, 182, .18);--fn-blue-str: rgba(46, 117, 182, .4);--fn-green: #22c55e;--fn-green-dim: rgba(34, 197, 94, .12);--fn-amber: #f59e0b;--fn-amber-dim: rgba(245, 158, 11, .12);--fn-red: #ef4444;--fn-red-dim: rgba(239, 68, 68, .12);--r-md: 8px;--r-lg: 12px;--r-xl: 16px;--r-2xl: 20px;--r-full: 999px;--trans: .15s ease;--shadow-md: 0 4px 16px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .6)}@keyframes enroll-card-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes enroll-shimmer{0%{background-position:-600px 0}to{background-position:600px 0}}@keyframes enroll-fadein{0%{opacity:0}to{opacity:1}}@keyframes enroll-pill-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.enroll-page{min-height:100vh;background:var(--c-bg);font-family:var(--font-body);color:var(--c-text);position:relative}.enroll-accent-bar{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--fn-accent) 0%,var(--fn-blue) 100%);z-index:200}.enroll-header{position:fixed;top:3px;left:0;right:0;height:48px;background:#090e1a;border-bottom:1px solid rgba(255,255,255,.07);display:flex;align-items:center;padding:0 24px;gap:12px;z-index:100}.enroll-header-logo{display:flex;align-items:center;gap:10px;text-decoration:none}.enroll-logo-hex{width:24px;height:24px;background:var(--fn-accent);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);flex-shrink:0}.enroll-logo-text{display:flex;flex-direction:column}.enroll-logo-name{font-size:13px;font-weight:700;color:#ffffffe0;line-height:1}.enroll-logo-sub{font-size:8.5px;font-family:var(--font-mono);color:var(--fn-accent);letter-spacing:.14em;text-transform:uppercase;margin-top:2px}.enroll-header-sep{width:1px;height:22px;background:#ffffff1f}.enroll-header-label{font-size:12px;color:#ffffff5c;letter-spacing:.04em}.enroll-scroll{padding-top:51px;min-height:100vh;overflow-y:auto}.enroll-content{max-width:900px;margin:0 auto;padding:48px 24px 64px}.enroll-hero{margin-bottom:36px;animation:enroll-fadein .4s ease both}.enroll-hero-eyebrow{font-size:11px;font-weight:600;font-family:var(--font-mono);color:var(--fn-accent);letter-spacing:.15em;text-transform:uppercase;margin-bottom:10px}.enroll-hero-heading{font-size:2rem;font-weight:700;color:var(--c-text);letter-spacing:-.025em;line-height:1.2;margin-bottom:10px}.enroll-hero-sub{font-size:14px;color:var(--c-text-2);line-height:1.6;max-width:480px;margin-bottom:20px}.enroll-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.enroll-pill{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;border-radius:var(--r-full);background:#ffffff0d;border:1px solid rgba(255,255,255,.11);font-size:12px;font-family:var(--font-mono);color:var(--c-text-2);letter-spacing:.02em;animation:enroll-pill-in .4s ease both}.enroll-pill:nth-child(2){animation-delay:60ms}.enroll-pill:nth-child(3){animation-delay:.12s}.enroll-pill-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.enroll-pill-dot--green{background:var(--fn-green)}.enroll-pill-dot--accent{background:var(--fn-accent)}.enroll-pill-dot--amber{background:var(--fn-amber)}.enroll-alert{border-radius:var(--r-md);padding:10px 14px;font-size:13px;margin-bottom:16px;animation:enroll-fadein .2s ease both}.enroll-alert--error{background:var(--fn-red-dim);border:1px solid rgba(239,68,68,.25);color:var(--fn-red)}.enroll-alert--success{background:var(--fn-green-dim);border:1px solid rgba(34,197,94,.25);color:var(--fn-green)}.enroll-list{display:flex;flex-direction:column;gap:10px}.enroll-card{background:var(--c-surface);border:1px solid var(--c-border-2);border-radius:var(--r-lg);display:flex;align-items:stretch;overflow:hidden;box-shadow:var(--shadow-md);animation:enroll-card-in .35s ease both;transition:border-color var(--trans),box-shadow var(--trans)}.enroll-card:hover{border-color:#ffffff2e;box-shadow:var(--shadow-lg)}.enroll-card:nth-child(1){animation-delay:0ms}.enroll-card:nth-child(2){animation-delay:60ms}.enroll-card:nth-child(3){animation-delay:.12s}.enroll-card:nth-child(4){animation-delay:.18s}.enroll-card:nth-child(5){animation-delay:.24s}.enroll-card:nth-child(6){animation-delay:.3s}.enroll-card:nth-child(n+7){animation-delay:.36s}.enroll-card-left{flex:1;min-width:0;padding:20px 22px;display:flex;flex-direction:column;justify-content:center;gap:6px}.enroll-card-sep{width:1px;background:#ffffff0f;flex-shrink:0;align-self:stretch}.enroll-card-right{width:290px;flex-shrink:0;padding:20px 22px;display:flex;flex-direction:column;justify-content:space-between;gap:12px}.enroll-badge-row{display:flex;align-items:center;gap:8px;margin-bottom:2px}.enroll-badge{display:inline-flex;align-items:center;padding:3px 9px;border-radius:5px;background:var(--fn-blue-dim);border:1px solid var(--fn-blue-str);font-size:10px;font-weight:700;font-family:var(--font-mono);color:#7ab8e8;letter-spacing:.06em;flex-shrink:0}.enroll-card-name{font-size:14.5px;font-weight:600;color:var(--c-text);line-height:1.3}.enroll-card-section{font-size:12px;font-weight:400;color:var(--fn-accent);margin-left:6px}.enroll-card-dates{font-size:12px;color:var(--c-muted);font-family:var(--font-mono);letter-spacing:.01em}.enroll-card-count{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;font-family:var(--font-mono);color:var(--fn-green);background:var(--fn-green-dim);border:1px solid rgba(34,197,94,.2);border-radius:var(--r-full);padding:2px 9px}.enroll-card-count-dot{width:5px;height:5px;border-radius:50%;background:var(--fn-green);flex-shrink:0}.enroll-info-rows{display:flex;flex-direction:column;gap:8px}.enroll-info-row{display:flex;flex-direction:column;gap:2px}.enroll-info-label{font-size:10px;font-weight:600;font-family:var(--font-mono);color:var(--c-muted);letter-spacing:.1em;text-transform:uppercase}.enroll-info-value{font-size:13px;font-weight:500;color:#ffffffd1}.enroll-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px 16px;border-radius:var(--r-md);background:var(--fn-accent-dim);border:1px solid rgba(0,184,212,.3);color:var(--fn-accent);font-size:13px;font-weight:600;font-family:var(--font-body);cursor:pointer;transition:background var(--trans),border-color var(--trans),transform var(--trans);letter-spacing:.01em;flex-shrink:0}.enroll-btn:hover:not(:disabled){background:#00b8d433;border-color:#00b8d480;transform:translateY(-1px)}.enroll-btn:active:not(:disabled){transform:translateY(0)}.enroll-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.enroll-btn-spinner{display:inline-block;width:13px;height:13px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:btn-spin .6s linear infinite;flex-shrink:0}.enroll-empty{text-align:center;padding:56px 32px;background:var(--c-surface);border:1px solid var(--c-border-2);border-radius:var(--r-xl);animation:enroll-fadein .4s ease both}.enroll-empty-icon{width:48px;height:48px;border-radius:50%;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.enroll-empty-title{font-size:15px;font-weight:600;color:var(--c-text);margin-bottom:6px}.enroll-empty-sub{font-size:13px;color:var(--c-muted);max-width:360px;margin:0 auto;line-height:1.6}.enroll-skeleton-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:var(--r-lg);display:flex;align-items:stretch;overflow:hidden;height:90px}.enroll-skeleton-left{flex:1;padding:20px 22px;display:flex;flex-direction:column;gap:10px;justify-content:center}.enroll-skeleton-sep{width:1px;background:#ffffff0d}.enroll-skeleton-right{width:290px;flex-shrink:0;padding:20px 22px;display:flex;flex-direction:column;gap:10px;justify-content:center}.enroll-shimmer-line{border-radius:4px;background:linear-gradient(90deg,#ffffff0a,#ffffff17,#ffffff0a);background-size:600px 100%;animation:enroll-shimmer 1.4s ease-in-out infinite}.enroll-footer-note{text-align:center;font-size:12px;color:var(--c-muted);margin-top:40px;line-height:1.5;animation:enroll-fadein .6s ease both;animation-delay:.4s}@keyframes enroll-modal-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes enroll-modal-card-in{0%{opacity:0;transform:scale(.96) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.enroll-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:300;animation:enroll-modal-backdrop-in .18s ease both}.enroll-modal-dialog{background:#111827;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:28px 28px 24px;width:100%;max-width:460px;box-shadow:0 0 0 1px #00b8d414,0 8px 40px #000000b3,-4px 0 24px #00b8d414;animation:enroll-modal-card-in .24s cubic-bezier(.34,1.1,.64,1) both;animation-delay:.04s}.enroll-modal-eyebrow{font-size:10.5px;font-weight:600;font-family:var(--font-mono);color:var(--fn-accent);letter-spacing:.14em;text-transform:uppercase;margin-bottom:8px}.enroll-modal-heading{font-size:22px;font-weight:700;color:var(--c-text);letter-spacing:-.02em;line-height:1.25;margin-bottom:20px}.enroll-modal-table{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:var(--r-md);margin-bottom:14px;overflow:hidden}.enroll-modal-row{display:flex;align-items:baseline;gap:14px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.06)}.enroll-modal-row:last-child{border-bottom:none}.enroll-modal-row-label{font-size:10px;font-weight:600;font-family:var(--font-mono);color:var(--c-muted);letter-spacing:.1em;text-transform:uppercase;width:76px;flex-shrink:0;padding-top:1px}.enroll-modal-row-value{font-size:13.5px;color:#ffffffd9;line-height:1.4}.enroll-modal-section-label{font-weight:700;color:#ffffffe6}.enroll-modal-section-code{font-size:12px;color:var(--c-muted);margin-left:6px}.enroll-modal-seats{font-size:13.5px;font-weight:600;color:var(--fn-amber)}.enroll-modal-warning{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:#f59e0b12;border:1px solid rgba(245,158,11,.25);border-radius:var(--r-md);margin-bottom:22px}.enroll-modal-warning-icon{color:var(--fn-amber);font-size:13px;flex-shrink:0;line-height:1.55}.enroll-modal-warning-text{font-size:12.5px;color:var(--fn-amber);line-height:1.6}.enroll-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px}.enroll-modal-btn-back{padding:9px 22px;border-radius:var(--r-md);background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#ffffffb3;font-size:13px;font-weight:500;font-family:var(--font-body);cursor:pointer;transition:background var(--trans),color var(--trans)}.enroll-modal-btn-back:hover:not(:disabled){background:#ffffff1a;color:#ffffffe6}.enroll-modal-btn-back:disabled{opacity:.45;cursor:not-allowed}.enroll-modal-btn-confirm{display:flex;align-items:center;gap:7px;padding:9px 22px;border-radius:var(--r-md);background:#22c55e;border:none;color:#000;font-size:13px;font-weight:700;font-family:var(--font-body);cursor:pointer;transition:opacity var(--trans),transform var(--trans);letter-spacing:.01em}.enroll-modal-btn-confirm:hover:not(:disabled){opacity:.88;transform:translateY(-1px)}.enroll-modal-btn-confirm:active:not(:disabled){transform:translateY(0)}.enroll-modal-btn-confirm:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width: 700px){.enroll-card{flex-direction:column}.enroll-card-sep{width:auto;height:1px;align-self:auto}.enroll-card-right{width:100%;border-top:1px solid rgba(255,255,255,.06);flex-direction:row;align-items:center;flex-wrap:wrap;gap:12px}.enroll-info-rows{flex:1;flex-direction:row;gap:16px;flex-wrap:wrap}.enroll-btn{width:auto;min-width:100px;flex-shrink:0}.enroll-skeleton-card{flex-direction:column;height:auto}.enroll-skeleton-sep{width:auto;height:1px}.enroll-skeleton-right{width:100%}}
