@charset "UTF-8";@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url("./media/fira-sans-cyrillic-ext-400-normal-GWO44OPC.woff2") format("woff2"),url("./media/fira-sans-cyrillic-ext-400-normal-6LNBB3AG.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:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url("./media/fira-sans-cyrillic-400-normal-KLQMBCA6.woff2") format("woff2"),url("./media/fira-sans-cyrillic-400-normal-U3O23YV6.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url("./media/fira-sans-greek-ext-400-normal-O2DVJAJZ.woff2") format("woff2"),url("./media/fira-sans-greek-ext-400-normal-P5T6ZO35.woff") format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url("./media/fira-sans-greek-400-normal-UMQBTLC3.woff2") format("woff2"),url("./media/fira-sans-greek-400-normal-7P33RVUL.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:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url("./media/fira-sans-vietnamese-400-normal-OBMQ72MR.woff2") format("woff2"),url("./media/fira-sans-vietnamese-400-normal-TSQDUJEC.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:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url("./media/fira-sans-latin-ext-400-normal-OAUP3WK5.woff2") format("woff2"),url("./media/fira-sans-latin-ext-400-normal-FURPZISP.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:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url("./media/fira-sans-latin-400-normal-OYYTPMAV.woff2") format("woff2"),url("./media/fira-sans-latin-400-normal-OE2UG64O.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:Fira Sans;font-style:italic;font-display:swap;font-weight:400;src:url("./media/fira-sans-cyrillic-ext-400-italic-4URSA7MQ.woff2") format("woff2"),url("./media/fira-sans-cyrillic-ext-400-italic-QZRPPGL2.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:Fira Sans;font-style:italic;font-display:swap;font-weight:400;src:url("./media/fira-sans-cyrillic-400-italic-5EGZ45SL.woff2") format("woff2"),url("./media/fira-sans-cyrillic-400-italic-6JPGFGTF.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:italic;font-display:swap;font-weight:400;src:url("./media/fira-sans-greek-ext-400-italic-3NWB7WQP.woff2") format("woff2"),url("./media/fira-sans-greek-ext-400-italic-QGVUP4G7.woff") format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:italic;font-display:swap;font-weight:400;src:url("./media/fira-sans-greek-400-italic-NRYQZ4EL.woff2") format("woff2"),url("./media/fira-sans-greek-400-italic-5O4G5ZY6.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:Fira Sans;font-style:italic;font-display:swap;font-weight:400;src:url("./media/fira-sans-vietnamese-400-italic-TQ46PUYQ.woff2") format("woff2"),url("./media/fira-sans-vietnamese-400-italic-RITEUA4A.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:Fira Sans;font-style:italic;font-display:swap;font-weight:400;src:url("./media/fira-sans-latin-ext-400-italic-ER7C6CR5.woff2") format("woff2"),url("./media/fira-sans-latin-ext-400-italic-OQGMPJCG.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:Fira Sans;font-style:italic;font-display:swap;font-weight:400;src:url("./media/fira-sans-latin-400-italic-QI63YL24.woff2") format("woff2"),url("./media/fira-sans-latin-400-italic-INB6WMBC.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:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url("./media/fira-sans-cyrillic-ext-500-normal-SP47E5SC.woff2") format("woff2"),url("./media/fira-sans-cyrillic-ext-500-normal-TADO2KCP.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:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url("./media/fira-sans-cyrillic-500-normal-NFG7UD6J.woff2") format("woff2"),url("./media/fira-sans-cyrillic-500-normal-FLPJTATT.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url("./media/fira-sans-greek-ext-500-normal-SK6GNWGO.woff2") format("woff2"),url("./media/fira-sans-greek-ext-500-normal-UO3NGISO.woff") format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url("./media/fira-sans-greek-500-normal-4ZKHN4FQ.woff2") format("woff2"),url("./media/fira-sans-greek-500-normal-LZW6BNQR.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:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url("./media/fira-sans-vietnamese-500-normal-Y4NZR5EU.woff2") format("woff2"),url("./media/fira-sans-vietnamese-500-normal-PLVGEIEV.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:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url("./media/fira-sans-latin-ext-500-normal-LY3YDR5Y.woff2") format("woff2"),url("./media/fira-sans-latin-ext-500-normal-BB7YMXLF.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:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url("./media/fira-sans-latin-500-normal-SMQPZW5A.woff2") format("woff2"),url("./media/fira-sans-latin-500-normal-XNH5TWLP.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:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url("./media/fira-sans-cyrillic-ext-600-normal-ZABOYQKW.woff2") format("woff2"),url("./media/fira-sans-cyrillic-ext-600-normal-566DNDFI.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:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url("./media/fira-sans-cyrillic-600-normal-ZFU2T5BT.woff2") format("woff2"),url("./media/fira-sans-cyrillic-600-normal-SEHFKHDW.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url("./media/fira-sans-greek-ext-600-normal-NVIRJWKC.woff2") format("woff2"),url("./media/fira-sans-greek-ext-600-normal-VFBZLG4R.woff") format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url("./media/fira-sans-greek-600-normal-VFIIAM24.woff2") format("woff2"),url("./media/fira-sans-greek-600-normal-ED7BM77L.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:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url("./media/fira-sans-vietnamese-600-normal-MGQI46GB.woff2") format("woff2"),url("./media/fira-sans-vietnamese-600-normal-QGOIX6SS.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:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url("./media/fira-sans-latin-ext-600-normal-QAEWYM5X.woff2") format("woff2"),url("./media/fira-sans-latin-ext-600-normal-PUP22FRW.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:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url("./media/fira-sans-latin-600-normal-KFMQDLYC.woff2") format("woff2"),url("./media/fira-sans-latin-600-normal-5JARSWR5.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:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url("./media/fira-sans-cyrillic-ext-700-normal-MGGH56YG.woff2") format("woff2"),url("./media/fira-sans-cyrillic-ext-700-normal-DYSFFPYM.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:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url("./media/fira-sans-cyrillic-700-normal-A5T76GXM.woff2") format("woff2"),url("./media/fira-sans-cyrillic-700-normal-7B6ZFGYT.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url("./media/fira-sans-greek-ext-700-normal-IFJM7HKH.woff2") format("woff2"),url("./media/fira-sans-greek-ext-700-normal-DSUAG4YK.woff") format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url("./media/fira-sans-greek-700-normal-4ML4H5CE.woff2") format("woff2"),url("./media/fira-sans-greek-700-normal-5SQFOJHQ.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:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url("./media/fira-sans-vietnamese-700-normal-T7SHI7ZW.woff2") format("woff2"),url("./media/fira-sans-vietnamese-700-normal-YI6DERLB.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:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url("./media/fira-sans-latin-ext-700-normal-A42JULO7.woff2") format("woff2"),url("./media/fira-sans-latin-ext-700-normal-CSBY2PLQ.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:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url("./media/fira-sans-latin-700-normal-SZ3MQASJ.woff2") format("woff2"),url("./media/fira-sans-latin-700-normal-QRSKMOIE.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:Old Standard TT;font-style:normal;font-display:swap;font-weight:400;src:url("./media/old-standard-tt-cyrillic-ext-400-normal-GTMYB7SY.woff2") format("woff2"),url("./media/old-standard-tt-cyrillic-ext-400-normal-7WWOGBP5.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:Old Standard TT;font-style:normal;font-display:swap;font-weight:400;src:url("./media/old-standard-tt-cyrillic-400-normal-SKVVQ2RY.woff2") format("woff2"),url("./media/old-standard-tt-cyrillic-400-normal-TKWNB6IU.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Old Standard TT;font-style:normal;font-display:swap;font-weight:400;src:url("./media/old-standard-tt-vietnamese-400-normal-WB2ZKEID.woff2") format("woff2"),url("./media/old-standard-tt-vietnamese-400-normal-XXV5FNYK.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:Old Standard TT;font-style:normal;font-display:swap;font-weight:400;src:url("./media/old-standard-tt-latin-ext-400-normal-OOFRUBGG.woff2") format("woff2"),url("./media/old-standard-tt-latin-ext-400-normal-SR6CW734.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:Old Standard TT;font-style:normal;font-display:swap;font-weight:400;src:url("./media/old-standard-tt-latin-400-normal-S7W6YYFM.woff2") format("woff2"),url("./media/old-standard-tt-latin-400-normal-DLAZCKZM.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:Old Standard TT;font-style:italic;font-display:swap;font-weight:400;src:url("./media/old-standard-tt-cyrillic-ext-400-italic-QDFWJPAM.woff2") format("woff2"),url("./media/old-standard-tt-cyrillic-ext-400-italic-GTXYIRI5.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:Old Standard TT;font-style:italic;font-display:swap;font-weight:400;src:url("./media/old-standard-tt-cyrillic-400-italic-6RHF4WRQ.woff2") format("woff2"),url("./media/old-standard-tt-cyrillic-400-italic-ZTHMO3FJ.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Old Standard TT;font-style:italic;font-display:swap;font-weight:400;src:url("./media/old-standard-tt-vietnamese-400-italic-E7O4DDBQ.woff2") format("woff2"),url("./media/old-standard-tt-vietnamese-400-italic-ZD4CORPI.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:Old Standard TT;font-style:italic;font-display:swap;font-weight:400;src:url("./media/old-standard-tt-latin-ext-400-italic-WAYN76RQ.woff2") format("woff2"),url("./media/old-standard-tt-latin-ext-400-italic-4Q7BDLIA.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:Old Standard TT;font-style:italic;font-display:swap;font-weight:400;src:url("./media/old-standard-tt-latin-400-italic-ZAKYI52G.woff2") format("woff2"),url("./media/old-standard-tt-latin-400-italic-U7AQ2MP3.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:Old Standard TT;font-style:normal;font-display:swap;font-weight:700;src:url("./media/old-standard-tt-cyrillic-ext-700-normal-FJHJHNKC.woff2") format("woff2"),url("./media/old-standard-tt-cyrillic-ext-700-normal-6BR4DDYT.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:Old Standard TT;font-style:normal;font-display:swap;font-weight:700;src:url("./media/old-standard-tt-cyrillic-700-normal-JOH3EMOO.woff2") format("woff2"),url("./media/old-standard-tt-cyrillic-700-normal-A3SEZC2A.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Old Standard TT;font-style:normal;font-display:swap;font-weight:700;src:url("./media/old-standard-tt-vietnamese-700-normal-RBF36BEH.woff2") format("woff2"),url("./media/old-standard-tt-vietnamese-700-normal-X26BAIMI.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:Old Standard TT;font-style:normal;font-display:swap;font-weight:700;src:url("./media/old-standard-tt-latin-ext-700-normal-H46ZOLK6.woff2") format("woff2"),url("./media/old-standard-tt-latin-ext-700-normal-IQTOKBGF.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:Old Standard TT;font-style:normal;font-display:swap;font-weight:700;src:url("./media/old-standard-tt-latin-700-normal-KAM5VVNZ.woff2") format("woff2"),url("./media/old-standard-tt-latin-700-normal-BML7MJWG.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:PT Mono;font-style:normal;font-display:swap;font-weight:400;src:url("./media/pt-mono-cyrillic-ext-400-normal-O6DVCOAW.woff2") format("woff2"),url("./media/pt-mono-cyrillic-ext-400-normal-E6BG5F56.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:PT Mono;font-style:normal;font-display:swap;font-weight:400;src:url("./media/pt-mono-cyrillic-400-normal-M4OTT3YK.woff2") format("woff2"),url("./media/pt-mono-cyrillic-400-normal-WYJZNHXP.woff") format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:PT Mono;font-style:normal;font-display:swap;font-weight:400;src:url("./media/pt-mono-latin-ext-400-normal-ZNJJNDGV.woff2") format("woff2"),url("./media/pt-mono-latin-ext-400-normal-65YQ35OZ.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:PT Mono;font-style:normal;font-display:swap;font-weight:400;src:url("./media/pt-mono-latin-400-normal-AY6YVA66.woff2") format("woff2"),url("./media/pt-mono-latin-400-normal-OBH7UQCD.woff") format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--surface: #FFFFFF;--surface-tint: #F3F1EC;--ink: #1C1A17;--muted: #6B655C;--rule: #D8D4CC;--accent: #1C1A17;--accent-hover: #3A3631;--on-accent: #FFFFFF;--on-accent-muted: #D9D4CB;--danger: #A3201B;--danger-surface: #F7EDEB;--warning: #8A5A00;--warning-surface: #FBF3E2;--success: #1C1A17;--focus: #1C1A17;--hatch-line: #1C1A17;--skeleton: #ECE9E2;--overlay: rgba(28, 26, 23, .55);--code-string: #7A3E12;--code-type: #2B4C7E;--shadow-color: #1C1A17;--shadow-hard: 6px 6px 0 0 #1C1A17;--hatch-fill: repeating-linear-gradient(135deg, var(--hatch-line) 0 1.2px, transparent 1.2px 6px);--font-serif: "Old Standard TT", Georgia, serif;--font-sans: "Fira Sans", system-ui, sans-serif;--font-mono: "PT Mono", ui-monospace, Consolas, monospace;--gutter: 56px;--header-height: 68px;--motion-instant: 80ms;--motion-quick: .14s;--motion-move: .2s;--motion-stage: .36s;--motion-stagger: 30ms;--motion-distance: 6px;--motion-lift: -3px;--ease-move: cubic-bezier(.25, 0, 0, 1);--ease-enter: cubic-bezier(0, 0, .2, 1);--ease-exit: cubic-bezier(.4, 0, 1, 1);--ease-step: steps(1, end);color-scheme:light;font:400 16px/24px var(--font-sans);color:var(--ink);background:var(--surface)}.theme-dark{--surface: #0E131B;--surface-tint: #151C27;--ink: #EEF2F7;--muted: #93A1B5;--rule: #253041;--accent: #36E4A6;--accent-hover: #5BEBB8;--on-accent: #0E131B;--on-accent-muted: #0E131B;--danger: #FF8A7A;--danger-surface: rgba(255, 138, 122, .1);--warning: #F4B740;--warning-surface: rgba(244, 183, 64, .1);--success: #36E4A6;--focus: #36E4A6;--hatch-line: #3A4A61;--skeleton: #1B2431;--overlay: rgba(0, 0, 0, .6);--code-string: #F2C38B;--code-type: #9CC3FF;--shadow-color: #000000;--shadow-hard: 6px 6px 0 0 #000000;color-scheme:dark;color:var(--ink);background:var(--surface)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;background:var(--surface);color:var(--ink);-webkit-font-smoothing:antialiased}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:none;border:0;padding:0}button:disabled{cursor:not-allowed}button,a{touch-action:manipulation}img,svg{max-width:100%}code,pre,kbd,samp,.mono{font-family:var(--font-mono);font-variant-ligatures:none}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}:focus:not(:focus-visible){outline:none}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:700;color:var(--ink);overflow-wrap:anywhere}h1{font-size:52px;line-height:58px;margin:0 0 12px;letter-spacing:-.005em}h2{font-size:28px;line-height:36px;margin:0 0 12px}h3{font-size:22px;line-height:28px;margin:0 0 8px}h4{font-size:18px;line-height:24px;margin:0 0 6px}p{margin:0 0 12px}.visually-hidden{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip{position:fixed;left:16px;top:-80px;z-index:300;padding:12px 16px;background:var(--ink);color:var(--surface);font-weight:600}.skip:focus-visible{top:12px}::selection{background:var(--ink);color:var(--surface)}.theme-dark ::selection{background:var(--accent);color:var(--on-accent)}mentor-icon.icon{display:inline-grid;place-items:center;width:20px;height:20px;flex:none;line-height:0}mentor-icon.icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.btn mentor-icon.icon{width:18px;height:18px}.tag mentor-icon.icon{width:15px;height:15px}.tag mentor-icon.icon svg{stroke-width:2.25}.spin svg{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.brand{display:inline-flex;align-items:center;gap:12px;font:700 26px/1 var(--font-serif);color:var(--ink);white-space:nowrap}.brand-mark{display:grid;grid-template-columns:12px 12px;grid-template-rows:12px 12px;box-shadow:0 0 0 1.5px var(--ink);flex:none}.brand-mark i{display:block}.brand-mark i:nth-child(1),.brand-mark i:nth-child(4){background:var(--ink)}.brand-mark i:nth-child(2),.brand-mark i:nth-child(3){background:var(--hatch-fill)}.site-header{position:relative;z-index:40;background:var(--surface);border-bottom:2px solid var(--ink)}.header-bar{display:flex;align-items:center;gap:56px;height:var(--header-height);padding:0 var(--gutter);max-width:1440px;margin:0 auto}.primary-nav{display:flex;gap:32px;height:100%}.primary-nav a{position:relative;display:flex;align-items:center;height:100%;font:500 15px/1 var(--font-sans);color:var(--muted);white-space:nowrap}.primary-nav a:hover{color:var(--ink)}.primary-nav a:hover:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:4px;background:var(--rule)}.primary-nav a.active,.primary-nav a[aria-current]{color:var(--ink)}.primary-nav a.active:after,.primary-nav a[aria-current]:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:4px;background:var(--ink);transform-origin:0 50%}.primary-nav a:focus-visible{outline:none}.primary-nav a:focus-visible span{outline:3px solid var(--focus);outline-offset:6px}.profile{position:relative;margin-left:auto}.profile-button{display:flex;align-items:center;gap:8px;height:44px;padding:0 10px;margin-right:-10px;font:500 15px/1 var(--font-sans);color:var(--ink);max-width:320px}.profile-button:hover,.profile-button[aria-expanded=true]{background:var(--surface-tint)}.profile-button[aria-expanded=true]>mentor-icon:last-child{transform:rotate(180deg)}.profile-avatar{display:grid;place-items:center;width:28px;height:28px;border:1.5px solid var(--ink);flex:none}.profile-avatar mentor-icon.icon{width:16px;height:16px}.profile-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-button>mentor-icon:last-child{width:18px;height:18px;color:var(--muted)}.profile-menu{position:absolute;right:-10px;top:calc(100% + 8px);width:300px;border:2px solid var(--ink);background:var(--surface);box-shadow:var(--shadow-hard);z-index:60}.profile-me{padding:14px 16px 12px;border-bottom:1px solid var(--rule)}.profile-me b{display:block;font:600 16px/22px var(--font-sans);overflow-wrap:anywhere}.profile-me span{display:block;font:400 13px/18px var(--font-sans);color:var(--muted)}.menu-list{list-style:none;margin:0;padding:6px 0}.menu-list a,.menu-list button{display:flex;align-items:center;gap:10px;width:100%;height:44px;padding:0 16px;font:500 15px/20px var(--font-sans);color:var(--ink);text-align:left}.menu-list a:hover,.menu-list button:hover{background:var(--surface-tint)}.menu-list a:focus-visible,.menu-list button:focus-visible{outline-offset:-4px}.menu-list mentor-icon.icon{width:18px;height:18px;color:var(--muted)}.menu-button{display:none;align-items:center;gap:6px;height:44px;padding:0 10px;margin-left:auto;font:500 15px/1 var(--font-sans);color:var(--ink)}.mobile-menu{display:none}.workspace{min-height:100vh;display:flex;flex-direction:column}main{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:32px var(--gutter) 64px}main:focus{outline:none}.site-footer{border-top:1px solid var(--rule)}.site-footer>div{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;max-width:1440px;margin:0 auto;padding:18px var(--gutter);font:400 13px/18px var(--font-sans);color:var(--muted)}.auth-screen main{max-width:none;padding:0;display:flex}.auth-screen .site-footer{display:none}.shell-error{display:grid;gap:12px;justify-items:start;margin:0 0 20px}.shell-error>.auth-error{margin:0}.preview-banner{display:flex;align-items:center;gap:16px;flex-wrap:wrap;padding:8px var(--gutter);background:var(--hatch-fill),var(--surface);border-bottom:2px solid var(--ink)}.preview-banner .lab,.preview-banner .back{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:var(--surface);border:1.5px solid var(--ink);font:600 15px/20px var(--font-sans)}.preview-banner .back{margin-left:auto;font-size:14px;text-decoration:none}.preview-banner .back:hover{background:var(--surface-tint)}.context-head{margin-bottom:28px}.crumbs{display:flex;flex-wrap:wrap;gap:4px 6px;font:400 14px/20px var(--font-sans);color:var(--muted);margin:0 0 10px}.crumbs a:hover{color:var(--ink)}.crumbs span[aria-hidden]{color:var(--muted)}.kick{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;font:500 15px/22px var(--font-sans);color:var(--muted)}.backlink{display:inline-flex;align-items:center;gap:6px;font:500 15px/22px var(--font-sans);color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.backlink:hover{text-decoration-thickness:2px}.backlink mentor-icon.icon{width:18px;height:18px}.context-title{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.context-title h1{margin:6px 0 0}.context-title .meta{margin:8px 0 0;font:400 16px/24px var(--font-sans);color:var(--muted)}.context-title .meta b{font-weight:500;color:var(--ink)}.tabs{position:relative;display:flex;gap:4px;margin-top:22px;border-bottom:2px solid var(--ink);overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--rule) transparent;background:linear-gradient(90deg,var(--surface) 50%,transparent) left/32px 100% no-repeat local,linear-gradient(270deg,var(--surface) 50%,transparent) right/32px 100% no-repeat local,linear-gradient(90deg,var(--rule),transparent) left/16px 100% no-repeat scroll,linear-gradient(270deg,var(--rule),transparent) right/16px 100% no-repeat scroll}.tabs a{position:relative;isolation:isolate;display:flex;align-items:center;gap:8px;padding:12px 16px;font:500 15px/20px var(--font-sans);color:var(--muted);white-space:nowrap;scroll-margin:0 16px}.tabs a:hover{color:var(--ink);background:var(--surface-tint)}.tabs a.active,.tabs a[aria-current=page]{color:var(--surface)}.tabs a.active:before,.tabs a[aria-current=page]:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--ink);transform-origin:0 50%}.tabs a:focus-visible{outline-offset:-3px}.tabs .hm{width:14px;height:14px;background:var(--hatch-fill);box-shadow:0 0 0 1px currentColor;flex:none}.tabs a.active .hm,.tabs a[aria-current=page] .hm{background:repeating-linear-gradient(135deg,var(--surface) 0 1.2px,transparent 1.2px 5px);box-shadow:0 0 0 1px var(--surface)}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px 32px;flex-wrap:wrap;margin-bottom:32px}.page-head>div{min-width:0}.page-head h1{margin:0}.page-head .subtitle{margin-top:8px}.page-head .actions{margin:0}.eyebrow{margin:0 0 6px;font:500 15px/22px var(--font-sans);color:var(--muted)}.subtitle{margin:0;max-width:720px;font:400 16px/24px var(--font-sans);color:var(--muted)}.small-muted{font-size:13px;line-height:18px;color:var(--muted)}.sh,.lessons-head{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px 16px;border-bottom:2px solid var(--ink);padding-bottom:8px;margin-bottom:0}.sh h2,.sh h3,.lessons-head h2{margin:0}.sh h2,.lessons-head h2{font-size:28px;line-height:36px}.sh small,.sh .count,.lessons-head .count{font:400 15px/22px var(--font-sans);color:var(--muted)}.sh .title-group,.lessons-head .title-group{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;min-width:0}.sh a:not(.btn){font:500 15px/24px var(--font-sans)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border:2px solid var(--ink);background:var(--surface);color:var(--ink);font:600 15px/20px var(--font-sans);text-align:center;white-space:nowrap;cursor:pointer;text-decoration:none;transition:transform var(--motion-instant) var(--ease-exit)}.btn:hover{background:var(--surface-tint)}.btn:active:not(:disabled){transform:translateY(1px);background:var(--rule)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn.primary:active:not(:disabled){background:var(--accent);box-shadow:inset 0 3px #00000059}.btn.danger{border-color:var(--danger);color:var(--danger)}.btn.danger:hover{background:var(--danger-surface)}.btn.danger.primary{background:var(--danger);color:var(--on-accent)}.btn.text{border-color:transparent;background:transparent;min-height:40px;padding:0 8px;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.btn.text:hover{text-decoration-thickness:2px;background:transparent}.btn.icon-only{width:48px;padding:0}.btn.sm{min-height:40px;padding:0 14px;font-size:14px}.btn.sm.icon-only{width:40px}.btn:disabled,.btn[aria-disabled=true]{background:var(--surface-tint);border-color:var(--rule);color:var(--muted);cursor:not-allowed;transform:none;box-shadow:none}.btn.text:disabled{background:transparent;border-color:transparent;text-decoration:none}.btn[aria-busy=true]{cursor:progress}.cnt{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;background:var(--ink);color:var(--surface);font:600 12px/1 var(--font-sans)}.btn.primary .cnt{background:var(--on-accent);color:var(--accent)}.actions{display:flex;gap:10px 12px;align-items:center;flex-wrap:wrap;margin-top:16px}.text-link,.crumbs a,.sh a:not(.btn),.lesson-shortcuts a,.goal-box .links a,.auth-links a,.notes-details summary,.markdown-body a,.legacy-html a{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px;font-weight:500}.text-link:hover,.crumbs a:hover,.sh a:not(.btn):hover,.lesson-shortcuts a:hover,.goal-box .links a:hover,.auth-links a:hover,.notes-details summary:hover,.markdown-body a:hover,.legacy-html a:hover{text-decoration-thickness:2px}.text-link{color:var(--ink)}button.text-link{padding:0;background:none;border:0;cursor:pointer}.tag{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:0 10px;border:1.5px solid var(--ink);background:var(--surface);color:var(--ink);font:500 13px/16px var(--font-sans);white-space:nowrap}.tag.quiet{border-color:var(--rule);color:var(--muted)}.tag.on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.tag.danger{border-color:var(--danger);color:var(--danger);background:var(--danger-surface)}.tag.warn{border-color:var(--warning);color:var(--warning);background:var(--warning-surface)}.vis{display:inline-flex;align-items:center;gap:6px;min-height:26px;padding:0 10px;font:600 13px/16px var(--font-sans);white-space:nowrap;color:var(--ink);background:var(--surface);box-shadow:inset 0 0 0 1.5px var(--ink)}.vis mentor-icon.icon{width:16px;height:16px}.vis.private{background:var(--hatch-fill) left top/24px 100% no-repeat,var(--surface);padding-left:32px}.box,.issued-link,.confirm-box,.notes-box,.goal-box,.resource-card,.task-code,.teacher-practice,.reset-confirm,.history-only{border:2px solid var(--ink);min-width:0}.box,.issued-link,.resource-card,.reset-confirm,.history-only{padding:16px 18px}.box h3{font-size:20px;line-height:26px;margin:0}.box>p{margin:6px 0 0;font-size:14px;line-height:20px;color:var(--muted)}.private-strip{position:relative;padding-left:28px}.private-strip:before{content:"";position:absolute;left:0;top:0;bottom:0;width:14px;background:var(--hatch-fill)}.callout,.auth-error,.success-banner,.warning-banner{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:0 0 20px;padding:12px 16px;border:2px solid var(--ink);background:var(--surface);font:400 15px/22px var(--font-sans);color:var(--ink);overflow-wrap:anywhere}.callout>p,.warning-banner>p{margin:0}.callout .actions,.warning-banner .actions{margin-top:4px}.callout{background:var(--surface-tint);border-color:var(--surface-tint)}.auth-error{border-color:var(--danger);background:var(--danger-surface)}.success-banner{border-color:var(--ink)}.warning-banner{border-color:var(--warning);background:var(--warning-surface)}p.auth-error,p.callout,p.success-banner,p.warning-banner{display:block}.auth-error,.success-banner{border-left-width:6px}.empty-state{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:28px;border:2px dashed var(--rule);color:var(--muted);font:400 15px/22px var(--font-sans)}.empty-state h2,.empty-state h3{margin:0;font-size:22px;line-height:28px}.empty-state p{margin:0;max-width:520px}.empty-state .btn{margin-top:6px}.empty-state.private{border-style:solid;border-color:var(--ink);background:linear-gradient(90deg,transparent 14px,var(--surface) 14px),var(--hatch-fill);padding-left:42px}p.empty-state{display:block}.loading{display:flex;align-items:center;gap:10px;color:var(--muted);margin:0 0 16px}.loading:before{content:"";width:18px;height:18px;border:2px solid var(--rule);border-top-color:var(--ink);border-radius:50%;animation:spin 1s linear infinite;flex:none}.loading-line{margin:0 0 12px;font:400 14px/20px var(--font-sans);color:var(--muted)}.skeleton{display:grid;gap:10px;align-content:start;animation:skeleton-show 0s linear .15s backwards}.skeleton i{display:block;height:14px;background:var(--skeleton);animation:skeleton-breathe 1.4s ease-in-out .15s infinite alternate}.skeleton .bar-short{width:40%}.skeleton .bar-mid{width:65%}.skeleton .bar-tall{height:24px}.skeleton-dl{gap:0}.skeleton-dl>div{display:grid;gap:6px}.skeleton-card{min-height:280px;animation:skeleton-show 0s linear .15s backwards}.skeleton-card .student-card-head{border-bottom-color:var(--skeleton)}.skeleton-card .student-card-head>.skeleton{flex:1}.skeleton-card i.bar-square{display:block;width:48px;height:48px;flex:none;background:var(--skeleton);animation:skeleton-breathe 1.4s ease-in-out .15s infinite alternate}.skeleton-page{max-width:880px;gap:14px}.skeleton-page .bar-title{width:55%;height:44px}.skeleton-page .bar-block{height:172px}.skeleton-page .bar-tabs{height:44px}.skeleton-rows{gap:8px}.skeleton .bar-row{height:40px}.skeleton-ide{grid-template-columns:220px minmax(0,1fr);gap:16px}.skeleton-ide .bar-tree,.skeleton-ide .bar-editor{height:520px}@media(max-width:699px){.skeleton-ide{grid-template-columns:minmax(0,1fr)}.skeleton-ide .bar-tree{height:96px}.skeleton-ide .bar-editor{height:360px}}@keyframes skeleton-show{0%{visibility:hidden}}@keyframes skeleton-breathe{to{opacity:.6}}.field{display:grid;gap:6px;align-content:start;font:600 14px/20px var(--font-sans);color:var(--ink);min-width:0}.field small{font:400 13px/18px var(--font-sans);color:var(--muted)}.field small.error{color:var(--danger);font-weight:500}.label-note{font-weight:400;color:var(--muted)}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range]),textarea,select{width:100%;min-width:0;max-width:100%;min-height:48px;padding:11px 14px;border:1.5px solid var(--ink);border-radius:0;background:var(--surface);color:var(--ink);font:400 16px/22px var(--font-sans)}input:hover:not(:disabled):not([readonly]),textarea:hover:not(:disabled):not([readonly]),select:hover:not(:disabled){box-shadow:inset 0 0 0 1px var(--ink)}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}input:disabled,textarea:disabled,select:disabled,input[readonly],textarea[readonly]{background:var(--surface-tint);border-color:var(--rule);color:var(--muted)}input[readonly][name=issuedLink],input[readonly][name=accessLink]{color:var(--ink);font-family:var(--font-mono);font-size:14px}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:var(--danger);box-shadow:inset 0 0 0 1px var(--danger)}textarea{min-height:112px;resize:vertical;line-height:24px}select{appearance:none;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236B655C' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}.theme-dark select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2393A1B5' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}input[type=checkbox],input[type=radio]{appearance:none;width:20px;height:20px;margin:1px 0 0;border:2px solid var(--ink);background:var(--surface);display:inline-grid;place-items:center;flex:none;cursor:pointer}input[type=radio]{border-radius:50%}input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}input[type=checkbox]:checked:after{content:"";width:10px;height:6px;border:solid var(--on-accent);border-width:0 0 2.5px 2.5px;transform:translateY(-1px) rotate(-45deg)}input[type=radio]:checked:after{content:"";width:10px;height:10px;border-radius:50%;background:var(--ink)}input[type=checkbox]:disabled,input[type=radio]:disabled{border-color:var(--rule);background:var(--surface-tint);cursor:not-allowed}input[type=file]{width:100%;max-width:100%;padding:14px;border:2px dashed var(--ink);background:var(--surface);font:400 15px/22px var(--font-sans);cursor:pointer}input[type=file]:hover:not(:disabled){background:var(--surface-tint)}input[type=file]::file-selector-button{margin-right:14px;padding:10px 16px;border:2px solid var(--ink);background:var(--surface);color:var(--ink);font:600 14px/18px var(--font-sans);cursor:pointer}input[type=file]:disabled{border-color:var(--rule);color:var(--muted)}progress{width:100%;height:10px;appearance:none;border:1.5px solid var(--ink);background:var(--surface)}progress::-webkit-progress-bar{background:var(--surface)}progress::-webkit-progress-value{background:var(--accent)}progress::-moz-progress-bar{background:var(--accent)}fieldset{border:0;margin:0;padding:0;min-width:0;display:grid;gap:16px}legend{padding:0;margin:0 0 4px;font:700 20px/26px var(--font-serif)}.check-row{display:inline-flex;align-items:flex-start;gap:10px;font:400 15px/22px var(--font-sans);cursor:pointer}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.legend-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px}.private-strip>legend{margin-left:-28px;padding-left:28px}.form-actions{display:flex;flex-wrap:wrap;gap:10px 12px;align-items:center}.editor{max-width:860px}.editor>h2{margin:0 0 4px}.editor>p{margin:0 0 20px;color:var(--muted)}.editor form{display:grid;gap:24px}.editor fieldset{border-top:2px solid var(--ink);padding-top:14px}.tbl{width:100%;border-collapse:collapse}.tbl th{text-align:left;padding:8px 12px;font:400 13px/18px var(--font-sans);color:var(--muted);border-bottom:2px solid var(--ink);white-space:nowrap}.tbl td{padding:12px;border-bottom:1px solid var(--rule);vertical-align:middle;font-size:15px;line-height:22px;overflow-wrap:anywhere}.tbl td small{display:block;font-size:13px;line-height:18px;color:var(--muted)}.tbl .act{text-align:right;white-space:nowrap}.tbl tbody tr:hover td{background:var(--surface-tint)}.tbl .num{width:44px;font:700 20px/24px var(--font-serif);text-align:center}.tbl a.row-title{font-weight:500;text-decoration:underline;text-decoration-color:transparent;text-underline-offset:3px}.tbl a.row-title:hover{text-decoration-color:currentColor}.table-wrap{position:relative;overflow-x:auto}.pagination{display:flex;align-items:center;justify-content:flex-start;gap:12px;flex-wrap:wrap;margin:20px 0 0;font:500 15px/22px var(--font-sans)}.pagination span{color:var(--muted)}.pagination .btn{min-height:40px;padding:0 14px;font-size:14px}.pagination .btn.icon-only{padding:0}details>summary{cursor:pointer}details.x,.material-document details,.submission-review{border:2px solid var(--ink)}details.x>summary,.material-document details>summary,.submission-review>summary{list-style:none;display:flex;align-items:center;gap:10px;padding:12px 16px;font:600 16px/22px var(--font-sans)}details.x>summary::-webkit-details-marker,.material-document details>summary::-webkit-details-marker,.submission-review>summary::-webkit-details-marker{display:none}details.x>summary:before,.material-document details>summary:before,.submission-review>summary:before{content:"";width:8px;height:8px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(-45deg);transition:transform var(--motion-quick) var(--ease-move);flex:none;margin-right:2px}details.x[open]>summary:before,.material-document details[open]>summary:before,.submission-review[open]>summary:before{transform:rotate(45deg)}details.x[open]>summary,.material-document details[open]>summary,.submission-review[open]>summary{border-bottom:1px solid var(--rule)}details.x>.in{padding:14px 16px}.dialog-backdrop{position:fixed;inset:0;z-index:200;display:grid;place-items:center;padding:20px;background:var(--overlay)}.dialog{width:min(100%,520px);border:2px solid var(--ink);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-hard)}.dialog h2{margin:0;padding:18px 22px 0;font-size:24px;line-height:30px}.dialog .body{padding:10px 22px 4px;font-size:15px;line-height:22px}.dialog .body p{margin:0 0 8px}.dialog .form-actions{justify-content:flex-end;padding:18px 22px 20px}.auth-split{flex:1;display:grid;grid-template-columns:minmax(320px,560px) minmax(0,1fr);min-height:100vh}.auth-side{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:16px;padding:48px 56px;background:var(--surface-tint);border-right:2px solid var(--ink)}.auth-side .brand{font-size:26px}.auth-side .motto{margin:28px 0 0;font:700 40px/46px var(--font-serif)}.auth-side p{margin:0;max-width:360px;color:var(--muted)}.auth-art{margin-top:auto;display:grid;gap:40px;max-width:380px}.auth-clock{display:grid;grid-template-columns:1fr 1fr;padding-top:16px}.auth-clock div{position:relative;isolation:isolate;min-height:168px;padding:18px 20px;border:2px solid var(--ink);background:var(--surface)}.auth-clock div+div{border-left:0}.auth-clock div:before{content:"";position:absolute;top:-16px;left:50%;width:64px;margin-left:-32px;height:9px;background:var(--ink);transform-origin:50% 100%}.auth-clock div+div:before{transform:translateY(5px) scaleY(.78)}.auth-clock div:after{content:"";position:absolute;inset:-2px;z-index:-1;background:var(--ink);clip-path:inset(0 0 0 100%)}.auth-clock .on{color:var(--surface)}.auth-clock .on:after{clip-path:inset(0)}.auth-clock b{display:block;font-weight:600}.auth-clock span{font-size:14px;color:var(--muted)}.auth-clock .on span{color:var(--on-accent-muted)}.auth-board{animation:auth-deal var(--motion-stage) steps(8,end) backwards;height:48px;background:repeating-linear-gradient(90deg,var(--ink) 0 49px,transparent 49px 98px),var(--hatch-fill);border-left:2px solid var(--ink)}.auth-main{display:flex;align-items:center;padding:48px 96px}.auth-layout{width:min(100%,440px)}.auth-card h1{font-size:52px;line-height:58px;margin:0 0 12px}.auth-description{margin:0 0 28px;color:var(--muted)}.auth-card form{display:grid;gap:20px}.auth-card form>.btn{width:100%;margin-top:4px}.auth-links{margin:24px 0 0;font:500 15px/22px var(--font-sans)}.auth-links a{text-decoration:underline;text-underline-offset:4px}.auth-note{display:flex;gap:10px;align-items:flex-start;margin:20px 0 0;padding:12px 14px;background:var(--surface-tint);font-size:14px;line-height:20px}.auth-note mentor-icon.icon{width:18px;height:18px;margin-top:1px;color:var(--muted)}.not-found{max-width:640px;padding:40px 0}.auth-screen .not-found{padding:64px var(--gutter);max-width:760px}.not-found .code{font:700 120px/1 var(--font-serif);margin:0 0 12px}.not-found .board{display:grid;grid-template-columns:repeat(8,1fr);max-width:320px;height:40px;margin:0 0 32px;border:2px solid var(--ink)}.not-found .board i:nth-child(odd){background:var(--ink)}.not-found .board i:nth-child(2n){background:var(--hatch-fill)}.admin-page{display:grid;gap:40px}.admin-page section>.tbl,.admin-page .table-wrap{margin-top:0}.issued-link{display:grid;gap:12px}.issued-link h2{display:flex;align-items:center;gap:8px;margin:0;font-size:22px;line-height:28px}.issued-link p{margin:0;color:var(--muted);font-size:14px}.confirm-box{box-shadow:var(--shadow-hard);padding:18px 22px;max-width:560px}.confirm-box h2{font-size:24px;line-height:30px;margin:0 0 6px}.confirm-box p{color:var(--muted)}.confirm-box form{display:grid;gap:16px}.status-line{display:flex;flex-wrap:wrap;gap:8px}.students-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:24px;margin-top:20px}.student-card{display:flex;flex-direction:column;min-width:0;padding:0;border:2px solid var(--ink);background:var(--surface);text-align:left;color:var(--ink)}a.student-card{transition:transform var(--motion-quick) var(--ease-move),box-shadow var(--motion-quick) var(--ease-move)}@media(hover:hover){a.student-card:hover{transform:translate(var(--motion-lift),var(--motion-lift));box-shadow:calc(6px - var(--motion-lift)) calc(6px - var(--motion-lift)) 0 0 var(--shadow-color)}}a.student-card:focus-visible{transform:translate(var(--motion-lift),var(--motion-lift));box-shadow:calc(6px - var(--motion-lift)) calc(6px - var(--motion-lift)) 0 0 var(--shadow-color)}.student-card-head{display:flex;gap:14px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--rule)}.student-card-head h2{margin:0;font-size:22px;line-height:28px}.student-card-head p{margin:2px 0 0;font-size:14px;line-height:20px;color:var(--muted)}.student-card dl{margin:0}.student-card dl>div{padding:10px 18px;border-bottom:1px solid var(--rule)}.student-card dl>div:last-child{border-bottom:0}.student-card dt{font:400 13px/18px var(--font-sans);color:var(--muted)}.student-card dd{margin:2px 0 0;font:500 15px/22px var(--font-sans);overflow-wrap:anywhere}.student-card.new-card{align-items:center;justify-content:center;gap:10px;min-height:280px;padding:24px;border-style:dashed;text-align:center}.student-card.new-card:hover{background:var(--surface-tint)}.student-card.new-card h2{margin:0;font:600 16px/22px var(--font-sans)}.student-card.new-card p{margin:0;color:var(--muted);font-size:14px}.new-mark{display:grid;place-items:center;width:56px;height:56px;border:2px dashed var(--ink)}.new-mark mentor-icon.icon{width:34px;height:34px;padding:6px;background:var(--surface)}.avatar{display:grid;place-items:center;width:64px;height:64px;flex:none;background:var(--ink);color:var(--surface);font:700 30px/1 var(--font-serif)}.student-card .avatar{width:44px;height:44px;font-size:22px}.student-hero{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}.student-hero .who{display:flex;align-items:center;gap:24px;min-width:0}.student-hero h1{margin:0}.student-hero p{margin:4px 0 0;color:var(--muted)}.student-hero .actions{margin:0}.cols{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px;padding-top:28px;align-items:start}.cols>*{min-width:0}.side-stack{display:grid;gap:32px}.side-section .sh h2{font-size:22px;line-height:28px}.facts{margin:0;border:1px solid var(--rule);border-top:0}.facts>div{padding:10px 16px;border-bottom:1px solid var(--rule)}.facts>div:last-child{border-bottom:0}.facts dt{font:400 13px/18px var(--font-sans);color:var(--muted)}.facts dd{margin:2px 0 0;font:500 16px/24px var(--font-sans);overflow-wrap:anywhere;white-space:pre-wrap}.facts dd.empty{color:var(--muted);font-weight:400}.side-section .actions{margin-top:12px}.notes-box>header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 10px;padding:10px 14px;background:var(--hatch-fill);border-bottom:2px solid var(--ink)}.notes-box>header h2{margin:0;padding:0 8px;background:var(--surface);font-size:20px;line-height:28px;white-space:nowrap}.notes-box .notes-body{padding:14px 16px}.notes-box .actions{margin-top:8px}.plain-note{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:24px}.notes-preview{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden}.notes-details{margin-top:10px;font-size:14px}.notes-details[open] p{max-height:260px;overflow:auto;margin-top:10px}.summary-empty{color:var(--muted);margin:0}.visibility-legend{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;color:var(--muted)}.account-access{display:grid;gap:12px}.account-access>p{margin:0;font-size:15px}.account-identity{display:grid;gap:4px}.account-identity code{font-size:15px;overflow-wrap:anywhere}.access-actions{display:flex;flex-direction:column;align-items:flex-start;gap:4px}.access-actions .btn.text{padding:0;min-height:36px}.account-access form{display:grid;gap:12px}.lesson-table .when,.lesson-table .when small{white-space:nowrap}.lesson-shortcuts{display:flex;gap:6px 14px;flex-wrap:wrap;justify-content:flex-end;font-size:14px}.review-archive{display:inline-block;margin:0 0 20px}.home{display:grid;grid-template-columns:minmax(0,1fr) 452px;gap:40px 64px;align-items:start}.home>*{min-width:0}.home h1{margin:6px 0 0;font-size:76px;line-height:80px}.sheet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:28px 0 0;border-top:2px solid var(--ink);border-left:1px solid var(--rule)}.sheet>div{padding:10px 16px 12px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);min-width:0}.sheet dt{font:400 13px/18px var(--font-sans);color:var(--muted)}.sheet dd{margin:2px 0 0;display:flex;align-items:center;gap:6px;font:500 17px/24px var(--font-sans);overflow-wrap:anywhere}.sheet dd mentor-icon.icon{width:18px;height:18px}.home-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.home-actions .primary{grid-column:1/-1}.home-actions .btn{width:100%}.home-side{display:grid;gap:32px}.turn{margin:0;font:700 34px/40px var(--font-serif)}.turn small{display:block;margin-top:6px;font:400 16px/24px var(--font-sans);color:var(--muted)}.goal-box>div{padding:16px 18px}.goal-box h2{margin:0 0 8px;font-size:22px;line-height:28px}.goal-box .goal{margin:0;font:500 18px/26px var(--font-sans);overflow-wrap:anywhere}.goal-box .facts{border-left:0;border-right:0;border-top:1px solid var(--rule)}.goal-box .links{display:flex;gap:8px 20px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--rule)}.home-more{display:flex;align-items:center;gap:12px;margin:0}.prep{list-style:none;margin:0;padding:0}.prep>li{display:grid;grid-template-columns:56px minmax(0,1fr) auto;gap:20px;align-items:start;padding:18px 0;border-bottom:1px solid var(--rule)}.prep .n{display:grid;place-items:center;height:56px;font:700 28px/1 var(--font-serif);border:2px solid var(--ink)}.prep .n.priv{background:var(--hatch-fill)}.prep .n.priv span{background:var(--surface);padding:2px 6px}.prep .n.done{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.prep .n.done mentor-icon.icon{width:26px;height:26px}.prep .n.done mentor-icon.icon svg{stroke-width:2.5}.prep h3{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0;font-size:22px;line-height:28px}.prep p{margin:6px 0 0;max-width:620px;font-size:15px;line-height:22px;color:var(--muted)}.prep p.fact{color:var(--ink)}.prep .go{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:4px}.prep-foot{display:flex;gap:20px;flex-wrap:wrap;margin-top:16px}.lesson-page-actions{display:flex;gap:10px 14px;flex-wrap:wrap;align-items:center;margin-bottom:24px}.section-block{margin-bottom:32px}.section-block>.sh{margin-bottom:18px}.lesson-source{margin-top:4px}.text-section{max-width:860px}.lesson-md-editor{display:grid;gap:16px}.md-editor-intro{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.md-editor-intro h2{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0;font-size:40px;line-height:46px}.md-editor-intro h2 .dash{font-weight:400;color:var(--muted)}.md-editor-intro .small-muted{margin:6px 0 0;font-size:15px}.mde{border:2px solid var(--ink);background:var(--surface)}.md-editor-bar{display:flex;align-items:center;gap:8px 12px;flex-wrap:wrap;padding:6px 8px;border-bottom:1px solid var(--rule)}.md-editor-bar>[role=group]{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.md-tool{display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 8px;border:0;background:transparent;color:var(--ink);font:600 13px/1 var(--font-sans);gap:6px;grid-auto-flow:column}.md-tool:hover:not(:disabled){background:var(--surface-tint)}.md-tool:disabled{opacity:.4;cursor:not-allowed}.md-tool mentor-icon.icon{width:20px;height:20px}.md-sep{width:1px;height:24px;margin:0 6px;background:var(--rule)}.md-editor-bar .md-right{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.seg{display:inline-flex;border:2px solid var(--ink)}.seg button{display:flex;align-items:center;gap:6px;height:36px;padding:0 12px;font:500 14px/1 var(--font-sans);color:var(--ink)}.seg button+button{border-left:1px solid var(--ink)}.seg button:hover{background:var(--surface-tint)}.seg button[aria-pressed=true]{background:var(--ink);color:var(--surface)}.seg button:focus-visible{outline-offset:-4px}.md-editor-panes{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:420px}.md-editor-panes[data-view=source],.md-editor-panes[data-view=preview]{grid-template-columns:1fr}.md-source-pane,.md-preview-pane{min-width:0;display:flex;flex-direction:column}.md-preview-pane{border-left:1px solid var(--rule)}.md-editor-panes[data-view=preview] .md-preview-pane{border-left:0}.md-pane-title{margin:0;padding:8px 18px;border-bottom:1px solid var(--rule);font:500 12px/16px var(--font-sans);color:var(--muted);letter-spacing:.02em}.md-source-pane textarea{flex:1;width:100%;min-height:420px;max-height:70vh;margin:0;padding:16px 18px;border:0;resize:vertical;background:var(--surface);font:400 14px/24px var(--font-mono);tab-size:4;box-shadow:none}.md-source-pane textarea:hover{box-shadow:none!important}.md-source-pane textarea:focus-visible{outline-offset:-3px}.md-preview-scroll{flex:1;padding:16px 22px;max-height:70vh;min-height:420px;overflow:auto}.md-editor-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 12px 10px 18px;border-top:1px solid var(--rule);font:400 13px/18px var(--font-sans);color:var(--muted)}.md-editor-foot p{margin:0}.md-editor-foot output{font-variant-numeric:tabular-nums}.md-editor-foot .actions{margin:0 0 0 auto}.markdown-body,.legacy-html{max-width:760px;font:400 17px/28px var(--font-sans);overflow-wrap:anywhere}.markdown-body>:first-child,.legacy-html>:first-child{margin-top:0}.markdown-body h1,.markdown-body h2,.legacy-html h1,.legacy-html h2{font-size:28px;line-height:36px;margin:32px 0 12px}.markdown-body h3,.legacy-html h3{font-size:22px;line-height:28px;margin:24px 0 8px}.markdown-body h4,.legacy-html h4{font-size:18px;line-height:24px;margin:20px 0 6px}.markdown-body p,.legacy-html p{margin:0 0 14px}.markdown-body ul,.markdown-body ol,.legacy-html ul,.legacy-html ol{margin:0 0 14px;padding-left:24px}.markdown-body ul,.legacy-html ul{list-style:square}.markdown-body li+li,.legacy-html li+li{margin-top:4px}.markdown-body blockquote,.legacy-html blockquote{margin:0 0 14px;padding:10px 16px;background:var(--surface-tint);border:0}.markdown-body blockquote>:last-child,.legacy-html blockquote>:last-child{margin-bottom:0}.markdown-body code,.legacy-html code{font:400 15px/22px var(--font-mono);background:var(--surface-tint);padding:1px 5px}.markdown-body pre,.legacy-html pre,.code-view,.task-code pre,.raw-material-source pre{margin:0 0 16px;padding:14px 16px;max-width:100%;overflow:auto;background:var(--surface-tint);border:0;font:400 14px/24px var(--font-mono);tab-size:4;white-space:pre}.markdown-body pre code,.legacy-html pre code{background:none;padding:0;font:inherit}.markdown-body table,.legacy-html table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;margin:0 0 16px}.markdown-body th,.markdown-body td,.legacy-html th,.legacy-html td{padding:8px 12px;border-bottom:1px solid var(--rule);text-align:left;font-size:15px;line-height:22px;vertical-align:top}.markdown-body th,.legacy-html th{border-bottom:2px solid var(--ink);font-weight:600}.markdown-body hr,.legacy-html hr{border:0;border-top:2px solid var(--ink);margin:28px 0}.markdown-body img,.legacy-html img{max-width:100%}.md-preview-scroll.markdown-body{max-width:none;font-size:16px;line-height:26px}.material-document{border:0;padding:0}.material-document>.eyebrow{margin-bottom:4px}.material-document>h2{font-size:40px;line-height:46px;margin:0 0 24px}.doc-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:48px;align-items:start}.doc-main{min-width:0}.doc-section{margin:32px 0 0;padding-top:18px;border-top:2px solid var(--ink);scroll-margin-top:24px}.doc-section>h3{font-size:28px;line-height:36px;margin:0 0 14px}.doc-section>h3:focus{outline:none}.material-document details{margin:16px 0}.material-document details>:not(summary){margin-left:16px;margin-right:16px}.material-document details>:not(summary):first-of-type{margin-top:14px}.material-document details>:last-child{margin-bottom:14px}.material-document .explanation-details,.material-document .roadmap-stage{background:var(--surface)}mentor-document-navigation{display:block;min-width:0}.doc-layout>mentor-document-navigation{align-self:stretch}.document-toc{position:sticky;top:24px;align-self:start;display:grid;gap:10px}.document-toc .toc-disclosure{border:0;margin:0}.document-toc .toc-disclosure>summary{padding:0 0 8px;border-bottom:2px solid var(--ink)!important;font:700 20px/26px var(--font-serif)}.document-toc .toc-disclosure>summary:before{display:none}.document-toc nav{display:grid;margin:0!important}.document-toc nav a{display:block;padding:8px 12px;border-left:2px solid var(--rule);font:400 14px/20px var(--font-sans);color:var(--muted)}.document-toc nav a:hover{color:var(--ink);border-left-color:var(--ink)}.document-toc nav a[aria-current=location]{border-left:4px solid var(--ink);padding-left:10px;color:var(--ink);font-weight:600;background:var(--surface-tint)}.document-toc>.btn{width:100%}.raw-material-source{margin-top:32px!important}.profile-facts{margin-top:32px;padding-top:18px;border-top:2px solid var(--ink)}.resource-card{margin:16px 0}.resource-card h3,.resource-card h4{margin:2px 0 4px}.resource-card p{color:var(--muted)}.resource-card .eyebrow{font-size:13px}.doc-tools{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 0}.task-code{margin:24px 0}.task-code>h3{margin:0;padding:8px 14px;border-bottom:1px solid var(--rule);font:500 14px/20px var(--font-mono)}.task-code>p{margin:8px 14px}.task-code>pre{margin:0}.task-code>details{margin:0;border:0;border-top:1px solid var(--rule)}.task-code>.btn{margin:12px 14px}.code-view{white-space:pre}.material-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:32px 48px;align-items:start}.material-group>header h2{display:flex;align-items:center;gap:10px}.material-group>header p{margin:0;flex-basis:100%}.material-part{margin:20px 0 4px;font:500 13px/18px var(--font-sans);color:var(--muted)}.material-list{list-style:none;margin:0;padding:0}.material-row{display:flex;align-items:center;gap:14px;padding:12px 8px;border-bottom:1px solid var(--rule);color:var(--ink)}.material-row:hover{background:var(--surface-tint)}.material-kind{flex:0 0 56px;padding:4px 0;border:1.5px solid var(--ink);text-align:center;font:600 11px/14px var(--font-sans);letter-spacing:.04em}.material-text{display:grid;gap:2px;min-width:0;flex:1}.material-text strong{font-weight:500;font-size:16px;overflow-wrap:anywhere}.material-text small{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.material-go{color:var(--muted)}.material-row:hover .material-go{color:var(--ink)}.material-group.private>header h2:before{content:"";width:18px;height:18px;background:var(--hatch-fill);box-shadow:0 0 0 1.5px var(--ink)}.homework-page{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:start}.homework-page.single{grid-template-columns:minmax(0,1fr)}.homework-page>*{min-width:0}.homework-upload form,.homework-review-form{display:grid;gap:20px;margin-top:18px}.homework-upload .subtitle{margin-top:10px}.homework-upload .answer-mode{justify-self:start}.homework-upload textarea.answer{min-height:280px;font:400 14px/22px var(--font-mono);font-variant-ligatures:none;tab-size:4;white-space:pre;overflow-wrap:normal;overflow-x:auto}.homework-upload .answer-format{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}.upload-progress{display:grid;gap:8px;font-size:14px}.works{list-style:none;margin:0;padding:0}.homework-submission{display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;padding:16px 0;border-bottom:1px solid var(--rule);min-width:0}.homework-submission .n{display:grid;place-items:center;height:44px;font:700 22px/1 var(--font-serif)}.homework-submission header{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px}.homework-submission header h3{margin:0;font:500 15px/22px var(--font-mono);overflow-wrap:anywhere}.homework-submission header time,.homework-submission header .small-muted{margin:0;font:400 14px/20px var(--font-sans);color:var(--muted)}.homework-submission header .tag{margin-left:auto}.homework-submission .prewrap{white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0 0;font-style:italic}.homework-submission .actions{margin-top:10px}.submission-feedback{margin:12px 0 0;padding:10px 12px;background:var(--surface-tint);font-size:15px;line-height:22px}.submission-feedback h4{margin:0 0 2px;font:600 13px/18px var(--font-sans);color:var(--muted)}.submission-feedback p{margin:0}.submission-review{margin-top:12px}.submission-review>summary{padding:10px 14px;font-size:15px}.submission-review form{margin:0;padding:14px}.trainer{color:var(--ink);background:var(--surface)}.trainer.theme-dark{margin:-32px calc(-1 * var(--gutter)) -64px;padding:32px var(--gutter) 64px}.practice-page{display:grid;gap:20px}.practice-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;border-bottom:2px solid var(--ink);padding-bottom:10px}.practice-heading h2{margin:0}.practice-heading .subtitle{margin-top:4px}.practice-heading .actions{margin:0}.trainer-grid{display:grid;grid-template-columns:220px minmax(0,1fr);border:2px solid var(--ink);background:var(--surface)}.trainer-grid.tree-collapsed{grid-template-columns:44px minmax(0,1fr)}.trainer-grid>*{min-width:0}.trainer-tree{padding:12px 8px;border-right:1px solid var(--rule);display:grid;gap:10px;align-content:start}.tree-collapsed .trainer-tree{padding:8px 4px;justify-items:center}.tree-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px 0 8px}.tree-head h3{margin:0;font-size:18px;line-height:24px}.tree-toggle{display:grid;place-items:center;width:32px;height:32px;color:var(--muted)}.tree-toggle:hover{color:var(--ink);background:var(--surface-tint)}.tree-files{list-style:none;padding:0 0 0 12px;display:grid;gap:1px;border-left:2px solid var(--accent);margin:0 0 6px 12px}.tree-files button{display:flex;align-items:center;gap:6px;width:100%;padding:6px 8px;text-align:left;font:400 13px/18px var(--font-mono);color:var(--muted);overflow-wrap:anywhere}.tree-files button:hover{color:var(--ink);background:var(--surface-tint)}.tree-files button[aria-pressed=true]{color:var(--ink);background:var(--surface-tint);box-shadow:inset 3px 0 0 var(--ink)}.tree-dirty{width:7px;height:7px;flex:none;border-radius:50%;background:var(--warning)}.tree-archive{border-top:1px solid var(--rule);padding-top:8px;font-size:14px}.tree-archive summary{display:flex;align-items:center;gap:6px;padding:4px 8px;font-weight:600;cursor:pointer}.tree-archive .history-row{padding:8px;font-size:13px}.tree-archive .history-row[aria-pressed=true]{background:var(--surface-tint)}.tree-archive .pagination{justify-content:space-between;padding:6px 0 0}.practice-exercises{display:grid;gap:2px}.practice-exercises button.tree-exercise{display:grid;gap:2px;width:100%;padding:8px 10px;text-align:left;color:var(--ink);font:600 14px/20px var(--font-sans);overflow-wrap:anywhere}.practice-exercises button.tree-exercise:hover{background:var(--surface-tint)}.practice-exercises button.tree-exercise small{font:400 12px/16px var(--font-sans);color:var(--muted)}.practice-exercises button[aria-current=page]{background:var(--accent);color:var(--on-accent)}.practice-exercises button[aria-current=page] small{color:var(--on-accent-muted)}.practice-reading{padding:14px 16px;background:var(--surface-tint);font-size:14px;line-height:21px}.practice-reading .eyebrow{font:600 13px/18px var(--font-sans);color:var(--muted);margin-bottom:4px}.practice-reading h3{margin:0 0 8px;font-size:18px;line-height:24px}.practice-reading .markdown-body{font-size:14px;line-height:21px}.practice-reading .markdown-body p{margin-bottom:8px}.practice-reading .markdown-body code{font-size:13px}.practice-reading .markdown-body pre{font-size:12.5px;line-height:20px;padding:10px 12px;background:var(--surface)}.practice-reading details{margin-top:12px;border-top:1px solid var(--rule);padding-top:8px}.practice-reading summary{font-weight:600}.practice-reference pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12.5px/20px var(--font-mono);max-height:360px;overflow:auto;background:var(--surface);padding:10px 12px;margin:8px 0}.practice-reference h4{margin:8px 0 4px;font:500 13px/18px var(--font-mono)}.practice-editor{display:flex;flex-direction:column;min-width:0}.practice-editor header{display:flex;align-items:stretch;justify-content:space-between;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--rule)}.practice-files{display:flex;flex-wrap:wrap}.practice-files button{padding:12px 18px;border-right:1px solid var(--rule);font:400 14px/20px var(--font-mono);color:var(--muted);overflow-wrap:anywhere}.practice-files button:hover{color:var(--ink);background:var(--surface-tint)}.practice-files button[aria-pressed=true]{color:var(--ink);box-shadow:inset 0 -3px 0 var(--accent)}.practice-files button:focus-visible{outline-offset:-3px}.file-actions{display:flex;align-items:center;gap:4px;padding:0 6px}.file-actions .btn.text{text-decoration:none;gap:6px;font-size:14px}.file-actions .btn.text:hover{text-decoration:underline}.draft-state{display:flex;align-items:center;flex:1 1 auto;padding:6px 8px;font-size:13px;color:var(--muted)}.practice-editor>.callout,.practice-editor>.auth-error,.practice-editor>.warning-banner{margin:12px 16px}mentor-monaco-editor{display:block;min-width:0}mentor-monaco-editor textarea{display:block;width:100%;min-height:max(520px,100vh - 300px);white-space:pre;overflow-x:auto;border:0!important;padding:16px 18px;font:400 14px/24px var(--font-mono)!important;tab-size:4;background:var(--surface);color:var(--ink);box-shadow:none!important;resize:vertical}mentor-monaco-editor textarea:focus-visible{outline-offset:-3px}.monaco-host{height:max(520px,100vh - 300px)}.editor-fallback{margin:8px 16px;font-size:13px}mentor-monaco-editor .small-muted{margin:8px 16px}.practice-controls{display:flex;gap:10px;flex-wrap:wrap;padding:14px 16px;border-top:2px solid var(--ink)}.practice-controls .spacer{flex:1}.reset-choice{display:flex;flex-wrap:wrap;gap:10px}.trainer-main{display:grid;align-content:start;min-width:0}.trainer-main>.btn,.trainer-main>.reset-confirm{margin:12px 16px 0}.practice-file-name{display:flex;align-items:center;margin:0;padding:10px 16px;font:500 14px/20px var(--font-mono);overflow-wrap:anywhere}.trainer-panel{border-top:2px solid var(--ink);min-width:0}.panel-tabs{display:flex;gap:2px;overflow-x:auto;border-bottom:1px solid var(--rule);scrollbar-width:thin}.panel-tabs button{padding:10px 16px;font:500 14px/20px var(--font-sans);color:var(--muted);white-space:nowrap}.panel-tabs button:hover{color:var(--ink);background:var(--surface-tint)}.panel-tabs button[aria-selected=true]{color:var(--ink);box-shadow:inset 0 -3px 0 var(--ink)}.panel-tabs button:focus-visible{outline-offset:-3px}.panel-body{padding:16px;min-width:0}.panel-body>.small-muted{margin:0}.panel-body .practice-reading{background:transparent;padding:0;max-width:960px}.archive-view h4{margin:12px 0 4px;font:500 13px/18px var(--font-mono)}.attempt-result{min-width:0;display:grid;gap:10px}.attempt-result>h3{margin:0;font-size:28px;line-height:34px}.attempt-result .small-muted{margin:0}.test-cells{display:grid;grid-template-columns:repeat(auto-fill,minmax(34px,1fr));border:2px solid var(--ink)}.test-cells span{display:grid;place-items:center;height:36px;border-right:1px solid var(--rule);font-weight:600}.test-cells span.pass{background:var(--accent);color:var(--on-accent);border-right-color:var(--surface)}.test-cells span.fail{color:var(--danger);background:var(--danger-surface)}.test-cells span mentor-icon.icon{width:16px;height:16px}.test-cells span mentor-icon.icon svg{stroke-width:2.5}.check-summary{margin:0;font:500 15px/22px var(--font-sans)}.test-list{list-style:none;margin:0;padding:0;border-top:2px solid var(--ink)}.test-list li{padding:10px 0;border-bottom:1px solid var(--rule)}.test-list h4{display:flex;align-items:flex-start;gap:8px;margin:0;font:600 14px/20px var(--font-sans);overflow-wrap:anywhere}.test-list h4 mentor-icon.icon{width:16px;height:16px;margin-top:2px}.test-list .fail h4{color:var(--ink)}.test-list .fail h4 mentor-icon{color:var(--danger)}.test-list .fail .status-word{color:var(--danger);font-weight:600}.test-list .io{margin:8px 0 0 24px;padding:8px 10px;background:var(--surface-tint);font:400 13px/20px var(--font-mono);overflow-wrap:anywhere;white-space:pre-wrap}.test-list .io p{margin:0}.test-list pre{margin:8px 0 0 24px}.diagnostics{margin:0;padding:12px 14px;background:var(--danger-surface);color:var(--danger);font:400 13px/20px var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;max-height:320px;overflow:auto}.attempt-result pre.code-view{font-size:13px;line-height:20px;max-height:280px}.attempt-result details{border-top:1px solid var(--rule);padding-top:8px}.attempt-result details>summary{font-weight:600;font-size:14px}.attempt-result details h4{margin:10px 0 4px;font:500 13px/18px var(--font-mono)}.attempt-state{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.attempt-state mentor-icon.icon{width:26px;height:26px}.attempt-state.bad mentor-icon{color:var(--danger)}.attempt-state.ok mentor-icon{color:var(--success)}.practice-history{display:grid;gap:8px}.practice-history h3{margin:6px 0 0;font-size:20px;line-height:26px;border-bottom:2px solid var(--ink);padding-bottom:6px}.history-row{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 4px;border-bottom:1px solid var(--rule);text-align:left;font-size:14px;line-height:20px;color:var(--ink);overflow-wrap:anywhere}.history-row:hover{background:var(--surface-tint)}.history-row span:last-child{color:var(--muted)}.practice-history .pagination{margin-top:4px}.practice-history details{border:1px solid var(--rule);padding:8px 10px}.practice-history details h4{margin:8px 0 4px;font:500 13px/18px var(--font-mono)}.reset-confirm,.history-only{display:grid;gap:10px;justify-items:start}.reset-confirm h3,.history-only h3,.reset-confirm .actions{margin:0}.theme-toggle{gap:8px}.teacher-practice{padding:18px 20px;display:grid;gap:14px}.teacher-practice h2{margin:0;font-size:24px;line-height:30px}.teacher-practice .subtitle{margin:0}.assignment-list{display:grid;margin:0;border-top:2px solid var(--ink)}.assignment-list>div{display:flex;justify-content:space-between;align-items:center;gap:12px 20px;flex-wrap:wrap;padding:10px 4px;border-bottom:1px solid var(--rule)}.assignment-list label{display:inline-flex;align-items:flex-start;gap:10px;font-size:15px;line-height:22px;overflow-wrap:anywhere}.assignment-list label.placement{align-items:center;gap:8px;font-size:13px;color:var(--muted)}.assignment-list select{width:auto;min-height:40px;padding-top:7px;padding-bottom:7px;font-size:14px}.teacher-practice .form-actions{justify-content:space-between}.clock{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding-top:16px}.clock .face{position:relative;isolation:isolate;display:flex;flex-direction:column;min-width:0;min-height:120px;padding:14px 16px;border:2px solid var(--ink);background:var(--surface);color:var(--ink);overflow-wrap:anywhere}.clock .face+.face{border-left:0}.clock .face:before{content:"";position:absolute;top:-16px;left:50%;width:64px;margin-left:-32px;height:9px;background:var(--ink);transform-origin:50% 100%}.clock .face.off:before{transform:translateY(5px) scaleY(.78)}.clock .face:after{content:"";position:absolute;inset:-2px;z-index:-1;background:var(--accent);clip-path:inset(0 0 0 100%)}.clock .face.on{border-color:var(--accent);color:var(--on-accent)}.clock .face.on:after{clip-path:inset(0)}.clock .face+.face:after{left:0}.clock .face.on:before{background:var(--accent)}.clock .face b{font:600 15px/20px var(--font-sans)}.clock .face span{font:400 14px/20px var(--font-sans)}.clock .face.off span{color:var(--muted)}.clock .face.on span{color:var(--on-accent-muted)}.clock .face strong{margin-top:auto;padding-top:12px;font:600 22px/28px var(--font-sans);font-variant-numeric:tabular-nums}.clock .face.off strong{font-weight:400;color:var(--muted)}.clock.mini{padding-top:10px}.clock.mini .face{min-height:0;padding:8px 12px}.clock.mini .face:before{top:-10px;width:36px;margin-left:-18px;height:6px}.clock.mini .face.off:before{transform:translateY(2px) scaleY(.67)}.clock.mini .face b{font-size:14px;line-height:18px}.clock.mini .face span{font-size:13px;line-height:18px}.home-clock .face{min-height:172px;padding:18px 20px}.home-clock .face strong{font-size:26px;line-height:32px}.home-clock .face strong.num{font-size:52px;line-height:1;letter-spacing:-.02em}.home-clock .face.off strong{font-size:40px;line-height:1}.queue{list-style:none;margin:0 0 40px;padding:0;border-top:2px solid var(--ink)}.queue>li{display:grid;grid-template-columns:56px minmax(0,1.1fr) minmax(0,1.4fr) minmax(220px,280px) auto;gap:16px 20px;align-items:center;padding:16px 0;border-bottom:1px solid var(--rule)}.queue .avatar{width:56px;height:56px;font-size:26px}.queue h3{margin:0;font-size:22px;line-height:28px}.queue p{margin:2px 0 0;font-size:14px;line-height:20px;color:var(--muted)}.queue .work b{display:block;font:600 15px/22px var(--font-sans);overflow-wrap:anywhere}.queue .work q{display:block;margin-top:4px;font-style:italic;font-size:14px;color:var(--ink);quotes:"\ab" "\bb"}.queue .clock{padding-top:10px}.schedule-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin:4px 0 8px}.schedule-week-nav{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px}.schedule-week-nav .count{margin-left:8px}.schedule-day{margin-top:28px}.schedule-day h2{font-size:26px;line-height:32px}.schedule-day h2 .tag{margin-left:8px;vertical-align:middle}.schedule-free{margin:8px 0 0}.schedule-list{list-style:none;margin:0;padding:0}.schedule-list>li{display:grid;grid-template-columns:112px 44px minmax(0,1fr) auto auto;gap:8px 16px;align-items:center;padding:14px 0;border-bottom:1px solid var(--rule)}.schedule-list>li.now{box-shadow:inset 4px 0 0 var(--accent);padding-left:12px}.schedule-list time{font:400 15px/22px var(--font-mono);white-space:nowrap}.schedule-list .avatar{width:44px;height:44px;font-size:20px}.schedule-list .who{min-width:0}.schedule-list .who b{display:block;font:600 16px/22px var(--font-sans);overflow-wrap:anywhere}.schedule-list .who a{overflow-wrap:anywhere}.schedule-list .tags{display:flex;flex-wrap:wrap;gap:6px}.conducted-reminder{margin:20px 0 0}.conducted-reminder h2{margin:0;font:600 18px/24px var(--font-sans)}.conducted-reminder p{margin:0}.reminder-list{list-style:none;margin:0;padding:0;width:100%}.reminder-list li{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding:8px 0;border-top:1px solid var(--rule)}.reminder-list li>span{flex:1 1 260px;min-width:0;overflow-wrap:anywhere}p.callout.reminder-line{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:6px 10px}.due-line{display:flex;align-items:flex-start;gap:8px;margin:12px 0 0;font:500 15px/22px var(--font-sans);color:var(--ink)}.due-line mentor-icon{flex:none;margin-top:3px}.due-line.overdue{color:var(--warning)}.tbl .when small.due{color:var(--ink)}.tbl td .tag.due-tag{margin:4px 0 0 6px}.sheet .overdue dd{color:var(--warning)}.due-fields .due-legend{float:left;width:100%;margin:0;font:600 16px/22px var(--font-sans)}.due-fields .due-legend+*{clear:both}.due-fields .due-actions{align-content:end}.due-fields .due-hint{font:400 13px/18px var(--font-sans);color:var(--muted)}.copy-summary{display:grid;gap:8px;padding:12px 16px;background:var(--surface-tint)}.copy-summary h3{margin:0;font:600 15px/22px var(--font-sans)}.copy-summary ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 20px}.copy-summary li{display:flex;align-items:center;gap:6px;font:400 15px/22px var(--font-sans)}.copy-summary li.none{color:var(--muted)}.copy-summary p{margin:0}@media(max-width:640px){.schedule-week-nav .count{order:-1;flex-basis:100%;margin-left:0}.schedule-list>li{grid-template-columns:44px minmax(0,1fr)}.schedule-list time{grid-column:1/-1}.schedule-list .tags,.schedule-list>li>.btn{grid-column:2;justify-self:start}}.student-card .clock{margin:auto 18px 18px}.turn-cell b{display:block;font-weight:600}.turn-cell small{display:block;font-size:13px;line-height:18px;color:var(--muted)}.tbl .num.mine{background:var(--accent);color:var(--on-accent)}.tbl .num.mine span{background:var(--surface);padding:0 6px}.card-turn{display:grid;gap:10px;justify-items:stretch;width:min(100%,400px)}.card-turn .actions{margin:0;justify-content:flex-end}.ev{display:inline-flex;align-items:baseline;gap:6px;white-space:nowrap;font:500 14px/20px var(--font-sans);color:var(--ink)}.ev b{font:700 20px/20px var(--font-serif)}.ev.bad,.ev.bad b{color:var(--danger)}.grade-picker{gap:8px}.grade-picker legend{font:600 14px/20px var(--font-sans);margin:0}.grade-options{display:flex;flex-wrap:wrap;gap:8px 20px}.grade-options .check-row,.homework-review-form .grade-options label{display:inline-flex;align-items:center;gap:10px;font-weight:400}.grade-line{margin:4px 0 6px!important}.sheet>.wide{grid-column:1/-1}.sheet .stage-title{font:400 14px/20px var(--font-sans);color:var(--muted);margin-left:6px}mentor-roadmap,mentor-moves,mentor-code-review,mentor-turn-clock,mentor-pagination,mentor-error-banner{display:block;min-width:0}mentor-error-banner{display:grid}.stages{list-style:none;margin:0;padding:0}.stages>li{display:grid;grid-template-columns:40px minmax(0,auto) minmax(24px,1fr) auto;gap:14px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--rule);font:400 17px/24px var(--font-sans)}.stages .mark{display:inline-grid;place-items:center;width:32px;height:32px;border:2px solid var(--ink);font:700 15px/1 var(--font-sans);align-self:center}.stages .mark mentor-icon.icon{width:18px;height:18px}.stages .done .mark{background:var(--ink);color:var(--surface)}.stages .done .title{color:var(--muted)}.stages .current{font-weight:600}.stages .current .mark{background:var(--accent);color:var(--on-accent)}.stages .current .mark span{padding:2px 4px;background:var(--surface);line-height:1}.stages .ahead .mark{border-style:dashed;border-color:var(--muted);color:var(--muted)}.stages .lead{border-bottom:1px dotted var(--rule);transform:translateY(-4px)}.stages .state{font:400 14px/20px var(--font-sans);color:var(--muted);white-space:nowrap}.stages .current .state{color:var(--ink);font-weight:600}.stage-editor ol{list-style:none;margin:0 0 16px;padding:0}.stage-editor li{display:grid;grid-template-columns:32px minmax(0,2fr) minmax(0,1fr) 150px auto;gap:12px;align-items:end;padding:14px 0;border-bottom:1px solid var(--rule)}.stage-editor .n{font:700 17px/48px var(--font-serif)}.stage-editor .row-tools{display:flex;gap:6px}.stage-editor .spacer{flex:1}.moves{list-style:none;margin:0;padding:0}.moves>li{display:grid;grid-template-columns:18px 150px minmax(0,1fr);gap:6px 14px;align-items:start;padding:12px 0;border-bottom:1px solid var(--rule)}.moves .piece{width:14px;height:14px;margin-top:4px;border:2px solid var(--ink);border-radius:50%;background:var(--surface)}.moves .teacher .piece{background:var(--ink)}.moves time{font:400 14px/22px var(--font-mono);color:var(--muted)}.moves .what{display:grid;gap:2px;min-width:0}.moves .what p{margin:0;font:400 15px/22px var(--font-sans);overflow-wrap:anywhere}.moves .what .ev{margin-left:6px}.moves .subject{font-family:var(--font-mono)!important;font-size:14px!important;color:var(--muted)}.moves q{display:block;font-style:italic;font-size:14px;line-height:20px;quotes:"\ab" "\bb";overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.moves .text-link{justify-self:start;font-size:14px}.submission-code{margin-top:12px}.code-review{display:grid;gap:10px;min-width:0}.code-file{display:flex;align-items:center;gap:8px;margin:8px 0 0;font:600 15px/22px var(--font-mono);overflow-wrap:anywhere}.code-file .count{font:400 13px/18px var(--font-sans);color:var(--muted)}.code-lines{list-style:none;margin:0;padding:6px 0;background:var(--surface-tint);max-width:100%}.code-lines>li{display:grid;grid-template-columns:48px minmax(0,1fr) 32px;align-items:start;min-width:0}.code-lines>li.noted{background:linear-gradient(90deg,var(--ink) 0 3px,transparent 3px)}.code-lines .ln{padding:0 10px 0 0;text-align:right;font:400 13px/22px var(--font-mono);color:var(--muted);-webkit-user-select:none;user-select:none}.code-lines code{min-width:0;font:400 13px/22px var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;tab-size:4}.code-lines .add-note{width:32px;height:28px;display:grid;place-items:center;padding:0;border:1px solid transparent;background:transparent;color:var(--muted);cursor:pointer;opacity:.6}@media(hover:none){.code-lines .add-note{opacity:1;border-color:var(--rule)}}.code-lines>li:hover .add-note,.code-lines .add-note:focus-visible,.code-lines .add-note[aria-expanded=true]{opacity:1;border-color:var(--ink);color:var(--ink);background:var(--surface)}.code-lines .add-note mentor-icon.icon{width:14px;height:14px}.line-note{grid-column:2/-1;margin:6px 12px 10px 0;padding:12px 14px;display:grid;gap:8px;background:var(--surface);border:1px solid var(--rule);border-left:3px solid var(--ink);font:400 15px/22px var(--font-sans);white-space:normal}.line-note .note-head{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;margin:0}.line-note .note-head .btn{margin-left:auto}.line-note .variant-label{margin:4px 0 0;font:600 13px/18px var(--font-sans);color:var(--muted)}.line-note pre.code-view{margin:0;font-size:13px;line-height:20px;white-space:pre-wrap;overflow-wrap:anywhere}.note-form textarea.mono{font-family:var(--font-mono);font-size:14px}.attempt-code>summary{cursor:pointer}@media(max-width:1280px){.home{grid-template-columns:minmax(0,1fr) 380px;gap:40px}.queue>li{grid-template-columns:56px minmax(0,1fr) minmax(220px,280px)}.queue .work{grid-column:2/-1;grid-row:2}.queue>li>.btn{grid-column:2/-1;justify-self:start}.practice-editor{border-right:0}}@media(max-width:1100px){.cols,.home{grid-template-columns:minmax(0,1fr)}.home h1{font-size:60px;line-height:64px}.doc-layout{grid-template-columns:minmax(0,1fr)}.doc-layout>mentor-document-navigation{grid-row:1}.document-toc{position:static}.homework-page{grid-template-columns:minmax(0,1fr)}.auth-main{padding:48px}}@media(max-width:900px){.stage-editor li{grid-template-columns:28px minmax(0,1fr)}.stage-editor li>label,.stage-editor .row-tools{grid-column:2}:root{--gutter: 20px;--header-height: 56px}.header-bar{gap:12px;padding-right:8px}.brand{font-size:21px;gap:10px}.brand-mark{grid-template-columns:10px 10px;grid-template-rows:10px 10px}.primary-nav,.profile{display:none}.menu-button{display:inline-flex}.mobile-menu.open{display:block;position:absolute;left:0;right:0;top:100%;max-height:calc(100vh - var(--header-height));overflow:auto;background:var(--surface);border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);box-shadow:0 12px #00000014}.mobile-menu nav a{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:0 20px;border-bottom:1px solid var(--rule);font:500 18px/24px var(--font-sans)}.mobile-menu nav a mentor-icon{color:var(--muted)}.mobile-menu nav a.active,.mobile-menu nav a[aria-current]{background:var(--ink);color:var(--surface)}.mobile-menu nav a.active mentor-icon,.mobile-menu nav a[aria-current] mentor-icon{color:var(--surface)}.mobile-menu nav a:focus-visible{outline-offset:-4px}.mobile-me{padding:16px 20px 4px;border-top:2px solid var(--ink);margin-top:28px}.mobile-me b{display:block;font:600 16px/22px var(--font-sans);overflow-wrap:anywhere}.mobile-me span{display:block;font:400 13px/18px var(--font-sans);color:var(--muted)}.mobile-menu .menu-list a,.mobile-menu .menu-list button{height:48px;padding:0 20px;font-size:16px}main{padding:24px var(--gutter) 48px}h1{font-size:40px;line-height:46px}.home h1{font-size:40px;line-height:44px}.context-title{flex-direction:column;gap:12px}.form-grid{grid-template-columns:minmax(0,1fr)}.sheet{grid-template-columns:repeat(2,minmax(0,1fr))}.auth-split{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr}.auth-side{padding:20px;border-right:0;border-bottom:2px solid var(--ink)}.auth-side .motto,.auth-side p,.auth-art{display:none}.auth-main{padding:32px 20px 48px;align-items:flex-start}.auth-card h1{font-size:40px;line-height:46px}.preview-banner .back{margin-left:0}.lesson-table thead{display:none}.lesson-table,.lesson-table tbody,.lesson-table tr,.lesson-table td{display:block;width:100%}.lesson-table tr{position:relative;padding:14px 0 14px 44px;border-bottom:1px solid var(--rule)}.lesson-table td{padding:2px 0;border:0}.lesson-table td.num{position:absolute;left:0;top:14px;width:36px}.lesson-table td.act{text-align:left;padding-top:8px}.lesson-shortcuts{justify-content:flex-start}.lesson-table tbody tr:hover td{background:none}.admin-table thead{display:none}.admin-table,.admin-table tbody,.admin-table tr,.admin-table td{display:block;width:100%}.admin-table tr{padding:12px 0;border-bottom:1px solid var(--rule)}.admin-table td{padding:3px 0;border:0}.admin-table td.act{text-align:left;white-space:normal}.admin-table .act .actions{justify-content:flex-start}.prep>li{grid-template-columns:44px minmax(0,1fr);gap:14px}.queue>li{grid-template-columns:44px minmax(0,1fr);gap:12px}.queue .avatar{width:44px;height:44px;font-size:22px}.queue .work,.queue .clock,.queue>li>.btn{grid-column:1/-1;grid-row:auto}.card-turn{width:100%}.prep .n{height:44px;font-size:22px}.prep .go{grid-column:2;justify-content:flex-start}.md-editor-panes{grid-template-columns:1fr}.md-preview-pane{border-left:0;border-top:1px solid var(--rule)}.md-editor-intro h2{font-size:30px;line-height:36px}.md-source-pane textarea,.md-preview-scroll{min-height:300px}.page-head{align-items:flex-start}.page-head>.btn,.page-head .actions{width:100%}.page-head .actions .btn{flex:1 1 200px}.material-document>h2{font-size:30px;line-height:36px}.trainer.theme-dark{margin:-24px calc(-1 * var(--gutter)) -48px;padding:24px var(--gutter) 48px}}@media(max-width:699px){.trainer-grid,.trainer-grid.tree-collapsed{grid-template-columns:minmax(0,1fr)}.trainer-tree{border-right:0;border-bottom:2px solid var(--ink)}.tree-collapsed .trainer-tree{justify-items:start}.monaco-host{height:360px}mentor-monaco-editor textarea{min-height:360px}}@media(max-width:560px){.sheet{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.home-actions{grid-template-columns:minmax(0,1fr)}.actions .btn,.form-actions .btn{flex:1 1 100%;white-space:normal}.actions .btn.text{flex:0 1 auto}.student-hero .who{gap:16px}.student-hero .avatar{width:48px;height:48px;font-size:24px}.dialog .form-actions .btn,.practice-controls .btn{flex:1 1 100%}.homework-submission{grid-template-columns:32px minmax(0,1fr);gap:10px}.homework-submission header .tag{margin-left:0}.preview-banner{padding:8px var(--gutter)}.stages>li{grid-template-columns:36px minmax(0,1fr);gap:4px 12px}.stages .lead{display:none}.stages .state{grid-column:2;white-space:normal}.moves>li{grid-template-columns:18px minmax(0,1fr)}.moves .what{grid-column:2}.line-note{grid-column:1/-1;margin-left:8px;margin-right:8px}}.m-0{margin:0!important}.mt-6{margin-top:6px!important}.mt-16{margin-top:16px!important}.mt-20{margin-top:20px!important}.mt-28{margin-top:28px!important}.mt-40{margin-top:40px!important}.mb-16{margin-bottom:16px!important}@media print{.site-header,.site-footer,.skip,.preview-banner,.tabs,.lesson-page-actions,.lesson-md-editor,.document-toc,.raw-material-source,.actions,.doc-tools,.homework-upload,.submission-review,.homework-page .pagination{display:none!important}main{padding:0;max-width:none}body,.trainer{background:#fff;color:#000}.doc-layout{display:block}.doc-section{break-inside:avoid}.material-document details{display:block!important}.markdown-body pre,.legacy-html pre,.code-view,.task-code pre{white-space:pre-wrap;overflow:visible;overflow-wrap:anywhere;background:#fff;border:1px solid #999}a{text-decoration:none}}.material-form{margin-bottom:24px}.material-form .sh{margin-bottom:12px}.material-form form{display:grid;gap:14px}.material-form textarea{font:400 14px/20px var(--font-mono);min-height:240px;resize:vertical}.material-item{display:flex;align-items:center;gap:8px}.material-item .material-row{flex:1;min-width:0}.material-remove{flex:0 0 auto;color:var(--muted)}.material-remove:hover{color:var(--danger)}.material-confirm{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto}.inline-confirm{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px}.site-header{view-transition-name:site-header}.preview-banner{view-transition-name:preview-banner}.context-head{view-transition-name:context-head;overflow-x:clip;overflow-clip-margin:8px}::view-transition-group(site-header),::view-transition-group(preview-banner),::view-transition-group(context-head),::view-transition-new(site-header),::view-transition-new(preview-banner),::view-transition-new(context-head){animation:none}::view-transition-old(site-header),::view-transition-old(preview-banner),::view-transition-old(context-head){display:none}::view-transition-old(root){animation:motion-fade-out var(--motion-instant) var(--ease-exit) both}::view-transition-new(root){animation:motion-rise var(--motion-move) var(--ease-enter) calc(var(--motion-move) / 5) both}.auth-side .motto{animation:motion-rise var(--motion-move) var(--ease-enter) calc(var(--motion-move) * .6) backwards}.auth-side .motto+p{animation:motion-fade-in var(--motion-quick) var(--ease-enter) var(--motion-move) backwards}.auth-clock .on:after{animation:auth-fill-in var(--motion-move) var(--ease-move) calc(var(--motion-stage) + var(--motion-move) * .3) backwards}.auth-clock div+div:after{animation:auth-fill-out var(--motion-move) var(--ease-move) calc(var(--motion-stage) + var(--motion-move) * .3) backwards}.auth-clock div+div:before{animation:auth-knob-press var(--motion-instant) var(--ease-exit) var(--motion-stage) backwards}.auth-clock .on:before{animation:auth-knob-rise var(--motion-quick) var(--ease-move) calc(var(--motion-stage) + var(--motion-move)) backwards}.auth-clock .on b{animation:motion-hold-ink calc(var(--motion-stage) + var(--motion-move) * .8) var(--ease-step) backwards}.auth-clock .on span{animation:motion-hold-muted calc(var(--motion-stage) + var(--motion-move) * .8) var(--ease-step) backwards}.auth-clock div+div b{animation:motion-hold-surface calc(var(--motion-stage) + var(--motion-move) * .8) var(--ease-step) backwards}.auth-clock div+div span{animation:motion-hold-pale calc(var(--motion-stage) + var(--motion-move) * .8) var(--ease-step) backwards}@media(max-width:900px){.auth-side .brand-mark i{animation:motion-place var(--motion-quick) var(--ease-enter) backwards}.auth-side .brand-mark i:nth-child(4){animation-delay:calc(var(--motion-stagger) * 2)}.auth-side .brand-mark i:nth-child(2){animation-delay:calc(var(--motion-stagger) * 4)}.auth-side .brand-mark i:nth-child(3){animation-delay:calc(var(--motion-stagger) * 6)}}@keyframes auth-deal{0%{clip-path:inset(0 100% 0 0)}}@keyframes auth-fill-in{0%{clip-path:inset(0 0 0 100%)}}@keyframes auth-fill-out{0%{clip-path:inset(0)}to{clip-path:inset(0 100% 0 0)}}@keyframes auth-knob-press{0%{transform:none}}@keyframes auth-knob-rise{0%{transform:translateY(5px) scaleY(.78)}}@keyframes motion-hold-ink{0%,to{color:var(--ink)}}@keyframes motion-hold-muted{0%,to{color:var(--muted)}}@keyframes motion-hold-surface{0%,to{color:var(--surface)}}@keyframes motion-hold-pale{0%,to{color:var(--on-accent-muted)}}.students-grid>a.student-card,.queue>li{animation:motion-rise var(--motion-quick) var(--ease-enter) calc(min(var(--i, 0),7) * var(--motion-stagger)) backwards}@media(max-width:699px){.students-grid>a.student-card,.queue>li{animation-delay:calc(min(var(--i, 0),3) * var(--motion-stagger))}}.confirm-box,.dialog{animation:motion-lift var(--motion-quick) var(--ease-move) backwards}.dialog-backdrop{animation:motion-fade-in var(--motion-quick) var(--ease-enter) backwards}.success-banner,.auth-error{animation:motion-drop var(--motion-quick) var(--ease-enter) backwards}.profile-menu,.mobile-menu.open{animation:motion-menu var(--motion-quick) var(--ease-enter)}@keyframes motion-fade-in{0%{opacity:0}}@keyframes motion-fade-out{to{opacity:0}}@keyframes motion-rise{0%{opacity:0;transform:translateY(var(--motion-distance))}}@keyframes motion-drop{0%{opacity:0;transform:translateY(calc(-1 * var(--motion-distance)))}}@keyframes motion-lift{0%{transform:translate(6px,6px);box-shadow:0 0 0 0 var(--shadow-color)}}@keyframes motion-place{0%{opacity:0;transform:scale(.4)}}@keyframes motion-menu{0%{clip-path:inset(0 0 100% 0)}}@media(prefers-reduced-motion:reduce){:root{--motion-instant: 0s;--motion-quick: 0s;--motion-move: 0s;--motion-stage: 0s;--motion-stagger: 0s;--motion-distance: 0px;--motion-lift: 0px}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.01ms!important;transition-delay:0s!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}.skeleton,.skeleton-card{animation-delay:.15s!important}.loading:before{width:10px;height:10px;border-radius:0;border-color:var(--muted)}}
